chore: update stage0

This commit is contained in:
Leonardo de Moura 2022-09-28 21:55:53 -07:00
parent 5c925f9345
commit cfc19acd83
4 changed files with 885 additions and 199 deletions

View file

@ -2497,6 +2497,42 @@ Push an element onto the end of an array. This is amortized O(1) because
def Array.push {α : Type u} (a : Array α) (v : α) : Array α where
data := List.concat a.data v
/-- Create array `#[]` -/
def Array.mkArray0 {α : Type u} : Array α :=
mkEmpty 0
/-- Create array `#[a₁]` -/
def Array.mkArray1 {α : Type u} (a₁ : α) : Array α :=
(mkEmpty 1).push a₁
/-- Create array `#[a₁, a₂]` -/
def Array.mkArray2 {α : Type u} (a₁ a₂ : α) : Array α :=
((mkEmpty 1).push a₁).push a₂
/-- Create array `#[a₁, a₂, a₃]` -/
def Array.mkArray3 {α : Type u} (a₁ a₂ a₃ : α) : Array α :=
(((mkEmpty 1).push a₁).push a₂).push a₃
/-- Create array `#[a₁, a₂, a₃, a₄]` -/
def Array.mkArray4 {α : Type u} (a₁ a₂ a₃ a₄ : α) : Array α :=
((((mkEmpty 1).push a₁).push a₂).push a₃).push a₄
/-- Create array `#[a₁, a₂, a₃, a₄, a₅]` -/
def Array.mkArray5 {α : Type u} (a₁ a₂ a₃ a₄ a₅ : α) : Array α :=
(((((mkEmpty 1).push a₁).push a₂).push a₃).push a₄).push a₅
/-- Create array `#[a₁, a₂, a₃, a₄, a₅, a₆]` -/
def Array.mkArray6 {α : Type u} (a₁ a₂ a₃ a₄ a₅ a₆ : α) : Array α :=
((((((mkEmpty 1).push a₁).push a₂).push a₃).push a₄).push a₅).push a₆
/-- Create array `#[a₁, a₂, a₃, a₄, a₅, a₆, a₇]` -/
def Array.mkArray7 {α : Type u} (a₁ a₂ a₃ a₄ a₅ a₆ a₇ : α) : Array α :=
(((((((mkEmpty 1).push a₁).push a₂).push a₃).push a₄).push a₅).push a₆).push a₇
/-- Create array `#[a₁, a₂, a₃, a₄, a₅, a₆, a₇, a₈]` -/
def Array.mkArray8 {α : Type u} (a₁ a₂ a₃ a₄ a₅ a₆ a₇ a₈ : α) : Array α :=
((((((((mkEmpty 1).push a₁).push a₂).push a₃).push a₄).push a₅).push a₆).push a₇).push a₈
/--
Set an element in an array without bounds checks, using a `Fin` index.

View file

@ -158,6 +158,12 @@ where
| _ =>
return none
def mkSmallArrayFunctions := #[
``Array.mkArray0, ``Array.mkArray1, ``Array.mkArray2, ``Array.mkArray3,
``Array.mkArray4, ``Array.mkArray5, ``Array.mkArray6, ``Array.mkArray7,
``Array.mkArray8
]
/--
Turn an `#[a, b, c]` into:
```
@ -170,11 +176,15 @@ _x.26
```
-/
def mkPseudoArrayLiteral (elements : Array FVarId) (typ : Expr) (typLevel : Level) : FolderM Expr := do
let sizeLit ← mkAuxLit elements.size
let mut literal ← mkAuxLetDecl <| mkApp2 (mkConst ``Array.mkEmpty [typLevel]) typ (.fvar sizeLit)
for element in elements do
literal ← mkAuxLetDecl <| mkApp3 (mkConst ``Array.push [typLevel]) typ (.fvar literal) (.fvar element)
return .fvar literal
if h : elements.size < mkSmallArrayFunctions.size then
let mkFn := mkApp (mkConst mkSmallArrayFunctions[elements.size] [typLevel]) typ
return mkAppN mkFn (elements.map (.fvar ·))
else
let sizeLit ← mkAuxLit elements.size
let mut literal ← mkAuxLetDecl <| mkApp2 (mkConst ``Array.mkEmpty [typLevel]) typ (.fvar sizeLit)
for element in elements do
literal ← mkAuxLetDecl <| mkApp3 (mkConst ``Array.push [typLevel]) typ (.fvar literal) (.fvar element)
return .fvar literal
/--
Evaluate array literals at compile time, that is turn:

View file

@ -296,6 +296,7 @@ LEAN_EXPORT lean_object* l_ite(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_instInhabitedTSyntax___boxed(lean_object*);
static lean_object* l_Lean_groupKind___closed__2;
LEAN_EXPORT lean_object* l_instTransEq__1___rarg___boxed(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Array_mkArray3(lean_object*);
LEAN_EXPORT lean_object* l_Lean_numLitKind;
LEAN_EXPORT lean_object* l_EStateM_run_x27___rarg(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_ReaderT_pure___at_Lean_PrettyPrinter_instMonadQuotationUnexpandM___spec__2(lean_object*);
@ -303,6 +304,7 @@ LEAN_EXPORT lean_object* l_EStateM_bind___rarg(lean_object*, lean_object*, lean_
static lean_object* l_Lean_choiceKind___closed__1;
LEAN_EXPORT lean_object* l_not___boxed(lean_object*);
LEAN_EXPORT lean_object* l_ReaderT_instFunctorReaderT___rarg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Array_mkArray2(lean_object*);
lean_object* lean_nat_sub(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Name_instAppendName;
LEAN_EXPORT lean_object* l_Lean_TSyntaxArray_mkImpl___boxed(lean_object*);
@ -364,6 +366,7 @@ static lean_object* l_Lean_scientificLitKind___closed__2;
LEAN_EXPORT lean_object* l_instHAddPosChar___boxed(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_List_set(lean_object*);
LEAN_EXPORT uint8_t l_List_hasDecEq___rarg(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Array_mkArray5(lean_object*);
LEAN_EXPORT lean_object* l_Char_utf8Size___boxed(lean_object*);
LEAN_EXPORT lean_object* l_Lean_MonadQuotation_addMacroScope___rarg___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
static lean_object* l_Lean_strLitKind___closed__2;
@ -379,6 +382,7 @@ static uint16_t l_instInhabitedUInt16___closed__1;
static uint32_t l_Char_utf8Size___closed__1;
LEAN_EXPORT lean_object* l_Lean_Macro_instMonadQuotationMacroM___lambda__1___boxed(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_ReaderT_bind(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Array_mkArray8___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
static lean_object* l_Lean_PrettyPrinter_instMonadQuotationUnexpandM___closed__1;
LEAN_EXPORT lean_object* l_Lean_Syntax_getId(lean_object*);
LEAN_EXPORT lean_object* l_Lean_PrettyPrinter_instMonadQuotationUnexpandM___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
@ -395,12 +399,14 @@ LEAN_EXPORT lean_object* l_instHPow(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_instMulNat;
static lean_object* l_Lean_Macro_instMonadRefMacroM___closed__1;
LEAN_EXPORT lean_object* l_Lean_Macro_instMonadQuotationMacroM___lambda__2___boxed(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Array_mkArray0(lean_object*);
size_t lean_usize_of_nat(lean_object*);
LEAN_EXPORT lean_object* l_ReaderT_read___rarg(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_inferInstance___rarg___boxed(lean_object*);
LEAN_EXPORT uint8_t l_instDecidableEqUInt8(uint8_t, uint8_t);
LEAN_EXPORT lean_object* l_Lean_Syntax_instGetElemSyntaxNatTrue___boxed(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Function_comp___rarg(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Array_mkArray4___rarg(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Functor_mapConst___default___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_ReaderT_run___rarg(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Macro_instInhabitedMethods___lambda__1___boxed(lean_object*, lean_object*, lean_object*);
@ -537,6 +543,7 @@ LEAN_EXPORT uint8_t l_Lean_Syntax_isMissing(lean_object*);
LEAN_EXPORT lean_object* l_EStateM_throw___rarg(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Syntax_setArg___boxed(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Macro_instInhabitedMethods___lambda__3(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Array_mkArray6(lean_object*);
LEAN_EXPORT lean_object* l_Lean_identKind;
LEAN_EXPORT lean_object* l_MonadExcept_instOrElse___rarg(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_ite___rarg(uint8_t, lean_object*, lean_object*);
@ -566,11 +573,13 @@ LEAN_EXPORT lean_object* l_ReaderT_instApplicativeReaderT___rarg___lambda__3(lea
LEAN_EXPORT lean_object* l_Lean_Syntax_isNodeOf___boxed(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Syntax_getNumArgs(lean_object*);
LEAN_EXPORT lean_object* l_instMonadWithReader(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Array_mkArray5___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
static lean_object* l_EStateM_instMonadEStateM___closed__3;
LEAN_EXPORT lean_object* l_Lean_Macro_throwError___rarg___boxed(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_inferInstanceAs(lean_object*);
LEAN_EXPORT lean_object* l_instHAnd(lean_object*);
LEAN_EXPORT lean_object* l_Lean_scientificLitKind;
LEAN_EXPORT lean_object* l_Array_mkArray1___rarg(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Syntax_setArg(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Monad_seqRight___default___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
lean_object* lean_array_mk(lean_object*);
@ -633,8 +642,10 @@ LEAN_EXPORT uint32_t l_Char_utf8Size(uint32_t);
LEAN_EXPORT lean_object* l_EStateM_run_x27(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_getThe___rarg___boxed(lean_object*);
LEAN_EXPORT lean_object* l_Array_setD(lean_object*);
LEAN_EXPORT lean_object* l_Array_mkArray7___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_instDecidableAnd(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Name_hasMacroScopes___boxed(lean_object*);
LEAN_EXPORT lean_object* l_Array_mkArray2___rarg(lean_object*, lean_object*);
static uint32_t l_Char_utf8Size___closed__4;
LEAN_EXPORT lean_object* l_Lean_MonadQuotation_addMacroScope___rarg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_Macro_getMethodsImp(lean_object*, lean_object*);
@ -664,6 +675,7 @@ LEAN_EXPORT uint8_t l_instDecidableEqString(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Array_sequenceMap___rarg(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Lean_instInhabitedName;
LEAN_EXPORT lean_object* l_instHAdd___rarg(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Array_mkArray6___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Array_appendCore(lean_object*);
LEAN_EXPORT lean_object* l_instHAnd___rarg(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_ReaderT_pure___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*);
@ -706,6 +718,7 @@ static lean_object* l_EStateM_instMonadExceptOfEStateM___rarg___closed__1;
LEAN_EXPORT lean_object* l___private_Init_Prelude_0__Lean_eraseMacroScopesAux___boxed(lean_object*);
LEAN_EXPORT lean_object* l_UInt16_ofNatCore___boxed(lean_object*, lean_object*);
uint32_t lean_uint32_of_nat(lean_object*);
LEAN_EXPORT lean_object* l_Array_mkArray8(lean_object*);
LEAN_EXPORT lean_object* l_instLTPos;
lean_object* lean_array_data(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Macro_instInhabitedMethods___lambda__4(lean_object*, lean_object*, lean_object*);
@ -717,6 +730,7 @@ static lean_object* l_Lean_instInhabitedMacroScopesView___closed__1;
LEAN_EXPORT lean_object* l_Array_sequenceMap_loop(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_USize_ofNatCore___boxed(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_ReaderT_instMonadExceptOfReaderT___rarg(lean_object*);
LEAN_EXPORT lean_object* l_Array_mkArray7(lean_object*);
LEAN_EXPORT lean_object* l_Lean_Syntax_getTailPos_x3f(lean_object*, uint8_t);
LEAN_EXPORT lean_object* l_instInhabited(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Fin_decLt___boxed(lean_object*);
@ -752,6 +766,8 @@ LEAN_EXPORT lean_object* l_Lean_Macro_instInhabitedMethods;
LEAN_EXPORT lean_object* l_Lean_Syntax_getOptional_x3f___boxed(lean_object*);
LEAN_EXPORT lean_object* l_instHOrElse___rarg(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l___private_Init_Prelude_0__Lean_Macro_MethodsRefPointed;
LEAN_EXPORT lean_object* l_Array_mkArray3___rarg(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Array_mkArray4(lean_object*);
LEAN_EXPORT lean_object* l_dite___rarg___boxed(lean_object*, lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_String_utf8ByteSize___boxed(lean_object*);
LEAN_EXPORT lean_object* l_id___rarg(lean_object*);
@ -798,6 +814,7 @@ static lean_object* l_EStateM_instMonadEStateM___closed__7;
LEAN_EXPORT uint8_t l_Lean_Syntax_matchesIdent(lean_object*, lean_object*);
static lean_object* l_Lean_PrettyPrinter_instMonadQuotationUnexpandM___closed__5;
LEAN_EXPORT lean_object* l_instMonadReader(lean_object*, lean_object*);
static lean_object* l_Array_mkArray1___rarg___closed__1;
LEAN_EXPORT lean_object* l_instPowNat;
LEAN_EXPORT lean_object* l_instInhabitedReaderT___rarg(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_ReaderT_instMonadExceptOfReaderT___rarg___lambda__2(lean_object*, lean_object*, lean_object*);
@ -818,6 +835,7 @@ LEAN_EXPORT lean_object* l_instDecidableLtPosInstLTPos___boxed(lean_object*, lea
LEAN_EXPORT lean_object* l_instLTFin___boxed(lean_object*);
LEAN_EXPORT lean_object* l_modifyGetThe___rarg(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_modify___rarg(lean_object*, lean_object*);
LEAN_EXPORT lean_object* l_Array_mkArray1(lean_object*);
LEAN_EXPORT lean_object* l_EStateM_instMonadExceptOfEStateM(lean_object*, lean_object*, lean_object*);
lean_object* lean_uint32_to_nat(uint32_t);
LEAN_EXPORT lean_object* l_Array_sequenceMap_loop___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*);
@ -4188,6 +4206,187 @@ x_4 = lean_array_push(x_2, x_3);
return x_4;
}
}
LEAN_EXPORT lean_object* l_Array_mkArray0(lean_object* x_1) {
_start:
{
lean_object* x_2;
x_2 = l_Array_empty___closed__1;
return x_2;
}
}
static lean_object* _init_l_Array_mkArray1___rarg___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_Array_mkArray1___rarg(lean_object* x_1) {
_start:
{
lean_object* x_2; lean_object* x_3;
x_2 = l_Array_mkArray1___rarg___closed__1;
x_3 = lean_array_push(x_2, x_1);
return x_3;
}
}
LEAN_EXPORT lean_object* l_Array_mkArray1(lean_object* x_1) {
_start:
{
lean_object* x_2;
x_2 = lean_alloc_closure((void*)(l_Array_mkArray1___rarg), 1, 0);
return x_2;
}
}
LEAN_EXPORT lean_object* l_Array_mkArray2___rarg(lean_object* x_1, lean_object* x_2) {
_start:
{
lean_object* x_3; lean_object* x_4; lean_object* x_5;
x_3 = l_Array_mkArray1___rarg___closed__1;
x_4 = lean_array_push(x_3, x_1);
x_5 = lean_array_push(x_4, x_2);
return x_5;
}
}
LEAN_EXPORT lean_object* l_Array_mkArray2(lean_object* x_1) {
_start:
{
lean_object* x_2;
x_2 = lean_alloc_closure((void*)(l_Array_mkArray2___rarg), 2, 0);
return x_2;
}
}
LEAN_EXPORT lean_object* l_Array_mkArray3___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3) {
_start:
{
lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7;
x_4 = l_Array_mkArray1___rarg___closed__1;
x_5 = lean_array_push(x_4, x_1);
x_6 = lean_array_push(x_5, x_2);
x_7 = lean_array_push(x_6, x_3);
return x_7;
}
}
LEAN_EXPORT lean_object* l_Array_mkArray3(lean_object* x_1) {
_start:
{
lean_object* x_2;
x_2 = lean_alloc_closure((void*)(l_Array_mkArray3___rarg), 3, 0);
return x_2;
}
}
LEAN_EXPORT lean_object* l_Array_mkArray4___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) {
_start:
{
lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9;
x_5 = l_Array_mkArray1___rarg___closed__1;
x_6 = lean_array_push(x_5, x_1);
x_7 = lean_array_push(x_6, x_2);
x_8 = lean_array_push(x_7, x_3);
x_9 = lean_array_push(x_8, x_4);
return x_9;
}
}
LEAN_EXPORT lean_object* l_Array_mkArray4(lean_object* x_1) {
_start:
{
lean_object* x_2;
x_2 = lean_alloc_closure((void*)(l_Array_mkArray4___rarg), 4, 0);
return x_2;
}
}
LEAN_EXPORT lean_object* l_Array_mkArray5___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) {
_start:
{
lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11;
x_6 = l_Array_mkArray1___rarg___closed__1;
x_7 = lean_array_push(x_6, x_1);
x_8 = lean_array_push(x_7, x_2);
x_9 = lean_array_push(x_8, x_3);
x_10 = lean_array_push(x_9, x_4);
x_11 = lean_array_push(x_10, x_5);
return x_11;
}
}
LEAN_EXPORT lean_object* l_Array_mkArray5(lean_object* x_1) {
_start:
{
lean_object* x_2;
x_2 = lean_alloc_closure((void*)(l_Array_mkArray5___rarg), 5, 0);
return x_2;
}
}
LEAN_EXPORT lean_object* l_Array_mkArray6___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) {
_start:
{
lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13;
x_7 = l_Array_mkArray1___rarg___closed__1;
x_8 = lean_array_push(x_7, x_1);
x_9 = lean_array_push(x_8, x_2);
x_10 = lean_array_push(x_9, x_3);
x_11 = lean_array_push(x_10, x_4);
x_12 = lean_array_push(x_11, x_5);
x_13 = lean_array_push(x_12, x_6);
return x_13;
}
}
LEAN_EXPORT lean_object* l_Array_mkArray6(lean_object* x_1) {
_start:
{
lean_object* x_2;
x_2 = lean_alloc_closure((void*)(l_Array_mkArray6___rarg), 6, 0);
return x_2;
}
}
LEAN_EXPORT lean_object* l_Array_mkArray7___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) {
_start:
{
lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15;
x_8 = l_Array_mkArray1___rarg___closed__1;
x_9 = lean_array_push(x_8, x_1);
x_10 = lean_array_push(x_9, x_2);
x_11 = lean_array_push(x_10, x_3);
x_12 = lean_array_push(x_11, x_4);
x_13 = lean_array_push(x_12, x_5);
x_14 = lean_array_push(x_13, x_6);
x_15 = lean_array_push(x_14, x_7);
return x_15;
}
}
LEAN_EXPORT lean_object* l_Array_mkArray7(lean_object* x_1) {
_start:
{
lean_object* x_2;
x_2 = lean_alloc_closure((void*)(l_Array_mkArray7___rarg), 7, 0);
return x_2;
}
}
LEAN_EXPORT lean_object* l_Array_mkArray8___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) {
_start:
{
lean_object* x_9; lean_object* x_10; lean_object* x_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_9 = l_Array_mkArray1___rarg___closed__1;
x_10 = lean_array_push(x_9, x_1);
x_11 = lean_array_push(x_10, x_2);
x_12 = lean_array_push(x_11, x_3);
x_13 = lean_array_push(x_12, x_4);
x_14 = lean_array_push(x_13, x_5);
x_15 = lean_array_push(x_14, x_6);
x_16 = lean_array_push(x_15, x_7);
x_17 = lean_array_push(x_16, x_8);
return x_17;
}
}
LEAN_EXPORT lean_object* l_Array_mkArray8(lean_object* x_1) {
_start:
{
lean_object* x_2;
x_2 = lean_alloc_closure((void*)(l_Array_mkArray8___rarg), 8, 0);
return x_2;
}
}
LEAN_EXPORT lean_object* l_Array_set___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) {
_start:
{
@ -11324,6 +11523,8 @@ l_instLTPos = _init_l_instLTPos();
lean_mark_persistent(l_instLTPos);
l_Array_empty___closed__1 = _init_l_Array_empty___closed__1();
lean_mark_persistent(l_Array_empty___closed__1);
l_Array_mkArray1___rarg___closed__1 = _init_l_Array_mkArray1___rarg___closed__1();
lean_mark_persistent(l_Array_mkArray1___rarg___closed__1);
l_Applicative_seqLeft___default___rarg___closed__1 = _init_l_Applicative_seqLeft___default___rarg___closed__1();
lean_mark_persistent(l_Applicative_seqLeft___default___rarg___closed__1);
l_Applicative_seqRight___default___rarg___closed__1 = _init_l_Applicative_seqRight___default___rarg___closed__1();

File diff suppressed because it is too large Load diff