diff --git a/src/boot/init/data/array/basic.cpp b/src/boot/init/data/array/basic.cpp index 5140b45355..1abd9c53a1 100644 --- a/src/boot/init/data/array/basic.cpp +++ b/src/boot/init/data/array/basic.cpp @@ -81,7 +81,6 @@ obj* _l_s5_array_s5_write_s6___rarg_s11___lambda__1(obj*, obj*, obj*, obj*); obj* _l_s5_array_s5_uread(obj*); obj* _l_s5_array_s3_map_s6___rarg_s11___lambda__1(obj*, obj*, obj*); obj* _l_s5_array_s8_to__list_s6___rarg_s11___lambda__1(obj*, obj*); -obj* _l_s5_usize_s7_to__nat_s6___main(size_t); obj* _l_s9___private_717503411__s17_rev__iterate__aux_s6___rarg(obj*, obj*, obj*, obj*, obj*); obj* _l_s5_array_s3_nil_s11___closed__1; obj* _l_s5_array_s7_foreach_s6___rarg(obj*, obj*); @@ -323,7 +322,7 @@ obj* _l_s5_array_s5_uread_s6___rarg(obj* x_0, size_t x_1, obj* x_2) { { obj* x_4; obj* x_5; lean::dec(x_2); -x_4 = _l_s5_usize_s7_to__nat_s6___main(x_1); +x_4 = lean::usize_to_nat(x_1); x_5 = _l_s5_array_s4_read_s6___rarg(x_0, x_4); return x_5; } @@ -348,7 +347,7 @@ obj* _l_s5_array_s6_uwrite_s6___rarg(obj* x_0, size_t x_1, obj* x_2, obj* x_3) { { obj* x_5; obj* x_6; lean::dec(x_3); -x_5 = _l_s5_usize_s7_to__nat_s6___main(x_1); +x_5 = lean::usize_to_nat(x_1); x_6 = _l_s5_array_s5_write_s6___rarg(x_0, x_5, x_2); return x_6; } @@ -372,7 +371,7 @@ return x_5; obj* _l_s5_array_s9_uread_x27_s6___rarg(obj* x_0, obj* x_1, size_t x_2) { { obj* x_3; obj* x_4; obj* x_6; -x_3 = _l_s5_usize_s7_to__nat_s6___main(x_2); +x_3 = lean::usize_to_nat(x_2); x_4 = lean::cnstr_get(x_1, 0); lean::inc(x_4); x_6 = lean::nat_dec_lt(x_3, x_4); @@ -414,7 +413,7 @@ return x_4; obj* _l_s5_array_s10_uwrite_x27_s6___rarg(obj* x_0, size_t x_1, obj* x_2) { { obj* x_3; obj* x_4; obj* x_6; -x_3 = _l_s5_usize_s7_to__nat_s6___main(x_1); +x_3 = lean::usize_to_nat(x_1); x_4 = lean::cnstr_get(x_0, 0); lean::inc(x_4); x_6 = lean::nat_dec_lt(x_3, x_4); diff --git a/src/boot/init/data/hashable.cpp b/src/boot/init/data/hashable.cpp index 6c53884910..0cdecf4720 100644 --- a/src/boot/init/data/hashable.cpp +++ b/src/boot/init/data/hashable.cpp @@ -9,586 +9,6 @@ typedef lean::object obj; #if defined(__clang__) #pragma clang diagnostic ignored "-Wunused-parameter" #endif -obj* _l_s3_nat_s3_pow_s6___main(obj*, obj*); -obj* _l_s9_mix__hash(size_t, size_t); -obj* _l_s3_nat_s4_hash(obj*); -obj* _l_s9_mix__hash_s7___boxed(obj*, obj*); -obj* _l_s3_fin_s7_of__nat(obj*, obj*); -obj* _l_s3_nat_s8_hashable; -obj* _l_s6_string_s8_hashable; -obj* _l_s6_string_s4_hash(obj*); -obj* _l_s5_usize_s7_of__nat(obj*); -obj* _l_s9_mix__hash_s11___closed__1; -obj* _l_s9_mix__hash(size_t x_0, size_t x_1) { -{ -obj* x_2; -x_2 = _l_s9_mix__hash_s11___closed__1; -lean::inc(x_2); -return x_2; -} -} -obj* _init__l_s9_mix__hash_s11___closed__1() { -{ -obj* x_0; obj* x_1; obj* x_3; obj* x_4; obj* x_5; obj* x_7; obj* x_9; obj* x_10; obj* x_12; obj* x_14; obj* x_15; obj* x_17; obj* x_19; obj* x_20; obj* x_22; obj* x_24; obj* x_25; obj* x_27; obj* x_29; obj* x_30; obj* x_32; obj* x_34; obj* x_35; obj* x_37; obj* x_39; obj* x_40; obj* x_42; obj* x_44; obj* x_45; obj* x_47; obj* x_49; obj* x_50; obj* x_52; obj* x_54; obj* x_55; obj* x_57; obj* x_59; obj* x_60; obj* x_62; obj* x_64; obj* x_65; obj* x_67; obj* x_69; obj* x_70; obj* x_72; obj* x_74; obj* x_75; obj* x_77; obj* x_79; obj* x_80; obj* x_82; obj* x_84; obj* x_85; obj* x_87; obj* x_89; obj* x_90; obj* x_92; obj* x_94; obj* x_95; obj* x_97; obj* x_99; obj* x_100; obj* x_102; obj* x_104; obj* x_105; obj* x_107; obj* x_109; obj* x_110; obj* x_112; obj* x_114; obj* x_115; obj* x_117; obj* x_119; obj* x_120; obj* x_122; obj* x_124; obj* x_125; obj* x_127; obj* x_129; obj* x_130; obj* x_132; obj* x_134; obj* x_135; obj* x_137; obj* x_139; obj* x_140; obj* x_142; obj* x_144; obj* x_145; obj* x_147; obj* x_149; obj* x_150; obj* x_152; obj* x_154; obj* x_155; obj* x_157; obj* x_159; obj* x_160; obj* x_162; obj* x_164; obj* x_165; obj* x_167; obj* x_169; obj* x_170; obj* x_172; obj* x_174; obj* x_175; obj* x_177; obj* x_179; obj* x_180; obj* x_182; obj* x_184; obj* x_185; obj* x_187; obj* x_189; obj* x_190; obj* x_192; obj* x_194; obj* x_195; obj* x_197; obj* x_199; obj* x_200; obj* x_202; obj* x_204; obj* x_205; obj* x_207; obj* x_209; obj* x_210; obj* x_212; obj* x_214; obj* x_215; obj* x_217; obj* x_219; obj* x_220; obj* x_222; obj* x_224; obj* x_225; obj* x_227; obj* x_229; obj* x_230; obj* x_232; obj* x_234; obj* x_235; obj* x_237; obj* x_239; obj* x_240; obj* x_242; obj* x_244; obj* x_245; obj* x_247; obj* x_249; obj* x_250; obj* x_252; obj* x_254; obj* x_255; obj* x_257; obj* x_259; obj* x_260; obj* x_262; obj* x_264; obj* x_265; obj* x_267; obj* x_269; obj* x_270; obj* x_272; obj* x_274; obj* x_275; obj* x_277; obj* x_279; obj* x_280; obj* x_282; obj* x_284; obj* x_285; obj* x_287; obj* x_289; obj* x_290; obj* x_292; obj* x_294; obj* x_295; obj* x_297; obj* x_299; obj* x_300; obj* x_302; obj* x_304; obj* x_305; obj* x_309; obj* x_310; obj* x_314; obj* x_315; obj* x_317; obj* x_319; obj* x_320; obj* x_323; obj* x_325; obj* x_328; obj* x_331; obj* x_334; obj* x_337; obj* x_340; obj* x_343; obj* x_346; obj* x_349; obj* x_352; obj* x_355; obj* x_358; obj* x_361; obj* x_364; obj* x_367; obj* x_370; obj* x_373; obj* x_376; obj* x_379; obj* x_382; obj* x_385; obj* x_388; obj* x_391; obj* x_394; obj* x_397; obj* x_400; obj* x_403; obj* x_406; obj* x_409; obj* x_412; obj* x_415; obj* x_418; obj* x_421; obj* x_424; obj* x_427; obj* x_430; obj* x_433; obj* x_436; obj* x_439; obj* x_442; obj* x_445; obj* x_448; obj* x_451; obj* x_454; obj* x_457; obj* x_460; obj* x_463; obj* x_466; obj* x_469; obj* x_472; obj* x_475; obj* x_478; obj* x_481; obj* x_484; obj* x_487; obj* x_490; obj* x_493; obj* x_496; obj* x_499; obj* x_502; obj* x_505; obj* x_508; obj* x_511; obj* x_514; obj* x_515; -x_0 = lean::mk_nat_obj(2u); -x_1 = lean::mk_nat_obj(63u); -lean::inc(x_0); -x_3 = _l_s3_nat_s3_pow_s6___main(x_0, x_1); -x_4 = lean::mk_nat_obj(1u); -x_5 = lean::nat_mul(x_3, x_4); -lean::dec(x_3); -x_7 = lean::mk_nat_obj(62u); -lean::inc(x_0); -x_9 = _l_s3_nat_s3_pow_s6___main(x_0, x_7); -x_10 = lean::nat_mul(x_9, x_4); -lean::dec(x_9); -x_12 = lean::mk_nat_obj(61u); -lean::inc(x_0); -x_14 = _l_s3_nat_s3_pow_s6___main(x_0, x_12); -x_15 = lean::nat_mul(x_14, x_4); -lean::dec(x_14); -x_17 = lean::mk_nat_obj(60u); -lean::inc(x_0); -x_19 = _l_s3_nat_s3_pow_s6___main(x_0, x_17); -x_20 = lean::nat_mul(x_19, x_4); -lean::dec(x_19); -x_22 = lean::mk_nat_obj(59u); -lean::inc(x_0); -x_24 = _l_s3_nat_s3_pow_s6___main(x_0, x_22); -x_25 = lean::nat_mul(x_24, x_4); -lean::dec(x_24); -x_27 = lean::mk_nat_obj(58u); -lean::inc(x_0); -x_29 = _l_s3_nat_s3_pow_s6___main(x_0, x_27); -x_30 = lean::nat_mul(x_29, x_4); -lean::dec(x_29); -x_32 = lean::mk_nat_obj(57u); -lean::inc(x_0); -x_34 = _l_s3_nat_s3_pow_s6___main(x_0, x_32); -x_35 = lean::nat_mul(x_34, x_4); -lean::dec(x_34); -x_37 = lean::mk_nat_obj(56u); -lean::inc(x_0); -x_39 = _l_s3_nat_s3_pow_s6___main(x_0, x_37); -x_40 = lean::nat_mul(x_39, x_4); -lean::dec(x_39); -x_42 = lean::mk_nat_obj(55u); -lean::inc(x_0); -x_44 = _l_s3_nat_s3_pow_s6___main(x_0, x_42); -x_45 = lean::nat_mul(x_44, x_4); -lean::dec(x_44); -x_47 = lean::mk_nat_obj(54u); -lean::inc(x_0); -x_49 = _l_s3_nat_s3_pow_s6___main(x_0, x_47); -x_50 = lean::nat_mul(x_49, x_4); -lean::dec(x_49); -x_52 = lean::mk_nat_obj(53u); -lean::inc(x_0); -x_54 = _l_s3_nat_s3_pow_s6___main(x_0, x_52); -x_55 = lean::nat_mul(x_54, x_4); -lean::dec(x_54); -x_57 = lean::mk_nat_obj(52u); -lean::inc(x_0); -x_59 = _l_s3_nat_s3_pow_s6___main(x_0, x_57); -x_60 = lean::nat_mul(x_59, x_4); -lean::dec(x_59); -x_62 = lean::mk_nat_obj(51u); -lean::inc(x_0); -x_64 = _l_s3_nat_s3_pow_s6___main(x_0, x_62); -x_65 = lean::nat_mul(x_64, x_4); -lean::dec(x_64); -x_67 = lean::mk_nat_obj(50u); -lean::inc(x_0); -x_69 = _l_s3_nat_s3_pow_s6___main(x_0, x_67); -x_70 = lean::nat_mul(x_69, x_4); -lean::dec(x_69); -x_72 = lean::mk_nat_obj(49u); -lean::inc(x_0); -x_74 = _l_s3_nat_s3_pow_s6___main(x_0, x_72); -x_75 = lean::nat_mul(x_74, x_4); -lean::dec(x_74); -x_77 = lean::mk_nat_obj(48u); -lean::inc(x_0); -x_79 = _l_s3_nat_s3_pow_s6___main(x_0, x_77); -x_80 = lean::nat_mul(x_79, x_4); -lean::dec(x_79); -x_82 = lean::mk_nat_obj(47u); -lean::inc(x_0); -x_84 = _l_s3_nat_s3_pow_s6___main(x_0, x_82); -x_85 = lean::nat_mul(x_84, x_4); -lean::dec(x_84); -x_87 = lean::mk_nat_obj(46u); -lean::inc(x_0); -x_89 = _l_s3_nat_s3_pow_s6___main(x_0, x_87); -x_90 = lean::nat_mul(x_89, x_4); -lean::dec(x_89); -x_92 = lean::mk_nat_obj(45u); -lean::inc(x_0); -x_94 = _l_s3_nat_s3_pow_s6___main(x_0, x_92); -x_95 = lean::nat_mul(x_94, x_4); -lean::dec(x_94); -x_97 = lean::mk_nat_obj(44u); -lean::inc(x_0); -x_99 = _l_s3_nat_s3_pow_s6___main(x_0, x_97); -x_100 = lean::nat_mul(x_99, x_4); -lean::dec(x_99); -x_102 = lean::mk_nat_obj(43u); -lean::inc(x_0); -x_104 = _l_s3_nat_s3_pow_s6___main(x_0, x_102); -x_105 = lean::nat_mul(x_104, x_4); -lean::dec(x_104); -x_107 = lean::mk_nat_obj(42u); -lean::inc(x_0); -x_109 = _l_s3_nat_s3_pow_s6___main(x_0, x_107); -x_110 = lean::nat_mul(x_109, x_4); -lean::dec(x_109); -x_112 = lean::mk_nat_obj(41u); -lean::inc(x_0); -x_114 = _l_s3_nat_s3_pow_s6___main(x_0, x_112); -x_115 = lean::nat_mul(x_114, x_4); -lean::dec(x_114); -x_117 = lean::mk_nat_obj(40u); -lean::inc(x_0); -x_119 = _l_s3_nat_s3_pow_s6___main(x_0, x_117); -x_120 = lean::nat_mul(x_119, x_4); -lean::dec(x_119); -x_122 = lean::mk_nat_obj(39u); -lean::inc(x_0); -x_124 = _l_s3_nat_s3_pow_s6___main(x_0, x_122); -x_125 = lean::nat_mul(x_124, x_4); -lean::dec(x_124); -x_127 = lean::mk_nat_obj(38u); -lean::inc(x_0); -x_129 = _l_s3_nat_s3_pow_s6___main(x_0, x_127); -x_130 = lean::nat_mul(x_129, x_4); -lean::dec(x_129); -x_132 = lean::mk_nat_obj(37u); -lean::inc(x_0); -x_134 = _l_s3_nat_s3_pow_s6___main(x_0, x_132); -x_135 = lean::nat_mul(x_134, x_4); -lean::dec(x_134); -x_137 = lean::mk_nat_obj(36u); -lean::inc(x_0); -x_139 = _l_s3_nat_s3_pow_s6___main(x_0, x_137); -x_140 = lean::nat_mul(x_139, x_4); -lean::dec(x_139); -x_142 = lean::mk_nat_obj(35u); -lean::inc(x_0); -x_144 = _l_s3_nat_s3_pow_s6___main(x_0, x_142); -x_145 = lean::nat_mul(x_144, x_4); -lean::dec(x_144); -x_147 = lean::mk_nat_obj(34u); -lean::inc(x_0); -x_149 = _l_s3_nat_s3_pow_s6___main(x_0, x_147); -x_150 = lean::nat_mul(x_149, x_4); -lean::dec(x_149); -x_152 = lean::mk_nat_obj(33u); -lean::inc(x_0); -x_154 = _l_s3_nat_s3_pow_s6___main(x_0, x_152); -x_155 = lean::nat_mul(x_154, x_4); -lean::dec(x_154); -x_157 = lean::mk_nat_obj(32u); -lean::inc(x_0); -x_159 = _l_s3_nat_s3_pow_s6___main(x_0, x_157); -x_160 = lean::nat_mul(x_159, x_4); -lean::dec(x_159); -x_162 = lean::mk_nat_obj(31u); -lean::inc(x_0); -x_164 = _l_s3_nat_s3_pow_s6___main(x_0, x_162); -x_165 = lean::nat_mul(x_164, x_4); -lean::dec(x_164); -x_167 = lean::mk_nat_obj(30u); -lean::inc(x_0); -x_169 = _l_s3_nat_s3_pow_s6___main(x_0, x_167); -x_170 = lean::nat_mul(x_169, x_4); -lean::dec(x_169); -x_172 = lean::mk_nat_obj(29u); -lean::inc(x_0); -x_174 = _l_s3_nat_s3_pow_s6___main(x_0, x_172); -x_175 = lean::nat_mul(x_174, x_4); -lean::dec(x_174); -x_177 = lean::mk_nat_obj(28u); -lean::inc(x_0); -x_179 = _l_s3_nat_s3_pow_s6___main(x_0, x_177); -x_180 = lean::nat_mul(x_179, x_4); -lean::dec(x_179); -x_182 = lean::mk_nat_obj(27u); -lean::inc(x_0); -x_184 = _l_s3_nat_s3_pow_s6___main(x_0, x_182); -x_185 = lean::nat_mul(x_184, x_4); -lean::dec(x_184); -x_187 = lean::mk_nat_obj(26u); -lean::inc(x_0); -x_189 = _l_s3_nat_s3_pow_s6___main(x_0, x_187); -x_190 = lean::nat_mul(x_189, x_4); -lean::dec(x_189); -x_192 = lean::mk_nat_obj(25u); -lean::inc(x_0); -x_194 = _l_s3_nat_s3_pow_s6___main(x_0, x_192); -x_195 = lean::nat_mul(x_194, x_4); -lean::dec(x_194); -x_197 = lean::mk_nat_obj(24u); -lean::inc(x_0); -x_199 = _l_s3_nat_s3_pow_s6___main(x_0, x_197); -x_200 = lean::nat_mul(x_199, x_4); -lean::dec(x_199); -x_202 = lean::mk_nat_obj(23u); -lean::inc(x_0); -x_204 = _l_s3_nat_s3_pow_s6___main(x_0, x_202); -x_205 = lean::nat_mul(x_204, x_4); -lean::dec(x_204); -x_207 = lean::mk_nat_obj(22u); -lean::inc(x_0); -x_209 = _l_s3_nat_s3_pow_s6___main(x_0, x_207); -x_210 = lean::nat_mul(x_209, x_4); -lean::dec(x_209); -x_212 = lean::mk_nat_obj(21u); -lean::inc(x_0); -x_214 = _l_s3_nat_s3_pow_s6___main(x_0, x_212); -x_215 = lean::nat_mul(x_214, x_4); -lean::dec(x_214); -x_217 = lean::mk_nat_obj(20u); -lean::inc(x_0); -x_219 = _l_s3_nat_s3_pow_s6___main(x_0, x_217); -x_220 = lean::nat_mul(x_219, x_4); -lean::dec(x_219); -x_222 = lean::mk_nat_obj(19u); -lean::inc(x_0); -x_224 = _l_s3_nat_s3_pow_s6___main(x_0, x_222); -x_225 = lean::nat_mul(x_224, x_4); -lean::dec(x_224); -x_227 = lean::mk_nat_obj(18u); -lean::inc(x_0); -x_229 = _l_s3_nat_s3_pow_s6___main(x_0, x_227); -x_230 = lean::nat_mul(x_229, x_4); -lean::dec(x_229); -x_232 = lean::mk_nat_obj(17u); -lean::inc(x_0); -x_234 = _l_s3_nat_s3_pow_s6___main(x_0, x_232); -x_235 = lean::nat_mul(x_234, x_4); -lean::dec(x_234); -x_237 = lean::mk_nat_obj(16u); -lean::inc(x_0); -x_239 = _l_s3_nat_s3_pow_s6___main(x_0, x_237); -x_240 = lean::nat_mul(x_239, x_4); -lean::dec(x_239); -x_242 = lean::mk_nat_obj(15u); -lean::inc(x_0); -x_244 = _l_s3_nat_s3_pow_s6___main(x_0, x_242); -x_245 = lean::nat_mul(x_244, x_4); -lean::dec(x_244); -x_247 = lean::mk_nat_obj(14u); -lean::inc(x_0); -x_249 = _l_s3_nat_s3_pow_s6___main(x_0, x_247); -x_250 = lean::nat_mul(x_249, x_4); -lean::dec(x_249); -x_252 = lean::mk_nat_obj(13u); -lean::inc(x_0); -x_254 = _l_s3_nat_s3_pow_s6___main(x_0, x_252); -x_255 = lean::nat_mul(x_254, x_4); -lean::dec(x_254); -x_257 = lean::mk_nat_obj(12u); -lean::inc(x_0); -x_259 = _l_s3_nat_s3_pow_s6___main(x_0, x_257); -x_260 = lean::nat_mul(x_259, x_4); -lean::dec(x_259); -x_262 = lean::mk_nat_obj(11u); -lean::inc(x_0); -x_264 = _l_s3_nat_s3_pow_s6___main(x_0, x_262); -x_265 = lean::nat_mul(x_264, x_4); -lean::dec(x_264); -x_267 = lean::mk_nat_obj(10u); -lean::inc(x_0); -x_269 = _l_s3_nat_s3_pow_s6___main(x_0, x_267); -x_270 = lean::nat_mul(x_269, x_4); -lean::dec(x_269); -x_272 = lean::mk_nat_obj(9u); -lean::inc(x_0); -x_274 = _l_s3_nat_s3_pow_s6___main(x_0, x_272); -x_275 = lean::nat_mul(x_274, x_4); -lean::dec(x_274); -x_277 = lean::mk_nat_obj(8u); -lean::inc(x_0); -x_279 = _l_s3_nat_s3_pow_s6___main(x_0, x_277); -x_280 = lean::nat_mul(x_279, x_4); -lean::dec(x_279); -x_282 = lean::mk_nat_obj(7u); -lean::inc(x_0); -x_284 = _l_s3_nat_s3_pow_s6___main(x_0, x_282); -x_285 = lean::nat_mul(x_284, x_4); -lean::dec(x_284); -x_287 = lean::mk_nat_obj(6u); -lean::inc(x_0); -x_289 = _l_s3_nat_s3_pow_s6___main(x_0, x_287); -x_290 = lean::nat_mul(x_289, x_4); -lean::dec(x_289); -x_292 = lean::mk_nat_obj(5u); -lean::inc(x_0); -x_294 = _l_s3_nat_s3_pow_s6___main(x_0, x_292); -x_295 = lean::nat_mul(x_294, x_4); -lean::dec(x_294); -x_297 = lean::mk_nat_obj(4u); -lean::inc(x_0); -x_299 = _l_s3_nat_s3_pow_s6___main(x_0, x_297); -x_300 = lean::nat_mul(x_299, x_4); -lean::dec(x_299); -x_302 = lean::mk_nat_obj(3u); -lean::inc(x_0); -x_304 = _l_s3_nat_s3_pow_s6___main(x_0, x_302); -x_305 = lean::nat_mul(x_304, x_4); -lean::dec(x_304); -lean::inc(x_0); -lean::inc(x_0); -x_309 = _l_s3_nat_s3_pow_s6___main(x_0, x_0); -x_310 = lean::nat_mul(x_309, x_4); -lean::dec(x_309); -lean::inc(x_4); -lean::inc(x_0); -x_314 = _l_s3_nat_s3_pow_s6___main(x_0, x_4); -x_315 = lean::nat_mul(x_314, x_4); -lean::dec(x_314); -x_317 = lean::mk_nat_obj(0u); -lean::inc(x_317); -x_319 = _l_s3_nat_s3_pow_s6___main(x_0, x_317); -x_320 = lean::nat_mul(x_319, x_4); -lean::dec(x_4); -lean::dec(x_319); -x_323 = lean::nat_add(x_320, x_317); -lean::dec(x_320); -x_325 = lean::nat_add(x_315, x_323); -lean::dec(x_323); -lean::dec(x_315); -x_328 = lean::nat_add(x_310, x_325); -lean::dec(x_325); -lean::dec(x_310); -x_331 = lean::nat_add(x_305, x_328); -lean::dec(x_328); -lean::dec(x_305); -x_334 = lean::nat_add(x_300, x_331); -lean::dec(x_331); -lean::dec(x_300); -x_337 = lean::nat_add(x_295, x_334); -lean::dec(x_334); -lean::dec(x_295); -x_340 = lean::nat_add(x_290, x_337); -lean::dec(x_337); -lean::dec(x_290); -x_343 = lean::nat_add(x_285, x_340); -lean::dec(x_340); -lean::dec(x_285); -x_346 = lean::nat_add(x_280, x_343); -lean::dec(x_343); -lean::dec(x_280); -x_349 = lean::nat_add(x_275, x_346); -lean::dec(x_346); -lean::dec(x_275); -x_352 = lean::nat_add(x_270, x_349); -lean::dec(x_349); -lean::dec(x_270); -x_355 = lean::nat_add(x_265, x_352); -lean::dec(x_352); -lean::dec(x_265); -x_358 = lean::nat_add(x_260, x_355); -lean::dec(x_355); -lean::dec(x_260); -x_361 = lean::nat_add(x_255, x_358); -lean::dec(x_358); -lean::dec(x_255); -x_364 = lean::nat_add(x_250, x_361); -lean::dec(x_361); -lean::dec(x_250); -x_367 = lean::nat_add(x_245, x_364); -lean::dec(x_364); -lean::dec(x_245); -x_370 = lean::nat_add(x_240, x_367); -lean::dec(x_367); -lean::dec(x_240); -x_373 = lean::nat_add(x_235, x_370); -lean::dec(x_370); -lean::dec(x_235); -x_376 = lean::nat_add(x_230, x_373); -lean::dec(x_373); -lean::dec(x_230); -x_379 = lean::nat_add(x_225, x_376); -lean::dec(x_376); -lean::dec(x_225); -x_382 = lean::nat_add(x_220, x_379); -lean::dec(x_379); -lean::dec(x_220); -x_385 = lean::nat_add(x_215, x_382); -lean::dec(x_382); -lean::dec(x_215); -x_388 = lean::nat_add(x_210, x_385); -lean::dec(x_385); -lean::dec(x_210); -x_391 = lean::nat_add(x_205, x_388); -lean::dec(x_388); -lean::dec(x_205); -x_394 = lean::nat_add(x_200, x_391); -lean::dec(x_391); -lean::dec(x_200); -x_397 = lean::nat_add(x_195, x_394); -lean::dec(x_394); -lean::dec(x_195); -x_400 = lean::nat_add(x_190, x_397); -lean::dec(x_397); -lean::dec(x_190); -x_403 = lean::nat_add(x_185, x_400); -lean::dec(x_400); -lean::dec(x_185); -x_406 = lean::nat_add(x_180, x_403); -lean::dec(x_403); -lean::dec(x_180); -x_409 = lean::nat_add(x_175, x_406); -lean::dec(x_406); -lean::dec(x_175); -x_412 = lean::nat_add(x_170, x_409); -lean::dec(x_409); -lean::dec(x_170); -x_415 = lean::nat_add(x_165, x_412); -lean::dec(x_412); -lean::dec(x_165); -x_418 = lean::nat_add(x_160, x_415); -lean::dec(x_415); -lean::dec(x_160); -x_421 = lean::nat_add(x_155, x_418); -lean::dec(x_418); -lean::dec(x_155); -x_424 = lean::nat_add(x_150, x_421); -lean::dec(x_421); -lean::dec(x_150); -x_427 = lean::nat_add(x_145, x_424); -lean::dec(x_424); -lean::dec(x_145); -x_430 = lean::nat_add(x_140, x_427); -lean::dec(x_427); -lean::dec(x_140); -x_433 = lean::nat_add(x_135, x_430); -lean::dec(x_430); -lean::dec(x_135); -x_436 = lean::nat_add(x_130, x_433); -lean::dec(x_433); -lean::dec(x_130); -x_439 = lean::nat_add(x_125, x_436); -lean::dec(x_436); -lean::dec(x_125); -x_442 = lean::nat_add(x_120, x_439); -lean::dec(x_439); -lean::dec(x_120); -x_445 = lean::nat_add(x_115, x_442); -lean::dec(x_442); -lean::dec(x_115); -x_448 = lean::nat_add(x_110, x_445); -lean::dec(x_445); -lean::dec(x_110); -x_451 = lean::nat_add(x_105, x_448); -lean::dec(x_448); -lean::dec(x_105); -x_454 = lean::nat_add(x_100, x_451); -lean::dec(x_451); -lean::dec(x_100); -x_457 = lean::nat_add(x_95, x_454); -lean::dec(x_454); -lean::dec(x_95); -x_460 = lean::nat_add(x_90, x_457); -lean::dec(x_457); -lean::dec(x_90); -x_463 = lean::nat_add(x_85, x_460); -lean::dec(x_460); -lean::dec(x_85); -x_466 = lean::nat_add(x_80, x_463); -lean::dec(x_463); -lean::dec(x_80); -x_469 = lean::nat_add(x_75, x_466); -lean::dec(x_466); -lean::dec(x_75); -x_472 = lean::nat_add(x_70, x_469); -lean::dec(x_469); -lean::dec(x_70); -x_475 = lean::nat_add(x_65, x_472); -lean::dec(x_472); -lean::dec(x_65); -x_478 = lean::nat_add(x_60, x_475); -lean::dec(x_475); -lean::dec(x_60); -x_481 = lean::nat_add(x_55, x_478); -lean::dec(x_478); -lean::dec(x_55); -x_484 = lean::nat_add(x_50, x_481); -lean::dec(x_481); -lean::dec(x_50); -x_487 = lean::nat_add(x_45, x_484); -lean::dec(x_484); -lean::dec(x_45); -x_490 = lean::nat_add(x_40, x_487); -lean::dec(x_487); -lean::dec(x_40); -x_493 = lean::nat_add(x_35, x_490); -lean::dec(x_490); -lean::dec(x_35); -x_496 = lean::nat_add(x_30, x_493); -lean::dec(x_493); -lean::dec(x_30); -x_499 = lean::nat_add(x_25, x_496); -lean::dec(x_496); -lean::dec(x_25); -x_502 = lean::nat_add(x_20, x_499); -lean::dec(x_499); -lean::dec(x_20); -x_505 = lean::nat_add(x_15, x_502); -lean::dec(x_502); -lean::dec(x_15); -x_508 = lean::nat_add(x_10, x_505); -lean::dec(x_505); -lean::dec(x_10); -x_511 = lean::nat_add(x_5, x_508); -lean::dec(x_508); -lean::dec(x_5); -x_514 = _l_s3_fin_s7_of__nat(x_511, x_317); -x_515 = lean::alloc_cnstr(0, 1, 0); -lean::cnstr_set(x_515, 0, x_514); -return x_515; -} -} -obj* _l_s9_mix__hash_s7___boxed(obj* x_0, obj* x_1) { -{ -size_t x_2; size_t x_3; obj* x_4; -x_2 = lean::unbox_size_t(x_0); -x_3 = lean::unbox_size_t(x_1); -x_4 = _l_s9_mix__hash(x_2, x_3); -return x_4; -} -} -obj* _l_s6_string_s4_hash(obj* x_0) { -{ -obj* x_2; -lean::dec(x_0); -x_2 = _l_s9_mix__hash_s11___closed__1; -lean::inc(x_2); -return x_2; -} -} -obj* _init__l_s6_string_s8_hashable() { -{ -obj* x_0; -x_0 = lean::alloc_closure(reinterpret_cast(_l_s6_string_s4_hash), 1, 0); -return x_0; -} -} -obj* _l_s3_nat_s4_hash(obj* x_0) { -{ -obj* x_1; -x_1 = _l_s5_usize_s7_of__nat(x_0); -return x_1; -} -} -obj* _init__l_s3_nat_s8_hashable() { -{ -obj* x_0; -x_0 = lean::alloc_closure(reinterpret_cast(_l_s3_nat_s4_hash), 1, 0); -return x_0; -} -} void _l_initialize__l_s4_init_s4_data_s5_usize(); void _l_initialize__l_s4_init_s4_data_s6_string_s7_default(); static bool _G_initialized = false; @@ -597,7 +17,4 @@ void _l_initialize__l_s4_init_s4_data_s8_hashable() { _G_initialized = true; _l_initialize__l_s4_init_s4_data_s5_usize(); _l_initialize__l_s4_init_s4_data_s6_string_s7_default(); - _l_s9_mix__hash_s11___closed__1 = _init__l_s9_mix__hash_s11___closed__1(); - _l_s6_string_s8_hashable = _init__l_s6_string_s8_hashable(); - _l_s3_nat_s8_hashable = _init__l_s3_nat_s8_hashable(); } diff --git a/src/boot/init/data/hashmap/basic.cpp b/src/boot/init/data/hashmap/basic.cpp index 269fc2aa6d..40ec234ec2 100644 --- a/src/boot/init/data/hashmap/basic.cpp +++ b/src/boot/init/data/hashmap/basic.cpp @@ -17,7 +17,6 @@ obj* _l_s12_hashmap__imp_s13_fold__buckets(obj*, obj*, obj*); obj* _l_s12_hashmap__imp_s10_erase__aux_s6___main_s6___rarg(obj*, obj*, obj*); obj* _l_s16_mk__hashmap__imp_s6___rarg_s11___closed__1; obj* _l_s12_hashmap__imp_s4_find(obj*, obj*); -obj* _l_s5_usize_s4_modn_s6___main(size_t, obj*); obj* _l_s7_hashmap_s8_contains(obj*, obj*); obj* _l_s12_hashmap__imp_s9_find__aux(obj*, obj*); obj* _l_s12_hashmap__imp_s6_insert(obj*, obj*); @@ -26,7 +25,7 @@ obj* _l_s11_mk__hashmap(obj*, obj*, obj*, obj*); obj* _l_s9_mk__array_s6___rarg(obj*, obj*); obj* _l_s7_hashmap; obj* _l_s12_hashmap__imp_s13_contains__aux_s6___rarg_s7___boxed(obj*, obj*, obj*); -obj* _l_s12_hashmap__imp_s7_mk__idx(obj*, obj*, size_t); +size_t _l_s12_hashmap__imp_s7_mk__idx(obj*, obj*, size_t); obj* _l_s5_array_s5_foldl_s6___rarg(obj*, obj*, obj*); obj* _l_s7_hashmap_s5_erase_s6___rarg(obj*, obj*, obj*, obj*); obj* _l_s12_hashmap__imp_s9_find__aux_s6___main(obj*, obj*); @@ -177,44 +176,45 @@ x_4 = lean::alloc_closure(reinterpret_cast(_l_s16_mk__hashmap__imp_s6___r return x_4; } } -obj* _l_s12_hashmap__imp_s7_mk__idx(obj* x_0, obj* x_1, size_t x_2) { +size_t _l_s12_hashmap__imp_s7_mk__idx(obj* x_0, obj* x_1, size_t x_2) { { -obj* x_4; +size_t x_4; lean::dec(x_1); -x_4 = _l_s5_usize_s4_modn_s6___main(x_2, x_0); +x_4 = lean::usize_modn(x_2, x_0); +lean::dec(x_0); return x_4; } } obj* _l_s12_hashmap__imp_s7_mk__idx_s7___boxed(obj* x_0, obj* x_1, obj* x_2) { { -size_t x_3; obj* x_4; +size_t x_3; size_t x_4; obj* x_5; x_3 = lean::unbox_size_t(x_2); x_4 = _l_s12_hashmap__imp_s7_mk__idx(x_0, x_1, x_3); -return x_4; +x_5 = lean::box_size_t(x_4); +return x_5; } } obj* _l_s12_hashmap__imp_s13_reinsert__aux_s6___rarg(obj* x_0, obj* x_1, obj* x_2, obj* x_3) { { -obj* x_4; obj* x_7; size_t x_8; obj* x_10; obj* x_11; size_t x_12; obj* x_15; obj* x_16; obj* x_17; +obj* x_4; obj* x_7; size_t x_8; size_t x_10; obj* x_12; obj* x_14; obj* x_15; obj* x_16; x_4 = lean::cnstr_get(x_1, 0); lean::inc(x_4); lean::inc(x_2); x_7 = lean::apply_1(x_0, x_2); x_8 = lean::unbox_size_t(x_7); lean::dec(x_7); -x_10 = _l_s5_usize_s4_modn_s6___main(x_8, x_4); -x_11 = lean::alloc_cnstr(0, 2, 0); -lean::cnstr_set(x_11, 0, x_2); -lean::cnstr_set(x_11, 1, x_3); -x_12 = lean::unbox_size_t(x_10); -lean::dec(x_10); +x_10 = lean::usize_modn(x_8, x_4); +lean::dec(x_4); +x_12 = lean::alloc_cnstr(0, 2, 0); +lean::cnstr_set(x_12, 0, x_2); +lean::cnstr_set(x_12, 1, x_3); lean::inc(x_1); -x_15 = _l_s5_array_s5_uread_s6___rarg(x_1, x_12, lean::box(0)); -x_16 = lean::alloc_cnstr(1, 2, 0); -lean::cnstr_set(x_16, 0, x_11); -lean::cnstr_set(x_16, 1, x_15); -x_17 = _l_s5_array_s6_uwrite_s6___rarg(x_1, x_12, x_16, lean::box(0)); -return x_17; +x_14 = _l_s5_array_s5_uread_s6___rarg(x_1, x_10, lean::box(0)); +x_15 = lean::alloc_cnstr(1, 2, 0); +lean::cnstr_set(x_15, 0, x_12); +lean::cnstr_set(x_15, 1, x_14); +x_16 = _l_s5_array_s6_uwrite_s6___rarg(x_1, x_10, x_15, lean::box(0)); +return x_16; } } obj* _l_s12_hashmap__imp_s13_reinsert__aux(obj* x_0, obj* x_1) { @@ -395,7 +395,7 @@ return x_4; } obj* _l_s12_hashmap__imp_s4_find_s6___rarg(obj* x_0, obj* x_1, obj* x_2, obj* x_3) { { -obj* x_4; obj* x_7; obj* x_10; size_t x_11; obj* x_13; size_t x_14; obj* x_16; obj* x_17; +obj* x_4; obj* x_7; obj* x_10; size_t x_11; size_t x_13; obj* x_15; obj* x_16; x_4 = lean::cnstr_get(x_2, 1); lean::inc(x_4); lean::dec(x_2); @@ -405,12 +405,11 @@ lean::inc(x_3); x_10 = lean::apply_1(x_1, x_3); x_11 = lean::unbox_size_t(x_10); lean::dec(x_10); -x_13 = _l_s5_usize_s4_modn_s6___main(x_11, x_7); -x_14 = lean::unbox_size_t(x_13); -lean::dec(x_13); -x_16 = _l_s5_array_s5_uread_s6___rarg(x_4, x_14, lean::box(0)); -x_17 = _l_s12_hashmap__imp_s9_find__aux_s6___main_s6___rarg(x_0, x_3, x_16); -return x_17; +x_13 = lean::usize_modn(x_11, x_7); +lean::dec(x_7); +x_15 = _l_s5_array_s5_uread_s6___rarg(x_4, x_13, lean::box(0)); +x_16 = _l_s12_hashmap__imp_s9_find__aux_s6___main_s6___rarg(x_0, x_3, x_15); +return x_16; } } obj* _l_s12_hashmap__imp_s4_find(obj* x_0, obj* x_1) { @@ -617,7 +616,7 @@ return x_4; } obj* _l_s12_hashmap__imp_s6_insert_s6___rarg(obj* x_0, obj* x_1, obj* x_2, obj* x_3, obj* x_4) { { -obj* x_5; obj* x_7; obj* x_9; obj* x_10; obj* x_14; size_t x_15; obj* x_18; size_t x_19; obj* x_22; unsigned char x_26; +obj* x_5; obj* x_7; obj* x_9; obj* x_10; obj* x_14; size_t x_15; size_t x_17; obj* x_19; unsigned char x_23; x_5 = lean::cnstr_get(x_2, 0); lean::inc(x_5); x_7 = lean::cnstr_get(x_2, 1); @@ -637,86 +636,83 @@ lean::inc(x_1); x_14 = lean::apply_1(x_1, x_3); x_15 = lean::unbox_size_t(x_14); lean::dec(x_14); -lean::inc(x_10); -x_18 = _l_s5_usize_s4_modn_s6___main(x_15, x_10); -x_19 = lean::unbox_size_t(x_18); -lean::dec(x_18); +x_17 = lean::usize_modn(x_15, x_10); lean::inc(x_7); -x_22 = _l_s5_array_s5_uread_s6___rarg(x_7, x_19, lean::box(0)); -lean::inc(x_22); +x_19 = _l_s5_array_s5_uread_s6___rarg(x_7, x_17, lean::box(0)); +lean::inc(x_19); lean::inc(x_3); lean::inc(x_0); -x_26 = _l_s12_hashmap__imp_s13_contains__aux_s6___rarg(x_0, x_3, x_22); -if (x_26 == 0) +x_23 = _l_s12_hashmap__imp_s13_contains__aux_s6___rarg(x_0, x_3, x_19); +if (x_23 == 0) { -obj* x_28; obj* x_29; obj* x_32; obj* x_33; obj* x_34; obj* x_35; +obj* x_25; obj* x_26; obj* x_29; obj* x_30; obj* x_31; obj* x_32; lean::dec(x_0); -x_28 = lean::mk_nat_obj(1u); -x_29 = lean::nat_add(x_5, x_28); -lean::dec(x_28); +x_25 = lean::mk_nat_obj(1u); +x_26 = lean::nat_add(x_5, x_25); +lean::dec(x_25); lean::dec(x_5); -x_32 = lean::alloc_cnstr(0, 2, 0); -lean::cnstr_set(x_32, 0, x_3); -lean::cnstr_set(x_32, 1, x_4); -x_33 = lean::alloc_cnstr(1, 2, 0); -lean::cnstr_set(x_33, 0, x_32); -lean::cnstr_set(x_33, 1, x_22); -x_34 = _l_s5_array_s6_uwrite_s6___rarg(x_7, x_19, x_33, lean::box(0)); -x_35 = lean::nat_dec_le(x_29, x_10); -if (lean::obj_tag(x_35) == 0) +x_29 = lean::alloc_cnstr(0, 2, 0); +lean::cnstr_set(x_29, 0, x_3); +lean::cnstr_set(x_29, 1, x_4); +x_30 = lean::alloc_cnstr(1, 2, 0); +lean::cnstr_set(x_30, 0, x_29); +lean::cnstr_set(x_30, 1, x_19); +x_31 = _l_s5_array_s6_uwrite_s6___rarg(x_7, x_17, x_30, lean::box(0)); +x_32 = lean::nat_dec_le(x_26, x_10); +if (lean::obj_tag(x_32) == 0) { -obj* x_37; obj* x_38; obj* x_41; obj* x_42; obj* x_43; obj* x_44; obj* x_45; -lean::dec(x_35); -x_37 = lean::mk_nat_obj(2u); -x_38 = lean::nat_mul(x_10, x_37); -lean::dec(x_37); +obj* x_34; obj* x_35; obj* x_38; obj* x_39; obj* x_40; obj* x_41; obj* x_42; +lean::dec(x_32); +x_34 = lean::mk_nat_obj(2u); +x_35 = lean::nat_mul(x_10, x_34); +lean::dec(x_34); lean::dec(x_10); -x_41 = lean::alloc_cnstr(0, 0, 0); +x_38 = lean::alloc_cnstr(0, 0, 0); ; -x_42 = _l_s9_mk__array_s6___rarg(x_38, x_41); -x_43 = lean::alloc_closure(reinterpret_cast(_l_s12_hashmap__imp_s13_reinsert__aux_s6___rarg), 4, 1); -lean::closure_set(x_43, 0, x_1); -x_44 = _l_s12_hashmap__imp_s13_fold__buckets_s6___rarg(x_34, x_42, x_43); +x_39 = _l_s9_mk__array_s6___rarg(x_35, x_38); +x_40 = lean::alloc_closure(reinterpret_cast(_l_s12_hashmap__imp_s13_reinsert__aux_s6___rarg), 4, 1); +lean::closure_set(x_40, 0, x_1); +x_41 = _l_s12_hashmap__imp_s13_fold__buckets_s6___rarg(x_31, x_39, x_40); if (lean::is_scalar(x_9)) { - x_45 = lean::alloc_cnstr(0, 2, 0); + x_42 = lean::alloc_cnstr(0, 2, 0); } else { - x_45 = x_9; + x_42 = x_9; } -lean::cnstr_set(x_45, 0, x_29); -lean::cnstr_set(x_45, 1, x_44); -return x_45; +lean::cnstr_set(x_42, 0, x_26); +lean::cnstr_set(x_42, 1, x_41); +return x_42; } else { -obj* x_49; +obj* x_46; lean::dec(x_10); lean::dec(x_1); -lean::dec(x_35); +lean::dec(x_32); if (lean::is_scalar(x_9)) { - x_49 = lean::alloc_cnstr(0, 2, 0); + x_46 = lean::alloc_cnstr(0, 2, 0); } else { - x_49 = x_9; + x_46 = x_9; } -lean::cnstr_set(x_49, 0, x_29); -lean::cnstr_set(x_49, 1, x_34); -return x_49; +lean::cnstr_set(x_46, 0, x_26); +lean::cnstr_set(x_46, 1, x_31); +return x_46; } } else { -obj* x_52; obj* x_53; obj* x_54; +obj* x_49; obj* x_50; obj* x_51; lean::dec(x_10); lean::dec(x_1); -x_52 = _l_s12_hashmap__imp_s12_replace__aux_s6___main_s6___rarg(x_0, x_3, x_4, x_22); -x_53 = _l_s5_array_s6_uwrite_s6___rarg(x_7, x_19, x_52, lean::box(0)); +x_49 = _l_s12_hashmap__imp_s12_replace__aux_s6___main_s6___rarg(x_0, x_3, x_4, x_19); +x_50 = _l_s5_array_s6_uwrite_s6___rarg(x_7, x_17, x_49, lean::box(0)); if (lean::is_scalar(x_9)) { - x_54 = lean::alloc_cnstr(0, 2, 0); + x_51 = lean::alloc_cnstr(0, 2, 0); } else { - x_54 = x_9; + x_51 = x_9; } -lean::cnstr_set(x_54, 0, x_5); -lean::cnstr_set(x_54, 1, x_53); -return x_54; +lean::cnstr_set(x_51, 0, x_5); +lean::cnstr_set(x_51, 1, x_50); +return x_51; } } } @@ -731,7 +727,7 @@ return x_4; } obj* _l_s12_hashmap__imp_s5_erase_s6___rarg(obj* x_0, obj* x_1, obj* x_2, obj* x_3) { { -obj* x_4; obj* x_6; obj* x_8; obj* x_11; size_t x_12; obj* x_14; size_t x_15; obj* x_18; unsigned char x_22; +obj* x_4; obj* x_6; obj* x_8; obj* x_11; size_t x_12; size_t x_14; obj* x_17; unsigned char x_21; x_4 = lean::cnstr_get(x_2, 0); lean::inc(x_4); x_6 = lean::cnstr_get(x_2, 1); @@ -742,19 +738,18 @@ lean::inc(x_3); x_11 = lean::apply_1(x_1, x_3); x_12 = lean::unbox_size_t(x_11); lean::dec(x_11); -x_14 = _l_s5_usize_s4_modn_s6___main(x_12, x_8); -x_15 = lean::unbox_size_t(x_14); -lean::dec(x_14); +x_14 = lean::usize_modn(x_12, x_8); +lean::dec(x_8); lean::inc(x_6); -x_18 = _l_s5_array_s5_uread_s6___rarg(x_6, x_15, lean::box(0)); -lean::inc(x_18); +x_17 = _l_s5_array_s5_uread_s6___rarg(x_6, x_14, lean::box(0)); +lean::inc(x_17); lean::inc(x_3); lean::inc(x_0); -x_22 = _l_s12_hashmap__imp_s13_contains__aux_s6___rarg(x_0, x_3, x_18); -if (x_22 == 0) +x_21 = _l_s12_hashmap__imp_s13_contains__aux_s6___rarg(x_0, x_3, x_17); +if (x_21 == 0) { -lean::dec(x_18); +lean::dec(x_17); lean::dec(x_4); lean::dec(x_6); lean::dec(x_0); @@ -763,18 +758,18 @@ return x_2; } else { -obj* x_29; obj* x_30; obj* x_33; obj* x_34; obj* x_35; +obj* x_28; obj* x_29; obj* x_32; obj* x_33; obj* x_34; lean::dec(x_2); -x_29 = lean::mk_nat_obj(1u); -x_30 = lean::nat_sub(x_4, x_29); -lean::dec(x_29); +x_28 = lean::mk_nat_obj(1u); +x_29 = lean::nat_sub(x_4, x_28); +lean::dec(x_28); lean::dec(x_4); -x_33 = _l_s12_hashmap__imp_s10_erase__aux_s6___main_s6___rarg(x_0, x_3, x_18); -x_34 = _l_s5_array_s6_uwrite_s6___rarg(x_6, x_15, x_33, lean::box(0)); -x_35 = lean::alloc_cnstr(0, 2, 0); -lean::cnstr_set(x_35, 0, x_30); -lean::cnstr_set(x_35, 1, x_34); -return x_35; +x_32 = _l_s12_hashmap__imp_s10_erase__aux_s6___main_s6___rarg(x_0, x_3, x_17); +x_33 = _l_s5_array_s6_uwrite_s6___rarg(x_6, x_14, x_32, lean::box(0)); +x_34 = lean::alloc_cnstr(0, 2, 0); +lean::cnstr_set(x_34, 0, x_29); +lean::cnstr_set(x_34, 1, x_33); +return x_34; } } } diff --git a/src/boot/init/data/repr.cpp b/src/boot/init/data/repr.cpp index 4c5ee841e8..4acd5060b2 100644 --- a/src/boot/init/data/repr.cpp +++ b/src/boot/init/data/repr.cpp @@ -65,11 +65,9 @@ obj* _l_s6_option_s9_has__repr_s6___rarg_s11___closed__1; obj* _l_s3_nat_s11_digit__char_s12___closed__27; obj* _l_s6_option_s9_has__repr(obj*); obj* _l_s3_nat_s11_digit__char_s12___closed__43; -obj* _l_s6_uint32_s7_to__nat_s6___main(unsigned); obj* _l_s3_nat_s11_digit__char_s12___closed__18; obj* _l_s4_list_s9_has__repr(obj*); obj* _l_s3_nat_s11_digit__char_s12___closed__29; -obj* _l_s6_uint16_s7_to__nat_s6___main(unsigned short); obj* _l_s3_nat_s11_digit__char_s12___closed__34; obj* _l_s3_nat_s11_digit__char_s11___closed__8; obj* _l_s4_list_s9_repr__aux_s6___main_s6___rarg_s11___closed__1; @@ -89,7 +87,6 @@ obj* _l_s6_uint16_s9_has__repr(unsigned short); obj* _l_s3_nat_s11_digit__char_s12___closed__28; obj* _l_s6_uint16_s9_has__repr_s7___boxed(obj*); obj* _l_s6_uint64_s9_has__repr_s7___boxed(obj*); -obj* _l_s6_uint64_s7_to__nat_s6___main(unsigned long long); obj* _l_s3_nat_s11_digit__char_s11___closed__5; obj* _l_s6_option_s9_has__repr_s6___rarg_s11___closed__3; unsigned char _l_s6_string_s9_is__empty(obj*); @@ -135,7 +132,6 @@ obj* _l_s4_list_s9_repr__aux_s6___rarg_s7___boxed(obj*, obj*, obj*); obj* _l_s3_nat_s11_digit__char_s12___closed__20; obj* _l_s4_char_s11_quote__core_s11___closed__4; obj* _l_s3_nat_s11_digit__char_s11___closed__6; -obj* _l_s5_usize_s7_to__nat_s6___main(size_t); obj* _l_s4_list_s9_repr__aux_s6___main_s6___rarg_s7___boxed(obj*, obj*, obj*); obj* _l_s6_string_s8_iterator_s9_has__repr_s11___closed__1; obj* _l_s3_nat_s11_digit__char_s12___closed__15; @@ -3298,7 +3294,7 @@ return x_2; obj* _l_s6_uint16_s9_has__repr(unsigned short x_0) { { obj* x_1; obj* x_2; -x_1 = _l_s6_uint16_s7_to__nat_s6___main(x_0); +x_1 = lean::uint16_to_nat(x_0); x_2 = _l_s3_nat_s4_repr(x_1); return x_2; } @@ -3314,7 +3310,7 @@ return x_2; obj* _l_s6_uint32_s9_has__repr(unsigned x_0) { { obj* x_1; obj* x_2; -x_1 = _l_s6_uint32_s7_to__nat_s6___main(x_0); +x_1 = lean::uint32_to_nat(x_0); x_2 = _l_s3_nat_s4_repr(x_1); return x_2; } @@ -3330,7 +3326,7 @@ return x_2; obj* _l_s6_uint64_s9_has__repr(unsigned long long x_0) { { obj* x_1; obj* x_2; -x_1 = _l_s6_uint64_s7_to__nat_s6___main(x_0); +x_1 = lean::uint64_to_nat(x_0); x_2 = _l_s3_nat_s4_repr(x_1); return x_2; } @@ -3346,7 +3342,7 @@ return x_2; obj* _l_s5_usize_s9_has__repr(size_t x_0) { { obj* x_1; obj* x_2; -x_1 = _l_s5_usize_s7_to__nat_s6___main(x_0); +x_1 = lean::usize_to_nat(x_0); x_2 = _l_s3_nat_s4_repr(x_1); return x_2; } diff --git a/src/boot/init/data/to_string.cpp b/src/boot/init/data/to_string.cpp index b0758b95a6..f6634e7a3a 100644 --- a/src/boot/init/data/to_string.cpp +++ b/src/boot/init/data/to_string.cpp @@ -33,17 +33,14 @@ obj* _l_s6_option_s9_has__repr_s6___rarg_s11___closed__1; obj* _l_s5_sigma_s15_has__to__string_s6___rarg(obj*, obj*, obj*); obj* _l_s7_subtype_s15_has__to__string_s6___rarg(obj*, obj*); obj* _l_s9_decidable_s15_has__to__string_s6___rarg(obj*); -obj* _l_s6_uint32_s7_to__nat_s6___main(unsigned); obj* _l_s4_list_s15_to__string__aux(obj*); obj* _l_s4_prod_s15_has__to__string(obj*, obj*); -obj* _l_s6_uint16_s7_to__nat_s6___main(unsigned short); obj* _l_s4_list_s9_repr__aux_s6___main_s6___rarg_s11___closed__1; obj* _l_s4_char_s15_has__to__string_s7___boxed(obj*); obj* _l_s9_decidable_s15_has__to__string(obj*); obj* _l_s4_bool_s15_has__to__string(unsigned char); obj* _l_s4_bool_s15_has__to__string_s7___boxed(obj*); obj* _l_s4_list_s10_to__string_s6___main_s6___rarg(obj*, obj*); -obj* _l_s6_uint64_s7_to__nat_s6___main(unsigned long long); obj* _l_s6_option_s9_has__repr_s6___rarg_s11___closed__3; obj* _l_s5_usize_s15_has__to__string(size_t); obj* _l_s3_sum_s9_has__repr_s6___rarg_s11___closed__2; @@ -69,7 +66,6 @@ obj* _l_s4_list_s15_to__string__aux_s6___main_s6___rarg_s7___boxed(obj*, obj*, o obj* _l_s6_string_s15_has__to__string(obj*); obj* _l_s7_subtype_s15_has__to__string(obj*, obj*); obj* _l_s4_char_s15_has__to__string(unsigned); -obj* _l_s5_usize_s7_to__nat_s6___main(size_t); obj* _l_s5_usize_s15_has__to__string_s7___boxed(obj*); obj* _l_s5_sigma_s15_has__to__string(obj*, obj*); obj* _l_s6_uint64_s15_has__to__string(unsigned long long); @@ -388,7 +384,7 @@ return x_2; obj* _l_s6_uint16_s15_has__to__string(unsigned short x_0) { { obj* x_1; obj* x_2; -x_1 = _l_s6_uint16_s7_to__nat_s6___main(x_0); +x_1 = lean::uint16_to_nat(x_0); x_2 = _l_s3_nat_s4_repr(x_1); return x_2; } @@ -404,7 +400,7 @@ return x_2; obj* _l_s6_uint32_s15_has__to__string(unsigned x_0) { { obj* x_1; obj* x_2; -x_1 = _l_s6_uint32_s7_to__nat_s6___main(x_0); +x_1 = lean::uint32_to_nat(x_0); x_2 = _l_s3_nat_s4_repr(x_1); return x_2; } @@ -420,7 +416,7 @@ return x_2; obj* _l_s6_uint64_s15_has__to__string(unsigned long long x_0) { { obj* x_1; obj* x_2; -x_1 = _l_s6_uint64_s7_to__nat_s6___main(x_0); +x_1 = lean::uint64_to_nat(x_0); x_2 = _l_s3_nat_s4_repr(x_1); return x_2; } @@ -436,7 +432,7 @@ return x_2; obj* _l_s5_usize_s15_has__to__string(size_t x_0) { { obj* x_1; obj* x_2; -x_1 = _l_s5_usize_s7_to__nat_s6___main(x_0); +x_1 = lean::usize_to_nat(x_0); x_2 = _l_s3_nat_s4_repr(x_1); return x_2; } diff --git a/src/boot/init/data/uint.cpp b/src/boot/init/data/uint.cpp index 4993ba6d6b..16efb7357c 100644 --- a/src/boot/init/data/uint.cpp +++ b/src/boot/init/data/uint.cpp @@ -9,624 +9,218 @@ typedef lean::object obj; #if defined(__clang__) #pragma clang diagnostic ignored "-Wunused-parameter" #endif -obj* _l_s5_uint8_s4_modn_s6___main_s7___boxed(obj*, obj*); obj* _l_s6_uint32_s7_has__le; -obj* _l_s6_uint32_s3_div_s6___main(unsigned, unsigned); -obj* _l_s6_uint16_s3_div(unsigned short, unsigned short); -obj* _l_s6_uint16_s3_mod_s6___main(unsigned short, unsigned short); -obj* _l_s6_uint32_s3_mul_s6___main_s7___boxed(obj*, obj*); obj* _l_s5_uint8_s8_has__div; -obj* _l_s5_uint8_s7_to__nat(unsigned char); obj* _l_s6_uint64_s3_sub_s7___boxed(obj*, obj*); -obj* _l_s6_uint32_s7_dec__le_s6___main_s7___boxed(obj*, obj*); -obj* _l_s5_uint8_s9_inhabited; +unsigned char _l_s5_uint8_s9_inhabited; obj* _l_s6_uint16_s3_sub_s7___boxed(obj*, obj*); obj* _l_s6_uint16_s2_le; -obj* _l_s5_uint8_s7_dec__eq_s6___main_s7___boxed(obj*, obj*); obj* _l_s5_uint8_s3_mul_s7___boxed(obj*, obj*); obj* _l_s6_uint16_s7_dec__le_s7___boxed(obj*, obj*); obj* _l_s6_uint32_s18_has__decidable__lt(unsigned, unsigned); -obj* _l_s6_uint64_s7_dec__eq_s6___main_s7___boxed(obj*, obj*); -obj* _l_s6_uint16_s7_dec__le(unsigned short, unsigned short); -obj* _l_s6_uint32_s7_dec__lt_s6___main_s7___boxed(obj*, obj*); -obj* _l_s6_uint32_s7_dec__le_s6___main(unsigned, unsigned); obj* _l_s5_uint8_s9_has__modn; obj* _l_s6_uint32_s2_lt; -obj* _l_s6_uint64_s7_to__nat_s6___main_s7___boxed(obj*); -obj* _l_s6_uint16_s7_dec__eq(unsigned short, unsigned short); obj* _l_s6_uint16_s18_has__decidable__lt(unsigned short, unsigned short); obj* _l_s5_uint8_s13_decidable__eq; -obj* _l_s6_uint64_s3_mul_s6___main_s7___boxed(obj*, obj*); -obj* _l_s6_uint16_s3_mul_s6___main_s7___boxed(obj*, obj*); -obj* _l_s3_fin_s3_sub_s6___main(obj*, obj*, obj*); -obj* _l_s6_uint64_s8_has__one; +unsigned long long _l_s6_uint64_s8_has__one; obj* _l_s6_uint32_s18_has__decidable__le(unsigned, unsigned); obj* _l_s6_uint16_s3_mul_s7___boxed(obj*, obj*); -obj* _l_s5_uint8_s7_dec__le_s6___main_s7___boxed(obj*, obj*); -obj* _l_s5_uint8_s3_div(unsigned char, unsigned char); -obj* _l_s5_uint8_s7_dec__lt(unsigned char, unsigned char); obj* _l_s6_uint16_s7_dec__lt_s7___boxed(obj*, obj*); obj* _l_s9_uint8__sz; -obj* _l_s5_uint8_s3_sub_s6___main(unsigned char, unsigned char); -obj* _l_s6_uint64_s3_sub(unsigned long long, unsigned long long); -obj* _l_s5_uint8_s4_modn_s6___main(unsigned char, obj*); -obj* _l_s6_uint16_s2_le_s6___main; obj* _l_s6_uint16_s7_has__lt; obj* _l_s6_uint64_s7_has__lt; obj* _l_s6_uint16_s8_has__mod; obj* _l_s6_uint64_s13_decidable__eq; -obj* _l_s6_uint32_s3_mul(unsigned, unsigned); -obj* _l_s3_fin_s3_add_s6___main(obj*, obj*, obj*); obj* _l_s6_uint16_s3_mod_s7___boxed(obj*, obj*); obj* _l_s6_uint64_s8_has__add; -obj* _l_s5_uint8_s3_div_s6___main_s7___boxed(obj*, obj*); obj* _l_s6_uint32_s18_has__decidable__lt_s7___boxed(obj*, obj*); -obj* _l_s6_uint64_s7_to__nat(unsigned long long); -obj* _l_s5_uint8_s3_add_s6___main(unsigned char, unsigned char); obj* _l_s5_uint8_s3_mod_s7___boxed(obj*, obj*); -obj* _l_s6_uint16_s3_sub_s6___main(unsigned short, unsigned short); -obj* _l_s6_uint32_s7_to__nat(unsigned); obj* _l_s6_uint16_s2_lt; obj* _l_s10_uint32__sz; obj* _l_s6_uint32_s7_dec__le_s7___boxed(obj*, obj*); obj* _l_s6_uint32_s3_add_s7___boxed(obj*, obj*); -obj* _l_s6_uint64_s9_inhabited; -obj* _l_s5_uint8_s7_dec__lt_s6___main_s7___boxed(obj*, obj*); +unsigned long long _l_s6_uint64_s9_inhabited; obj* _l_s6_uint16_s7_to__nat_s7___boxed(obj*); -obj* _l_s6_uint32_s7_dec__eq_s6___main(unsigned, unsigned); -obj* _l_s6_uint64_s3_mod_s6___main_s7___boxed(obj*, obj*); -obj* _l_s6_uint64_s7_dec__lt_s6___main(unsigned long long, unsigned long long); +obj* _l_s6_uint32_s9_inhabited_s7___boxed; obj* _l_s6_uint64_s8_has__div; -obj* _l_s5_uint8_s7_dec__le(unsigned char, unsigned char); obj* _l_s5_uint8_s3_add_s7___boxed(obj*, obj*); obj* _l_s6_uint16_s8_has__div; -obj* _l_s6_uint32_s3_sub_s6___main(unsigned, unsigned); obj* _l_s6_uint64_s8_has__sub; obj* _l_s6_uint64_s8_has__mod; obj* _l_s6_uint32_s3_div_s7___boxed(obj*, obj*); -obj* _l_s6_uint16_s7_dec__le_s6___main(unsigned short, unsigned short); -obj* _l_s6_uint16_s3_mod_s6___main_s7___boxed(obj*, obj*); -obj* _l_s6_uint64_s4_modn(unsigned long long, obj*); -obj* _l_s6_uint64_s3_add(unsigned long long, unsigned long long); -obj* _l_s6_uint16_s7_dec__le_s6___main_s7___boxed(obj*, obj*); +obj* _l_s6_uint32_s7_of__nat_s7___boxed(obj*); obj* _l_s6_uint16_s18_has__decidable__le_s7___boxed(obj*, obj*); obj* _l_s6_uint64_s18_has__decidable__le_s7___boxed(obj*, obj*); -obj* _l_s3_fin_s3_div_s6___main(obj*, obj*, obj*); obj* _l_s5_uint8_s7_dec__lt_s7___boxed(obj*, obj*); obj* _l_s6_uint32_s7_has__lt; obj* _l_s6_uint32_s8_has__sub; -obj* _l_s6_uint16_s4_modn_s6___main(unsigned short, obj*); obj* _l_s6_uint64_s3_mul_s7___boxed(obj*, obj*); obj* _l_s6_uint16_s8_has__add; -obj* _l_s5_uint8_s4_modn(unsigned char, obj*); -obj* _l_s6_uint16_s7_dec__eq_s6___main_s7___boxed(obj*, obj*); obj* _l_s6_uint64_s9_has__modn; obj* _l_s6_uint64_s7_dec__lt_s7___boxed(obj*, obj*); -obj* _l_s6_uint32_s3_add_s6___main_s7___boxed(obj*, obj*); obj* _l_s6_uint32_s7_dec__eq_s7___boxed(obj*, obj*); -obj* _l_s6_uint64_s3_mul_s6___main(unsigned long long, unsigned long long); -obj* _l_s5_uint8_s3_mod(unsigned char, unsigned char); -obj* _l_s6_uint64_s3_add_s6___main_s7___boxed(obj*, obj*); -obj* _l_s6_uint32_s4_modn_s6___main_s7___boxed(obj*, obj*); obj* _l_s6_uint16_s8_has__mul; -obj* _l_s6_uint64_s7_of__nat_s11___closed__1; -obj* _l_s5_uint8_s7_to__nat_s6___main_s7___boxed(obj*); -obj* _l_s6_uint32_s7_to__nat_s6___main(unsigned); -obj* _l_s6_uint64_s3_sub_s6___main_s7___boxed(obj*, obj*); -obj* _l_s6_uint64_s7_of__nat(obj*); obj* _l_s5_uint8_s18_has__decidable__le_s7___boxed(obj*, obj*); -obj* _l_s5_uint8_s3_mul_s6___main(unsigned char, unsigned char); -obj* _l_s6_uint16_s7_to__nat_s6___main(unsigned short); -obj* _l_s6_uint32_s3_mul_s6___main(unsigned, unsigned); obj* _l_s6_uint64_s2_lt; obj* _l_s6_uint64_s18_has__decidable__le(unsigned long long, unsigned long long); -obj* _l_s6_uint16_s3_add_s6___main_s7___boxed(obj*, obj*); -obj* _l_s5_uint8_s3_mul(unsigned char, unsigned char); +obj* _l_s6_uint16_s9_inhabited_s7___boxed; obj* _l_s10_uint64__sz; -obj* _l_s6_uint32_s4_modn_s6___main(unsigned, obj*); -obj* _l_s5_uint8_s2_lt_s6___main; obj* _l_s6_uint64_s3_mod_s7___boxed(obj*, obj*); -obj* _l_s6_uint32_s7_dec__eq_s6___main_s7___boxed(obj*, obj*); obj* _l_s6_uint32_s2_le; -obj* _l_s6_uint32_s3_mod_s6___main(unsigned, unsigned); -obj* _l_s6_uint64_s7_dec__le(unsigned long long, unsigned long long); obj* _l_s5_uint8_s18_has__decidable__le(unsigned char, unsigned char); -obj* _l_s6_uint64_s7_dec__lt(unsigned long long, unsigned long long); obj* _l_s6_uint16_s7_dec__eq_s7___boxed(obj*, obj*); -obj* _l_s5_uint8_s3_mod_s6___main_s7___boxed(obj*, obj*); obj* _l_s5_uint8_s2_lt; obj* _l_s6_uint32_s4_modn_s7___boxed(obj*, obj*); -obj* _l_s6_uint64_s2_lt_s6___main; -obj* _l_s6_uint64_s3_div_s6___main(unsigned long long, unsigned long long); -obj* _l_s3_fin_s7_of__nat(obj*, obj*); -obj* _l_s6_uint64_s4_modn_s6___main_s7___boxed(obj*, obj*); -obj* _l_s6_uint64_s3_mod_s6___main(unsigned long long, unsigned long long); obj* _l_s6_uint32_s8_has__mod; obj* _l_s5_uint8_s3_div_s7___boxed(obj*, obj*); -obj* _l_s6_uint32_s2_le_s6___main; -obj* _l_s6_uint32_s9_inhabited; -obj* _l_s6_uint32_s7_of__nat(obj*); +unsigned _l_s6_uint32_s9_inhabited; obj* _l_s6_uint32_s3_sub_s7___boxed(obj*, obj*); obj* _l_s6_uint32_s8_has__div; -obj* _l_s3_fin_s4_modn_s6___main(obj*, obj*, obj*); -obj* _l_s6_uint16_s7_dec__lt_s6___main_s7___boxed(obj*, obj*); -obj* _l_s3_fin_s3_mul_s6___main(obj*, obj*, obj*); obj* _l_s5_uint8_s7_dec__le_s7___boxed(obj*, obj*); obj* _l_s5_uint8_s18_has__decidable__lt_s7___boxed(obj*, obj*); -obj* _l_s6_uint16_s9_has__zero; -obj* _l_s6_uint64_s7_to__nat_s6___main(unsigned long long); +unsigned short _l_s6_uint16_s9_has__zero; obj* _l_s6_uint16_s18_has__decidable__le(unsigned short, unsigned short); obj* _l_s5_uint8_s7_dec__eq_s7___boxed(obj*, obj*); -obj* _l_s6_uint32_s4_modn(unsigned, obj*); obj* _l_s6_uint16_s13_decidable__eq; -obj* _l_s5_uint8_s3_sub(unsigned char, unsigned char); obj* _l_s5_uint8_s8_has__add; -obj* _l_s6_uint64_s3_div(unsigned long long, unsigned long long); -obj* _l_s5_uint8_s7_of__nat(obj*); -obj* _l_s6_uint32_s7_dec__eq(unsigned, unsigned); -obj* _l_s5_uint8_s3_mod_s6___main(unsigned char, unsigned char); obj* _l_s6_uint32_s13_decidable__eq; -obj* _l_s6_uint32_s3_sub(unsigned, unsigned); -obj* _l_s6_uint16_s3_sub(unsigned short, unsigned short); +obj* _l_s5_uint8_s8_has__one_s7___boxed; +obj* _l_s6_uint64_s8_has__one_s7___boxed; obj* _l_s6_uint64_s8_has__mul; -obj* _l_s6_uint64_s3_mul(unsigned long long, unsigned long long); -obj* _l_s6_uint16_s8_has__one; +unsigned short _l_s6_uint16_s8_has__one; obj* _l_s5_uint8_s3_sub_s7___boxed(obj*, obj*); -obj* _l_s6_uint16_s3_mul(unsigned short, unsigned short); -obj* _l_s5_uint8_s3_sub_s6___main_s7___boxed(obj*, obj*); -obj* _l_s6_uint64_s7_dec__eq(unsigned long long, unsigned long long); +obj* _l_s6_uint64_s9_has__zero_s7___boxed; +obj* _l_s6_uint64_s7_of__nat_s7___boxed(obj*); obj* _l_s6_uint64_s18_has__decidable__lt_s7___boxed(obj*, obj*); -obj* _l_s5_uint8_s3_add_s6___main_s7___boxed(obj*, obj*); -obj* _l_s6_uint16_s3_sub_s6___main_s7___boxed(obj*, obj*); -obj* _l_s6_uint32_s7_to__nat_s6___main_s7___boxed(obj*); -obj* _l_s6_uint16_s7_to__nat(unsigned short); -obj* _l_s6_uint16_s7_dec__eq_s6___main(unsigned short, unsigned short); +obj* _l_s6_uint16_s8_has__one_s7___boxed; +obj* _l_s6_uint32_s9_has__zero_s7___boxed; obj* _l_s10_uint16__sz; obj* _l_s6_uint64_s3_add_s7___boxed(obj*, obj*); -obj* _l_s5_uint8_s8_has__one; -obj* _l_s6_uint32_s7_dec__lt_s6___main(unsigned, unsigned); +unsigned char _l_s5_uint8_s8_has__one; obj* _l_s6_uint64_s2_le; -obj* _l_s6_uint32_s3_div_s6___main_s7___boxed(obj*, obj*); -obj* _l_s6_uint32_s3_mod(unsigned, unsigned); -obj* _l_s5_uint8_s3_mul_s6___main_s7___boxed(obj*, obj*); -obj* _l_s6_uint32_s3_add(unsigned, unsigned); -obj* _l_s5_uint8_s7_dec__eq(unsigned char, unsigned char); +obj* _l_s5_uint8_s9_has__zero_s7___boxed; obj* _l_s5_uint8_s18_has__decidable__lt(unsigned char, unsigned char); -obj* _l_s6_uint64_s3_mod(unsigned long long, unsigned long long); obj* _l_s6_uint32_s18_has__decidable__le_s7___boxed(obj*, obj*); -obj* _l_s6_uint64_s7_dec__le_s6___main(unsigned long long, unsigned long long); obj* _l_s5_uint8_s8_has__mod; obj* _l_s6_uint64_s7_has__le; obj* _l_s5_uint8_s2_le; obj* _l_s6_uint64_s3_div_s7___boxed(obj*, obj*); -obj* _l_s6_uint16_s3_mul_s6___main(unsigned short, unsigned short); obj* _l_s6_uint16_s3_div_s7___boxed(obj*, obj*); obj* _l_s5_uint8_s7_has__lt; +obj* _l_s6_uint64_s9_inhabited_s7___boxed; obj* _l_s6_uint64_s18_has__decidable__lt(unsigned long long, unsigned long long); -obj* _l_s6_uint32_s2_lt_s6___main; -obj* _l_s5_uint8_s3_add(unsigned char, unsigned char); obj* _l_s6_uint16_s9_has__modn; obj* _l_s6_uint32_s3_mod_s7___boxed(obj*, obj*); obj* _l_s6_uint16_s4_modn_s7___boxed(obj*, obj*); -obj* _l_s3_fin_s3_mod_s6___main(obj*, obj*, obj*); obj* _l_s6_uint32_s7_dec__lt_s7___boxed(obj*, obj*); -obj* _l_s5_uint8_s3_div_s6___main(unsigned char, unsigned char); -obj* _l_s6_uint64_s7_dec__lt_s6___main_s7___boxed(obj*, obj*); -obj* _l_s6_uint32_s3_add_s6___main(unsigned, unsigned); -obj* _l_s6_uint16_s7_of__nat(obj*); +obj* _l_s6_uint16_s9_has__zero_s7___boxed; +obj* _l_s6_uint32_s8_has__one_s7___boxed; obj* _l_s5_uint8_s7_has__le; -obj* _l_s6_uint16_s7_dec__lt_s6___main(unsigned short, unsigned short); -obj* _l_s6_uint64_s4_modn_s6___main(unsigned long long, obj*); +obj* _l_s6_uint16_s7_of__nat_s7___boxed(obj*); obj* _l_s6_uint64_s7_dec__le_s7___boxed(obj*, obj*); obj* _l_s6_uint64_s4_modn_s7___boxed(obj*, obj*); -obj* _l_s6_uint32_s3_sub_s6___main_s7___boxed(obj*, obj*); obj* _l_s6_uint16_s7_has__le; obj* _l_s5_uint8_s7_to__nat_s7___boxed(obj*); obj* _l_s5_uint8_s8_has__mul; -obj* _l_s6_uint16_s7_to__nat_s6___main_s7___boxed(obj*); -obj* _l_s6_uint64_s3_add_s6___main(unsigned long long, unsigned long long); obj* _l_s6_uint16_s18_has__decidable__lt_s7___boxed(obj*, obj*); -obj* _l_s6_uint16_s2_lt_s6___main; -obj* _l_s6_uint16_s4_modn(unsigned short, obj*); -obj* _l_s5_uint8_s7_dec__lt_s6___main(unsigned char, unsigned char); -obj* _l_s6_uint32_s3_mod_s6___main_s7___boxed(obj*, obj*); obj* _l_s6_uint32_s9_has__modn; obj* _l_s5_uint8_s8_has__sub; -obj* _l_s6_uint32_s7_dec__lt(unsigned, unsigned); -obj* _l_s5_uint8_s7_dec__eq_s6___main(unsigned char, unsigned char); +obj* _l_s5_uint8_s7_of__nat_s7___boxed(obj*); obj* _l_s6_uint32_s7_to__nat_s7___boxed(obj*); -obj* _l_s6_uint32_s8_has__one; +unsigned _l_s6_uint32_s8_has__one; obj* _l_s6_uint32_s3_mul_s7___boxed(obj*, obj*); -obj* _l_s6_uint64_s3_sub_s6___main(unsigned long long, unsigned long long); -obj* _l_s6_uint64_s7_dec__le_s6___main_s7___boxed(obj*, obj*); obj* _l_s6_uint16_s8_has__sub; -obj* _l_s6_uint16_s3_mod(unsigned short, unsigned short); -obj* _l_s6_uint16_s3_add_s6___main(unsigned short, unsigned short); -obj* _l_s6_uint64_s2_le_s6___main; obj* _l_s5_uint8_s4_modn_s7___boxed(obj*, obj*); -obj* _l_s6_uint16_s7_dec__lt(unsigned short, unsigned short); obj* _l_s6_uint64_s7_to__nat_s7___boxed(obj*); -obj* _l_s6_uint16_s3_div_s6___main(unsigned short, unsigned short); obj* _l_s6_uint16_s3_add_s7___boxed(obj*, obj*); -obj* _l_s5_uint8_s9_has__zero; +unsigned char _l_s5_uint8_s9_has__zero; obj* _l_s6_uint64_s7_dec__eq_s7___boxed(obj*, obj*); -obj* _l_s6_uint16_s3_add(unsigned short, unsigned short); -obj* _l_s6_uint16_s4_modn_s6___main_s7___boxed(obj*, obj*); -obj* _l_s5_uint8_s7_to__nat_s6___main(unsigned char); -obj* _l_s6_uint32_s9_has__zero; -obj* _l_s6_uint16_s9_inhabited; +unsigned _l_s6_uint32_s9_has__zero; +unsigned short _l_s6_uint16_s9_inhabited; obj* _l_s6_uint32_s8_has__mul; -obj* _l_s6_uint64_s9_has__zero; -obj* _l_s6_uint32_s3_div(unsigned, unsigned); -obj* _l_s5_uint8_s2_le_s6___main; -obj* _l_s6_uint32_s7_dec__le(unsigned, unsigned); -obj* _l_s6_uint64_s3_div_s6___main_s7___boxed(obj*, obj*); -obj* _l_s6_uint64_s7_dec__eq_s6___main(unsigned long long, unsigned long long); -obj* _l_s6_uint16_s3_div_s6___main_s7___boxed(obj*, obj*); +unsigned long long _l_s6_uint64_s9_has__zero; obj* _l_s6_uint32_s8_has__add; -obj* _l_s5_uint8_s7_dec__le_s6___main(unsigned char, unsigned char); +obj* _l_s5_uint8_s9_inhabited_s7___boxed; obj* _init__l_s9_uint8__sz() { { obj* x_0; -x_0 = lean::mk_nat_obj(65536u); +x_0 = lean::mk_nat_obj(256u); return x_0; } } -obj* _l_s5_uint8_s7_of__nat(obj* x_0) { -{ -obj* x_1; obj* x_2; obj* x_3; -x_1 = lean::mk_nat_obj(65535u); -x_2 = _l_s3_fin_s7_of__nat(x_1, x_0); -x_3 = lean::alloc_cnstr(0, 1, 0); -lean::cnstr_set(x_3, 0, x_2); -return x_3; -} -} -obj* _l_s5_uint8_s7_to__nat_s6___main(unsigned char x_0) { -{ -obj* x_1; -x_1 = lean::cnstr_get(x_0, 0); -lean::inc(x_1); -lean::dec(x_0); -return x_1; -} -} -obj* _l_s5_uint8_s7_to__nat_s6___main_s7___boxed(obj* x_0) { +obj* _l_s5_uint8_s7_of__nat_s7___boxed(obj* x_0) { { unsigned char x_1; obj* x_2; -x_1 = lean::unbox(x_0); -x_2 = _l_s5_uint8_s7_to__nat_s6___main(x_1); +x_1 = lean::uint8_of_nat(x_0); +x_2 = lean::box(x_1); return x_2; } } -obj* _l_s5_uint8_s7_to__nat(unsigned char x_0) { -{ -obj* x_1; -x_1 = _l_s5_uint8_s7_to__nat_s6___main(x_0); -return x_1; -} -} obj* _l_s5_uint8_s7_to__nat_s7___boxed(obj* x_0) { { unsigned char x_1; obj* x_2; x_1 = lean::unbox(x_0); -x_2 = _l_s5_uint8_s7_to__nat(x_1); -return x_2; -} -} -obj* _l_s5_uint8_s3_add_s6___main(unsigned char x_0, unsigned char x_1) { -{ -obj* x_2; obj* x_4; obj* x_5; obj* x_8; obj* x_10; obj* x_11; -x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); -if (lean::is_shared(x_0)) { - lean::dec(x_0); - x_4 = lean::box(0); -} else { - lean::cnstr_release(x_0, 0); - x_4 = x_0; -} -x_5 = lean::cnstr_get(x_1, 0); -lean::inc(x_5); -lean::dec(x_1); -x_8 = _l_s9_uint8__sz; -lean::inc(x_8); -x_10 = _l_s3_fin_s3_add_s6___main(x_8, x_2, x_5); -if (lean::is_scalar(x_4)) { - x_11 = lean::alloc_cnstr(0, 1, 0); -} else { - x_11 = x_4; -} -lean::cnstr_set(x_11, 0, x_10); -return x_11; -} -} -obj* _l_s5_uint8_s3_add_s6___main_s7___boxed(obj* x_0, obj* x_1) { -{ -unsigned char x_2; unsigned char x_3; obj* x_4; -x_2 = lean::unbox(x_0); -x_3 = lean::unbox(x_1); -x_4 = _l_s5_uint8_s3_add_s6___main(x_2, x_3); -return x_4; -} -} -obj* _l_s5_uint8_s3_add(unsigned char x_0, unsigned char x_1) { -{ -obj* x_2; -x_2 = _l_s5_uint8_s3_add_s6___main(x_0, x_1); +x_2 = lean::uint8_to_nat(x_1); return x_2; } } obj* _l_s5_uint8_s3_add_s7___boxed(obj* x_0, obj* x_1) { { -unsigned char x_2; unsigned char x_3; obj* x_4; +unsigned char x_2; unsigned char x_3; unsigned char x_4; obj* x_5; x_2 = lean::unbox(x_0); x_3 = lean::unbox(x_1); -x_4 = _l_s5_uint8_s3_add(x_2, x_3); -return x_4; -} -} -obj* _l_s5_uint8_s3_sub_s6___main(unsigned char x_0, unsigned char x_1) { -{ -obj* x_2; obj* x_4; obj* x_5; obj* x_8; obj* x_10; obj* x_11; -x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); -if (lean::is_shared(x_0)) { - lean::dec(x_0); - x_4 = lean::box(0); -} else { - lean::cnstr_release(x_0, 0); - x_4 = x_0; -} -x_5 = lean::cnstr_get(x_1, 0); -lean::inc(x_5); -lean::dec(x_1); -x_8 = _l_s9_uint8__sz; -lean::inc(x_8); -x_10 = _l_s3_fin_s3_sub_s6___main(x_8, x_2, x_5); -if (lean::is_scalar(x_4)) { - x_11 = lean::alloc_cnstr(0, 1, 0); -} else { - x_11 = x_4; -} -lean::cnstr_set(x_11, 0, x_10); -return x_11; -} -} -obj* _l_s5_uint8_s3_sub_s6___main_s7___boxed(obj* x_0, obj* x_1) { -{ -unsigned char x_2; unsigned char x_3; obj* x_4; -x_2 = lean::unbox(x_0); -x_3 = lean::unbox(x_1); -x_4 = _l_s5_uint8_s3_sub_s6___main(x_2, x_3); -return x_4; -} -} -obj* _l_s5_uint8_s3_sub(unsigned char x_0, unsigned char x_1) { -{ -obj* x_2; -x_2 = _l_s5_uint8_s3_sub_s6___main(x_0, x_1); -return x_2; +x_4 = lean::uint8_add(x_2, x_3); +x_5 = lean::box(x_4); +return x_5; } } obj* _l_s5_uint8_s3_sub_s7___boxed(obj* x_0, obj* x_1) { { -unsigned char x_2; unsigned char x_3; obj* x_4; +unsigned char x_2; unsigned char x_3; unsigned char x_4; obj* x_5; x_2 = lean::unbox(x_0); x_3 = lean::unbox(x_1); -x_4 = _l_s5_uint8_s3_sub(x_2, x_3); -return x_4; -} -} -obj* _l_s5_uint8_s3_mul_s6___main(unsigned char x_0, unsigned char x_1) { -{ -obj* x_2; obj* x_4; obj* x_5; obj* x_8; obj* x_10; obj* x_11; -x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); -if (lean::is_shared(x_0)) { - lean::dec(x_0); - x_4 = lean::box(0); -} else { - lean::cnstr_release(x_0, 0); - x_4 = x_0; -} -x_5 = lean::cnstr_get(x_1, 0); -lean::inc(x_5); -lean::dec(x_1); -x_8 = _l_s9_uint8__sz; -lean::inc(x_8); -x_10 = _l_s3_fin_s3_mul_s6___main(x_8, x_2, x_5); -if (lean::is_scalar(x_4)) { - x_11 = lean::alloc_cnstr(0, 1, 0); -} else { - x_11 = x_4; -} -lean::cnstr_set(x_11, 0, x_10); -return x_11; -} -} -obj* _l_s5_uint8_s3_mul_s6___main_s7___boxed(obj* x_0, obj* x_1) { -{ -unsigned char x_2; unsigned char x_3; obj* x_4; -x_2 = lean::unbox(x_0); -x_3 = lean::unbox(x_1); -x_4 = _l_s5_uint8_s3_mul_s6___main(x_2, x_3); -return x_4; -} -} -obj* _l_s5_uint8_s3_mul(unsigned char x_0, unsigned char x_1) { -{ -obj* x_2; -x_2 = _l_s5_uint8_s3_mul_s6___main(x_0, x_1); -return x_2; +x_4 = lean::uint8_sub(x_2, x_3); +x_5 = lean::box(x_4); +return x_5; } } obj* _l_s5_uint8_s3_mul_s7___boxed(obj* x_0, obj* x_1) { { -unsigned char x_2; unsigned char x_3; obj* x_4; +unsigned char x_2; unsigned char x_3; unsigned char x_4; obj* x_5; x_2 = lean::unbox(x_0); x_3 = lean::unbox(x_1); -x_4 = _l_s5_uint8_s3_mul(x_2, x_3); -return x_4; -} -} -obj* _l_s5_uint8_s3_div_s6___main(unsigned char x_0, unsigned char x_1) { -{ -obj* x_2; obj* x_4; obj* x_5; obj* x_8; obj* x_10; obj* x_11; -x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); -if (lean::is_shared(x_0)) { - lean::dec(x_0); - x_4 = lean::box(0); -} else { - lean::cnstr_release(x_0, 0); - x_4 = x_0; -} -x_5 = lean::cnstr_get(x_1, 0); -lean::inc(x_5); -lean::dec(x_1); -x_8 = _l_s9_uint8__sz; -lean::inc(x_8); -x_10 = _l_s3_fin_s3_div_s6___main(x_8, x_2, x_5); -if (lean::is_scalar(x_4)) { - x_11 = lean::alloc_cnstr(0, 1, 0); -} else { - x_11 = x_4; -} -lean::cnstr_set(x_11, 0, x_10); -return x_11; -} -} -obj* _l_s5_uint8_s3_div_s6___main_s7___boxed(obj* x_0, obj* x_1) { -{ -unsigned char x_2; unsigned char x_3; obj* x_4; -x_2 = lean::unbox(x_0); -x_3 = lean::unbox(x_1); -x_4 = _l_s5_uint8_s3_div_s6___main(x_2, x_3); -return x_4; -} -} -obj* _l_s5_uint8_s3_div(unsigned char x_0, unsigned char x_1) { -{ -obj* x_2; -x_2 = _l_s5_uint8_s3_div_s6___main(x_0, x_1); -return x_2; +x_4 = lean::uint8_mul(x_2, x_3); +x_5 = lean::box(x_4); +return x_5; } } obj* _l_s5_uint8_s3_div_s7___boxed(obj* x_0, obj* x_1) { { -unsigned char x_2; unsigned char x_3; obj* x_4; +unsigned char x_2; unsigned char x_3; unsigned char x_4; obj* x_5; x_2 = lean::unbox(x_0); x_3 = lean::unbox(x_1); -x_4 = _l_s5_uint8_s3_div(x_2, x_3); -return x_4; -} -} -obj* _l_s5_uint8_s3_mod_s6___main(unsigned char x_0, unsigned char x_1) { -{ -obj* x_2; obj* x_4; obj* x_5; obj* x_8; obj* x_10; obj* x_11; -x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); -if (lean::is_shared(x_0)) { - lean::dec(x_0); - x_4 = lean::box(0); -} else { - lean::cnstr_release(x_0, 0); - x_4 = x_0; -} -x_5 = lean::cnstr_get(x_1, 0); -lean::inc(x_5); -lean::dec(x_1); -x_8 = _l_s9_uint8__sz; -lean::inc(x_8); -x_10 = _l_s3_fin_s3_mod_s6___main(x_8, x_2, x_5); -if (lean::is_scalar(x_4)) { - x_11 = lean::alloc_cnstr(0, 1, 0); -} else { - x_11 = x_4; -} -lean::cnstr_set(x_11, 0, x_10); -return x_11; -} -} -obj* _l_s5_uint8_s3_mod_s6___main_s7___boxed(obj* x_0, obj* x_1) { -{ -unsigned char x_2; unsigned char x_3; obj* x_4; -x_2 = lean::unbox(x_0); -x_3 = lean::unbox(x_1); -x_4 = _l_s5_uint8_s3_mod_s6___main(x_2, x_3); -return x_4; -} -} -obj* _l_s5_uint8_s3_mod(unsigned char x_0, unsigned char x_1) { -{ -obj* x_2; -x_2 = _l_s5_uint8_s3_mod_s6___main(x_0, x_1); -return x_2; +x_4 = lean::uint8_div(x_2, x_3); +x_5 = lean::box(x_4); +return x_5; } } obj* _l_s5_uint8_s3_mod_s7___boxed(obj* x_0, obj* x_1) { { -unsigned char x_2; unsigned char x_3; obj* x_4; +unsigned char x_2; unsigned char x_3; unsigned char x_4; obj* x_5; x_2 = lean::unbox(x_0); x_3 = lean::unbox(x_1); -x_4 = _l_s5_uint8_s3_mod(x_2, x_3); -return x_4; -} -} -obj* _l_s5_uint8_s4_modn_s6___main(unsigned char x_0, obj* x_1) { -{ -obj* x_2; obj* x_4; obj* x_5; obj* x_7; obj* x_8; -x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); -if (lean::is_shared(x_0)) { - lean::dec(x_0); - x_4 = lean::box(0); -} else { - lean::cnstr_release(x_0, 0); - x_4 = x_0; -} -x_5 = _l_s9_uint8__sz; -lean::inc(x_5); -x_7 = _l_s3_fin_s4_modn_s6___main(x_5, x_2, x_1); -if (lean::is_scalar(x_4)) { - x_8 = lean::alloc_cnstr(0, 1, 0); -} else { - x_8 = x_4; -} -lean::cnstr_set(x_8, 0, x_7); -return x_8; -} -} -obj* _l_s5_uint8_s4_modn_s6___main_s7___boxed(obj* x_0, obj* x_1) { -{ -unsigned char x_2; obj* x_3; -x_2 = lean::unbox(x_0); -x_3 = _l_s5_uint8_s4_modn_s6___main(x_2, x_1); -return x_3; -} -} -obj* _l_s5_uint8_s4_modn(unsigned char x_0, obj* x_1) { -{ -obj* x_2; -x_2 = _l_s5_uint8_s4_modn_s6___main(x_0, x_1); -return x_2; +x_4 = lean::uint8_mod(x_2, x_3); +x_5 = lean::box(x_4); +return x_5; } } obj* _l_s5_uint8_s4_modn_s7___boxed(obj* x_0, obj* x_1) { { -unsigned char x_2; obj* x_3; +unsigned char x_2; unsigned char x_3; obj* x_4; x_2 = lean::unbox(x_0); -x_3 = _l_s5_uint8_s4_modn(x_2, x_1); -return x_3; -} -} -obj* _init__l_s5_uint8_s2_lt_s6___main() { -{ -obj* x_0; -x_0 = lean::box(0); -lean::inc(x_0); -return x_0; +x_3 = lean::uint8_modn(x_2, x_1); +x_4 = lean::box(x_3); +return x_4; } } obj* _init__l_s5_uint8_s2_lt() { @@ -637,14 +231,6 @@ lean::inc(x_0); return x_0; } } -obj* _init__l_s5_uint8_s2_le_s6___main() { -{ -obj* x_0; -x_0 = lean::box(0); -lean::inc(x_0); -return x_0; -} -} obj* _init__l_s5_uint8_s2_le() { { obj* x_0; @@ -653,26 +239,38 @@ lean::inc(x_0); return x_0; } } -obj* _init__l_s5_uint8_s9_has__zero() { +unsigned char _init__l_s5_uint8_s9_has__zero() { { -obj* x_0; obj* x_1; obj* x_2; obj* x_3; -x_0 = lean::mk_nat_obj(65535u); -x_1 = lean::mk_nat_obj(0u); -x_2 = _l_s3_fin_s7_of__nat(x_0, x_1); -x_3 = lean::alloc_cnstr(0, 1, 0); -lean::cnstr_set(x_3, 0, x_2); -return x_3; +obj* x_0; unsigned char x_1; +x_0 = lean::mk_nat_obj(0u); +x_1 = lean::uint8_of_nat(x_0); +lean::dec(x_0); +return x_1; } } -obj* _init__l_s5_uint8_s8_has__one() { +obj* _init__l_s5_uint8_s9_has__zero_s7___boxed() { { -obj* x_0; obj* x_1; obj* x_2; obj* x_3; -x_0 = lean::mk_nat_obj(65535u); -x_1 = lean::mk_nat_obj(1u); -x_2 = _l_s3_fin_s7_of__nat(x_0, x_1); -x_3 = lean::alloc_cnstr(0, 1, 0); -lean::cnstr_set(x_3, 0, x_2); -return x_3; +unsigned char x_0; obj* x_1; +x_0 = _l_s5_uint8_s9_has__zero; +x_1 = lean::box(x_0); +return x_1; +} +} +unsigned char _init__l_s5_uint8_s8_has__one() { +{ +obj* x_0; unsigned char x_1; +x_0 = lean::mk_nat_obj(1u); +x_1 = lean::uint8_of_nat(x_0); +lean::dec(x_0); +return x_1; +} +} +obj* _init__l_s5_uint8_s8_has__one_s7___boxed() { +{ +unsigned char x_0; obj* x_1; +x_0 = _l_s5_uint8_s8_has__one; +x_1 = lean::box(x_0); +return x_1; } } obj* _init__l_s5_uint8_s8_has__add() { @@ -733,46 +331,21 @@ x_0 = lean::alloc_cnstr(0, 0, 0); return x_0; } } -obj* _init__l_s5_uint8_s9_inhabited() { +unsigned char _init__l_s5_uint8_s9_inhabited() { { -obj* x_0; obj* x_1; obj* x_2; obj* x_3; -x_0 = lean::mk_nat_obj(65535u); -x_1 = lean::mk_nat_obj(0u); -x_2 = _l_s3_fin_s7_of__nat(x_0, x_1); -x_3 = lean::alloc_cnstr(0, 1, 0); -lean::cnstr_set(x_3, 0, x_2); -return x_3; -} -} -obj* _l_s5_uint8_s7_dec__eq_s6___main(unsigned char x_0, unsigned char x_1) { -{ -obj* x_2; obj* x_5; obj* x_8; -x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); +obj* x_0; unsigned char x_1; +x_0 = lean::mk_nat_obj(0u); +x_1 = lean::uint8_of_nat(x_0); lean::dec(x_0); -x_5 = lean::cnstr_get(x_1, 0); -lean::inc(x_5); -lean::dec(x_1); -x_8 = lean::nat_dec_eq(x_2, x_5); -lean::dec(x_5); -lean::dec(x_2); -return x_8; +return x_1; } } -obj* _l_s5_uint8_s7_dec__eq_s6___main_s7___boxed(obj* x_0, obj* x_1) { +obj* _init__l_s5_uint8_s9_inhabited_s7___boxed() { { -unsigned char x_2; unsigned char x_3; obj* x_4; -x_2 = lean::unbox(x_0); -x_3 = lean::unbox(x_1); -x_4 = _l_s5_uint8_s7_dec__eq_s6___main(x_2, x_3); -return x_4; -} -} -obj* _l_s5_uint8_s7_dec__eq(unsigned char x_0, unsigned char x_1) { -{ -obj* x_2; -x_2 = _l_s5_uint8_s7_dec__eq_s6___main(x_0, x_1); -return x_2; +unsigned char x_0; obj* x_1; +x_0 = _l_s5_uint8_s9_inhabited; +x_1 = lean::box(x_0); +return x_1; } } obj* _l_s5_uint8_s7_dec__eq_s7___boxed(obj* x_0, obj* x_1) { @@ -780,87 +353,25 @@ obj* _l_s5_uint8_s7_dec__eq_s7___boxed(obj* x_0, obj* x_1) { unsigned char x_2; unsigned char x_3; obj* x_4; x_2 = lean::unbox(x_0); x_3 = lean::unbox(x_1); -x_4 = _l_s5_uint8_s7_dec__eq(x_2, x_3); +x_4 = lean::uint8_dec_eq(x_2, x_3); return x_4; } } -obj* _l_s5_uint8_s7_dec__lt_s6___main(unsigned char x_0, unsigned char x_1) { -{ -obj* x_2; obj* x_5; obj* x_8; -x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); -lean::dec(x_0); -x_5 = lean::cnstr_get(x_1, 0); -lean::inc(x_5); -lean::dec(x_1); -x_8 = lean::nat_dec_lt(x_2, x_5); -lean::dec(x_5); -lean::dec(x_2); -return x_8; -} -} -obj* _l_s5_uint8_s7_dec__lt_s6___main_s7___boxed(obj* x_0, obj* x_1) { -{ -unsigned char x_2; unsigned char x_3; obj* x_4; -x_2 = lean::unbox(x_0); -x_3 = lean::unbox(x_1); -x_4 = _l_s5_uint8_s7_dec__lt_s6___main(x_2, x_3); -return x_4; -} -} -obj* _l_s5_uint8_s7_dec__lt(unsigned char x_0, unsigned char x_1) { -{ -obj* x_2; -x_2 = _l_s5_uint8_s7_dec__lt_s6___main(x_0, x_1); -return x_2; -} -} obj* _l_s5_uint8_s7_dec__lt_s7___boxed(obj* x_0, obj* x_1) { { unsigned char x_2; unsigned char x_3; obj* x_4; x_2 = lean::unbox(x_0); x_3 = lean::unbox(x_1); -x_4 = _l_s5_uint8_s7_dec__lt(x_2, x_3); +x_4 = lean::uint8_dec_lt(x_2, x_3); return x_4; } } -obj* _l_s5_uint8_s7_dec__le_s6___main(unsigned char x_0, unsigned char x_1) { -{ -obj* x_2; obj* x_5; obj* x_8; -x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); -lean::dec(x_0); -x_5 = lean::cnstr_get(x_1, 0); -lean::inc(x_5); -lean::dec(x_1); -x_8 = lean::nat_dec_le(x_2, x_5); -lean::dec(x_5); -lean::dec(x_2); -return x_8; -} -} -obj* _l_s5_uint8_s7_dec__le_s6___main_s7___boxed(obj* x_0, obj* x_1) { -{ -unsigned char x_2; unsigned char x_3; obj* x_4; -x_2 = lean::unbox(x_0); -x_3 = lean::unbox(x_1); -x_4 = _l_s5_uint8_s7_dec__le_s6___main(x_2, x_3); -return x_4; -} -} -obj* _l_s5_uint8_s7_dec__le(unsigned char x_0, unsigned char x_1) { -{ -obj* x_2; -x_2 = _l_s5_uint8_s7_dec__le_s6___main(x_0, x_1); -return x_2; -} -} obj* _l_s5_uint8_s7_dec__le_s7___boxed(obj* x_0, obj* x_1) { { unsigned char x_2; unsigned char x_3; obj* x_4; x_2 = lean::unbox(x_0); x_3 = lean::unbox(x_1); -x_4 = _l_s5_uint8_s7_dec__le(x_2, x_3); +x_4 = lean::uint8_dec_le(x_2, x_3); return x_4; } } @@ -874,7 +385,7 @@ return x_0; obj* _l_s5_uint8_s18_has__decidable__lt(unsigned char x_0, unsigned char x_1) { { obj* x_2; -x_2 = _l_s5_uint8_s7_dec__lt_s6___main(x_0, x_1); +x_2 = lean::uint8_dec_lt(x_0, x_1); return x_2; } } @@ -890,7 +401,7 @@ return x_4; obj* _l_s5_uint8_s18_has__decidable__le(unsigned char x_0, unsigned char x_1) { { obj* x_2; -x_2 = _l_s5_uint8_s7_dec__le_s6___main(x_0, x_1); +x_2 = lean::uint8_dec_le(x_0, x_1); return x_2; } } @@ -910,361 +421,79 @@ x_0 = lean::mk_nat_obj(65536u); return x_0; } } -obj* _l_s6_uint16_s7_of__nat(obj* x_0) { -{ -obj* x_1; obj* x_2; obj* x_3; -x_1 = lean::mk_nat_obj(65535u); -x_2 = _l_s3_fin_s7_of__nat(x_1, x_0); -x_3 = lean::alloc_cnstr(0, 1, 0); -lean::cnstr_set(x_3, 0, x_2); -return x_3; -} -} -obj* _l_s6_uint16_s7_to__nat_s6___main(unsigned short x_0) { -{ -obj* x_1; -x_1 = lean::cnstr_get(x_0, 0); -lean::inc(x_1); -lean::dec(x_0); -return x_1; -} -} -obj* _l_s6_uint16_s7_to__nat_s6___main_s7___boxed(obj* x_0) { +obj* _l_s6_uint16_s7_of__nat_s7___boxed(obj* x_0) { { unsigned short x_1; obj* x_2; -x_1 = lean::unbox(x_0); -x_2 = _l_s6_uint16_s7_to__nat_s6___main(x_1); +x_1 = lean::uint16_of_nat(x_0); +x_2 = lean::box(x_1); return x_2; } } -obj* _l_s6_uint16_s7_to__nat(unsigned short x_0) { -{ -obj* x_1; -x_1 = _l_s6_uint16_s7_to__nat_s6___main(x_0); -return x_1; -} -} obj* _l_s6_uint16_s7_to__nat_s7___boxed(obj* x_0) { { unsigned short x_1; obj* x_2; x_1 = lean::unbox(x_0); -x_2 = _l_s6_uint16_s7_to__nat(x_1); -return x_2; -} -} -obj* _l_s6_uint16_s3_add_s6___main(unsigned short x_0, unsigned short x_1) { -{ -obj* x_2; obj* x_4; obj* x_5; obj* x_8; obj* x_10; obj* x_11; -x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); -if (lean::is_shared(x_0)) { - lean::dec(x_0); - x_4 = lean::box(0); -} else { - lean::cnstr_release(x_0, 0); - x_4 = x_0; -} -x_5 = lean::cnstr_get(x_1, 0); -lean::inc(x_5); -lean::dec(x_1); -x_8 = _l_s10_uint16__sz; -lean::inc(x_8); -x_10 = _l_s3_fin_s3_add_s6___main(x_8, x_2, x_5); -if (lean::is_scalar(x_4)) { - x_11 = lean::alloc_cnstr(0, 1, 0); -} else { - x_11 = x_4; -} -lean::cnstr_set(x_11, 0, x_10); -return x_11; -} -} -obj* _l_s6_uint16_s3_add_s6___main_s7___boxed(obj* x_0, obj* x_1) { -{ -unsigned short x_2; unsigned short x_3; obj* x_4; -x_2 = lean::unbox(x_0); -x_3 = lean::unbox(x_1); -x_4 = _l_s6_uint16_s3_add_s6___main(x_2, x_3); -return x_4; -} -} -obj* _l_s6_uint16_s3_add(unsigned short x_0, unsigned short x_1) { -{ -obj* x_2; -x_2 = _l_s6_uint16_s3_add_s6___main(x_0, x_1); +x_2 = lean::uint16_to_nat(x_1); return x_2; } } obj* _l_s6_uint16_s3_add_s7___boxed(obj* x_0, obj* x_1) { { -unsigned short x_2; unsigned short x_3; obj* x_4; +unsigned short x_2; unsigned short x_3; unsigned short x_4; obj* x_5; x_2 = lean::unbox(x_0); x_3 = lean::unbox(x_1); -x_4 = _l_s6_uint16_s3_add(x_2, x_3); -return x_4; -} -} -obj* _l_s6_uint16_s3_sub_s6___main(unsigned short x_0, unsigned short x_1) { -{ -obj* x_2; obj* x_4; obj* x_5; obj* x_8; obj* x_10; obj* x_11; -x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); -if (lean::is_shared(x_0)) { - lean::dec(x_0); - x_4 = lean::box(0); -} else { - lean::cnstr_release(x_0, 0); - x_4 = x_0; -} -x_5 = lean::cnstr_get(x_1, 0); -lean::inc(x_5); -lean::dec(x_1); -x_8 = _l_s10_uint16__sz; -lean::inc(x_8); -x_10 = _l_s3_fin_s3_sub_s6___main(x_8, x_2, x_5); -if (lean::is_scalar(x_4)) { - x_11 = lean::alloc_cnstr(0, 1, 0); -} else { - x_11 = x_4; -} -lean::cnstr_set(x_11, 0, x_10); -return x_11; -} -} -obj* _l_s6_uint16_s3_sub_s6___main_s7___boxed(obj* x_0, obj* x_1) { -{ -unsigned short x_2; unsigned short x_3; obj* x_4; -x_2 = lean::unbox(x_0); -x_3 = lean::unbox(x_1); -x_4 = _l_s6_uint16_s3_sub_s6___main(x_2, x_3); -return x_4; -} -} -obj* _l_s6_uint16_s3_sub(unsigned short x_0, unsigned short x_1) { -{ -obj* x_2; -x_2 = _l_s6_uint16_s3_sub_s6___main(x_0, x_1); -return x_2; +x_4 = lean::uint16_add(x_2, x_3); +x_5 = lean::box(x_4); +return x_5; } } obj* _l_s6_uint16_s3_sub_s7___boxed(obj* x_0, obj* x_1) { { -unsigned short x_2; unsigned short x_3; obj* x_4; +unsigned short x_2; unsigned short x_3; unsigned short x_4; obj* x_5; x_2 = lean::unbox(x_0); x_3 = lean::unbox(x_1); -x_4 = _l_s6_uint16_s3_sub(x_2, x_3); -return x_4; -} -} -obj* _l_s6_uint16_s3_mul_s6___main(unsigned short x_0, unsigned short x_1) { -{ -obj* x_2; obj* x_4; obj* x_5; obj* x_8; obj* x_10; obj* x_11; -x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); -if (lean::is_shared(x_0)) { - lean::dec(x_0); - x_4 = lean::box(0); -} else { - lean::cnstr_release(x_0, 0); - x_4 = x_0; -} -x_5 = lean::cnstr_get(x_1, 0); -lean::inc(x_5); -lean::dec(x_1); -x_8 = _l_s10_uint16__sz; -lean::inc(x_8); -x_10 = _l_s3_fin_s3_mul_s6___main(x_8, x_2, x_5); -if (lean::is_scalar(x_4)) { - x_11 = lean::alloc_cnstr(0, 1, 0); -} else { - x_11 = x_4; -} -lean::cnstr_set(x_11, 0, x_10); -return x_11; -} -} -obj* _l_s6_uint16_s3_mul_s6___main_s7___boxed(obj* x_0, obj* x_1) { -{ -unsigned short x_2; unsigned short x_3; obj* x_4; -x_2 = lean::unbox(x_0); -x_3 = lean::unbox(x_1); -x_4 = _l_s6_uint16_s3_mul_s6___main(x_2, x_3); -return x_4; -} -} -obj* _l_s6_uint16_s3_mul(unsigned short x_0, unsigned short x_1) { -{ -obj* x_2; -x_2 = _l_s6_uint16_s3_mul_s6___main(x_0, x_1); -return x_2; +x_4 = lean::uint16_sub(x_2, x_3); +x_5 = lean::box(x_4); +return x_5; } } obj* _l_s6_uint16_s3_mul_s7___boxed(obj* x_0, obj* x_1) { { -unsigned short x_2; unsigned short x_3; obj* x_4; +unsigned short x_2; unsigned short x_3; unsigned short x_4; obj* x_5; x_2 = lean::unbox(x_0); x_3 = lean::unbox(x_1); -x_4 = _l_s6_uint16_s3_mul(x_2, x_3); -return x_4; -} -} -obj* _l_s6_uint16_s3_div_s6___main(unsigned short x_0, unsigned short x_1) { -{ -obj* x_2; obj* x_4; obj* x_5; obj* x_8; obj* x_10; obj* x_11; -x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); -if (lean::is_shared(x_0)) { - lean::dec(x_0); - x_4 = lean::box(0); -} else { - lean::cnstr_release(x_0, 0); - x_4 = x_0; -} -x_5 = lean::cnstr_get(x_1, 0); -lean::inc(x_5); -lean::dec(x_1); -x_8 = _l_s10_uint16__sz; -lean::inc(x_8); -x_10 = _l_s3_fin_s3_div_s6___main(x_8, x_2, x_5); -if (lean::is_scalar(x_4)) { - x_11 = lean::alloc_cnstr(0, 1, 0); -} else { - x_11 = x_4; -} -lean::cnstr_set(x_11, 0, x_10); -return x_11; -} -} -obj* _l_s6_uint16_s3_div_s6___main_s7___boxed(obj* x_0, obj* x_1) { -{ -unsigned short x_2; unsigned short x_3; obj* x_4; -x_2 = lean::unbox(x_0); -x_3 = lean::unbox(x_1); -x_4 = _l_s6_uint16_s3_div_s6___main(x_2, x_3); -return x_4; -} -} -obj* _l_s6_uint16_s3_div(unsigned short x_0, unsigned short x_1) { -{ -obj* x_2; -x_2 = _l_s6_uint16_s3_div_s6___main(x_0, x_1); -return x_2; +x_4 = lean::uint16_mul(x_2, x_3); +x_5 = lean::box(x_4); +return x_5; } } obj* _l_s6_uint16_s3_div_s7___boxed(obj* x_0, obj* x_1) { { -unsigned short x_2; unsigned short x_3; obj* x_4; +unsigned short x_2; unsigned short x_3; unsigned short x_4; obj* x_5; x_2 = lean::unbox(x_0); x_3 = lean::unbox(x_1); -x_4 = _l_s6_uint16_s3_div(x_2, x_3); -return x_4; -} -} -obj* _l_s6_uint16_s3_mod_s6___main(unsigned short x_0, unsigned short x_1) { -{ -obj* x_2; obj* x_4; obj* x_5; obj* x_8; obj* x_10; obj* x_11; -x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); -if (lean::is_shared(x_0)) { - lean::dec(x_0); - x_4 = lean::box(0); -} else { - lean::cnstr_release(x_0, 0); - x_4 = x_0; -} -x_5 = lean::cnstr_get(x_1, 0); -lean::inc(x_5); -lean::dec(x_1); -x_8 = _l_s10_uint16__sz; -lean::inc(x_8); -x_10 = _l_s3_fin_s3_mod_s6___main(x_8, x_2, x_5); -if (lean::is_scalar(x_4)) { - x_11 = lean::alloc_cnstr(0, 1, 0); -} else { - x_11 = x_4; -} -lean::cnstr_set(x_11, 0, x_10); -return x_11; -} -} -obj* _l_s6_uint16_s3_mod_s6___main_s7___boxed(obj* x_0, obj* x_1) { -{ -unsigned short x_2; unsigned short x_3; obj* x_4; -x_2 = lean::unbox(x_0); -x_3 = lean::unbox(x_1); -x_4 = _l_s6_uint16_s3_mod_s6___main(x_2, x_3); -return x_4; -} -} -obj* _l_s6_uint16_s3_mod(unsigned short x_0, unsigned short x_1) { -{ -obj* x_2; -x_2 = _l_s6_uint16_s3_mod_s6___main(x_0, x_1); -return x_2; +x_4 = lean::uint16_div(x_2, x_3); +x_5 = lean::box(x_4); +return x_5; } } obj* _l_s6_uint16_s3_mod_s7___boxed(obj* x_0, obj* x_1) { { -unsigned short x_2; unsigned short x_3; obj* x_4; +unsigned short x_2; unsigned short x_3; unsigned short x_4; obj* x_5; x_2 = lean::unbox(x_0); x_3 = lean::unbox(x_1); -x_4 = _l_s6_uint16_s3_mod(x_2, x_3); -return x_4; -} -} -obj* _l_s6_uint16_s4_modn_s6___main(unsigned short x_0, obj* x_1) { -{ -obj* x_2; obj* x_4; obj* x_5; obj* x_7; obj* x_8; -x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); -if (lean::is_shared(x_0)) { - lean::dec(x_0); - x_4 = lean::box(0); -} else { - lean::cnstr_release(x_0, 0); - x_4 = x_0; -} -x_5 = _l_s10_uint16__sz; -lean::inc(x_5); -x_7 = _l_s3_fin_s4_modn_s6___main(x_5, x_2, x_1); -if (lean::is_scalar(x_4)) { - x_8 = lean::alloc_cnstr(0, 1, 0); -} else { - x_8 = x_4; -} -lean::cnstr_set(x_8, 0, x_7); -return x_8; -} -} -obj* _l_s6_uint16_s4_modn_s6___main_s7___boxed(obj* x_0, obj* x_1) { -{ -unsigned short x_2; obj* x_3; -x_2 = lean::unbox(x_0); -x_3 = _l_s6_uint16_s4_modn_s6___main(x_2, x_1); -return x_3; -} -} -obj* _l_s6_uint16_s4_modn(unsigned short x_0, obj* x_1) { -{ -obj* x_2; -x_2 = _l_s6_uint16_s4_modn_s6___main(x_0, x_1); -return x_2; +x_4 = lean::uint16_mod(x_2, x_3); +x_5 = lean::box(x_4); +return x_5; } } obj* _l_s6_uint16_s4_modn_s7___boxed(obj* x_0, obj* x_1) { { -unsigned short x_2; obj* x_3; +unsigned short x_2; unsigned short x_3; obj* x_4; x_2 = lean::unbox(x_0); -x_3 = _l_s6_uint16_s4_modn(x_2, x_1); -return x_3; -} -} -obj* _init__l_s6_uint16_s2_lt_s6___main() { -{ -obj* x_0; -x_0 = lean::box(0); -lean::inc(x_0); -return x_0; +x_3 = lean::uint16_modn(x_2, x_1); +x_4 = lean::box(x_3); +return x_4; } } obj* _init__l_s6_uint16_s2_lt() { @@ -1275,14 +504,6 @@ lean::inc(x_0); return x_0; } } -obj* _init__l_s6_uint16_s2_le_s6___main() { -{ -obj* x_0; -x_0 = lean::box(0); -lean::inc(x_0); -return x_0; -} -} obj* _init__l_s6_uint16_s2_le() { { obj* x_0; @@ -1291,26 +512,38 @@ lean::inc(x_0); return x_0; } } -obj* _init__l_s6_uint16_s9_has__zero() { +unsigned short _init__l_s6_uint16_s9_has__zero() { { -obj* x_0; obj* x_1; obj* x_2; obj* x_3; -x_0 = lean::mk_nat_obj(65535u); -x_1 = lean::mk_nat_obj(0u); -x_2 = _l_s3_fin_s7_of__nat(x_0, x_1); -x_3 = lean::alloc_cnstr(0, 1, 0); -lean::cnstr_set(x_3, 0, x_2); -return x_3; +obj* x_0; unsigned short x_1; +x_0 = lean::mk_nat_obj(0u); +x_1 = lean::uint16_of_nat(x_0); +lean::dec(x_0); +return x_1; } } -obj* _init__l_s6_uint16_s8_has__one() { +obj* _init__l_s6_uint16_s9_has__zero_s7___boxed() { { -obj* x_0; obj* x_1; obj* x_2; obj* x_3; -x_0 = lean::mk_nat_obj(65535u); -x_1 = lean::mk_nat_obj(1u); -x_2 = _l_s3_fin_s7_of__nat(x_0, x_1); -x_3 = lean::alloc_cnstr(0, 1, 0); -lean::cnstr_set(x_3, 0, x_2); -return x_3; +unsigned short x_0; obj* x_1; +x_0 = _l_s6_uint16_s9_has__zero; +x_1 = lean::box(x_0); +return x_1; +} +} +unsigned short _init__l_s6_uint16_s8_has__one() { +{ +obj* x_0; unsigned short x_1; +x_0 = lean::mk_nat_obj(1u); +x_1 = lean::uint16_of_nat(x_0); +lean::dec(x_0); +return x_1; +} +} +obj* _init__l_s6_uint16_s8_has__one_s7___boxed() { +{ +unsigned short x_0; obj* x_1; +x_0 = _l_s6_uint16_s8_has__one; +x_1 = lean::box(x_0); +return x_1; } } obj* _init__l_s6_uint16_s8_has__add() { @@ -1371,46 +604,21 @@ x_0 = lean::alloc_cnstr(0, 0, 0); return x_0; } } -obj* _init__l_s6_uint16_s9_inhabited() { +unsigned short _init__l_s6_uint16_s9_inhabited() { { -obj* x_0; obj* x_1; obj* x_2; obj* x_3; -x_0 = lean::mk_nat_obj(65535u); -x_1 = lean::mk_nat_obj(0u); -x_2 = _l_s3_fin_s7_of__nat(x_0, x_1); -x_3 = lean::alloc_cnstr(0, 1, 0); -lean::cnstr_set(x_3, 0, x_2); -return x_3; -} -} -obj* _l_s6_uint16_s7_dec__eq_s6___main(unsigned short x_0, unsigned short x_1) { -{ -obj* x_2; obj* x_5; obj* x_8; -x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); +obj* x_0; unsigned short x_1; +x_0 = lean::mk_nat_obj(0u); +x_1 = lean::uint16_of_nat(x_0); lean::dec(x_0); -x_5 = lean::cnstr_get(x_1, 0); -lean::inc(x_5); -lean::dec(x_1); -x_8 = lean::nat_dec_eq(x_2, x_5); -lean::dec(x_5); -lean::dec(x_2); -return x_8; +return x_1; } } -obj* _l_s6_uint16_s7_dec__eq_s6___main_s7___boxed(obj* x_0, obj* x_1) { +obj* _init__l_s6_uint16_s9_inhabited_s7___boxed() { { -unsigned short x_2; unsigned short x_3; obj* x_4; -x_2 = lean::unbox(x_0); -x_3 = lean::unbox(x_1); -x_4 = _l_s6_uint16_s7_dec__eq_s6___main(x_2, x_3); -return x_4; -} -} -obj* _l_s6_uint16_s7_dec__eq(unsigned short x_0, unsigned short x_1) { -{ -obj* x_2; -x_2 = _l_s6_uint16_s7_dec__eq_s6___main(x_0, x_1); -return x_2; +unsigned short x_0; obj* x_1; +x_0 = _l_s6_uint16_s9_inhabited; +x_1 = lean::box(x_0); +return x_1; } } obj* _l_s6_uint16_s7_dec__eq_s7___boxed(obj* x_0, obj* x_1) { @@ -1418,87 +626,25 @@ obj* _l_s6_uint16_s7_dec__eq_s7___boxed(obj* x_0, obj* x_1) { unsigned short x_2; unsigned short x_3; obj* x_4; x_2 = lean::unbox(x_0); x_3 = lean::unbox(x_1); -x_4 = _l_s6_uint16_s7_dec__eq(x_2, x_3); +x_4 = lean::uint16_dec_eq(x_2, x_3); return x_4; } } -obj* _l_s6_uint16_s7_dec__lt_s6___main(unsigned short x_0, unsigned short x_1) { -{ -obj* x_2; obj* x_5; obj* x_8; -x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); -lean::dec(x_0); -x_5 = lean::cnstr_get(x_1, 0); -lean::inc(x_5); -lean::dec(x_1); -x_8 = lean::nat_dec_lt(x_2, x_5); -lean::dec(x_5); -lean::dec(x_2); -return x_8; -} -} -obj* _l_s6_uint16_s7_dec__lt_s6___main_s7___boxed(obj* x_0, obj* x_1) { -{ -unsigned short x_2; unsigned short x_3; obj* x_4; -x_2 = lean::unbox(x_0); -x_3 = lean::unbox(x_1); -x_4 = _l_s6_uint16_s7_dec__lt_s6___main(x_2, x_3); -return x_4; -} -} -obj* _l_s6_uint16_s7_dec__lt(unsigned short x_0, unsigned short x_1) { -{ -obj* x_2; -x_2 = _l_s6_uint16_s7_dec__lt_s6___main(x_0, x_1); -return x_2; -} -} obj* _l_s6_uint16_s7_dec__lt_s7___boxed(obj* x_0, obj* x_1) { { unsigned short x_2; unsigned short x_3; obj* x_4; x_2 = lean::unbox(x_0); x_3 = lean::unbox(x_1); -x_4 = _l_s6_uint16_s7_dec__lt(x_2, x_3); +x_4 = lean::uint16_dec_lt(x_2, x_3); return x_4; } } -obj* _l_s6_uint16_s7_dec__le_s6___main(unsigned short x_0, unsigned short x_1) { -{ -obj* x_2; obj* x_5; obj* x_8; -x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); -lean::dec(x_0); -x_5 = lean::cnstr_get(x_1, 0); -lean::inc(x_5); -lean::dec(x_1); -x_8 = lean::nat_dec_le(x_2, x_5); -lean::dec(x_5); -lean::dec(x_2); -return x_8; -} -} -obj* _l_s6_uint16_s7_dec__le_s6___main_s7___boxed(obj* x_0, obj* x_1) { -{ -unsigned short x_2; unsigned short x_3; obj* x_4; -x_2 = lean::unbox(x_0); -x_3 = lean::unbox(x_1); -x_4 = _l_s6_uint16_s7_dec__le_s6___main(x_2, x_3); -return x_4; -} -} -obj* _l_s6_uint16_s7_dec__le(unsigned short x_0, unsigned short x_1) { -{ -obj* x_2; -x_2 = _l_s6_uint16_s7_dec__le_s6___main(x_0, x_1); -return x_2; -} -} obj* _l_s6_uint16_s7_dec__le_s7___boxed(obj* x_0, obj* x_1) { { unsigned short x_2; unsigned short x_3; obj* x_4; x_2 = lean::unbox(x_0); x_3 = lean::unbox(x_1); -x_4 = _l_s6_uint16_s7_dec__le(x_2, x_3); +x_4 = lean::uint16_dec_le(x_2, x_3); return x_4; } } @@ -1512,7 +658,7 @@ return x_0; obj* _l_s6_uint16_s18_has__decidable__lt(unsigned short x_0, unsigned short x_1) { { obj* x_2; -x_2 = _l_s6_uint16_s7_dec__lt_s6___main(x_0, x_1); +x_2 = lean::uint16_dec_lt(x_0, x_1); return x_2; } } @@ -1528,7 +674,7 @@ return x_4; obj* _l_s6_uint16_s18_has__decidable__le(unsigned short x_0, unsigned short x_1) { { obj* x_2; -x_2 = _l_s6_uint16_s7_dec__le_s6___main(x_0, x_1); +x_2 = lean::uint16_dec_le(x_0, x_1); return x_2; } } @@ -1548,361 +694,79 @@ x_0 = lean::mk_nat_obj(lean::mpz("4294967296")); return x_0; } } -obj* _l_s6_uint32_s7_of__nat(obj* x_0) { -{ -obj* x_1; obj* x_2; obj* x_3; -x_1 = lean::mk_nat_obj(lean::mpz("4294967295")); -x_2 = _l_s3_fin_s7_of__nat(x_1, x_0); -x_3 = lean::alloc_cnstr(0, 1, 0); -lean::cnstr_set(x_3, 0, x_2); -return x_3; -} -} -obj* _l_s6_uint32_s7_to__nat_s6___main(unsigned x_0) { -{ -obj* x_1; -x_1 = lean::cnstr_get(x_0, 0); -lean::inc(x_1); -lean::dec(x_0); -return x_1; -} -} -obj* _l_s6_uint32_s7_to__nat_s6___main_s7___boxed(obj* x_0) { +obj* _l_s6_uint32_s7_of__nat_s7___boxed(obj* x_0) { { unsigned x_1; obj* x_2; -x_1 = lean::unbox_uint32(x_0); -x_2 = _l_s6_uint32_s7_to__nat_s6___main(x_1); +x_1 = lean::uint32_of_nat(x_0); +x_2 = lean::box_uint32(x_1); return x_2; } } -obj* _l_s6_uint32_s7_to__nat(unsigned x_0) { -{ -obj* x_1; -x_1 = _l_s6_uint32_s7_to__nat_s6___main(x_0); -return x_1; -} -} obj* _l_s6_uint32_s7_to__nat_s7___boxed(obj* x_0) { { unsigned x_1; obj* x_2; x_1 = lean::unbox_uint32(x_0); -x_2 = _l_s6_uint32_s7_to__nat(x_1); -return x_2; -} -} -obj* _l_s6_uint32_s3_add_s6___main(unsigned x_0, unsigned x_1) { -{ -obj* x_2; obj* x_4; obj* x_5; obj* x_8; obj* x_10; obj* x_11; -x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); -if (lean::is_shared(x_0)) { - lean::dec(x_0); - x_4 = lean::box(0); -} else { - lean::cnstr_release(x_0, 0); - x_4 = x_0; -} -x_5 = lean::cnstr_get(x_1, 0); -lean::inc(x_5); -lean::dec(x_1); -x_8 = _l_s10_uint32__sz; -lean::inc(x_8); -x_10 = _l_s3_fin_s3_add_s6___main(x_8, x_2, x_5); -if (lean::is_scalar(x_4)) { - x_11 = lean::alloc_cnstr(0, 1, 0); -} else { - x_11 = x_4; -} -lean::cnstr_set(x_11, 0, x_10); -return x_11; -} -} -obj* _l_s6_uint32_s3_add_s6___main_s7___boxed(obj* x_0, obj* x_1) { -{ -unsigned x_2; unsigned x_3; obj* x_4; -x_2 = lean::unbox_uint32(x_0); -x_3 = lean::unbox_uint32(x_1); -x_4 = _l_s6_uint32_s3_add_s6___main(x_2, x_3); -return x_4; -} -} -obj* _l_s6_uint32_s3_add(unsigned x_0, unsigned x_1) { -{ -obj* x_2; -x_2 = _l_s6_uint32_s3_add_s6___main(x_0, x_1); +x_2 = lean::uint32_to_nat(x_1); return x_2; } } obj* _l_s6_uint32_s3_add_s7___boxed(obj* x_0, obj* x_1) { { -unsigned x_2; unsigned x_3; obj* x_4; +unsigned x_2; unsigned x_3; unsigned x_4; obj* x_5; x_2 = lean::unbox_uint32(x_0); x_3 = lean::unbox_uint32(x_1); -x_4 = _l_s6_uint32_s3_add(x_2, x_3); -return x_4; -} -} -obj* _l_s6_uint32_s3_sub_s6___main(unsigned x_0, unsigned x_1) { -{ -obj* x_2; obj* x_4; obj* x_5; obj* x_8; obj* x_10; obj* x_11; -x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); -if (lean::is_shared(x_0)) { - lean::dec(x_0); - x_4 = lean::box(0); -} else { - lean::cnstr_release(x_0, 0); - x_4 = x_0; -} -x_5 = lean::cnstr_get(x_1, 0); -lean::inc(x_5); -lean::dec(x_1); -x_8 = _l_s10_uint32__sz; -lean::inc(x_8); -x_10 = _l_s3_fin_s3_sub_s6___main(x_8, x_2, x_5); -if (lean::is_scalar(x_4)) { - x_11 = lean::alloc_cnstr(0, 1, 0); -} else { - x_11 = x_4; -} -lean::cnstr_set(x_11, 0, x_10); -return x_11; -} -} -obj* _l_s6_uint32_s3_sub_s6___main_s7___boxed(obj* x_0, obj* x_1) { -{ -unsigned x_2; unsigned x_3; obj* x_4; -x_2 = lean::unbox_uint32(x_0); -x_3 = lean::unbox_uint32(x_1); -x_4 = _l_s6_uint32_s3_sub_s6___main(x_2, x_3); -return x_4; -} -} -obj* _l_s6_uint32_s3_sub(unsigned x_0, unsigned x_1) { -{ -obj* x_2; -x_2 = _l_s6_uint32_s3_sub_s6___main(x_0, x_1); -return x_2; +x_4 = lean::uint32_add(x_2, x_3); +x_5 = lean::box_uint32(x_4); +return x_5; } } obj* _l_s6_uint32_s3_sub_s7___boxed(obj* x_0, obj* x_1) { { -unsigned x_2; unsigned x_3; obj* x_4; +unsigned x_2; unsigned x_3; unsigned x_4; obj* x_5; x_2 = lean::unbox_uint32(x_0); x_3 = lean::unbox_uint32(x_1); -x_4 = _l_s6_uint32_s3_sub(x_2, x_3); -return x_4; -} -} -obj* _l_s6_uint32_s3_mul_s6___main(unsigned x_0, unsigned x_1) { -{ -obj* x_2; obj* x_4; obj* x_5; obj* x_8; obj* x_10; obj* x_11; -x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); -if (lean::is_shared(x_0)) { - lean::dec(x_0); - x_4 = lean::box(0); -} else { - lean::cnstr_release(x_0, 0); - x_4 = x_0; -} -x_5 = lean::cnstr_get(x_1, 0); -lean::inc(x_5); -lean::dec(x_1); -x_8 = _l_s10_uint32__sz; -lean::inc(x_8); -x_10 = _l_s3_fin_s3_mul_s6___main(x_8, x_2, x_5); -if (lean::is_scalar(x_4)) { - x_11 = lean::alloc_cnstr(0, 1, 0); -} else { - x_11 = x_4; -} -lean::cnstr_set(x_11, 0, x_10); -return x_11; -} -} -obj* _l_s6_uint32_s3_mul_s6___main_s7___boxed(obj* x_0, obj* x_1) { -{ -unsigned x_2; unsigned x_3; obj* x_4; -x_2 = lean::unbox_uint32(x_0); -x_3 = lean::unbox_uint32(x_1); -x_4 = _l_s6_uint32_s3_mul_s6___main(x_2, x_3); -return x_4; -} -} -obj* _l_s6_uint32_s3_mul(unsigned x_0, unsigned x_1) { -{ -obj* x_2; -x_2 = _l_s6_uint32_s3_mul_s6___main(x_0, x_1); -return x_2; +x_4 = lean::uint32_sub(x_2, x_3); +x_5 = lean::box_uint32(x_4); +return x_5; } } obj* _l_s6_uint32_s3_mul_s7___boxed(obj* x_0, obj* x_1) { { -unsigned x_2; unsigned x_3; obj* x_4; +unsigned x_2; unsigned x_3; unsigned x_4; obj* x_5; x_2 = lean::unbox_uint32(x_0); x_3 = lean::unbox_uint32(x_1); -x_4 = _l_s6_uint32_s3_mul(x_2, x_3); -return x_4; -} -} -obj* _l_s6_uint32_s3_div_s6___main(unsigned x_0, unsigned x_1) { -{ -obj* x_2; obj* x_4; obj* x_5; obj* x_8; obj* x_10; obj* x_11; -x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); -if (lean::is_shared(x_0)) { - lean::dec(x_0); - x_4 = lean::box(0); -} else { - lean::cnstr_release(x_0, 0); - x_4 = x_0; -} -x_5 = lean::cnstr_get(x_1, 0); -lean::inc(x_5); -lean::dec(x_1); -x_8 = _l_s10_uint32__sz; -lean::inc(x_8); -x_10 = _l_s3_fin_s3_div_s6___main(x_8, x_2, x_5); -if (lean::is_scalar(x_4)) { - x_11 = lean::alloc_cnstr(0, 1, 0); -} else { - x_11 = x_4; -} -lean::cnstr_set(x_11, 0, x_10); -return x_11; -} -} -obj* _l_s6_uint32_s3_div_s6___main_s7___boxed(obj* x_0, obj* x_1) { -{ -unsigned x_2; unsigned x_3; obj* x_4; -x_2 = lean::unbox_uint32(x_0); -x_3 = lean::unbox_uint32(x_1); -x_4 = _l_s6_uint32_s3_div_s6___main(x_2, x_3); -return x_4; -} -} -obj* _l_s6_uint32_s3_div(unsigned x_0, unsigned x_1) { -{ -obj* x_2; -x_2 = _l_s6_uint32_s3_div_s6___main(x_0, x_1); -return x_2; +x_4 = lean::uint32_mul(x_2, x_3); +x_5 = lean::box_uint32(x_4); +return x_5; } } obj* _l_s6_uint32_s3_div_s7___boxed(obj* x_0, obj* x_1) { { -unsigned x_2; unsigned x_3; obj* x_4; +unsigned x_2; unsigned x_3; unsigned x_4; obj* x_5; x_2 = lean::unbox_uint32(x_0); x_3 = lean::unbox_uint32(x_1); -x_4 = _l_s6_uint32_s3_div(x_2, x_3); -return x_4; -} -} -obj* _l_s6_uint32_s3_mod_s6___main(unsigned x_0, unsigned x_1) { -{ -obj* x_2; obj* x_4; obj* x_5; obj* x_8; obj* x_10; obj* x_11; -x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); -if (lean::is_shared(x_0)) { - lean::dec(x_0); - x_4 = lean::box(0); -} else { - lean::cnstr_release(x_0, 0); - x_4 = x_0; -} -x_5 = lean::cnstr_get(x_1, 0); -lean::inc(x_5); -lean::dec(x_1); -x_8 = _l_s10_uint32__sz; -lean::inc(x_8); -x_10 = _l_s3_fin_s3_mod_s6___main(x_8, x_2, x_5); -if (lean::is_scalar(x_4)) { - x_11 = lean::alloc_cnstr(0, 1, 0); -} else { - x_11 = x_4; -} -lean::cnstr_set(x_11, 0, x_10); -return x_11; -} -} -obj* _l_s6_uint32_s3_mod_s6___main_s7___boxed(obj* x_0, obj* x_1) { -{ -unsigned x_2; unsigned x_3; obj* x_4; -x_2 = lean::unbox_uint32(x_0); -x_3 = lean::unbox_uint32(x_1); -x_4 = _l_s6_uint32_s3_mod_s6___main(x_2, x_3); -return x_4; -} -} -obj* _l_s6_uint32_s3_mod(unsigned x_0, unsigned x_1) { -{ -obj* x_2; -x_2 = _l_s6_uint32_s3_mod_s6___main(x_0, x_1); -return x_2; +x_4 = lean::uint32_div(x_2, x_3); +x_5 = lean::box_uint32(x_4); +return x_5; } } obj* _l_s6_uint32_s3_mod_s7___boxed(obj* x_0, obj* x_1) { { -unsigned x_2; unsigned x_3; obj* x_4; +unsigned x_2; unsigned x_3; unsigned x_4; obj* x_5; x_2 = lean::unbox_uint32(x_0); x_3 = lean::unbox_uint32(x_1); -x_4 = _l_s6_uint32_s3_mod(x_2, x_3); -return x_4; -} -} -obj* _l_s6_uint32_s4_modn_s6___main(unsigned x_0, obj* x_1) { -{ -obj* x_2; obj* x_4; obj* x_5; obj* x_7; obj* x_8; -x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); -if (lean::is_shared(x_0)) { - lean::dec(x_0); - x_4 = lean::box(0); -} else { - lean::cnstr_release(x_0, 0); - x_4 = x_0; -} -x_5 = _l_s10_uint32__sz; -lean::inc(x_5); -x_7 = _l_s3_fin_s4_modn_s6___main(x_5, x_2, x_1); -if (lean::is_scalar(x_4)) { - x_8 = lean::alloc_cnstr(0, 1, 0); -} else { - x_8 = x_4; -} -lean::cnstr_set(x_8, 0, x_7); -return x_8; -} -} -obj* _l_s6_uint32_s4_modn_s6___main_s7___boxed(obj* x_0, obj* x_1) { -{ -unsigned x_2; obj* x_3; -x_2 = lean::unbox_uint32(x_0); -x_3 = _l_s6_uint32_s4_modn_s6___main(x_2, x_1); -return x_3; -} -} -obj* _l_s6_uint32_s4_modn(unsigned x_0, obj* x_1) { -{ -obj* x_2; -x_2 = _l_s6_uint32_s4_modn_s6___main(x_0, x_1); -return x_2; +x_4 = lean::uint32_mod(x_2, x_3); +x_5 = lean::box_uint32(x_4); +return x_5; } } obj* _l_s6_uint32_s4_modn_s7___boxed(obj* x_0, obj* x_1) { { -unsigned x_2; obj* x_3; +unsigned x_2; unsigned x_3; obj* x_4; x_2 = lean::unbox_uint32(x_0); -x_3 = _l_s6_uint32_s4_modn(x_2, x_1); -return x_3; -} -} -obj* _init__l_s6_uint32_s2_lt_s6___main() { -{ -obj* x_0; -x_0 = lean::box(0); -lean::inc(x_0); -return x_0; +x_3 = lean::uint32_modn(x_2, x_1); +x_4 = lean::box_uint32(x_3); +return x_4; } } obj* _init__l_s6_uint32_s2_lt() { @@ -1913,14 +777,6 @@ lean::inc(x_0); return x_0; } } -obj* _init__l_s6_uint32_s2_le_s6___main() { -{ -obj* x_0; -x_0 = lean::box(0); -lean::inc(x_0); -return x_0; -} -} obj* _init__l_s6_uint32_s2_le() { { obj* x_0; @@ -1929,26 +785,38 @@ lean::inc(x_0); return x_0; } } -obj* _init__l_s6_uint32_s9_has__zero() { +unsigned _init__l_s6_uint32_s9_has__zero() { { -obj* x_0; obj* x_1; obj* x_2; obj* x_3; -x_0 = lean::mk_nat_obj(lean::mpz("4294967295")); -x_1 = lean::mk_nat_obj(0u); -x_2 = _l_s3_fin_s7_of__nat(x_0, x_1); -x_3 = lean::alloc_cnstr(0, 1, 0); -lean::cnstr_set(x_3, 0, x_2); -return x_3; +obj* x_0; unsigned x_1; +x_0 = lean::mk_nat_obj(0u); +x_1 = lean::uint32_of_nat(x_0); +lean::dec(x_0); +return x_1; } } -obj* _init__l_s6_uint32_s8_has__one() { +obj* _init__l_s6_uint32_s9_has__zero_s7___boxed() { { -obj* x_0; obj* x_1; obj* x_2; obj* x_3; -x_0 = lean::mk_nat_obj(lean::mpz("4294967295")); -x_1 = lean::mk_nat_obj(1u); -x_2 = _l_s3_fin_s7_of__nat(x_0, x_1); -x_3 = lean::alloc_cnstr(0, 1, 0); -lean::cnstr_set(x_3, 0, x_2); -return x_3; +unsigned x_0; obj* x_1; +x_0 = _l_s6_uint32_s9_has__zero; +x_1 = lean::box_uint32(x_0); +return x_1; +} +} +unsigned _init__l_s6_uint32_s8_has__one() { +{ +obj* x_0; unsigned x_1; +x_0 = lean::mk_nat_obj(1u); +x_1 = lean::uint32_of_nat(x_0); +lean::dec(x_0); +return x_1; +} +} +obj* _init__l_s6_uint32_s8_has__one_s7___boxed() { +{ +unsigned x_0; obj* x_1; +x_0 = _l_s6_uint32_s8_has__one; +x_1 = lean::box_uint32(x_0); +return x_1; } } obj* _init__l_s6_uint32_s8_has__add() { @@ -2009,46 +877,21 @@ x_0 = lean::alloc_cnstr(0, 0, 0); return x_0; } } -obj* _init__l_s6_uint32_s9_inhabited() { +unsigned _init__l_s6_uint32_s9_inhabited() { { -obj* x_0; obj* x_1; obj* x_2; obj* x_3; -x_0 = lean::mk_nat_obj(lean::mpz("4294967295")); -x_1 = lean::mk_nat_obj(0u); -x_2 = _l_s3_fin_s7_of__nat(x_0, x_1); -x_3 = lean::alloc_cnstr(0, 1, 0); -lean::cnstr_set(x_3, 0, x_2); -return x_3; -} -} -obj* _l_s6_uint32_s7_dec__eq_s6___main(unsigned x_0, unsigned x_1) { -{ -obj* x_2; obj* x_5; obj* x_8; -x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); +obj* x_0; unsigned x_1; +x_0 = lean::mk_nat_obj(0u); +x_1 = lean::uint32_of_nat(x_0); lean::dec(x_0); -x_5 = lean::cnstr_get(x_1, 0); -lean::inc(x_5); -lean::dec(x_1); -x_8 = lean::nat_dec_eq(x_2, x_5); -lean::dec(x_5); -lean::dec(x_2); -return x_8; +return x_1; } } -obj* _l_s6_uint32_s7_dec__eq_s6___main_s7___boxed(obj* x_0, obj* x_1) { +obj* _init__l_s6_uint32_s9_inhabited_s7___boxed() { { -unsigned x_2; unsigned x_3; obj* x_4; -x_2 = lean::unbox_uint32(x_0); -x_3 = lean::unbox_uint32(x_1); -x_4 = _l_s6_uint32_s7_dec__eq_s6___main(x_2, x_3); -return x_4; -} -} -obj* _l_s6_uint32_s7_dec__eq(unsigned x_0, unsigned x_1) { -{ -obj* x_2; -x_2 = _l_s6_uint32_s7_dec__eq_s6___main(x_0, x_1); -return x_2; +unsigned x_0; obj* x_1; +x_0 = _l_s6_uint32_s9_inhabited; +x_1 = lean::box_uint32(x_0); +return x_1; } } obj* _l_s6_uint32_s7_dec__eq_s7___boxed(obj* x_0, obj* x_1) { @@ -2056,87 +899,25 @@ obj* _l_s6_uint32_s7_dec__eq_s7___boxed(obj* x_0, obj* x_1) { unsigned x_2; unsigned x_3; obj* x_4; x_2 = lean::unbox_uint32(x_0); x_3 = lean::unbox_uint32(x_1); -x_4 = _l_s6_uint32_s7_dec__eq(x_2, x_3); +x_4 = lean::uint32_dec_eq(x_2, x_3); return x_4; } } -obj* _l_s6_uint32_s7_dec__lt_s6___main(unsigned x_0, unsigned x_1) { -{ -obj* x_2; obj* x_5; obj* x_8; -x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); -lean::dec(x_0); -x_5 = lean::cnstr_get(x_1, 0); -lean::inc(x_5); -lean::dec(x_1); -x_8 = lean::nat_dec_lt(x_2, x_5); -lean::dec(x_5); -lean::dec(x_2); -return x_8; -} -} -obj* _l_s6_uint32_s7_dec__lt_s6___main_s7___boxed(obj* x_0, obj* x_1) { -{ -unsigned x_2; unsigned x_3; obj* x_4; -x_2 = lean::unbox_uint32(x_0); -x_3 = lean::unbox_uint32(x_1); -x_4 = _l_s6_uint32_s7_dec__lt_s6___main(x_2, x_3); -return x_4; -} -} -obj* _l_s6_uint32_s7_dec__lt(unsigned x_0, unsigned x_1) { -{ -obj* x_2; -x_2 = _l_s6_uint32_s7_dec__lt_s6___main(x_0, x_1); -return x_2; -} -} obj* _l_s6_uint32_s7_dec__lt_s7___boxed(obj* x_0, obj* x_1) { { unsigned x_2; unsigned x_3; obj* x_4; x_2 = lean::unbox_uint32(x_0); x_3 = lean::unbox_uint32(x_1); -x_4 = _l_s6_uint32_s7_dec__lt(x_2, x_3); +x_4 = lean::uint32_dec_lt(x_2, x_3); return x_4; } } -obj* _l_s6_uint32_s7_dec__le_s6___main(unsigned x_0, unsigned x_1) { -{ -obj* x_2; obj* x_5; obj* x_8; -x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); -lean::dec(x_0); -x_5 = lean::cnstr_get(x_1, 0); -lean::inc(x_5); -lean::dec(x_1); -x_8 = lean::nat_dec_le(x_2, x_5); -lean::dec(x_5); -lean::dec(x_2); -return x_8; -} -} -obj* _l_s6_uint32_s7_dec__le_s6___main_s7___boxed(obj* x_0, obj* x_1) { -{ -unsigned x_2; unsigned x_3; obj* x_4; -x_2 = lean::unbox_uint32(x_0); -x_3 = lean::unbox_uint32(x_1); -x_4 = _l_s6_uint32_s7_dec__le_s6___main(x_2, x_3); -return x_4; -} -} -obj* _l_s6_uint32_s7_dec__le(unsigned x_0, unsigned x_1) { -{ -obj* x_2; -x_2 = _l_s6_uint32_s7_dec__le_s6___main(x_0, x_1); -return x_2; -} -} obj* _l_s6_uint32_s7_dec__le_s7___boxed(obj* x_0, obj* x_1) { { unsigned x_2; unsigned x_3; obj* x_4; x_2 = lean::unbox_uint32(x_0); x_3 = lean::unbox_uint32(x_1); -x_4 = _l_s6_uint32_s7_dec__le(x_2, x_3); +x_4 = lean::uint32_dec_le(x_2, x_3); return x_4; } } @@ -2150,7 +931,7 @@ return x_0; obj* _l_s6_uint32_s18_has__decidable__lt(unsigned x_0, unsigned x_1) { { obj* x_2; -x_2 = _l_s6_uint32_s7_dec__lt_s6___main(x_0, x_1); +x_2 = lean::uint32_dec_lt(x_0, x_1); return x_2; } } @@ -2166,7 +947,7 @@ return x_4; obj* _l_s6_uint32_s18_has__decidable__le(unsigned x_0, unsigned x_1) { { obj* x_2; -x_2 = _l_s6_uint32_s7_dec__le_s6___main(x_0, x_1); +x_2 = lean::uint32_dec_le(x_0, x_1); return x_2; } } @@ -2186,369 +967,79 @@ x_0 = lean::mk_nat_obj(lean::mpz("18446744073709551616")); return x_0; } } -obj* _l_s6_uint64_s7_of__nat(obj* x_0) { -{ -obj* x_1; obj* x_3; obj* x_4; -x_1 = _l_s6_uint64_s7_of__nat_s11___closed__1; -lean::inc(x_1); -x_3 = _l_s3_fin_s7_of__nat(x_1, x_0); -x_4 = lean::alloc_cnstr(0, 1, 0); -lean::cnstr_set(x_4, 0, x_3); -return x_4; -} -} -obj* _init__l_s6_uint64_s7_of__nat_s11___closed__1() { -{ -obj* x_0; -x_0 = lean::mk_nat_obj(lean::mpz("18446744073709551615")); -return x_0; -} -} -obj* _l_s6_uint64_s7_to__nat_s6___main(unsigned long long x_0) { -{ -obj* x_1; -x_1 = lean::cnstr_get(x_0, 0); -lean::inc(x_1); -lean::dec(x_0); -return x_1; -} -} -obj* _l_s6_uint64_s7_to__nat_s6___main_s7___boxed(obj* x_0) { +obj* _l_s6_uint64_s7_of__nat_s7___boxed(obj* x_0) { { unsigned long long x_1; obj* x_2; -x_1 = lean::unbox_uint64(x_0); -x_2 = _l_s6_uint64_s7_to__nat_s6___main(x_1); +x_1 = lean::uint64_of_nat(x_0); +x_2 = lean::box_uint64(x_1); return x_2; } } -obj* _l_s6_uint64_s7_to__nat(unsigned long long x_0) { -{ -obj* x_1; -x_1 = _l_s6_uint64_s7_to__nat_s6___main(x_0); -return x_1; -} -} obj* _l_s6_uint64_s7_to__nat_s7___boxed(obj* x_0) { { unsigned long long x_1; obj* x_2; x_1 = lean::unbox_uint64(x_0); -x_2 = _l_s6_uint64_s7_to__nat(x_1); -return x_2; -} -} -obj* _l_s6_uint64_s3_add_s6___main(unsigned long long x_0, unsigned long long x_1) { -{ -obj* x_2; obj* x_4; obj* x_5; obj* x_8; obj* x_10; obj* x_11; -x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); -if (lean::is_shared(x_0)) { - lean::dec(x_0); - x_4 = lean::box(0); -} else { - lean::cnstr_release(x_0, 0); - x_4 = x_0; -} -x_5 = lean::cnstr_get(x_1, 0); -lean::inc(x_5); -lean::dec(x_1); -x_8 = _l_s10_uint64__sz; -lean::inc(x_8); -x_10 = _l_s3_fin_s3_add_s6___main(x_8, x_2, x_5); -if (lean::is_scalar(x_4)) { - x_11 = lean::alloc_cnstr(0, 1, 0); -} else { - x_11 = x_4; -} -lean::cnstr_set(x_11, 0, x_10); -return x_11; -} -} -obj* _l_s6_uint64_s3_add_s6___main_s7___boxed(obj* x_0, obj* x_1) { -{ -unsigned long long x_2; unsigned long long x_3; obj* x_4; -x_2 = lean::unbox_uint64(x_0); -x_3 = lean::unbox_uint64(x_1); -x_4 = _l_s6_uint64_s3_add_s6___main(x_2, x_3); -return x_4; -} -} -obj* _l_s6_uint64_s3_add(unsigned long long x_0, unsigned long long x_1) { -{ -obj* x_2; -x_2 = _l_s6_uint64_s3_add_s6___main(x_0, x_1); +x_2 = lean::uint64_to_nat(x_1); return x_2; } } obj* _l_s6_uint64_s3_add_s7___boxed(obj* x_0, obj* x_1) { { -unsigned long long x_2; unsigned long long x_3; obj* x_4; +unsigned long long x_2; unsigned long long x_3; unsigned long long x_4; obj* x_5; x_2 = lean::unbox_uint64(x_0); x_3 = lean::unbox_uint64(x_1); -x_4 = _l_s6_uint64_s3_add(x_2, x_3); -return x_4; -} -} -obj* _l_s6_uint64_s3_sub_s6___main(unsigned long long x_0, unsigned long long x_1) { -{ -obj* x_2; obj* x_4; obj* x_5; obj* x_8; obj* x_10; obj* x_11; -x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); -if (lean::is_shared(x_0)) { - lean::dec(x_0); - x_4 = lean::box(0); -} else { - lean::cnstr_release(x_0, 0); - x_4 = x_0; -} -x_5 = lean::cnstr_get(x_1, 0); -lean::inc(x_5); -lean::dec(x_1); -x_8 = _l_s10_uint64__sz; -lean::inc(x_8); -x_10 = _l_s3_fin_s3_sub_s6___main(x_8, x_2, x_5); -if (lean::is_scalar(x_4)) { - x_11 = lean::alloc_cnstr(0, 1, 0); -} else { - x_11 = x_4; -} -lean::cnstr_set(x_11, 0, x_10); -return x_11; -} -} -obj* _l_s6_uint64_s3_sub_s6___main_s7___boxed(obj* x_0, obj* x_1) { -{ -unsigned long long x_2; unsigned long long x_3; obj* x_4; -x_2 = lean::unbox_uint64(x_0); -x_3 = lean::unbox_uint64(x_1); -x_4 = _l_s6_uint64_s3_sub_s6___main(x_2, x_3); -return x_4; -} -} -obj* _l_s6_uint64_s3_sub(unsigned long long x_0, unsigned long long x_1) { -{ -obj* x_2; -x_2 = _l_s6_uint64_s3_sub_s6___main(x_0, x_1); -return x_2; +x_4 = lean::uint64_add(x_2, x_3); +x_5 = lean::box_uint64(x_4); +return x_5; } } obj* _l_s6_uint64_s3_sub_s7___boxed(obj* x_0, obj* x_1) { { -unsigned long long x_2; unsigned long long x_3; obj* x_4; +unsigned long long x_2; unsigned long long x_3; unsigned long long x_4; obj* x_5; x_2 = lean::unbox_uint64(x_0); x_3 = lean::unbox_uint64(x_1); -x_4 = _l_s6_uint64_s3_sub(x_2, x_3); -return x_4; -} -} -obj* _l_s6_uint64_s3_mul_s6___main(unsigned long long x_0, unsigned long long x_1) { -{ -obj* x_2; obj* x_4; obj* x_5; obj* x_8; obj* x_10; obj* x_11; -x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); -if (lean::is_shared(x_0)) { - lean::dec(x_0); - x_4 = lean::box(0); -} else { - lean::cnstr_release(x_0, 0); - x_4 = x_0; -} -x_5 = lean::cnstr_get(x_1, 0); -lean::inc(x_5); -lean::dec(x_1); -x_8 = _l_s10_uint64__sz; -lean::inc(x_8); -x_10 = _l_s3_fin_s3_mul_s6___main(x_8, x_2, x_5); -if (lean::is_scalar(x_4)) { - x_11 = lean::alloc_cnstr(0, 1, 0); -} else { - x_11 = x_4; -} -lean::cnstr_set(x_11, 0, x_10); -return x_11; -} -} -obj* _l_s6_uint64_s3_mul_s6___main_s7___boxed(obj* x_0, obj* x_1) { -{ -unsigned long long x_2; unsigned long long x_3; obj* x_4; -x_2 = lean::unbox_uint64(x_0); -x_3 = lean::unbox_uint64(x_1); -x_4 = _l_s6_uint64_s3_mul_s6___main(x_2, x_3); -return x_4; -} -} -obj* _l_s6_uint64_s3_mul(unsigned long long x_0, unsigned long long x_1) { -{ -obj* x_2; -x_2 = _l_s6_uint64_s3_mul_s6___main(x_0, x_1); -return x_2; +x_4 = lean::uint64_sub(x_2, x_3); +x_5 = lean::box_uint64(x_4); +return x_5; } } obj* _l_s6_uint64_s3_mul_s7___boxed(obj* x_0, obj* x_1) { { -unsigned long long x_2; unsigned long long x_3; obj* x_4; +unsigned long long x_2; unsigned long long x_3; unsigned long long x_4; obj* x_5; x_2 = lean::unbox_uint64(x_0); x_3 = lean::unbox_uint64(x_1); -x_4 = _l_s6_uint64_s3_mul(x_2, x_3); -return x_4; -} -} -obj* _l_s6_uint64_s3_div_s6___main(unsigned long long x_0, unsigned long long x_1) { -{ -obj* x_2; obj* x_4; obj* x_5; obj* x_8; obj* x_10; obj* x_11; -x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); -if (lean::is_shared(x_0)) { - lean::dec(x_0); - x_4 = lean::box(0); -} else { - lean::cnstr_release(x_0, 0); - x_4 = x_0; -} -x_5 = lean::cnstr_get(x_1, 0); -lean::inc(x_5); -lean::dec(x_1); -x_8 = _l_s10_uint64__sz; -lean::inc(x_8); -x_10 = _l_s3_fin_s3_div_s6___main(x_8, x_2, x_5); -if (lean::is_scalar(x_4)) { - x_11 = lean::alloc_cnstr(0, 1, 0); -} else { - x_11 = x_4; -} -lean::cnstr_set(x_11, 0, x_10); -return x_11; -} -} -obj* _l_s6_uint64_s3_div_s6___main_s7___boxed(obj* x_0, obj* x_1) { -{ -unsigned long long x_2; unsigned long long x_3; obj* x_4; -x_2 = lean::unbox_uint64(x_0); -x_3 = lean::unbox_uint64(x_1); -x_4 = _l_s6_uint64_s3_div_s6___main(x_2, x_3); -return x_4; -} -} -obj* _l_s6_uint64_s3_div(unsigned long long x_0, unsigned long long x_1) { -{ -obj* x_2; -x_2 = _l_s6_uint64_s3_div_s6___main(x_0, x_1); -return x_2; +x_4 = lean::uint64_mul(x_2, x_3); +x_5 = lean::box_uint64(x_4); +return x_5; } } obj* _l_s6_uint64_s3_div_s7___boxed(obj* x_0, obj* x_1) { { -unsigned long long x_2; unsigned long long x_3; obj* x_4; +unsigned long long x_2; unsigned long long x_3; unsigned long long x_4; obj* x_5; x_2 = lean::unbox_uint64(x_0); x_3 = lean::unbox_uint64(x_1); -x_4 = _l_s6_uint64_s3_div(x_2, x_3); -return x_4; -} -} -obj* _l_s6_uint64_s3_mod_s6___main(unsigned long long x_0, unsigned long long x_1) { -{ -obj* x_2; obj* x_4; obj* x_5; obj* x_8; obj* x_10; obj* x_11; -x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); -if (lean::is_shared(x_0)) { - lean::dec(x_0); - x_4 = lean::box(0); -} else { - lean::cnstr_release(x_0, 0); - x_4 = x_0; -} -x_5 = lean::cnstr_get(x_1, 0); -lean::inc(x_5); -lean::dec(x_1); -x_8 = _l_s10_uint64__sz; -lean::inc(x_8); -x_10 = _l_s3_fin_s3_mod_s6___main(x_8, x_2, x_5); -if (lean::is_scalar(x_4)) { - x_11 = lean::alloc_cnstr(0, 1, 0); -} else { - x_11 = x_4; -} -lean::cnstr_set(x_11, 0, x_10); -return x_11; -} -} -obj* _l_s6_uint64_s3_mod_s6___main_s7___boxed(obj* x_0, obj* x_1) { -{ -unsigned long long x_2; unsigned long long x_3; obj* x_4; -x_2 = lean::unbox_uint64(x_0); -x_3 = lean::unbox_uint64(x_1); -x_4 = _l_s6_uint64_s3_mod_s6___main(x_2, x_3); -return x_4; -} -} -obj* _l_s6_uint64_s3_mod(unsigned long long x_0, unsigned long long x_1) { -{ -obj* x_2; -x_2 = _l_s6_uint64_s3_mod_s6___main(x_0, x_1); -return x_2; +x_4 = lean::uint64_div(x_2, x_3); +x_5 = lean::box_uint64(x_4); +return x_5; } } obj* _l_s6_uint64_s3_mod_s7___boxed(obj* x_0, obj* x_1) { { -unsigned long long x_2; unsigned long long x_3; obj* x_4; +unsigned long long x_2; unsigned long long x_3; unsigned long long x_4; obj* x_5; x_2 = lean::unbox_uint64(x_0); x_3 = lean::unbox_uint64(x_1); -x_4 = _l_s6_uint64_s3_mod(x_2, x_3); -return x_4; -} -} -obj* _l_s6_uint64_s4_modn_s6___main(unsigned long long x_0, obj* x_1) { -{ -obj* x_2; obj* x_4; obj* x_5; obj* x_7; obj* x_8; -x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); -if (lean::is_shared(x_0)) { - lean::dec(x_0); - x_4 = lean::box(0); -} else { - lean::cnstr_release(x_0, 0); - x_4 = x_0; -} -x_5 = _l_s10_uint64__sz; -lean::inc(x_5); -x_7 = _l_s3_fin_s4_modn_s6___main(x_5, x_2, x_1); -if (lean::is_scalar(x_4)) { - x_8 = lean::alloc_cnstr(0, 1, 0); -} else { - x_8 = x_4; -} -lean::cnstr_set(x_8, 0, x_7); -return x_8; -} -} -obj* _l_s6_uint64_s4_modn_s6___main_s7___boxed(obj* x_0, obj* x_1) { -{ -unsigned long long x_2; obj* x_3; -x_2 = lean::unbox_uint64(x_0); -x_3 = _l_s6_uint64_s4_modn_s6___main(x_2, x_1); -return x_3; -} -} -obj* _l_s6_uint64_s4_modn(unsigned long long x_0, obj* x_1) { -{ -obj* x_2; -x_2 = _l_s6_uint64_s4_modn_s6___main(x_0, x_1); -return x_2; +x_4 = lean::uint64_mod(x_2, x_3); +x_5 = lean::box_uint64(x_4); +return x_5; } } obj* _l_s6_uint64_s4_modn_s7___boxed(obj* x_0, obj* x_1) { { -unsigned long long x_2; obj* x_3; +unsigned long long x_2; unsigned long long x_3; obj* x_4; x_2 = lean::unbox_uint64(x_0); -x_3 = _l_s6_uint64_s4_modn(x_2, x_1); -return x_3; -} -} -obj* _init__l_s6_uint64_s2_lt_s6___main() { -{ -obj* x_0; -x_0 = lean::box(0); -lean::inc(x_0); -return x_0; +x_3 = lean::uint64_modn(x_2, x_1); +x_4 = lean::box_uint64(x_3); +return x_4; } } obj* _init__l_s6_uint64_s2_lt() { @@ -2559,14 +1050,6 @@ lean::inc(x_0); return x_0; } } -obj* _init__l_s6_uint64_s2_le_s6___main() { -{ -obj* x_0; -x_0 = lean::box(0); -lean::inc(x_0); -return x_0; -} -} obj* _init__l_s6_uint64_s2_le() { { obj* x_0; @@ -2575,26 +1058,38 @@ lean::inc(x_0); return x_0; } } -obj* _init__l_s6_uint64_s9_has__zero() { +unsigned long long _init__l_s6_uint64_s9_has__zero() { { -obj* x_0; obj* x_1; obj* x_2; obj* x_3; -x_0 = lean::mk_nat_obj(lean::mpz("18446744073709551615")); -x_1 = lean::mk_nat_obj(0u); -x_2 = _l_s3_fin_s7_of__nat(x_0, x_1); -x_3 = lean::alloc_cnstr(0, 1, 0); -lean::cnstr_set(x_3, 0, x_2); -return x_3; +obj* x_0; unsigned long long x_1; +x_0 = lean::mk_nat_obj(0u); +x_1 = lean::uint64_of_nat(x_0); +lean::dec(x_0); +return x_1; } } -obj* _init__l_s6_uint64_s8_has__one() { +obj* _init__l_s6_uint64_s9_has__zero_s7___boxed() { { -obj* x_0; obj* x_1; obj* x_2; obj* x_3; -x_0 = lean::mk_nat_obj(lean::mpz("18446744073709551615")); -x_1 = lean::mk_nat_obj(1u); -x_2 = _l_s3_fin_s7_of__nat(x_0, x_1); -x_3 = lean::alloc_cnstr(0, 1, 0); -lean::cnstr_set(x_3, 0, x_2); -return x_3; +unsigned long long x_0; obj* x_1; +x_0 = _l_s6_uint64_s9_has__zero; +x_1 = lean::box_uint64(x_0); +return x_1; +} +} +unsigned long long _init__l_s6_uint64_s8_has__one() { +{ +obj* x_0; unsigned long long x_1; +x_0 = lean::mk_nat_obj(1u); +x_1 = lean::uint64_of_nat(x_0); +lean::dec(x_0); +return x_1; +} +} +obj* _init__l_s6_uint64_s8_has__one_s7___boxed() { +{ +unsigned long long x_0; obj* x_1; +x_0 = _l_s6_uint64_s8_has__one; +x_1 = lean::box_uint64(x_0); +return x_1; } } obj* _init__l_s6_uint64_s8_has__add() { @@ -2655,46 +1150,21 @@ x_0 = lean::alloc_cnstr(0, 0, 0); return x_0; } } -obj* _init__l_s6_uint64_s9_inhabited() { +unsigned long long _init__l_s6_uint64_s9_inhabited() { { -obj* x_0; obj* x_1; obj* x_2; obj* x_3; -x_0 = lean::mk_nat_obj(lean::mpz("18446744073709551615")); -x_1 = lean::mk_nat_obj(0u); -x_2 = _l_s3_fin_s7_of__nat(x_0, x_1); -x_3 = lean::alloc_cnstr(0, 1, 0); -lean::cnstr_set(x_3, 0, x_2); -return x_3; -} -} -obj* _l_s6_uint64_s7_dec__eq_s6___main(unsigned long long x_0, unsigned long long x_1) { -{ -obj* x_2; obj* x_5; obj* x_8; -x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); +obj* x_0; unsigned long long x_1; +x_0 = lean::mk_nat_obj(0u); +x_1 = lean::uint64_of_nat(x_0); lean::dec(x_0); -x_5 = lean::cnstr_get(x_1, 0); -lean::inc(x_5); -lean::dec(x_1); -x_8 = lean::nat_dec_eq(x_2, x_5); -lean::dec(x_5); -lean::dec(x_2); -return x_8; +return x_1; } } -obj* _l_s6_uint64_s7_dec__eq_s6___main_s7___boxed(obj* x_0, obj* x_1) { +obj* _init__l_s6_uint64_s9_inhabited_s7___boxed() { { -unsigned long long x_2; unsigned long long x_3; obj* x_4; -x_2 = lean::unbox_uint64(x_0); -x_3 = lean::unbox_uint64(x_1); -x_4 = _l_s6_uint64_s7_dec__eq_s6___main(x_2, x_3); -return x_4; -} -} -obj* _l_s6_uint64_s7_dec__eq(unsigned long long x_0, unsigned long long x_1) { -{ -obj* x_2; -x_2 = _l_s6_uint64_s7_dec__eq_s6___main(x_0, x_1); -return x_2; +unsigned long long x_0; obj* x_1; +x_0 = _l_s6_uint64_s9_inhabited; +x_1 = lean::box_uint64(x_0); +return x_1; } } obj* _l_s6_uint64_s7_dec__eq_s7___boxed(obj* x_0, obj* x_1) { @@ -2702,87 +1172,25 @@ obj* _l_s6_uint64_s7_dec__eq_s7___boxed(obj* x_0, obj* x_1) { unsigned long long x_2; unsigned long long x_3; obj* x_4; x_2 = lean::unbox_uint64(x_0); x_3 = lean::unbox_uint64(x_1); -x_4 = _l_s6_uint64_s7_dec__eq(x_2, x_3); +x_4 = lean::uint64_dec_eq(x_2, x_3); return x_4; } } -obj* _l_s6_uint64_s7_dec__lt_s6___main(unsigned long long x_0, unsigned long long x_1) { -{ -obj* x_2; obj* x_5; obj* x_8; -x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); -lean::dec(x_0); -x_5 = lean::cnstr_get(x_1, 0); -lean::inc(x_5); -lean::dec(x_1); -x_8 = lean::nat_dec_lt(x_2, x_5); -lean::dec(x_5); -lean::dec(x_2); -return x_8; -} -} -obj* _l_s6_uint64_s7_dec__lt_s6___main_s7___boxed(obj* x_0, obj* x_1) { -{ -unsigned long long x_2; unsigned long long x_3; obj* x_4; -x_2 = lean::unbox_uint64(x_0); -x_3 = lean::unbox_uint64(x_1); -x_4 = _l_s6_uint64_s7_dec__lt_s6___main(x_2, x_3); -return x_4; -} -} -obj* _l_s6_uint64_s7_dec__lt(unsigned long long x_0, unsigned long long x_1) { -{ -obj* x_2; -x_2 = _l_s6_uint64_s7_dec__lt_s6___main(x_0, x_1); -return x_2; -} -} obj* _l_s6_uint64_s7_dec__lt_s7___boxed(obj* x_0, obj* x_1) { { unsigned long long x_2; unsigned long long x_3; obj* x_4; x_2 = lean::unbox_uint64(x_0); x_3 = lean::unbox_uint64(x_1); -x_4 = _l_s6_uint64_s7_dec__lt(x_2, x_3); +x_4 = lean::uint64_dec_lt(x_2, x_3); return x_4; } } -obj* _l_s6_uint64_s7_dec__le_s6___main(unsigned long long x_0, unsigned long long x_1) { -{ -obj* x_2; obj* x_5; obj* x_8; -x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); -lean::dec(x_0); -x_5 = lean::cnstr_get(x_1, 0); -lean::inc(x_5); -lean::dec(x_1); -x_8 = lean::nat_dec_le(x_2, x_5); -lean::dec(x_5); -lean::dec(x_2); -return x_8; -} -} -obj* _l_s6_uint64_s7_dec__le_s6___main_s7___boxed(obj* x_0, obj* x_1) { -{ -unsigned long long x_2; unsigned long long x_3; obj* x_4; -x_2 = lean::unbox_uint64(x_0); -x_3 = lean::unbox_uint64(x_1); -x_4 = _l_s6_uint64_s7_dec__le_s6___main(x_2, x_3); -return x_4; -} -} -obj* _l_s6_uint64_s7_dec__le(unsigned long long x_0, unsigned long long x_1) { -{ -obj* x_2; -x_2 = _l_s6_uint64_s7_dec__le_s6___main(x_0, x_1); -return x_2; -} -} obj* _l_s6_uint64_s7_dec__le_s7___boxed(obj* x_0, obj* x_1) { { unsigned long long x_2; unsigned long long x_3; obj* x_4; x_2 = lean::unbox_uint64(x_0); x_3 = lean::unbox_uint64(x_1); -x_4 = _l_s6_uint64_s7_dec__le(x_2, x_3); +x_4 = lean::uint64_dec_le(x_2, x_3); return x_4; } } @@ -2796,7 +1204,7 @@ return x_0; obj* _l_s6_uint64_s18_has__decidable__lt(unsigned long long x_0, unsigned long long x_1) { { obj* x_2; -x_2 = _l_s6_uint64_s7_dec__lt_s6___main(x_0, x_1); +x_2 = lean::uint64_dec_lt(x_0, x_1); return x_2; } } @@ -2812,7 +1220,7 @@ return x_4; obj* _l_s6_uint64_s18_has__decidable__le(unsigned long long x_0, unsigned long long x_1) { { obj* x_2; -x_2 = _l_s6_uint64_s7_dec__le_s6___main(x_0, x_1); +x_2 = lean::uint64_dec_le(x_0, x_1); return x_2; } } @@ -2832,12 +1240,12 @@ void _l_initialize__l_s4_init_s4_data_s4_uint() { _G_initialized = true; _l_initialize__l_s4_init_s4_data_s3_fin_s5_basic(); _l_s9_uint8__sz = _init__l_s9_uint8__sz(); - _l_s5_uint8_s2_lt_s6___main = _init__l_s5_uint8_s2_lt_s6___main(); _l_s5_uint8_s2_lt = _init__l_s5_uint8_s2_lt(); - _l_s5_uint8_s2_le_s6___main = _init__l_s5_uint8_s2_le_s6___main(); _l_s5_uint8_s2_le = _init__l_s5_uint8_s2_le(); _l_s5_uint8_s9_has__zero = _init__l_s5_uint8_s9_has__zero(); + _l_s5_uint8_s9_has__zero_s7___boxed = _init__l_s5_uint8_s9_has__zero_s7___boxed(); _l_s5_uint8_s8_has__one = _init__l_s5_uint8_s8_has__one(); + _l_s5_uint8_s8_has__one_s7___boxed = _init__l_s5_uint8_s8_has__one_s7___boxed(); _l_s5_uint8_s8_has__add = _init__l_s5_uint8_s8_has__add(); _l_s5_uint8_s8_has__sub = _init__l_s5_uint8_s8_has__sub(); _l_s5_uint8_s8_has__mul = _init__l_s5_uint8_s8_has__mul(); @@ -2847,14 +1255,15 @@ void _l_initialize__l_s4_init_s4_data_s4_uint() { _l_s5_uint8_s7_has__lt = _init__l_s5_uint8_s7_has__lt(); _l_s5_uint8_s7_has__le = _init__l_s5_uint8_s7_has__le(); _l_s5_uint8_s9_inhabited = _init__l_s5_uint8_s9_inhabited(); + _l_s5_uint8_s9_inhabited_s7___boxed = _init__l_s5_uint8_s9_inhabited_s7___boxed(); _l_s5_uint8_s13_decidable__eq = _init__l_s5_uint8_s13_decidable__eq(); _l_s10_uint16__sz = _init__l_s10_uint16__sz(); - _l_s6_uint16_s2_lt_s6___main = _init__l_s6_uint16_s2_lt_s6___main(); _l_s6_uint16_s2_lt = _init__l_s6_uint16_s2_lt(); - _l_s6_uint16_s2_le_s6___main = _init__l_s6_uint16_s2_le_s6___main(); _l_s6_uint16_s2_le = _init__l_s6_uint16_s2_le(); _l_s6_uint16_s9_has__zero = _init__l_s6_uint16_s9_has__zero(); + _l_s6_uint16_s9_has__zero_s7___boxed = _init__l_s6_uint16_s9_has__zero_s7___boxed(); _l_s6_uint16_s8_has__one = _init__l_s6_uint16_s8_has__one(); + _l_s6_uint16_s8_has__one_s7___boxed = _init__l_s6_uint16_s8_has__one_s7___boxed(); _l_s6_uint16_s8_has__add = _init__l_s6_uint16_s8_has__add(); _l_s6_uint16_s8_has__sub = _init__l_s6_uint16_s8_has__sub(); _l_s6_uint16_s8_has__mul = _init__l_s6_uint16_s8_has__mul(); @@ -2864,14 +1273,15 @@ void _l_initialize__l_s4_init_s4_data_s4_uint() { _l_s6_uint16_s7_has__lt = _init__l_s6_uint16_s7_has__lt(); _l_s6_uint16_s7_has__le = _init__l_s6_uint16_s7_has__le(); _l_s6_uint16_s9_inhabited = _init__l_s6_uint16_s9_inhabited(); + _l_s6_uint16_s9_inhabited_s7___boxed = _init__l_s6_uint16_s9_inhabited_s7___boxed(); _l_s6_uint16_s13_decidable__eq = _init__l_s6_uint16_s13_decidable__eq(); _l_s10_uint32__sz = _init__l_s10_uint32__sz(); - _l_s6_uint32_s2_lt_s6___main = _init__l_s6_uint32_s2_lt_s6___main(); _l_s6_uint32_s2_lt = _init__l_s6_uint32_s2_lt(); - _l_s6_uint32_s2_le_s6___main = _init__l_s6_uint32_s2_le_s6___main(); _l_s6_uint32_s2_le = _init__l_s6_uint32_s2_le(); _l_s6_uint32_s9_has__zero = _init__l_s6_uint32_s9_has__zero(); + _l_s6_uint32_s9_has__zero_s7___boxed = _init__l_s6_uint32_s9_has__zero_s7___boxed(); _l_s6_uint32_s8_has__one = _init__l_s6_uint32_s8_has__one(); + _l_s6_uint32_s8_has__one_s7___boxed = _init__l_s6_uint32_s8_has__one_s7___boxed(); _l_s6_uint32_s8_has__add = _init__l_s6_uint32_s8_has__add(); _l_s6_uint32_s8_has__sub = _init__l_s6_uint32_s8_has__sub(); _l_s6_uint32_s8_has__mul = _init__l_s6_uint32_s8_has__mul(); @@ -2881,15 +1291,15 @@ void _l_initialize__l_s4_init_s4_data_s4_uint() { _l_s6_uint32_s7_has__lt = _init__l_s6_uint32_s7_has__lt(); _l_s6_uint32_s7_has__le = _init__l_s6_uint32_s7_has__le(); _l_s6_uint32_s9_inhabited = _init__l_s6_uint32_s9_inhabited(); + _l_s6_uint32_s9_inhabited_s7___boxed = _init__l_s6_uint32_s9_inhabited_s7___boxed(); _l_s6_uint32_s13_decidable__eq = _init__l_s6_uint32_s13_decidable__eq(); _l_s10_uint64__sz = _init__l_s10_uint64__sz(); - _l_s6_uint64_s7_of__nat_s11___closed__1 = _init__l_s6_uint64_s7_of__nat_s11___closed__1(); - _l_s6_uint64_s2_lt_s6___main = _init__l_s6_uint64_s2_lt_s6___main(); _l_s6_uint64_s2_lt = _init__l_s6_uint64_s2_lt(); - _l_s6_uint64_s2_le_s6___main = _init__l_s6_uint64_s2_le_s6___main(); _l_s6_uint64_s2_le = _init__l_s6_uint64_s2_le(); _l_s6_uint64_s9_has__zero = _init__l_s6_uint64_s9_has__zero(); + _l_s6_uint64_s9_has__zero_s7___boxed = _init__l_s6_uint64_s9_has__zero_s7___boxed(); _l_s6_uint64_s8_has__one = _init__l_s6_uint64_s8_has__one(); + _l_s6_uint64_s8_has__one_s7___boxed = _init__l_s6_uint64_s8_has__one_s7___boxed(); _l_s6_uint64_s8_has__add = _init__l_s6_uint64_s8_has__add(); _l_s6_uint64_s8_has__sub = _init__l_s6_uint64_s8_has__sub(); _l_s6_uint64_s8_has__mul = _init__l_s6_uint64_s8_has__mul(); @@ -2899,5 +1309,6 @@ void _l_initialize__l_s4_init_s4_data_s4_uint() { _l_s6_uint64_s7_has__lt = _init__l_s6_uint64_s7_has__lt(); _l_s6_uint64_s7_has__le = _init__l_s6_uint64_s7_has__le(); _l_s6_uint64_s9_inhabited = _init__l_s6_uint64_s9_inhabited(); + _l_s6_uint64_s9_inhabited_s7___boxed = _init__l_s6_uint64_s9_inhabited_s7___boxed(); _l_s6_uint64_s13_decidable__eq = _init__l_s6_uint64_s13_decidable__eq(); } diff --git a/src/boot/init/data/usize.cpp b/src/boot/init/data/usize.cpp index 94a667a421..b1640e5ef7 100644 --- a/src/boot/init/data/usize.cpp +++ b/src/boot/init/data/usize.cpp @@ -13,73 +13,36 @@ obj* _l_s3_nat_s3_pow_s6___main(obj*, obj*); obj* _l_s5_usize_s7_to__nat_s7___boxed(obj*); obj* _l_s5_usize_s13_decidable__eq; obj* _l_s5_usize_s18_has__decidable__le_s7___boxed(obj*, obj*); -obj* _l_s5_usize_s7_dec__lt_s6___main(size_t, size_t); obj* _l_s5_usize_s8_has__mod; obj* _l_s5_usize_s7_dec__eq_s7___boxed(obj*, obj*); obj* _l_s5_usize_s18_has__decidable__le(size_t, size_t); -obj* _l_s5_usize_s4_modn_s6___main(size_t, obj*); -obj* _l_s5_usize_s3_mul_s6___main(size_t, size_t); -obj* _l_s3_fin_s3_sub_s6___main(obj*, obj*, obj*); -obj* _l_s5_usize_s2_le_s6___main; +obj* _l_s5_usize_s9_inhabited_s7___boxed; obj* _l_s5_usize_s3_sub_s7___boxed(obj*, obj*); -obj* _l_s5_usize_s3_add_s6___main_s7___boxed(obj*, obj*); -obj* _l_s3_fin_s3_add_s6___main(obj*, obj*, obj*); obj* _l_s5_usize_s3_div_s7___boxed(obj*, obj*); -obj* _l_s5_usize_s4_modn(size_t, obj*); -obj* _l_s5_usize_s9_has__zero; -obj* _l_s5_usize_s3_div_s6___main(size_t, size_t); -obj* _l_s5_usize_s7_dec__lt(size_t, size_t); -obj* _l_s5_usize_s4_modn_s6___main_s7___boxed(obj*, obj*); -obj* _l_s5_usize_s3_add(size_t, size_t); -obj* _l_s5_usize_s3_mod_s6___main_s7___boxed(obj*, obj*); -obj* _l_s3_fin_s3_div_s6___main(obj*, obj*, obj*); +size_t _l_s5_usize_s9_has__zero; +obj* _l_s5_usize_s7_of__nat_s7___boxed(obj*); obj* _l_s5_usize_s4_modn_s7___boxed(obj*, obj*); -obj* _l_s5_usize_s2_lt_s6___main; obj* _l_s5_usize_s3_mod_s7___boxed(obj*, obj*); obj* _l_s6_system_s8_platform_s5_nbits; -obj* _l_s5_usize_s3_mul(size_t, size_t); obj* _l_s5_usize_s18_has__decidable__lt(size_t, size_t); obj* _l_s5_usize_s8_has__mul; -obj* _l_s5_usize_s3_add_s6___main(size_t, size_t); -obj* _l_s3_fin_s7_of__nat(obj*, obj*); -obj* _l_s5_usize_s3_mod_s6___main(size_t, size_t); obj* _l_s5_usize_s3_add_s7___boxed(obj*, obj*); -obj* _l_s3_fin_s4_modn_s6___main(obj*, obj*, obj*); -obj* _l_s3_fin_s3_mul_s6___main(obj*, obj*, obj*); +obj* _l_s5_usize_s9_has__zero_s7___boxed; obj* _l_s5_usize_s8_has__add; -obj* _l_s5_usize_s3_mul_s6___main_s7___boxed(obj*, obj*); obj* _l_s5_usize_s9_has__modn; obj* _l_s5_usize_s2_lt; obj* _l_s5_usize_s7_has__le; obj* _l_s5_usize_s8_has__div; -obj* _l_s5_usize_s7_of__nat_s11___closed__1; -obj* _l_s5_usize_s3_sub_s6___main(size_t, size_t); obj* _l_s5_usize_s7_has__lt; -obj* _l_s5_usize_s7_dec__eq_s6___main(size_t, size_t); obj* _l_s5_usize_s7_dec__le_s7___boxed(obj*, obj*); -obj* _l_s5_usize_s7_dec__eq_s6___main_s7___boxed(obj*, obj*); -obj* _l_s5_usize_s7_to__nat_s6___main_s7___boxed(obj*); -obj* _l_s5_usize_s3_sub_s6___main_s7___boxed(obj*, obj*); -obj* _l_s5_usize_s3_div_s6___main_s7___boxed(obj*, obj*); obj* _l_s9_usize__sz; obj* _l_s5_usize_s8_has__sub; obj* _l_s5_usize_s2_le; -obj* _l_s3_fin_s3_mod_s6___main(obj*, obj*, obj*); -obj* _l_s5_usize_s8_has__one; -obj* _l_s5_usize_s7_dec__lt_s6___main_s7___boxed(obj*, obj*); -obj* _l_s5_usize_s7_dec__le_s6___main(size_t, size_t); -obj* _l_s5_usize_s3_sub(size_t, size_t); -obj* _l_s5_usize_s7_dec__le_s6___main_s7___boxed(obj*, obj*); -obj* _l_s5_usize_s7_of__nat(obj*); -obj* _l_s5_usize_s3_mod(size_t, size_t); -obj* _l_s5_usize_s7_dec__eq(size_t, size_t); -obj* _l_s5_usize_s7_to__nat_s6___main(size_t); -obj* _l_s5_usize_s7_to__nat(size_t); -obj* _l_s5_usize_s9_inhabited; +size_t _l_s5_usize_s8_has__one; +obj* _l_s5_usize_s8_has__one_s7___boxed; +size_t _l_s5_usize_s9_inhabited; obj* _l_s5_usize_s18_has__decidable__lt_s7___boxed(obj*, obj*); -obj* _l_s5_usize_s7_dec__le(size_t, size_t); obj* _l_s5_usize_s3_mul_s7___boxed(obj*, obj*); -obj* _l_s5_usize_s3_div(size_t, size_t); obj* _l_s5_usize_s7_dec__lt_s7___boxed(obj*, obj*); obj* _init__l_s9_usize__sz() { { @@ -91,883 +54,79 @@ x_3 = _l_s3_nat_s3_pow_s6___main(x_0, x_1); return x_3; } } -obj* _l_s5_usize_s7_of__nat(obj* x_0) { -{ -obj* x_1; obj* x_3; obj* x_4; -x_1 = _l_s5_usize_s7_of__nat_s11___closed__1; -lean::inc(x_1); -x_3 = _l_s3_fin_s7_of__nat(x_1, x_0); -x_4 = lean::alloc_cnstr(0, 1, 0); -lean::cnstr_set(x_4, 0, x_3); -return x_4; -} -} -obj* _init__l_s5_usize_s7_of__nat_s11___closed__1() { -{ -obj* x_0; obj* x_1; obj* x_3; obj* x_4; obj* x_5; obj* x_7; obj* x_9; obj* x_10; obj* x_12; obj* x_14; obj* x_15; obj* x_17; obj* x_19; obj* x_20; obj* x_22; obj* x_24; obj* x_25; obj* x_27; obj* x_29; obj* x_30; obj* x_32; obj* x_34; obj* x_35; obj* x_37; obj* x_39; obj* x_40; obj* x_42; obj* x_44; obj* x_45; obj* x_47; obj* x_49; obj* x_50; obj* x_52; obj* x_54; obj* x_55; obj* x_57; obj* x_59; obj* x_60; obj* x_62; obj* x_64; obj* x_65; obj* x_67; obj* x_69; obj* x_70; obj* x_72; obj* x_74; obj* x_75; obj* x_77; obj* x_79; obj* x_80; obj* x_82; obj* x_84; obj* x_85; obj* x_87; obj* x_89; obj* x_90; obj* x_92; obj* x_94; obj* x_95; obj* x_97; obj* x_99; obj* x_100; obj* x_102; obj* x_104; obj* x_105; obj* x_107; obj* x_109; obj* x_110; obj* x_112; obj* x_114; obj* x_115; obj* x_117; obj* x_119; obj* x_120; obj* x_122; obj* x_124; obj* x_125; obj* x_127; obj* x_129; obj* x_130; obj* x_132; obj* x_134; obj* x_135; obj* x_137; obj* x_139; obj* x_140; obj* x_142; obj* x_144; obj* x_145; obj* x_147; obj* x_149; obj* x_150; obj* x_152; obj* x_154; obj* x_155; obj* x_157; obj* x_159; obj* x_160; obj* x_162; obj* x_164; obj* x_165; obj* x_167; obj* x_169; obj* x_170; obj* x_172; obj* x_174; obj* x_175; obj* x_177; obj* x_179; obj* x_180; obj* x_182; obj* x_184; obj* x_185; obj* x_187; obj* x_189; obj* x_190; obj* x_192; obj* x_194; obj* x_195; obj* x_197; obj* x_199; obj* x_200; obj* x_202; obj* x_204; obj* x_205; obj* x_207; obj* x_209; obj* x_210; obj* x_212; obj* x_214; obj* x_215; obj* x_217; obj* x_219; obj* x_220; obj* x_222; obj* x_224; obj* x_225; obj* x_227; obj* x_229; obj* x_230; obj* x_232; obj* x_234; obj* x_235; obj* x_237; obj* x_239; obj* x_240; obj* x_242; obj* x_244; obj* x_245; obj* x_247; obj* x_249; obj* x_250; obj* x_252; obj* x_254; obj* x_255; obj* x_257; obj* x_259; obj* x_260; obj* x_262; obj* x_264; obj* x_265; obj* x_267; obj* x_269; obj* x_270; obj* x_272; obj* x_274; obj* x_275; obj* x_277; obj* x_279; obj* x_280; obj* x_282; obj* x_284; obj* x_285; obj* x_287; obj* x_289; obj* x_290; obj* x_292; obj* x_294; obj* x_295; obj* x_297; obj* x_299; obj* x_300; obj* x_302; obj* x_304; obj* x_305; obj* x_309; obj* x_310; obj* x_314; obj* x_315; obj* x_317; obj* x_319; obj* x_320; obj* x_323; obj* x_326; obj* x_329; obj* x_332; obj* x_335; obj* x_338; obj* x_341; obj* x_344; obj* x_347; obj* x_350; obj* x_353; obj* x_356; obj* x_359; obj* x_362; obj* x_365; obj* x_368; obj* x_371; obj* x_374; obj* x_377; obj* x_380; obj* x_383; obj* x_386; obj* x_389; obj* x_392; obj* x_395; obj* x_398; obj* x_401; obj* x_404; obj* x_407; obj* x_410; obj* x_413; obj* x_416; obj* x_419; obj* x_422; obj* x_425; obj* x_428; obj* x_431; obj* x_434; obj* x_437; obj* x_440; obj* x_443; obj* x_446; obj* x_449; obj* x_452; obj* x_455; obj* x_458; obj* x_461; obj* x_464; obj* x_467; obj* x_470; obj* x_473; obj* x_476; obj* x_479; obj* x_482; obj* x_485; obj* x_488; obj* x_491; obj* x_494; obj* x_497; obj* x_500; obj* x_503; obj* x_506; obj* x_509; obj* x_512; -x_0 = lean::mk_nat_obj(2u); -x_1 = lean::mk_nat_obj(63u); -lean::inc(x_0); -x_3 = _l_s3_nat_s3_pow_s6___main(x_0, x_1); -x_4 = lean::mk_nat_obj(1u); -x_5 = lean::nat_mul(x_3, x_4); -lean::dec(x_3); -x_7 = lean::mk_nat_obj(62u); -lean::inc(x_0); -x_9 = _l_s3_nat_s3_pow_s6___main(x_0, x_7); -x_10 = lean::nat_mul(x_9, x_4); -lean::dec(x_9); -x_12 = lean::mk_nat_obj(61u); -lean::inc(x_0); -x_14 = _l_s3_nat_s3_pow_s6___main(x_0, x_12); -x_15 = lean::nat_mul(x_14, x_4); -lean::dec(x_14); -x_17 = lean::mk_nat_obj(60u); -lean::inc(x_0); -x_19 = _l_s3_nat_s3_pow_s6___main(x_0, x_17); -x_20 = lean::nat_mul(x_19, x_4); -lean::dec(x_19); -x_22 = lean::mk_nat_obj(59u); -lean::inc(x_0); -x_24 = _l_s3_nat_s3_pow_s6___main(x_0, x_22); -x_25 = lean::nat_mul(x_24, x_4); -lean::dec(x_24); -x_27 = lean::mk_nat_obj(58u); -lean::inc(x_0); -x_29 = _l_s3_nat_s3_pow_s6___main(x_0, x_27); -x_30 = lean::nat_mul(x_29, x_4); -lean::dec(x_29); -x_32 = lean::mk_nat_obj(57u); -lean::inc(x_0); -x_34 = _l_s3_nat_s3_pow_s6___main(x_0, x_32); -x_35 = lean::nat_mul(x_34, x_4); -lean::dec(x_34); -x_37 = lean::mk_nat_obj(56u); -lean::inc(x_0); -x_39 = _l_s3_nat_s3_pow_s6___main(x_0, x_37); -x_40 = lean::nat_mul(x_39, x_4); -lean::dec(x_39); -x_42 = lean::mk_nat_obj(55u); -lean::inc(x_0); -x_44 = _l_s3_nat_s3_pow_s6___main(x_0, x_42); -x_45 = lean::nat_mul(x_44, x_4); -lean::dec(x_44); -x_47 = lean::mk_nat_obj(54u); -lean::inc(x_0); -x_49 = _l_s3_nat_s3_pow_s6___main(x_0, x_47); -x_50 = lean::nat_mul(x_49, x_4); -lean::dec(x_49); -x_52 = lean::mk_nat_obj(53u); -lean::inc(x_0); -x_54 = _l_s3_nat_s3_pow_s6___main(x_0, x_52); -x_55 = lean::nat_mul(x_54, x_4); -lean::dec(x_54); -x_57 = lean::mk_nat_obj(52u); -lean::inc(x_0); -x_59 = _l_s3_nat_s3_pow_s6___main(x_0, x_57); -x_60 = lean::nat_mul(x_59, x_4); -lean::dec(x_59); -x_62 = lean::mk_nat_obj(51u); -lean::inc(x_0); -x_64 = _l_s3_nat_s3_pow_s6___main(x_0, x_62); -x_65 = lean::nat_mul(x_64, x_4); -lean::dec(x_64); -x_67 = lean::mk_nat_obj(50u); -lean::inc(x_0); -x_69 = _l_s3_nat_s3_pow_s6___main(x_0, x_67); -x_70 = lean::nat_mul(x_69, x_4); -lean::dec(x_69); -x_72 = lean::mk_nat_obj(49u); -lean::inc(x_0); -x_74 = _l_s3_nat_s3_pow_s6___main(x_0, x_72); -x_75 = lean::nat_mul(x_74, x_4); -lean::dec(x_74); -x_77 = lean::mk_nat_obj(48u); -lean::inc(x_0); -x_79 = _l_s3_nat_s3_pow_s6___main(x_0, x_77); -x_80 = lean::nat_mul(x_79, x_4); -lean::dec(x_79); -x_82 = lean::mk_nat_obj(47u); -lean::inc(x_0); -x_84 = _l_s3_nat_s3_pow_s6___main(x_0, x_82); -x_85 = lean::nat_mul(x_84, x_4); -lean::dec(x_84); -x_87 = lean::mk_nat_obj(46u); -lean::inc(x_0); -x_89 = _l_s3_nat_s3_pow_s6___main(x_0, x_87); -x_90 = lean::nat_mul(x_89, x_4); -lean::dec(x_89); -x_92 = lean::mk_nat_obj(45u); -lean::inc(x_0); -x_94 = _l_s3_nat_s3_pow_s6___main(x_0, x_92); -x_95 = lean::nat_mul(x_94, x_4); -lean::dec(x_94); -x_97 = lean::mk_nat_obj(44u); -lean::inc(x_0); -x_99 = _l_s3_nat_s3_pow_s6___main(x_0, x_97); -x_100 = lean::nat_mul(x_99, x_4); -lean::dec(x_99); -x_102 = lean::mk_nat_obj(43u); -lean::inc(x_0); -x_104 = _l_s3_nat_s3_pow_s6___main(x_0, x_102); -x_105 = lean::nat_mul(x_104, x_4); -lean::dec(x_104); -x_107 = lean::mk_nat_obj(42u); -lean::inc(x_0); -x_109 = _l_s3_nat_s3_pow_s6___main(x_0, x_107); -x_110 = lean::nat_mul(x_109, x_4); -lean::dec(x_109); -x_112 = lean::mk_nat_obj(41u); -lean::inc(x_0); -x_114 = _l_s3_nat_s3_pow_s6___main(x_0, x_112); -x_115 = lean::nat_mul(x_114, x_4); -lean::dec(x_114); -x_117 = lean::mk_nat_obj(40u); -lean::inc(x_0); -x_119 = _l_s3_nat_s3_pow_s6___main(x_0, x_117); -x_120 = lean::nat_mul(x_119, x_4); -lean::dec(x_119); -x_122 = lean::mk_nat_obj(39u); -lean::inc(x_0); -x_124 = _l_s3_nat_s3_pow_s6___main(x_0, x_122); -x_125 = lean::nat_mul(x_124, x_4); -lean::dec(x_124); -x_127 = lean::mk_nat_obj(38u); -lean::inc(x_0); -x_129 = _l_s3_nat_s3_pow_s6___main(x_0, x_127); -x_130 = lean::nat_mul(x_129, x_4); -lean::dec(x_129); -x_132 = lean::mk_nat_obj(37u); -lean::inc(x_0); -x_134 = _l_s3_nat_s3_pow_s6___main(x_0, x_132); -x_135 = lean::nat_mul(x_134, x_4); -lean::dec(x_134); -x_137 = lean::mk_nat_obj(36u); -lean::inc(x_0); -x_139 = _l_s3_nat_s3_pow_s6___main(x_0, x_137); -x_140 = lean::nat_mul(x_139, x_4); -lean::dec(x_139); -x_142 = lean::mk_nat_obj(35u); -lean::inc(x_0); -x_144 = _l_s3_nat_s3_pow_s6___main(x_0, x_142); -x_145 = lean::nat_mul(x_144, x_4); -lean::dec(x_144); -x_147 = lean::mk_nat_obj(34u); -lean::inc(x_0); -x_149 = _l_s3_nat_s3_pow_s6___main(x_0, x_147); -x_150 = lean::nat_mul(x_149, x_4); -lean::dec(x_149); -x_152 = lean::mk_nat_obj(33u); -lean::inc(x_0); -x_154 = _l_s3_nat_s3_pow_s6___main(x_0, x_152); -x_155 = lean::nat_mul(x_154, x_4); -lean::dec(x_154); -x_157 = lean::mk_nat_obj(32u); -lean::inc(x_0); -x_159 = _l_s3_nat_s3_pow_s6___main(x_0, x_157); -x_160 = lean::nat_mul(x_159, x_4); -lean::dec(x_159); -x_162 = lean::mk_nat_obj(31u); -lean::inc(x_0); -x_164 = _l_s3_nat_s3_pow_s6___main(x_0, x_162); -x_165 = lean::nat_mul(x_164, x_4); -lean::dec(x_164); -x_167 = lean::mk_nat_obj(30u); -lean::inc(x_0); -x_169 = _l_s3_nat_s3_pow_s6___main(x_0, x_167); -x_170 = lean::nat_mul(x_169, x_4); -lean::dec(x_169); -x_172 = lean::mk_nat_obj(29u); -lean::inc(x_0); -x_174 = _l_s3_nat_s3_pow_s6___main(x_0, x_172); -x_175 = lean::nat_mul(x_174, x_4); -lean::dec(x_174); -x_177 = lean::mk_nat_obj(28u); -lean::inc(x_0); -x_179 = _l_s3_nat_s3_pow_s6___main(x_0, x_177); -x_180 = lean::nat_mul(x_179, x_4); -lean::dec(x_179); -x_182 = lean::mk_nat_obj(27u); -lean::inc(x_0); -x_184 = _l_s3_nat_s3_pow_s6___main(x_0, x_182); -x_185 = lean::nat_mul(x_184, x_4); -lean::dec(x_184); -x_187 = lean::mk_nat_obj(26u); -lean::inc(x_0); -x_189 = _l_s3_nat_s3_pow_s6___main(x_0, x_187); -x_190 = lean::nat_mul(x_189, x_4); -lean::dec(x_189); -x_192 = lean::mk_nat_obj(25u); -lean::inc(x_0); -x_194 = _l_s3_nat_s3_pow_s6___main(x_0, x_192); -x_195 = lean::nat_mul(x_194, x_4); -lean::dec(x_194); -x_197 = lean::mk_nat_obj(24u); -lean::inc(x_0); -x_199 = _l_s3_nat_s3_pow_s6___main(x_0, x_197); -x_200 = lean::nat_mul(x_199, x_4); -lean::dec(x_199); -x_202 = lean::mk_nat_obj(23u); -lean::inc(x_0); -x_204 = _l_s3_nat_s3_pow_s6___main(x_0, x_202); -x_205 = lean::nat_mul(x_204, x_4); -lean::dec(x_204); -x_207 = lean::mk_nat_obj(22u); -lean::inc(x_0); -x_209 = _l_s3_nat_s3_pow_s6___main(x_0, x_207); -x_210 = lean::nat_mul(x_209, x_4); -lean::dec(x_209); -x_212 = lean::mk_nat_obj(21u); -lean::inc(x_0); -x_214 = _l_s3_nat_s3_pow_s6___main(x_0, x_212); -x_215 = lean::nat_mul(x_214, x_4); -lean::dec(x_214); -x_217 = lean::mk_nat_obj(20u); -lean::inc(x_0); -x_219 = _l_s3_nat_s3_pow_s6___main(x_0, x_217); -x_220 = lean::nat_mul(x_219, x_4); -lean::dec(x_219); -x_222 = lean::mk_nat_obj(19u); -lean::inc(x_0); -x_224 = _l_s3_nat_s3_pow_s6___main(x_0, x_222); -x_225 = lean::nat_mul(x_224, x_4); -lean::dec(x_224); -x_227 = lean::mk_nat_obj(18u); -lean::inc(x_0); -x_229 = _l_s3_nat_s3_pow_s6___main(x_0, x_227); -x_230 = lean::nat_mul(x_229, x_4); -lean::dec(x_229); -x_232 = lean::mk_nat_obj(17u); -lean::inc(x_0); -x_234 = _l_s3_nat_s3_pow_s6___main(x_0, x_232); -x_235 = lean::nat_mul(x_234, x_4); -lean::dec(x_234); -x_237 = lean::mk_nat_obj(16u); -lean::inc(x_0); -x_239 = _l_s3_nat_s3_pow_s6___main(x_0, x_237); -x_240 = lean::nat_mul(x_239, x_4); -lean::dec(x_239); -x_242 = lean::mk_nat_obj(15u); -lean::inc(x_0); -x_244 = _l_s3_nat_s3_pow_s6___main(x_0, x_242); -x_245 = lean::nat_mul(x_244, x_4); -lean::dec(x_244); -x_247 = lean::mk_nat_obj(14u); -lean::inc(x_0); -x_249 = _l_s3_nat_s3_pow_s6___main(x_0, x_247); -x_250 = lean::nat_mul(x_249, x_4); -lean::dec(x_249); -x_252 = lean::mk_nat_obj(13u); -lean::inc(x_0); -x_254 = _l_s3_nat_s3_pow_s6___main(x_0, x_252); -x_255 = lean::nat_mul(x_254, x_4); -lean::dec(x_254); -x_257 = lean::mk_nat_obj(12u); -lean::inc(x_0); -x_259 = _l_s3_nat_s3_pow_s6___main(x_0, x_257); -x_260 = lean::nat_mul(x_259, x_4); -lean::dec(x_259); -x_262 = lean::mk_nat_obj(11u); -lean::inc(x_0); -x_264 = _l_s3_nat_s3_pow_s6___main(x_0, x_262); -x_265 = lean::nat_mul(x_264, x_4); -lean::dec(x_264); -x_267 = lean::mk_nat_obj(10u); -lean::inc(x_0); -x_269 = _l_s3_nat_s3_pow_s6___main(x_0, x_267); -x_270 = lean::nat_mul(x_269, x_4); -lean::dec(x_269); -x_272 = lean::mk_nat_obj(9u); -lean::inc(x_0); -x_274 = _l_s3_nat_s3_pow_s6___main(x_0, x_272); -x_275 = lean::nat_mul(x_274, x_4); -lean::dec(x_274); -x_277 = lean::mk_nat_obj(8u); -lean::inc(x_0); -x_279 = _l_s3_nat_s3_pow_s6___main(x_0, x_277); -x_280 = lean::nat_mul(x_279, x_4); -lean::dec(x_279); -x_282 = lean::mk_nat_obj(7u); -lean::inc(x_0); -x_284 = _l_s3_nat_s3_pow_s6___main(x_0, x_282); -x_285 = lean::nat_mul(x_284, x_4); -lean::dec(x_284); -x_287 = lean::mk_nat_obj(6u); -lean::inc(x_0); -x_289 = _l_s3_nat_s3_pow_s6___main(x_0, x_287); -x_290 = lean::nat_mul(x_289, x_4); -lean::dec(x_289); -x_292 = lean::mk_nat_obj(5u); -lean::inc(x_0); -x_294 = _l_s3_nat_s3_pow_s6___main(x_0, x_292); -x_295 = lean::nat_mul(x_294, x_4); -lean::dec(x_294); -x_297 = lean::mk_nat_obj(4u); -lean::inc(x_0); -x_299 = _l_s3_nat_s3_pow_s6___main(x_0, x_297); -x_300 = lean::nat_mul(x_299, x_4); -lean::dec(x_299); -x_302 = lean::mk_nat_obj(3u); -lean::inc(x_0); -x_304 = _l_s3_nat_s3_pow_s6___main(x_0, x_302); -x_305 = lean::nat_mul(x_304, x_4); -lean::dec(x_304); -lean::inc(x_0); -lean::inc(x_0); -x_309 = _l_s3_nat_s3_pow_s6___main(x_0, x_0); -x_310 = lean::nat_mul(x_309, x_4); -lean::dec(x_309); -lean::inc(x_4); -lean::inc(x_0); -x_314 = _l_s3_nat_s3_pow_s6___main(x_0, x_4); -x_315 = lean::nat_mul(x_314, x_4); -lean::dec(x_314); -x_317 = lean::mk_nat_obj(0u); -lean::inc(x_317); -x_319 = _l_s3_nat_s3_pow_s6___main(x_0, x_317); -x_320 = lean::nat_mul(x_319, x_4); -lean::dec(x_4); -lean::dec(x_319); -x_323 = lean::nat_add(x_320, x_317); -lean::dec(x_317); -lean::dec(x_320); -x_326 = lean::nat_add(x_315, x_323); -lean::dec(x_323); -lean::dec(x_315); -x_329 = lean::nat_add(x_310, x_326); -lean::dec(x_326); -lean::dec(x_310); -x_332 = lean::nat_add(x_305, x_329); -lean::dec(x_329); -lean::dec(x_305); -x_335 = lean::nat_add(x_300, x_332); -lean::dec(x_332); -lean::dec(x_300); -x_338 = lean::nat_add(x_295, x_335); -lean::dec(x_335); -lean::dec(x_295); -x_341 = lean::nat_add(x_290, x_338); -lean::dec(x_338); -lean::dec(x_290); -x_344 = lean::nat_add(x_285, x_341); -lean::dec(x_341); -lean::dec(x_285); -x_347 = lean::nat_add(x_280, x_344); -lean::dec(x_344); -lean::dec(x_280); -x_350 = lean::nat_add(x_275, x_347); -lean::dec(x_347); -lean::dec(x_275); -x_353 = lean::nat_add(x_270, x_350); -lean::dec(x_350); -lean::dec(x_270); -x_356 = lean::nat_add(x_265, x_353); -lean::dec(x_353); -lean::dec(x_265); -x_359 = lean::nat_add(x_260, x_356); -lean::dec(x_356); -lean::dec(x_260); -x_362 = lean::nat_add(x_255, x_359); -lean::dec(x_359); -lean::dec(x_255); -x_365 = lean::nat_add(x_250, x_362); -lean::dec(x_362); -lean::dec(x_250); -x_368 = lean::nat_add(x_245, x_365); -lean::dec(x_365); -lean::dec(x_245); -x_371 = lean::nat_add(x_240, x_368); -lean::dec(x_368); -lean::dec(x_240); -x_374 = lean::nat_add(x_235, x_371); -lean::dec(x_371); -lean::dec(x_235); -x_377 = lean::nat_add(x_230, x_374); -lean::dec(x_374); -lean::dec(x_230); -x_380 = lean::nat_add(x_225, x_377); -lean::dec(x_377); -lean::dec(x_225); -x_383 = lean::nat_add(x_220, x_380); -lean::dec(x_380); -lean::dec(x_220); -x_386 = lean::nat_add(x_215, x_383); -lean::dec(x_383); -lean::dec(x_215); -x_389 = lean::nat_add(x_210, x_386); -lean::dec(x_386); -lean::dec(x_210); -x_392 = lean::nat_add(x_205, x_389); -lean::dec(x_389); -lean::dec(x_205); -x_395 = lean::nat_add(x_200, x_392); -lean::dec(x_392); -lean::dec(x_200); -x_398 = lean::nat_add(x_195, x_395); -lean::dec(x_395); -lean::dec(x_195); -x_401 = lean::nat_add(x_190, x_398); -lean::dec(x_398); -lean::dec(x_190); -x_404 = lean::nat_add(x_185, x_401); -lean::dec(x_401); -lean::dec(x_185); -x_407 = lean::nat_add(x_180, x_404); -lean::dec(x_404); -lean::dec(x_180); -x_410 = lean::nat_add(x_175, x_407); -lean::dec(x_407); -lean::dec(x_175); -x_413 = lean::nat_add(x_170, x_410); -lean::dec(x_410); -lean::dec(x_170); -x_416 = lean::nat_add(x_165, x_413); -lean::dec(x_413); -lean::dec(x_165); -x_419 = lean::nat_add(x_160, x_416); -lean::dec(x_416); -lean::dec(x_160); -x_422 = lean::nat_add(x_155, x_419); -lean::dec(x_419); -lean::dec(x_155); -x_425 = lean::nat_add(x_150, x_422); -lean::dec(x_422); -lean::dec(x_150); -x_428 = lean::nat_add(x_145, x_425); -lean::dec(x_425); -lean::dec(x_145); -x_431 = lean::nat_add(x_140, x_428); -lean::dec(x_428); -lean::dec(x_140); -x_434 = lean::nat_add(x_135, x_431); -lean::dec(x_431); -lean::dec(x_135); -x_437 = lean::nat_add(x_130, x_434); -lean::dec(x_434); -lean::dec(x_130); -x_440 = lean::nat_add(x_125, x_437); -lean::dec(x_437); -lean::dec(x_125); -x_443 = lean::nat_add(x_120, x_440); -lean::dec(x_440); -lean::dec(x_120); -x_446 = lean::nat_add(x_115, x_443); -lean::dec(x_443); -lean::dec(x_115); -x_449 = lean::nat_add(x_110, x_446); -lean::dec(x_446); -lean::dec(x_110); -x_452 = lean::nat_add(x_105, x_449); -lean::dec(x_449); -lean::dec(x_105); -x_455 = lean::nat_add(x_100, x_452); -lean::dec(x_452); -lean::dec(x_100); -x_458 = lean::nat_add(x_95, x_455); -lean::dec(x_455); -lean::dec(x_95); -x_461 = lean::nat_add(x_90, x_458); -lean::dec(x_458); -lean::dec(x_90); -x_464 = lean::nat_add(x_85, x_461); -lean::dec(x_461); -lean::dec(x_85); -x_467 = lean::nat_add(x_80, x_464); -lean::dec(x_464); -lean::dec(x_80); -x_470 = lean::nat_add(x_75, x_467); -lean::dec(x_467); -lean::dec(x_75); -x_473 = lean::nat_add(x_70, x_470); -lean::dec(x_470); -lean::dec(x_70); -x_476 = lean::nat_add(x_65, x_473); -lean::dec(x_473); -lean::dec(x_65); -x_479 = lean::nat_add(x_60, x_476); -lean::dec(x_476); -lean::dec(x_60); -x_482 = lean::nat_add(x_55, x_479); -lean::dec(x_479); -lean::dec(x_55); -x_485 = lean::nat_add(x_50, x_482); -lean::dec(x_482); -lean::dec(x_50); -x_488 = lean::nat_add(x_45, x_485); -lean::dec(x_485); -lean::dec(x_45); -x_491 = lean::nat_add(x_40, x_488); -lean::dec(x_488); -lean::dec(x_40); -x_494 = lean::nat_add(x_35, x_491); -lean::dec(x_491); -lean::dec(x_35); -x_497 = lean::nat_add(x_30, x_494); -lean::dec(x_494); -lean::dec(x_30); -x_500 = lean::nat_add(x_25, x_497); -lean::dec(x_497); -lean::dec(x_25); -x_503 = lean::nat_add(x_20, x_500); -lean::dec(x_500); -lean::dec(x_20); -x_506 = lean::nat_add(x_15, x_503); -lean::dec(x_503); -lean::dec(x_15); -x_509 = lean::nat_add(x_10, x_506); -lean::dec(x_506); -lean::dec(x_10); -x_512 = lean::nat_add(x_5, x_509); -lean::dec(x_509); -lean::dec(x_5); -return x_512; -} -} -obj* _l_s5_usize_s7_to__nat_s6___main(size_t x_0) { -{ -obj* x_1; -x_1 = lean::cnstr_get(x_0, 0); -lean::inc(x_1); -lean::dec(x_0); -return x_1; -} -} -obj* _l_s5_usize_s7_to__nat_s6___main_s7___boxed(obj* x_0) { +obj* _l_s5_usize_s7_of__nat_s7___boxed(obj* x_0) { { size_t x_1; obj* x_2; -x_1 = lean::unbox_size_t(x_0); -x_2 = _l_s5_usize_s7_to__nat_s6___main(x_1); +x_1 = lean::usize_of_nat(x_0); +x_2 = lean::box_size_t(x_1); return x_2; } } -obj* _l_s5_usize_s7_to__nat(size_t x_0) { -{ -obj* x_1; -x_1 = _l_s5_usize_s7_to__nat_s6___main(x_0); -return x_1; -} -} obj* _l_s5_usize_s7_to__nat_s7___boxed(obj* x_0) { { size_t x_1; obj* x_2; x_1 = lean::unbox_size_t(x_0); -x_2 = _l_s5_usize_s7_to__nat(x_1); -return x_2; -} -} -obj* _l_s5_usize_s3_add_s6___main(size_t x_0, size_t x_1) { -{ -obj* x_2; obj* x_4; obj* x_5; obj* x_8; obj* x_10; obj* x_11; -x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); -if (lean::is_shared(x_0)) { - lean::dec(x_0); - x_4 = lean::box(0); -} else { - lean::cnstr_release(x_0, 0); - x_4 = x_0; -} -x_5 = lean::cnstr_get(x_1, 0); -lean::inc(x_5); -lean::dec(x_1); -x_8 = _l_s9_usize__sz; -lean::inc(x_8); -x_10 = _l_s3_fin_s3_add_s6___main(x_8, x_2, x_5); -if (lean::is_scalar(x_4)) { - x_11 = lean::alloc_cnstr(0, 1, 0); -} else { - x_11 = x_4; -} -lean::cnstr_set(x_11, 0, x_10); -return x_11; -} -} -obj* _l_s5_usize_s3_add_s6___main_s7___boxed(obj* x_0, obj* x_1) { -{ -size_t x_2; size_t x_3; obj* x_4; -x_2 = lean::unbox_size_t(x_0); -x_3 = lean::unbox_size_t(x_1); -x_4 = _l_s5_usize_s3_add_s6___main(x_2, x_3); -return x_4; -} -} -obj* _l_s5_usize_s3_add(size_t x_0, size_t x_1) { -{ -obj* x_2; -x_2 = _l_s5_usize_s3_add_s6___main(x_0, x_1); +x_2 = lean::usize_to_nat(x_1); return x_2; } } obj* _l_s5_usize_s3_add_s7___boxed(obj* x_0, obj* x_1) { { -size_t x_2; size_t x_3; obj* x_4; +size_t x_2; size_t x_3; size_t x_4; obj* x_5; x_2 = lean::unbox_size_t(x_0); x_3 = lean::unbox_size_t(x_1); -x_4 = _l_s5_usize_s3_add(x_2, x_3); -return x_4; -} -} -obj* _l_s5_usize_s3_sub_s6___main(size_t x_0, size_t x_1) { -{ -obj* x_2; obj* x_4; obj* x_5; obj* x_8; obj* x_10; obj* x_11; -x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); -if (lean::is_shared(x_0)) { - lean::dec(x_0); - x_4 = lean::box(0); -} else { - lean::cnstr_release(x_0, 0); - x_4 = x_0; -} -x_5 = lean::cnstr_get(x_1, 0); -lean::inc(x_5); -lean::dec(x_1); -x_8 = _l_s9_usize__sz; -lean::inc(x_8); -x_10 = _l_s3_fin_s3_sub_s6___main(x_8, x_2, x_5); -if (lean::is_scalar(x_4)) { - x_11 = lean::alloc_cnstr(0, 1, 0); -} else { - x_11 = x_4; -} -lean::cnstr_set(x_11, 0, x_10); -return x_11; -} -} -obj* _l_s5_usize_s3_sub_s6___main_s7___boxed(obj* x_0, obj* x_1) { -{ -size_t x_2; size_t x_3; obj* x_4; -x_2 = lean::unbox_size_t(x_0); -x_3 = lean::unbox_size_t(x_1); -x_4 = _l_s5_usize_s3_sub_s6___main(x_2, x_3); -return x_4; -} -} -obj* _l_s5_usize_s3_sub(size_t x_0, size_t x_1) { -{ -obj* x_2; -x_2 = _l_s5_usize_s3_sub_s6___main(x_0, x_1); -return x_2; +x_4 = lean::usize_add(x_2, x_3); +x_5 = lean::box_size_t(x_4); +return x_5; } } obj* _l_s5_usize_s3_sub_s7___boxed(obj* x_0, obj* x_1) { { -size_t x_2; size_t x_3; obj* x_4; +size_t x_2; size_t x_3; size_t x_4; obj* x_5; x_2 = lean::unbox_size_t(x_0); x_3 = lean::unbox_size_t(x_1); -x_4 = _l_s5_usize_s3_sub(x_2, x_3); -return x_4; -} -} -obj* _l_s5_usize_s3_mul_s6___main(size_t x_0, size_t x_1) { -{ -obj* x_2; obj* x_4; obj* x_5; obj* x_8; obj* x_10; obj* x_11; -x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); -if (lean::is_shared(x_0)) { - lean::dec(x_0); - x_4 = lean::box(0); -} else { - lean::cnstr_release(x_0, 0); - x_4 = x_0; -} -x_5 = lean::cnstr_get(x_1, 0); -lean::inc(x_5); -lean::dec(x_1); -x_8 = _l_s9_usize__sz; -lean::inc(x_8); -x_10 = _l_s3_fin_s3_mul_s6___main(x_8, x_2, x_5); -if (lean::is_scalar(x_4)) { - x_11 = lean::alloc_cnstr(0, 1, 0); -} else { - x_11 = x_4; -} -lean::cnstr_set(x_11, 0, x_10); -return x_11; -} -} -obj* _l_s5_usize_s3_mul_s6___main_s7___boxed(obj* x_0, obj* x_1) { -{ -size_t x_2; size_t x_3; obj* x_4; -x_2 = lean::unbox_size_t(x_0); -x_3 = lean::unbox_size_t(x_1); -x_4 = _l_s5_usize_s3_mul_s6___main(x_2, x_3); -return x_4; -} -} -obj* _l_s5_usize_s3_mul(size_t x_0, size_t x_1) { -{ -obj* x_2; -x_2 = _l_s5_usize_s3_mul_s6___main(x_0, x_1); -return x_2; +x_4 = lean::usize_sub(x_2, x_3); +x_5 = lean::box_size_t(x_4); +return x_5; } } obj* _l_s5_usize_s3_mul_s7___boxed(obj* x_0, obj* x_1) { { -size_t x_2; size_t x_3; obj* x_4; +size_t x_2; size_t x_3; size_t x_4; obj* x_5; x_2 = lean::unbox_size_t(x_0); x_3 = lean::unbox_size_t(x_1); -x_4 = _l_s5_usize_s3_mul(x_2, x_3); -return x_4; -} -} -obj* _l_s5_usize_s3_div_s6___main(size_t x_0, size_t x_1) { -{ -obj* x_2; obj* x_4; obj* x_5; obj* x_8; obj* x_10; obj* x_11; -x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); -if (lean::is_shared(x_0)) { - lean::dec(x_0); - x_4 = lean::box(0); -} else { - lean::cnstr_release(x_0, 0); - x_4 = x_0; -} -x_5 = lean::cnstr_get(x_1, 0); -lean::inc(x_5); -lean::dec(x_1); -x_8 = _l_s9_usize__sz; -lean::inc(x_8); -x_10 = _l_s3_fin_s3_div_s6___main(x_8, x_2, x_5); -if (lean::is_scalar(x_4)) { - x_11 = lean::alloc_cnstr(0, 1, 0); -} else { - x_11 = x_4; -} -lean::cnstr_set(x_11, 0, x_10); -return x_11; -} -} -obj* _l_s5_usize_s3_div_s6___main_s7___boxed(obj* x_0, obj* x_1) { -{ -size_t x_2; size_t x_3; obj* x_4; -x_2 = lean::unbox_size_t(x_0); -x_3 = lean::unbox_size_t(x_1); -x_4 = _l_s5_usize_s3_div_s6___main(x_2, x_3); -return x_4; -} -} -obj* _l_s5_usize_s3_div(size_t x_0, size_t x_1) { -{ -obj* x_2; -x_2 = _l_s5_usize_s3_div_s6___main(x_0, x_1); -return x_2; +x_4 = lean::usize_mul(x_2, x_3); +x_5 = lean::box_size_t(x_4); +return x_5; } } obj* _l_s5_usize_s3_div_s7___boxed(obj* x_0, obj* x_1) { { -size_t x_2; size_t x_3; obj* x_4; +size_t x_2; size_t x_3; size_t x_4; obj* x_5; x_2 = lean::unbox_size_t(x_0); x_3 = lean::unbox_size_t(x_1); -x_4 = _l_s5_usize_s3_div(x_2, x_3); -return x_4; -} -} -obj* _l_s5_usize_s3_mod_s6___main(size_t x_0, size_t x_1) { -{ -obj* x_2; obj* x_4; obj* x_5; obj* x_8; obj* x_10; obj* x_11; -x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); -if (lean::is_shared(x_0)) { - lean::dec(x_0); - x_4 = lean::box(0); -} else { - lean::cnstr_release(x_0, 0); - x_4 = x_0; -} -x_5 = lean::cnstr_get(x_1, 0); -lean::inc(x_5); -lean::dec(x_1); -x_8 = _l_s9_usize__sz; -lean::inc(x_8); -x_10 = _l_s3_fin_s3_mod_s6___main(x_8, x_2, x_5); -if (lean::is_scalar(x_4)) { - x_11 = lean::alloc_cnstr(0, 1, 0); -} else { - x_11 = x_4; -} -lean::cnstr_set(x_11, 0, x_10); -return x_11; -} -} -obj* _l_s5_usize_s3_mod_s6___main_s7___boxed(obj* x_0, obj* x_1) { -{ -size_t x_2; size_t x_3; obj* x_4; -x_2 = lean::unbox_size_t(x_0); -x_3 = lean::unbox_size_t(x_1); -x_4 = _l_s5_usize_s3_mod_s6___main(x_2, x_3); -return x_4; -} -} -obj* _l_s5_usize_s3_mod(size_t x_0, size_t x_1) { -{ -obj* x_2; -x_2 = _l_s5_usize_s3_mod_s6___main(x_0, x_1); -return x_2; +x_4 = lean::usize_div(x_2, x_3); +x_5 = lean::box_size_t(x_4); +return x_5; } } obj* _l_s5_usize_s3_mod_s7___boxed(obj* x_0, obj* x_1) { { -size_t x_2; size_t x_3; obj* x_4; +size_t x_2; size_t x_3; size_t x_4; obj* x_5; x_2 = lean::unbox_size_t(x_0); x_3 = lean::unbox_size_t(x_1); -x_4 = _l_s5_usize_s3_mod(x_2, x_3); -return x_4; -} -} -obj* _l_s5_usize_s4_modn_s6___main(size_t x_0, obj* x_1) { -{ -obj* x_2; obj* x_4; obj* x_5; obj* x_7; obj* x_8; -x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); -if (lean::is_shared(x_0)) { - lean::dec(x_0); - x_4 = lean::box(0); -} else { - lean::cnstr_release(x_0, 0); - x_4 = x_0; -} -x_5 = _l_s9_usize__sz; -lean::inc(x_5); -x_7 = _l_s3_fin_s4_modn_s6___main(x_5, x_2, x_1); -if (lean::is_scalar(x_4)) { - x_8 = lean::alloc_cnstr(0, 1, 0); -} else { - x_8 = x_4; -} -lean::cnstr_set(x_8, 0, x_7); -return x_8; -} -} -obj* _l_s5_usize_s4_modn_s6___main_s7___boxed(obj* x_0, obj* x_1) { -{ -size_t x_2; obj* x_3; -x_2 = lean::unbox_size_t(x_0); -x_3 = _l_s5_usize_s4_modn_s6___main(x_2, x_1); -return x_3; -} -} -obj* _l_s5_usize_s4_modn(size_t x_0, obj* x_1) { -{ -obj* x_2; -x_2 = _l_s5_usize_s4_modn_s6___main(x_0, x_1); -return x_2; +x_4 = lean::usize_mod(x_2, x_3); +x_5 = lean::box_size_t(x_4); +return x_5; } } obj* _l_s5_usize_s4_modn_s7___boxed(obj* x_0, obj* x_1) { { -size_t x_2; obj* x_3; +size_t x_2; size_t x_3; obj* x_4; x_2 = lean::unbox_size_t(x_0); -x_3 = _l_s5_usize_s4_modn(x_2, x_1); -return x_3; -} -} -obj* _init__l_s5_usize_s2_lt_s6___main() { -{ -obj* x_0; -x_0 = lean::box(0); -lean::inc(x_0); -return x_0; +x_3 = lean::usize_modn(x_2, x_1); +x_4 = lean::box_size_t(x_3); +return x_4; } } obj* _init__l_s5_usize_s2_lt() { @@ -978,14 +137,6 @@ lean::inc(x_0); return x_0; } } -obj* _init__l_s5_usize_s2_le_s6___main() { -{ -obj* x_0; -x_0 = lean::box(0); -lean::inc(x_0); -return x_0; -} -} obj* _init__l_s5_usize_s2_le() { { obj* x_0; @@ -994,1050 +145,38 @@ lean::inc(x_0); return x_0; } } -obj* _init__l_s5_usize_s9_has__zero() { +size_t _init__l_s5_usize_s9_has__zero() { { -obj* x_0; obj* x_1; obj* x_3; obj* x_4; obj* x_5; obj* x_7; obj* x_9; obj* x_10; obj* x_12; obj* x_14; obj* x_15; obj* x_17; obj* x_19; obj* x_20; obj* x_22; obj* x_24; obj* x_25; obj* x_27; obj* x_29; obj* x_30; obj* x_32; obj* x_34; obj* x_35; obj* x_37; obj* x_39; obj* x_40; obj* x_42; obj* x_44; obj* x_45; obj* x_47; obj* x_49; obj* x_50; obj* x_52; obj* x_54; obj* x_55; obj* x_57; obj* x_59; obj* x_60; obj* x_62; obj* x_64; obj* x_65; obj* x_67; obj* x_69; obj* x_70; obj* x_72; obj* x_74; obj* x_75; obj* x_77; obj* x_79; obj* x_80; obj* x_82; obj* x_84; obj* x_85; obj* x_87; obj* x_89; obj* x_90; obj* x_92; obj* x_94; obj* x_95; obj* x_97; obj* x_99; obj* x_100; obj* x_102; obj* x_104; obj* x_105; obj* x_107; obj* x_109; obj* x_110; obj* x_112; obj* x_114; obj* x_115; obj* x_117; obj* x_119; obj* x_120; obj* x_122; obj* x_124; obj* x_125; obj* x_127; obj* x_129; obj* x_130; obj* x_132; obj* x_134; obj* x_135; obj* x_137; obj* x_139; obj* x_140; obj* x_142; obj* x_144; obj* x_145; obj* x_147; obj* x_149; obj* x_150; obj* x_152; obj* x_154; obj* x_155; obj* x_157; obj* x_159; obj* x_160; obj* x_162; obj* x_164; obj* x_165; obj* x_167; obj* x_169; obj* x_170; obj* x_172; obj* x_174; obj* x_175; obj* x_177; obj* x_179; obj* x_180; obj* x_182; obj* x_184; obj* x_185; obj* x_187; obj* x_189; obj* x_190; obj* x_192; obj* x_194; obj* x_195; obj* x_197; obj* x_199; obj* x_200; obj* x_202; obj* x_204; obj* x_205; obj* x_207; obj* x_209; obj* x_210; obj* x_212; obj* x_214; obj* x_215; obj* x_217; obj* x_219; obj* x_220; obj* x_222; obj* x_224; obj* x_225; obj* x_227; obj* x_229; obj* x_230; obj* x_232; obj* x_234; obj* x_235; obj* x_237; obj* x_239; obj* x_240; obj* x_242; obj* x_244; obj* x_245; obj* x_247; obj* x_249; obj* x_250; obj* x_252; obj* x_254; obj* x_255; obj* x_257; obj* x_259; obj* x_260; obj* x_262; obj* x_264; obj* x_265; obj* x_267; obj* x_269; obj* x_270; obj* x_272; obj* x_274; obj* x_275; obj* x_277; obj* x_279; obj* x_280; obj* x_282; obj* x_284; obj* x_285; obj* x_287; obj* x_289; obj* x_290; obj* x_292; obj* x_294; obj* x_295; obj* x_297; obj* x_299; obj* x_300; obj* x_302; obj* x_304; obj* x_305; obj* x_309; obj* x_310; obj* x_314; obj* x_315; obj* x_317; obj* x_319; obj* x_320; obj* x_323; obj* x_325; obj* x_328; obj* x_331; obj* x_334; obj* x_337; obj* x_340; obj* x_343; obj* x_346; obj* x_349; obj* x_352; obj* x_355; obj* x_358; obj* x_361; obj* x_364; obj* x_367; obj* x_370; obj* x_373; obj* x_376; obj* x_379; obj* x_382; obj* x_385; obj* x_388; obj* x_391; obj* x_394; obj* x_397; obj* x_400; obj* x_403; obj* x_406; obj* x_409; obj* x_412; obj* x_415; obj* x_418; obj* x_421; obj* x_424; obj* x_427; obj* x_430; obj* x_433; obj* x_436; obj* x_439; obj* x_442; obj* x_445; obj* x_448; obj* x_451; obj* x_454; obj* x_457; obj* x_460; obj* x_463; obj* x_466; obj* x_469; obj* x_472; obj* x_475; obj* x_478; obj* x_481; obj* x_484; obj* x_487; obj* x_490; obj* x_493; obj* x_496; obj* x_499; obj* x_502; obj* x_505; obj* x_508; obj* x_511; obj* x_514; obj* x_515; -x_0 = lean::mk_nat_obj(2u); -x_1 = lean::mk_nat_obj(63u); -lean::inc(x_0); -x_3 = _l_s3_nat_s3_pow_s6___main(x_0, x_1); -x_4 = lean::mk_nat_obj(1u); -x_5 = lean::nat_mul(x_3, x_4); -lean::dec(x_3); -x_7 = lean::mk_nat_obj(62u); -lean::inc(x_0); -x_9 = _l_s3_nat_s3_pow_s6___main(x_0, x_7); -x_10 = lean::nat_mul(x_9, x_4); -lean::dec(x_9); -x_12 = lean::mk_nat_obj(61u); -lean::inc(x_0); -x_14 = _l_s3_nat_s3_pow_s6___main(x_0, x_12); -x_15 = lean::nat_mul(x_14, x_4); -lean::dec(x_14); -x_17 = lean::mk_nat_obj(60u); -lean::inc(x_0); -x_19 = _l_s3_nat_s3_pow_s6___main(x_0, x_17); -x_20 = lean::nat_mul(x_19, x_4); -lean::dec(x_19); -x_22 = lean::mk_nat_obj(59u); -lean::inc(x_0); -x_24 = _l_s3_nat_s3_pow_s6___main(x_0, x_22); -x_25 = lean::nat_mul(x_24, x_4); -lean::dec(x_24); -x_27 = lean::mk_nat_obj(58u); -lean::inc(x_0); -x_29 = _l_s3_nat_s3_pow_s6___main(x_0, x_27); -x_30 = lean::nat_mul(x_29, x_4); -lean::dec(x_29); -x_32 = lean::mk_nat_obj(57u); -lean::inc(x_0); -x_34 = _l_s3_nat_s3_pow_s6___main(x_0, x_32); -x_35 = lean::nat_mul(x_34, x_4); -lean::dec(x_34); -x_37 = lean::mk_nat_obj(56u); -lean::inc(x_0); -x_39 = _l_s3_nat_s3_pow_s6___main(x_0, x_37); -x_40 = lean::nat_mul(x_39, x_4); -lean::dec(x_39); -x_42 = lean::mk_nat_obj(55u); -lean::inc(x_0); -x_44 = _l_s3_nat_s3_pow_s6___main(x_0, x_42); -x_45 = lean::nat_mul(x_44, x_4); -lean::dec(x_44); -x_47 = lean::mk_nat_obj(54u); -lean::inc(x_0); -x_49 = _l_s3_nat_s3_pow_s6___main(x_0, x_47); -x_50 = lean::nat_mul(x_49, x_4); -lean::dec(x_49); -x_52 = lean::mk_nat_obj(53u); -lean::inc(x_0); -x_54 = _l_s3_nat_s3_pow_s6___main(x_0, x_52); -x_55 = lean::nat_mul(x_54, x_4); -lean::dec(x_54); -x_57 = lean::mk_nat_obj(52u); -lean::inc(x_0); -x_59 = _l_s3_nat_s3_pow_s6___main(x_0, x_57); -x_60 = lean::nat_mul(x_59, x_4); -lean::dec(x_59); -x_62 = lean::mk_nat_obj(51u); -lean::inc(x_0); -x_64 = _l_s3_nat_s3_pow_s6___main(x_0, x_62); -x_65 = lean::nat_mul(x_64, x_4); -lean::dec(x_64); -x_67 = lean::mk_nat_obj(50u); -lean::inc(x_0); -x_69 = _l_s3_nat_s3_pow_s6___main(x_0, x_67); -x_70 = lean::nat_mul(x_69, x_4); -lean::dec(x_69); -x_72 = lean::mk_nat_obj(49u); -lean::inc(x_0); -x_74 = _l_s3_nat_s3_pow_s6___main(x_0, x_72); -x_75 = lean::nat_mul(x_74, x_4); -lean::dec(x_74); -x_77 = lean::mk_nat_obj(48u); -lean::inc(x_0); -x_79 = _l_s3_nat_s3_pow_s6___main(x_0, x_77); -x_80 = lean::nat_mul(x_79, x_4); -lean::dec(x_79); -x_82 = lean::mk_nat_obj(47u); -lean::inc(x_0); -x_84 = _l_s3_nat_s3_pow_s6___main(x_0, x_82); -x_85 = lean::nat_mul(x_84, x_4); -lean::dec(x_84); -x_87 = lean::mk_nat_obj(46u); -lean::inc(x_0); -x_89 = _l_s3_nat_s3_pow_s6___main(x_0, x_87); -x_90 = lean::nat_mul(x_89, x_4); -lean::dec(x_89); -x_92 = lean::mk_nat_obj(45u); -lean::inc(x_0); -x_94 = _l_s3_nat_s3_pow_s6___main(x_0, x_92); -x_95 = lean::nat_mul(x_94, x_4); -lean::dec(x_94); -x_97 = lean::mk_nat_obj(44u); -lean::inc(x_0); -x_99 = _l_s3_nat_s3_pow_s6___main(x_0, x_97); -x_100 = lean::nat_mul(x_99, x_4); -lean::dec(x_99); -x_102 = lean::mk_nat_obj(43u); -lean::inc(x_0); -x_104 = _l_s3_nat_s3_pow_s6___main(x_0, x_102); -x_105 = lean::nat_mul(x_104, x_4); -lean::dec(x_104); -x_107 = lean::mk_nat_obj(42u); -lean::inc(x_0); -x_109 = _l_s3_nat_s3_pow_s6___main(x_0, x_107); -x_110 = lean::nat_mul(x_109, x_4); -lean::dec(x_109); -x_112 = lean::mk_nat_obj(41u); -lean::inc(x_0); -x_114 = _l_s3_nat_s3_pow_s6___main(x_0, x_112); -x_115 = lean::nat_mul(x_114, x_4); -lean::dec(x_114); -x_117 = lean::mk_nat_obj(40u); -lean::inc(x_0); -x_119 = _l_s3_nat_s3_pow_s6___main(x_0, x_117); -x_120 = lean::nat_mul(x_119, x_4); -lean::dec(x_119); -x_122 = lean::mk_nat_obj(39u); -lean::inc(x_0); -x_124 = _l_s3_nat_s3_pow_s6___main(x_0, x_122); -x_125 = lean::nat_mul(x_124, x_4); -lean::dec(x_124); -x_127 = lean::mk_nat_obj(38u); -lean::inc(x_0); -x_129 = _l_s3_nat_s3_pow_s6___main(x_0, x_127); -x_130 = lean::nat_mul(x_129, x_4); -lean::dec(x_129); -x_132 = lean::mk_nat_obj(37u); -lean::inc(x_0); -x_134 = _l_s3_nat_s3_pow_s6___main(x_0, x_132); -x_135 = lean::nat_mul(x_134, x_4); -lean::dec(x_134); -x_137 = lean::mk_nat_obj(36u); -lean::inc(x_0); -x_139 = _l_s3_nat_s3_pow_s6___main(x_0, x_137); -x_140 = lean::nat_mul(x_139, x_4); -lean::dec(x_139); -x_142 = lean::mk_nat_obj(35u); -lean::inc(x_0); -x_144 = _l_s3_nat_s3_pow_s6___main(x_0, x_142); -x_145 = lean::nat_mul(x_144, x_4); -lean::dec(x_144); -x_147 = lean::mk_nat_obj(34u); -lean::inc(x_0); -x_149 = _l_s3_nat_s3_pow_s6___main(x_0, x_147); -x_150 = lean::nat_mul(x_149, x_4); -lean::dec(x_149); -x_152 = lean::mk_nat_obj(33u); -lean::inc(x_0); -x_154 = _l_s3_nat_s3_pow_s6___main(x_0, x_152); -x_155 = lean::nat_mul(x_154, x_4); -lean::dec(x_154); -x_157 = lean::mk_nat_obj(32u); -lean::inc(x_0); -x_159 = _l_s3_nat_s3_pow_s6___main(x_0, x_157); -x_160 = lean::nat_mul(x_159, x_4); -lean::dec(x_159); -x_162 = lean::mk_nat_obj(31u); -lean::inc(x_0); -x_164 = _l_s3_nat_s3_pow_s6___main(x_0, x_162); -x_165 = lean::nat_mul(x_164, x_4); -lean::dec(x_164); -x_167 = lean::mk_nat_obj(30u); -lean::inc(x_0); -x_169 = _l_s3_nat_s3_pow_s6___main(x_0, x_167); -x_170 = lean::nat_mul(x_169, x_4); -lean::dec(x_169); -x_172 = lean::mk_nat_obj(29u); -lean::inc(x_0); -x_174 = _l_s3_nat_s3_pow_s6___main(x_0, x_172); -x_175 = lean::nat_mul(x_174, x_4); -lean::dec(x_174); -x_177 = lean::mk_nat_obj(28u); -lean::inc(x_0); -x_179 = _l_s3_nat_s3_pow_s6___main(x_0, x_177); -x_180 = lean::nat_mul(x_179, x_4); -lean::dec(x_179); -x_182 = lean::mk_nat_obj(27u); -lean::inc(x_0); -x_184 = _l_s3_nat_s3_pow_s6___main(x_0, x_182); -x_185 = lean::nat_mul(x_184, x_4); -lean::dec(x_184); -x_187 = lean::mk_nat_obj(26u); -lean::inc(x_0); -x_189 = _l_s3_nat_s3_pow_s6___main(x_0, x_187); -x_190 = lean::nat_mul(x_189, x_4); -lean::dec(x_189); -x_192 = lean::mk_nat_obj(25u); -lean::inc(x_0); -x_194 = _l_s3_nat_s3_pow_s6___main(x_0, x_192); -x_195 = lean::nat_mul(x_194, x_4); -lean::dec(x_194); -x_197 = lean::mk_nat_obj(24u); -lean::inc(x_0); -x_199 = _l_s3_nat_s3_pow_s6___main(x_0, x_197); -x_200 = lean::nat_mul(x_199, x_4); -lean::dec(x_199); -x_202 = lean::mk_nat_obj(23u); -lean::inc(x_0); -x_204 = _l_s3_nat_s3_pow_s6___main(x_0, x_202); -x_205 = lean::nat_mul(x_204, x_4); -lean::dec(x_204); -x_207 = lean::mk_nat_obj(22u); -lean::inc(x_0); -x_209 = _l_s3_nat_s3_pow_s6___main(x_0, x_207); -x_210 = lean::nat_mul(x_209, x_4); -lean::dec(x_209); -x_212 = lean::mk_nat_obj(21u); -lean::inc(x_0); -x_214 = _l_s3_nat_s3_pow_s6___main(x_0, x_212); -x_215 = lean::nat_mul(x_214, x_4); -lean::dec(x_214); -x_217 = lean::mk_nat_obj(20u); -lean::inc(x_0); -x_219 = _l_s3_nat_s3_pow_s6___main(x_0, x_217); -x_220 = lean::nat_mul(x_219, x_4); -lean::dec(x_219); -x_222 = lean::mk_nat_obj(19u); -lean::inc(x_0); -x_224 = _l_s3_nat_s3_pow_s6___main(x_0, x_222); -x_225 = lean::nat_mul(x_224, x_4); -lean::dec(x_224); -x_227 = lean::mk_nat_obj(18u); -lean::inc(x_0); -x_229 = _l_s3_nat_s3_pow_s6___main(x_0, x_227); -x_230 = lean::nat_mul(x_229, x_4); -lean::dec(x_229); -x_232 = lean::mk_nat_obj(17u); -lean::inc(x_0); -x_234 = _l_s3_nat_s3_pow_s6___main(x_0, x_232); -x_235 = lean::nat_mul(x_234, x_4); -lean::dec(x_234); -x_237 = lean::mk_nat_obj(16u); -lean::inc(x_0); -x_239 = _l_s3_nat_s3_pow_s6___main(x_0, x_237); -x_240 = lean::nat_mul(x_239, x_4); -lean::dec(x_239); -x_242 = lean::mk_nat_obj(15u); -lean::inc(x_0); -x_244 = _l_s3_nat_s3_pow_s6___main(x_0, x_242); -x_245 = lean::nat_mul(x_244, x_4); -lean::dec(x_244); -x_247 = lean::mk_nat_obj(14u); -lean::inc(x_0); -x_249 = _l_s3_nat_s3_pow_s6___main(x_0, x_247); -x_250 = lean::nat_mul(x_249, x_4); -lean::dec(x_249); -x_252 = lean::mk_nat_obj(13u); -lean::inc(x_0); -x_254 = _l_s3_nat_s3_pow_s6___main(x_0, x_252); -x_255 = lean::nat_mul(x_254, x_4); -lean::dec(x_254); -x_257 = lean::mk_nat_obj(12u); -lean::inc(x_0); -x_259 = _l_s3_nat_s3_pow_s6___main(x_0, x_257); -x_260 = lean::nat_mul(x_259, x_4); -lean::dec(x_259); -x_262 = lean::mk_nat_obj(11u); -lean::inc(x_0); -x_264 = _l_s3_nat_s3_pow_s6___main(x_0, x_262); -x_265 = lean::nat_mul(x_264, x_4); -lean::dec(x_264); -x_267 = lean::mk_nat_obj(10u); -lean::inc(x_0); -x_269 = _l_s3_nat_s3_pow_s6___main(x_0, x_267); -x_270 = lean::nat_mul(x_269, x_4); -lean::dec(x_269); -x_272 = lean::mk_nat_obj(9u); -lean::inc(x_0); -x_274 = _l_s3_nat_s3_pow_s6___main(x_0, x_272); -x_275 = lean::nat_mul(x_274, x_4); -lean::dec(x_274); -x_277 = lean::mk_nat_obj(8u); -lean::inc(x_0); -x_279 = _l_s3_nat_s3_pow_s6___main(x_0, x_277); -x_280 = lean::nat_mul(x_279, x_4); -lean::dec(x_279); -x_282 = lean::mk_nat_obj(7u); -lean::inc(x_0); -x_284 = _l_s3_nat_s3_pow_s6___main(x_0, x_282); -x_285 = lean::nat_mul(x_284, x_4); -lean::dec(x_284); -x_287 = lean::mk_nat_obj(6u); -lean::inc(x_0); -x_289 = _l_s3_nat_s3_pow_s6___main(x_0, x_287); -x_290 = lean::nat_mul(x_289, x_4); -lean::dec(x_289); -x_292 = lean::mk_nat_obj(5u); -lean::inc(x_0); -x_294 = _l_s3_nat_s3_pow_s6___main(x_0, x_292); -x_295 = lean::nat_mul(x_294, x_4); -lean::dec(x_294); -x_297 = lean::mk_nat_obj(4u); -lean::inc(x_0); -x_299 = _l_s3_nat_s3_pow_s6___main(x_0, x_297); -x_300 = lean::nat_mul(x_299, x_4); -lean::dec(x_299); -x_302 = lean::mk_nat_obj(3u); -lean::inc(x_0); -x_304 = _l_s3_nat_s3_pow_s6___main(x_0, x_302); -x_305 = lean::nat_mul(x_304, x_4); -lean::dec(x_304); -lean::inc(x_0); -lean::inc(x_0); -x_309 = _l_s3_nat_s3_pow_s6___main(x_0, x_0); -x_310 = lean::nat_mul(x_309, x_4); -lean::dec(x_309); -lean::inc(x_4); -lean::inc(x_0); -x_314 = _l_s3_nat_s3_pow_s6___main(x_0, x_4); -x_315 = lean::nat_mul(x_314, x_4); -lean::dec(x_314); -x_317 = lean::mk_nat_obj(0u); -lean::inc(x_317); -x_319 = _l_s3_nat_s3_pow_s6___main(x_0, x_317); -x_320 = lean::nat_mul(x_319, x_4); -lean::dec(x_4); -lean::dec(x_319); -x_323 = lean::nat_add(x_320, x_317); -lean::dec(x_320); -x_325 = lean::nat_add(x_315, x_323); -lean::dec(x_323); -lean::dec(x_315); -x_328 = lean::nat_add(x_310, x_325); -lean::dec(x_325); -lean::dec(x_310); -x_331 = lean::nat_add(x_305, x_328); -lean::dec(x_328); -lean::dec(x_305); -x_334 = lean::nat_add(x_300, x_331); -lean::dec(x_331); -lean::dec(x_300); -x_337 = lean::nat_add(x_295, x_334); -lean::dec(x_334); -lean::dec(x_295); -x_340 = lean::nat_add(x_290, x_337); -lean::dec(x_337); -lean::dec(x_290); -x_343 = lean::nat_add(x_285, x_340); -lean::dec(x_340); -lean::dec(x_285); -x_346 = lean::nat_add(x_280, x_343); -lean::dec(x_343); -lean::dec(x_280); -x_349 = lean::nat_add(x_275, x_346); -lean::dec(x_346); -lean::dec(x_275); -x_352 = lean::nat_add(x_270, x_349); -lean::dec(x_349); -lean::dec(x_270); -x_355 = lean::nat_add(x_265, x_352); -lean::dec(x_352); -lean::dec(x_265); -x_358 = lean::nat_add(x_260, x_355); -lean::dec(x_355); -lean::dec(x_260); -x_361 = lean::nat_add(x_255, x_358); -lean::dec(x_358); -lean::dec(x_255); -x_364 = lean::nat_add(x_250, x_361); -lean::dec(x_361); -lean::dec(x_250); -x_367 = lean::nat_add(x_245, x_364); -lean::dec(x_364); -lean::dec(x_245); -x_370 = lean::nat_add(x_240, x_367); -lean::dec(x_367); -lean::dec(x_240); -x_373 = lean::nat_add(x_235, x_370); -lean::dec(x_370); -lean::dec(x_235); -x_376 = lean::nat_add(x_230, x_373); -lean::dec(x_373); -lean::dec(x_230); -x_379 = lean::nat_add(x_225, x_376); -lean::dec(x_376); -lean::dec(x_225); -x_382 = lean::nat_add(x_220, x_379); -lean::dec(x_379); -lean::dec(x_220); -x_385 = lean::nat_add(x_215, x_382); -lean::dec(x_382); -lean::dec(x_215); -x_388 = lean::nat_add(x_210, x_385); -lean::dec(x_385); -lean::dec(x_210); -x_391 = lean::nat_add(x_205, x_388); -lean::dec(x_388); -lean::dec(x_205); -x_394 = lean::nat_add(x_200, x_391); -lean::dec(x_391); -lean::dec(x_200); -x_397 = lean::nat_add(x_195, x_394); -lean::dec(x_394); -lean::dec(x_195); -x_400 = lean::nat_add(x_190, x_397); -lean::dec(x_397); -lean::dec(x_190); -x_403 = lean::nat_add(x_185, x_400); -lean::dec(x_400); -lean::dec(x_185); -x_406 = lean::nat_add(x_180, x_403); -lean::dec(x_403); -lean::dec(x_180); -x_409 = lean::nat_add(x_175, x_406); -lean::dec(x_406); -lean::dec(x_175); -x_412 = lean::nat_add(x_170, x_409); -lean::dec(x_409); -lean::dec(x_170); -x_415 = lean::nat_add(x_165, x_412); -lean::dec(x_412); -lean::dec(x_165); -x_418 = lean::nat_add(x_160, x_415); -lean::dec(x_415); -lean::dec(x_160); -x_421 = lean::nat_add(x_155, x_418); -lean::dec(x_418); -lean::dec(x_155); -x_424 = lean::nat_add(x_150, x_421); -lean::dec(x_421); -lean::dec(x_150); -x_427 = lean::nat_add(x_145, x_424); -lean::dec(x_424); -lean::dec(x_145); -x_430 = lean::nat_add(x_140, x_427); -lean::dec(x_427); -lean::dec(x_140); -x_433 = lean::nat_add(x_135, x_430); -lean::dec(x_430); -lean::dec(x_135); -x_436 = lean::nat_add(x_130, x_433); -lean::dec(x_433); -lean::dec(x_130); -x_439 = lean::nat_add(x_125, x_436); -lean::dec(x_436); -lean::dec(x_125); -x_442 = lean::nat_add(x_120, x_439); -lean::dec(x_439); -lean::dec(x_120); -x_445 = lean::nat_add(x_115, x_442); -lean::dec(x_442); -lean::dec(x_115); -x_448 = lean::nat_add(x_110, x_445); -lean::dec(x_445); -lean::dec(x_110); -x_451 = lean::nat_add(x_105, x_448); -lean::dec(x_448); -lean::dec(x_105); -x_454 = lean::nat_add(x_100, x_451); -lean::dec(x_451); -lean::dec(x_100); -x_457 = lean::nat_add(x_95, x_454); -lean::dec(x_454); -lean::dec(x_95); -x_460 = lean::nat_add(x_90, x_457); -lean::dec(x_457); -lean::dec(x_90); -x_463 = lean::nat_add(x_85, x_460); -lean::dec(x_460); -lean::dec(x_85); -x_466 = lean::nat_add(x_80, x_463); -lean::dec(x_463); -lean::dec(x_80); -x_469 = lean::nat_add(x_75, x_466); -lean::dec(x_466); -lean::dec(x_75); -x_472 = lean::nat_add(x_70, x_469); -lean::dec(x_469); -lean::dec(x_70); -x_475 = lean::nat_add(x_65, x_472); -lean::dec(x_472); -lean::dec(x_65); -x_478 = lean::nat_add(x_60, x_475); -lean::dec(x_475); -lean::dec(x_60); -x_481 = lean::nat_add(x_55, x_478); -lean::dec(x_478); -lean::dec(x_55); -x_484 = lean::nat_add(x_50, x_481); -lean::dec(x_481); -lean::dec(x_50); -x_487 = lean::nat_add(x_45, x_484); -lean::dec(x_484); -lean::dec(x_45); -x_490 = lean::nat_add(x_40, x_487); -lean::dec(x_487); -lean::dec(x_40); -x_493 = lean::nat_add(x_35, x_490); -lean::dec(x_490); -lean::dec(x_35); -x_496 = lean::nat_add(x_30, x_493); -lean::dec(x_493); -lean::dec(x_30); -x_499 = lean::nat_add(x_25, x_496); -lean::dec(x_496); -lean::dec(x_25); -x_502 = lean::nat_add(x_20, x_499); -lean::dec(x_499); -lean::dec(x_20); -x_505 = lean::nat_add(x_15, x_502); -lean::dec(x_502); -lean::dec(x_15); -x_508 = lean::nat_add(x_10, x_505); -lean::dec(x_505); -lean::dec(x_10); -x_511 = lean::nat_add(x_5, x_508); -lean::dec(x_508); -lean::dec(x_5); -x_514 = _l_s3_fin_s7_of__nat(x_511, x_317); -x_515 = lean::alloc_cnstr(0, 1, 0); -lean::cnstr_set(x_515, 0, x_514); -return x_515; +obj* x_0; size_t x_1; +x_0 = lean::mk_nat_obj(0u); +x_1 = lean::usize_of_nat(x_0); +lean::dec(x_0); +return x_1; } } -obj* _init__l_s5_usize_s8_has__one() { +obj* _init__l_s5_usize_s9_has__zero_s7___boxed() { { -obj* x_0; obj* x_1; obj* x_3; obj* x_4; obj* x_5; obj* x_7; obj* x_9; obj* x_10; obj* x_12; obj* x_14; obj* x_15; obj* x_17; obj* x_19; obj* x_20; obj* x_22; obj* x_24; obj* x_25; obj* x_27; obj* x_29; obj* x_30; obj* x_32; obj* x_34; obj* x_35; obj* x_37; obj* x_39; obj* x_40; obj* x_42; obj* x_44; obj* x_45; obj* x_47; obj* x_49; obj* x_50; obj* x_52; obj* x_54; obj* x_55; obj* x_57; obj* x_59; obj* x_60; obj* x_62; obj* x_64; obj* x_65; obj* x_67; obj* x_69; obj* x_70; obj* x_72; obj* x_74; obj* x_75; obj* x_77; obj* x_79; obj* x_80; obj* x_82; obj* x_84; obj* x_85; obj* x_87; obj* x_89; obj* x_90; obj* x_92; obj* x_94; obj* x_95; obj* x_97; obj* x_99; obj* x_100; obj* x_102; obj* x_104; obj* x_105; obj* x_107; obj* x_109; obj* x_110; obj* x_112; obj* x_114; obj* x_115; obj* x_117; obj* x_119; obj* x_120; obj* x_122; obj* x_124; obj* x_125; obj* x_127; obj* x_129; obj* x_130; obj* x_132; obj* x_134; obj* x_135; obj* x_137; obj* x_139; obj* x_140; obj* x_142; obj* x_144; obj* x_145; obj* x_147; obj* x_149; obj* x_150; obj* x_152; obj* x_154; obj* x_155; obj* x_157; obj* x_159; obj* x_160; obj* x_162; obj* x_164; obj* x_165; obj* x_167; obj* x_169; obj* x_170; obj* x_172; obj* x_174; obj* x_175; obj* x_177; obj* x_179; obj* x_180; obj* x_182; obj* x_184; obj* x_185; obj* x_187; obj* x_189; obj* x_190; obj* x_192; obj* x_194; obj* x_195; obj* x_197; obj* x_199; obj* x_200; obj* x_202; obj* x_204; obj* x_205; obj* x_207; obj* x_209; obj* x_210; obj* x_212; obj* x_214; obj* x_215; obj* x_217; obj* x_219; obj* x_220; obj* x_222; obj* x_224; obj* x_225; obj* x_227; obj* x_229; obj* x_230; obj* x_232; obj* x_234; obj* x_235; obj* x_237; obj* x_239; obj* x_240; obj* x_242; obj* x_244; obj* x_245; obj* x_247; obj* x_249; obj* x_250; obj* x_252; obj* x_254; obj* x_255; obj* x_257; obj* x_259; obj* x_260; obj* x_262; obj* x_264; obj* x_265; obj* x_267; obj* x_269; obj* x_270; obj* x_272; obj* x_274; obj* x_275; obj* x_277; obj* x_279; obj* x_280; obj* x_282; obj* x_284; obj* x_285; obj* x_287; obj* x_289; obj* x_290; obj* x_292; obj* x_294; obj* x_295; obj* x_297; obj* x_299; obj* x_300; obj* x_302; obj* x_304; obj* x_305; obj* x_309; obj* x_310; obj* x_314; obj* x_315; obj* x_317; obj* x_319; obj* x_320; obj* x_322; obj* x_325; obj* x_328; obj* x_331; obj* x_334; obj* x_337; obj* x_340; obj* x_343; obj* x_346; obj* x_349; obj* x_352; obj* x_355; obj* x_358; obj* x_361; obj* x_364; obj* x_367; obj* x_370; obj* x_373; obj* x_376; obj* x_379; obj* x_382; obj* x_385; obj* x_388; obj* x_391; obj* x_394; obj* x_397; obj* x_400; obj* x_403; obj* x_406; obj* x_409; obj* x_412; obj* x_415; obj* x_418; obj* x_421; obj* x_424; obj* x_427; obj* x_430; obj* x_433; obj* x_436; obj* x_439; obj* x_442; obj* x_445; obj* x_448; obj* x_451; obj* x_454; obj* x_457; obj* x_460; obj* x_463; obj* x_466; obj* x_469; obj* x_472; obj* x_475; obj* x_478; obj* x_481; obj* x_484; obj* x_487; obj* x_490; obj* x_493; obj* x_496; obj* x_499; obj* x_502; obj* x_505; obj* x_508; obj* x_511; obj* x_514; obj* x_515; -x_0 = lean::mk_nat_obj(2u); -x_1 = lean::mk_nat_obj(63u); -lean::inc(x_0); -x_3 = _l_s3_nat_s3_pow_s6___main(x_0, x_1); -x_4 = lean::mk_nat_obj(1u); -x_5 = lean::nat_mul(x_3, x_4); -lean::dec(x_3); -x_7 = lean::mk_nat_obj(62u); -lean::inc(x_0); -x_9 = _l_s3_nat_s3_pow_s6___main(x_0, x_7); -x_10 = lean::nat_mul(x_9, x_4); -lean::dec(x_9); -x_12 = lean::mk_nat_obj(61u); -lean::inc(x_0); -x_14 = _l_s3_nat_s3_pow_s6___main(x_0, x_12); -x_15 = lean::nat_mul(x_14, x_4); -lean::dec(x_14); -x_17 = lean::mk_nat_obj(60u); -lean::inc(x_0); -x_19 = _l_s3_nat_s3_pow_s6___main(x_0, x_17); -x_20 = lean::nat_mul(x_19, x_4); -lean::dec(x_19); -x_22 = lean::mk_nat_obj(59u); -lean::inc(x_0); -x_24 = _l_s3_nat_s3_pow_s6___main(x_0, x_22); -x_25 = lean::nat_mul(x_24, x_4); -lean::dec(x_24); -x_27 = lean::mk_nat_obj(58u); -lean::inc(x_0); -x_29 = _l_s3_nat_s3_pow_s6___main(x_0, x_27); -x_30 = lean::nat_mul(x_29, x_4); -lean::dec(x_29); -x_32 = lean::mk_nat_obj(57u); -lean::inc(x_0); -x_34 = _l_s3_nat_s3_pow_s6___main(x_0, x_32); -x_35 = lean::nat_mul(x_34, x_4); -lean::dec(x_34); -x_37 = lean::mk_nat_obj(56u); -lean::inc(x_0); -x_39 = _l_s3_nat_s3_pow_s6___main(x_0, x_37); -x_40 = lean::nat_mul(x_39, x_4); -lean::dec(x_39); -x_42 = lean::mk_nat_obj(55u); -lean::inc(x_0); -x_44 = _l_s3_nat_s3_pow_s6___main(x_0, x_42); -x_45 = lean::nat_mul(x_44, x_4); -lean::dec(x_44); -x_47 = lean::mk_nat_obj(54u); -lean::inc(x_0); -x_49 = _l_s3_nat_s3_pow_s6___main(x_0, x_47); -x_50 = lean::nat_mul(x_49, x_4); -lean::dec(x_49); -x_52 = lean::mk_nat_obj(53u); -lean::inc(x_0); -x_54 = _l_s3_nat_s3_pow_s6___main(x_0, x_52); -x_55 = lean::nat_mul(x_54, x_4); -lean::dec(x_54); -x_57 = lean::mk_nat_obj(52u); -lean::inc(x_0); -x_59 = _l_s3_nat_s3_pow_s6___main(x_0, x_57); -x_60 = lean::nat_mul(x_59, x_4); -lean::dec(x_59); -x_62 = lean::mk_nat_obj(51u); -lean::inc(x_0); -x_64 = _l_s3_nat_s3_pow_s6___main(x_0, x_62); -x_65 = lean::nat_mul(x_64, x_4); -lean::dec(x_64); -x_67 = lean::mk_nat_obj(50u); -lean::inc(x_0); -x_69 = _l_s3_nat_s3_pow_s6___main(x_0, x_67); -x_70 = lean::nat_mul(x_69, x_4); -lean::dec(x_69); -x_72 = lean::mk_nat_obj(49u); -lean::inc(x_0); -x_74 = _l_s3_nat_s3_pow_s6___main(x_0, x_72); -x_75 = lean::nat_mul(x_74, x_4); -lean::dec(x_74); -x_77 = lean::mk_nat_obj(48u); -lean::inc(x_0); -x_79 = _l_s3_nat_s3_pow_s6___main(x_0, x_77); -x_80 = lean::nat_mul(x_79, x_4); -lean::dec(x_79); -x_82 = lean::mk_nat_obj(47u); -lean::inc(x_0); -x_84 = _l_s3_nat_s3_pow_s6___main(x_0, x_82); -x_85 = lean::nat_mul(x_84, x_4); -lean::dec(x_84); -x_87 = lean::mk_nat_obj(46u); -lean::inc(x_0); -x_89 = _l_s3_nat_s3_pow_s6___main(x_0, x_87); -x_90 = lean::nat_mul(x_89, x_4); -lean::dec(x_89); -x_92 = lean::mk_nat_obj(45u); -lean::inc(x_0); -x_94 = _l_s3_nat_s3_pow_s6___main(x_0, x_92); -x_95 = lean::nat_mul(x_94, x_4); -lean::dec(x_94); -x_97 = lean::mk_nat_obj(44u); -lean::inc(x_0); -x_99 = _l_s3_nat_s3_pow_s6___main(x_0, x_97); -x_100 = lean::nat_mul(x_99, x_4); -lean::dec(x_99); -x_102 = lean::mk_nat_obj(43u); -lean::inc(x_0); -x_104 = _l_s3_nat_s3_pow_s6___main(x_0, x_102); -x_105 = lean::nat_mul(x_104, x_4); -lean::dec(x_104); -x_107 = lean::mk_nat_obj(42u); -lean::inc(x_0); -x_109 = _l_s3_nat_s3_pow_s6___main(x_0, x_107); -x_110 = lean::nat_mul(x_109, x_4); -lean::dec(x_109); -x_112 = lean::mk_nat_obj(41u); -lean::inc(x_0); -x_114 = _l_s3_nat_s3_pow_s6___main(x_0, x_112); -x_115 = lean::nat_mul(x_114, x_4); -lean::dec(x_114); -x_117 = lean::mk_nat_obj(40u); -lean::inc(x_0); -x_119 = _l_s3_nat_s3_pow_s6___main(x_0, x_117); -x_120 = lean::nat_mul(x_119, x_4); -lean::dec(x_119); -x_122 = lean::mk_nat_obj(39u); -lean::inc(x_0); -x_124 = _l_s3_nat_s3_pow_s6___main(x_0, x_122); -x_125 = lean::nat_mul(x_124, x_4); -lean::dec(x_124); -x_127 = lean::mk_nat_obj(38u); -lean::inc(x_0); -x_129 = _l_s3_nat_s3_pow_s6___main(x_0, x_127); -x_130 = lean::nat_mul(x_129, x_4); -lean::dec(x_129); -x_132 = lean::mk_nat_obj(37u); -lean::inc(x_0); -x_134 = _l_s3_nat_s3_pow_s6___main(x_0, x_132); -x_135 = lean::nat_mul(x_134, x_4); -lean::dec(x_134); -x_137 = lean::mk_nat_obj(36u); -lean::inc(x_0); -x_139 = _l_s3_nat_s3_pow_s6___main(x_0, x_137); -x_140 = lean::nat_mul(x_139, x_4); -lean::dec(x_139); -x_142 = lean::mk_nat_obj(35u); -lean::inc(x_0); -x_144 = _l_s3_nat_s3_pow_s6___main(x_0, x_142); -x_145 = lean::nat_mul(x_144, x_4); -lean::dec(x_144); -x_147 = lean::mk_nat_obj(34u); -lean::inc(x_0); -x_149 = _l_s3_nat_s3_pow_s6___main(x_0, x_147); -x_150 = lean::nat_mul(x_149, x_4); -lean::dec(x_149); -x_152 = lean::mk_nat_obj(33u); -lean::inc(x_0); -x_154 = _l_s3_nat_s3_pow_s6___main(x_0, x_152); -x_155 = lean::nat_mul(x_154, x_4); -lean::dec(x_154); -x_157 = lean::mk_nat_obj(32u); -lean::inc(x_0); -x_159 = _l_s3_nat_s3_pow_s6___main(x_0, x_157); -x_160 = lean::nat_mul(x_159, x_4); -lean::dec(x_159); -x_162 = lean::mk_nat_obj(31u); -lean::inc(x_0); -x_164 = _l_s3_nat_s3_pow_s6___main(x_0, x_162); -x_165 = lean::nat_mul(x_164, x_4); -lean::dec(x_164); -x_167 = lean::mk_nat_obj(30u); -lean::inc(x_0); -x_169 = _l_s3_nat_s3_pow_s6___main(x_0, x_167); -x_170 = lean::nat_mul(x_169, x_4); -lean::dec(x_169); -x_172 = lean::mk_nat_obj(29u); -lean::inc(x_0); -x_174 = _l_s3_nat_s3_pow_s6___main(x_0, x_172); -x_175 = lean::nat_mul(x_174, x_4); -lean::dec(x_174); -x_177 = lean::mk_nat_obj(28u); -lean::inc(x_0); -x_179 = _l_s3_nat_s3_pow_s6___main(x_0, x_177); -x_180 = lean::nat_mul(x_179, x_4); -lean::dec(x_179); -x_182 = lean::mk_nat_obj(27u); -lean::inc(x_0); -x_184 = _l_s3_nat_s3_pow_s6___main(x_0, x_182); -x_185 = lean::nat_mul(x_184, x_4); -lean::dec(x_184); -x_187 = lean::mk_nat_obj(26u); -lean::inc(x_0); -x_189 = _l_s3_nat_s3_pow_s6___main(x_0, x_187); -x_190 = lean::nat_mul(x_189, x_4); -lean::dec(x_189); -x_192 = lean::mk_nat_obj(25u); -lean::inc(x_0); -x_194 = _l_s3_nat_s3_pow_s6___main(x_0, x_192); -x_195 = lean::nat_mul(x_194, x_4); -lean::dec(x_194); -x_197 = lean::mk_nat_obj(24u); -lean::inc(x_0); -x_199 = _l_s3_nat_s3_pow_s6___main(x_0, x_197); -x_200 = lean::nat_mul(x_199, x_4); -lean::dec(x_199); -x_202 = lean::mk_nat_obj(23u); -lean::inc(x_0); -x_204 = _l_s3_nat_s3_pow_s6___main(x_0, x_202); -x_205 = lean::nat_mul(x_204, x_4); -lean::dec(x_204); -x_207 = lean::mk_nat_obj(22u); -lean::inc(x_0); -x_209 = _l_s3_nat_s3_pow_s6___main(x_0, x_207); -x_210 = lean::nat_mul(x_209, x_4); -lean::dec(x_209); -x_212 = lean::mk_nat_obj(21u); -lean::inc(x_0); -x_214 = _l_s3_nat_s3_pow_s6___main(x_0, x_212); -x_215 = lean::nat_mul(x_214, x_4); -lean::dec(x_214); -x_217 = lean::mk_nat_obj(20u); -lean::inc(x_0); -x_219 = _l_s3_nat_s3_pow_s6___main(x_0, x_217); -x_220 = lean::nat_mul(x_219, x_4); -lean::dec(x_219); -x_222 = lean::mk_nat_obj(19u); -lean::inc(x_0); -x_224 = _l_s3_nat_s3_pow_s6___main(x_0, x_222); -x_225 = lean::nat_mul(x_224, x_4); -lean::dec(x_224); -x_227 = lean::mk_nat_obj(18u); -lean::inc(x_0); -x_229 = _l_s3_nat_s3_pow_s6___main(x_0, x_227); -x_230 = lean::nat_mul(x_229, x_4); -lean::dec(x_229); -x_232 = lean::mk_nat_obj(17u); -lean::inc(x_0); -x_234 = _l_s3_nat_s3_pow_s6___main(x_0, x_232); -x_235 = lean::nat_mul(x_234, x_4); -lean::dec(x_234); -x_237 = lean::mk_nat_obj(16u); -lean::inc(x_0); -x_239 = _l_s3_nat_s3_pow_s6___main(x_0, x_237); -x_240 = lean::nat_mul(x_239, x_4); -lean::dec(x_239); -x_242 = lean::mk_nat_obj(15u); -lean::inc(x_0); -x_244 = _l_s3_nat_s3_pow_s6___main(x_0, x_242); -x_245 = lean::nat_mul(x_244, x_4); -lean::dec(x_244); -x_247 = lean::mk_nat_obj(14u); -lean::inc(x_0); -x_249 = _l_s3_nat_s3_pow_s6___main(x_0, x_247); -x_250 = lean::nat_mul(x_249, x_4); -lean::dec(x_249); -x_252 = lean::mk_nat_obj(13u); -lean::inc(x_0); -x_254 = _l_s3_nat_s3_pow_s6___main(x_0, x_252); -x_255 = lean::nat_mul(x_254, x_4); -lean::dec(x_254); -x_257 = lean::mk_nat_obj(12u); -lean::inc(x_0); -x_259 = _l_s3_nat_s3_pow_s6___main(x_0, x_257); -x_260 = lean::nat_mul(x_259, x_4); -lean::dec(x_259); -x_262 = lean::mk_nat_obj(11u); -lean::inc(x_0); -x_264 = _l_s3_nat_s3_pow_s6___main(x_0, x_262); -x_265 = lean::nat_mul(x_264, x_4); -lean::dec(x_264); -x_267 = lean::mk_nat_obj(10u); -lean::inc(x_0); -x_269 = _l_s3_nat_s3_pow_s6___main(x_0, x_267); -x_270 = lean::nat_mul(x_269, x_4); -lean::dec(x_269); -x_272 = lean::mk_nat_obj(9u); -lean::inc(x_0); -x_274 = _l_s3_nat_s3_pow_s6___main(x_0, x_272); -x_275 = lean::nat_mul(x_274, x_4); -lean::dec(x_274); -x_277 = lean::mk_nat_obj(8u); -lean::inc(x_0); -x_279 = _l_s3_nat_s3_pow_s6___main(x_0, x_277); -x_280 = lean::nat_mul(x_279, x_4); -lean::dec(x_279); -x_282 = lean::mk_nat_obj(7u); -lean::inc(x_0); -x_284 = _l_s3_nat_s3_pow_s6___main(x_0, x_282); -x_285 = lean::nat_mul(x_284, x_4); -lean::dec(x_284); -x_287 = lean::mk_nat_obj(6u); -lean::inc(x_0); -x_289 = _l_s3_nat_s3_pow_s6___main(x_0, x_287); -x_290 = lean::nat_mul(x_289, x_4); -lean::dec(x_289); -x_292 = lean::mk_nat_obj(5u); -lean::inc(x_0); -x_294 = _l_s3_nat_s3_pow_s6___main(x_0, x_292); -x_295 = lean::nat_mul(x_294, x_4); -lean::dec(x_294); -x_297 = lean::mk_nat_obj(4u); -lean::inc(x_0); -x_299 = _l_s3_nat_s3_pow_s6___main(x_0, x_297); -x_300 = lean::nat_mul(x_299, x_4); -lean::dec(x_299); -x_302 = lean::mk_nat_obj(3u); -lean::inc(x_0); -x_304 = _l_s3_nat_s3_pow_s6___main(x_0, x_302); -x_305 = lean::nat_mul(x_304, x_4); -lean::dec(x_304); -lean::inc(x_0); -lean::inc(x_0); -x_309 = _l_s3_nat_s3_pow_s6___main(x_0, x_0); -x_310 = lean::nat_mul(x_309, x_4); -lean::dec(x_309); -lean::inc(x_4); -lean::inc(x_0); -x_314 = _l_s3_nat_s3_pow_s6___main(x_0, x_4); -x_315 = lean::nat_mul(x_314, x_4); -lean::dec(x_314); -x_317 = lean::mk_nat_obj(0u); -lean::inc(x_317); -x_319 = _l_s3_nat_s3_pow_s6___main(x_0, x_317); -x_320 = lean::nat_mul(x_319, x_4); -lean::dec(x_319); -x_322 = lean::nat_add(x_320, x_317); -lean::dec(x_317); -lean::dec(x_320); -x_325 = lean::nat_add(x_315, x_322); -lean::dec(x_322); -lean::dec(x_315); -x_328 = lean::nat_add(x_310, x_325); -lean::dec(x_325); -lean::dec(x_310); -x_331 = lean::nat_add(x_305, x_328); -lean::dec(x_328); -lean::dec(x_305); -x_334 = lean::nat_add(x_300, x_331); -lean::dec(x_331); -lean::dec(x_300); -x_337 = lean::nat_add(x_295, x_334); -lean::dec(x_334); -lean::dec(x_295); -x_340 = lean::nat_add(x_290, x_337); -lean::dec(x_337); -lean::dec(x_290); -x_343 = lean::nat_add(x_285, x_340); -lean::dec(x_340); -lean::dec(x_285); -x_346 = lean::nat_add(x_280, x_343); -lean::dec(x_343); -lean::dec(x_280); -x_349 = lean::nat_add(x_275, x_346); -lean::dec(x_346); -lean::dec(x_275); -x_352 = lean::nat_add(x_270, x_349); -lean::dec(x_349); -lean::dec(x_270); -x_355 = lean::nat_add(x_265, x_352); -lean::dec(x_352); -lean::dec(x_265); -x_358 = lean::nat_add(x_260, x_355); -lean::dec(x_355); -lean::dec(x_260); -x_361 = lean::nat_add(x_255, x_358); -lean::dec(x_358); -lean::dec(x_255); -x_364 = lean::nat_add(x_250, x_361); -lean::dec(x_361); -lean::dec(x_250); -x_367 = lean::nat_add(x_245, x_364); -lean::dec(x_364); -lean::dec(x_245); -x_370 = lean::nat_add(x_240, x_367); -lean::dec(x_367); -lean::dec(x_240); -x_373 = lean::nat_add(x_235, x_370); -lean::dec(x_370); -lean::dec(x_235); -x_376 = lean::nat_add(x_230, x_373); -lean::dec(x_373); -lean::dec(x_230); -x_379 = lean::nat_add(x_225, x_376); -lean::dec(x_376); -lean::dec(x_225); -x_382 = lean::nat_add(x_220, x_379); -lean::dec(x_379); -lean::dec(x_220); -x_385 = lean::nat_add(x_215, x_382); -lean::dec(x_382); -lean::dec(x_215); -x_388 = lean::nat_add(x_210, x_385); -lean::dec(x_385); -lean::dec(x_210); -x_391 = lean::nat_add(x_205, x_388); -lean::dec(x_388); -lean::dec(x_205); -x_394 = lean::nat_add(x_200, x_391); -lean::dec(x_391); -lean::dec(x_200); -x_397 = lean::nat_add(x_195, x_394); -lean::dec(x_394); -lean::dec(x_195); -x_400 = lean::nat_add(x_190, x_397); -lean::dec(x_397); -lean::dec(x_190); -x_403 = lean::nat_add(x_185, x_400); -lean::dec(x_400); -lean::dec(x_185); -x_406 = lean::nat_add(x_180, x_403); -lean::dec(x_403); -lean::dec(x_180); -x_409 = lean::nat_add(x_175, x_406); -lean::dec(x_406); -lean::dec(x_175); -x_412 = lean::nat_add(x_170, x_409); -lean::dec(x_409); -lean::dec(x_170); -x_415 = lean::nat_add(x_165, x_412); -lean::dec(x_412); -lean::dec(x_165); -x_418 = lean::nat_add(x_160, x_415); -lean::dec(x_415); -lean::dec(x_160); -x_421 = lean::nat_add(x_155, x_418); -lean::dec(x_418); -lean::dec(x_155); -x_424 = lean::nat_add(x_150, x_421); -lean::dec(x_421); -lean::dec(x_150); -x_427 = lean::nat_add(x_145, x_424); -lean::dec(x_424); -lean::dec(x_145); -x_430 = lean::nat_add(x_140, x_427); -lean::dec(x_427); -lean::dec(x_140); -x_433 = lean::nat_add(x_135, x_430); -lean::dec(x_430); -lean::dec(x_135); -x_436 = lean::nat_add(x_130, x_433); -lean::dec(x_433); -lean::dec(x_130); -x_439 = lean::nat_add(x_125, x_436); -lean::dec(x_436); -lean::dec(x_125); -x_442 = lean::nat_add(x_120, x_439); -lean::dec(x_439); -lean::dec(x_120); -x_445 = lean::nat_add(x_115, x_442); -lean::dec(x_442); -lean::dec(x_115); -x_448 = lean::nat_add(x_110, x_445); -lean::dec(x_445); -lean::dec(x_110); -x_451 = lean::nat_add(x_105, x_448); -lean::dec(x_448); -lean::dec(x_105); -x_454 = lean::nat_add(x_100, x_451); -lean::dec(x_451); -lean::dec(x_100); -x_457 = lean::nat_add(x_95, x_454); -lean::dec(x_454); -lean::dec(x_95); -x_460 = lean::nat_add(x_90, x_457); -lean::dec(x_457); -lean::dec(x_90); -x_463 = lean::nat_add(x_85, x_460); -lean::dec(x_460); -lean::dec(x_85); -x_466 = lean::nat_add(x_80, x_463); -lean::dec(x_463); -lean::dec(x_80); -x_469 = lean::nat_add(x_75, x_466); -lean::dec(x_466); -lean::dec(x_75); -x_472 = lean::nat_add(x_70, x_469); -lean::dec(x_469); -lean::dec(x_70); -x_475 = lean::nat_add(x_65, x_472); -lean::dec(x_472); -lean::dec(x_65); -x_478 = lean::nat_add(x_60, x_475); -lean::dec(x_475); -lean::dec(x_60); -x_481 = lean::nat_add(x_55, x_478); -lean::dec(x_478); -lean::dec(x_55); -x_484 = lean::nat_add(x_50, x_481); -lean::dec(x_481); -lean::dec(x_50); -x_487 = lean::nat_add(x_45, x_484); -lean::dec(x_484); -lean::dec(x_45); -x_490 = lean::nat_add(x_40, x_487); -lean::dec(x_487); -lean::dec(x_40); -x_493 = lean::nat_add(x_35, x_490); -lean::dec(x_490); -lean::dec(x_35); -x_496 = lean::nat_add(x_30, x_493); -lean::dec(x_493); -lean::dec(x_30); -x_499 = lean::nat_add(x_25, x_496); -lean::dec(x_496); -lean::dec(x_25); -x_502 = lean::nat_add(x_20, x_499); -lean::dec(x_499); -lean::dec(x_20); -x_505 = lean::nat_add(x_15, x_502); -lean::dec(x_502); -lean::dec(x_15); -x_508 = lean::nat_add(x_10, x_505); -lean::dec(x_505); -lean::dec(x_10); -x_511 = lean::nat_add(x_5, x_508); -lean::dec(x_508); -lean::dec(x_5); -x_514 = _l_s3_fin_s7_of__nat(x_511, x_4); -x_515 = lean::alloc_cnstr(0, 1, 0); -lean::cnstr_set(x_515, 0, x_514); -return x_515; +size_t x_0; obj* x_1; +x_0 = _l_s5_usize_s9_has__zero; +x_1 = lean::box_size_t(x_0); +return x_1; +} +} +size_t _init__l_s5_usize_s8_has__one() { +{ +obj* x_0; size_t x_1; +x_0 = lean::mk_nat_obj(1u); +x_1 = lean::usize_of_nat(x_0); +lean::dec(x_0); +return x_1; +} +} +obj* _init__l_s5_usize_s8_has__one_s7___boxed() { +{ +size_t x_0; obj* x_1; +x_0 = _l_s5_usize_s8_has__one; +x_1 = lean::box_size_t(x_0); +return x_1; } } obj* _init__l_s5_usize_s8_has__add() { @@ -2098,558 +237,21 @@ x_0 = lean::alloc_cnstr(0, 0, 0); return x_0; } } -obj* _init__l_s5_usize_s9_inhabited() { +size_t _init__l_s5_usize_s9_inhabited() { { -obj* x_0; obj* x_1; obj* x_3; obj* x_4; obj* x_5; obj* x_7; obj* x_9; obj* x_10; obj* x_12; obj* x_14; obj* x_15; obj* x_17; obj* x_19; obj* x_20; obj* x_22; obj* x_24; obj* x_25; obj* x_27; obj* x_29; obj* x_30; obj* x_32; obj* x_34; obj* x_35; obj* x_37; obj* x_39; obj* x_40; obj* x_42; obj* x_44; obj* x_45; obj* x_47; obj* x_49; obj* x_50; obj* x_52; obj* x_54; obj* x_55; obj* x_57; obj* x_59; obj* x_60; obj* x_62; obj* x_64; obj* x_65; obj* x_67; obj* x_69; obj* x_70; obj* x_72; obj* x_74; obj* x_75; obj* x_77; obj* x_79; obj* x_80; obj* x_82; obj* x_84; obj* x_85; obj* x_87; obj* x_89; obj* x_90; obj* x_92; obj* x_94; obj* x_95; obj* x_97; obj* x_99; obj* x_100; obj* x_102; obj* x_104; obj* x_105; obj* x_107; obj* x_109; obj* x_110; obj* x_112; obj* x_114; obj* x_115; obj* x_117; obj* x_119; obj* x_120; obj* x_122; obj* x_124; obj* x_125; obj* x_127; obj* x_129; obj* x_130; obj* x_132; obj* x_134; obj* x_135; obj* x_137; obj* x_139; obj* x_140; obj* x_142; obj* x_144; obj* x_145; obj* x_147; obj* x_149; obj* x_150; obj* x_152; obj* x_154; obj* x_155; obj* x_157; obj* x_159; obj* x_160; obj* x_162; obj* x_164; obj* x_165; obj* x_167; obj* x_169; obj* x_170; obj* x_172; obj* x_174; obj* x_175; obj* x_177; obj* x_179; obj* x_180; obj* x_182; obj* x_184; obj* x_185; obj* x_187; obj* x_189; obj* x_190; obj* x_192; obj* x_194; obj* x_195; obj* x_197; obj* x_199; obj* x_200; obj* x_202; obj* x_204; obj* x_205; obj* x_207; obj* x_209; obj* x_210; obj* x_212; obj* x_214; obj* x_215; obj* x_217; obj* x_219; obj* x_220; obj* x_222; obj* x_224; obj* x_225; obj* x_227; obj* x_229; obj* x_230; obj* x_232; obj* x_234; obj* x_235; obj* x_237; obj* x_239; obj* x_240; obj* x_242; obj* x_244; obj* x_245; obj* x_247; obj* x_249; obj* x_250; obj* x_252; obj* x_254; obj* x_255; obj* x_257; obj* x_259; obj* x_260; obj* x_262; obj* x_264; obj* x_265; obj* x_267; obj* x_269; obj* x_270; obj* x_272; obj* x_274; obj* x_275; obj* x_277; obj* x_279; obj* x_280; obj* x_282; obj* x_284; obj* x_285; obj* x_287; obj* x_289; obj* x_290; obj* x_292; obj* x_294; obj* x_295; obj* x_297; obj* x_299; obj* x_300; obj* x_302; obj* x_304; obj* x_305; obj* x_309; obj* x_310; obj* x_314; obj* x_315; obj* x_317; obj* x_319; obj* x_320; obj* x_323; obj* x_325; obj* x_328; obj* x_331; obj* x_334; obj* x_337; obj* x_340; obj* x_343; obj* x_346; obj* x_349; obj* x_352; obj* x_355; obj* x_358; obj* x_361; obj* x_364; obj* x_367; obj* x_370; obj* x_373; obj* x_376; obj* x_379; obj* x_382; obj* x_385; obj* x_388; obj* x_391; obj* x_394; obj* x_397; obj* x_400; obj* x_403; obj* x_406; obj* x_409; obj* x_412; obj* x_415; obj* x_418; obj* x_421; obj* x_424; obj* x_427; obj* x_430; obj* x_433; obj* x_436; obj* x_439; obj* x_442; obj* x_445; obj* x_448; obj* x_451; obj* x_454; obj* x_457; obj* x_460; obj* x_463; obj* x_466; obj* x_469; obj* x_472; obj* x_475; obj* x_478; obj* x_481; obj* x_484; obj* x_487; obj* x_490; obj* x_493; obj* x_496; obj* x_499; obj* x_502; obj* x_505; obj* x_508; obj* x_511; obj* x_514; obj* x_515; -x_0 = lean::mk_nat_obj(2u); -x_1 = lean::mk_nat_obj(63u); -lean::inc(x_0); -x_3 = _l_s3_nat_s3_pow_s6___main(x_0, x_1); -x_4 = lean::mk_nat_obj(1u); -x_5 = lean::nat_mul(x_3, x_4); -lean::dec(x_3); -x_7 = lean::mk_nat_obj(62u); -lean::inc(x_0); -x_9 = _l_s3_nat_s3_pow_s6___main(x_0, x_7); -x_10 = lean::nat_mul(x_9, x_4); -lean::dec(x_9); -x_12 = lean::mk_nat_obj(61u); -lean::inc(x_0); -x_14 = _l_s3_nat_s3_pow_s6___main(x_0, x_12); -x_15 = lean::nat_mul(x_14, x_4); -lean::dec(x_14); -x_17 = lean::mk_nat_obj(60u); -lean::inc(x_0); -x_19 = _l_s3_nat_s3_pow_s6___main(x_0, x_17); -x_20 = lean::nat_mul(x_19, x_4); -lean::dec(x_19); -x_22 = lean::mk_nat_obj(59u); -lean::inc(x_0); -x_24 = _l_s3_nat_s3_pow_s6___main(x_0, x_22); -x_25 = lean::nat_mul(x_24, x_4); -lean::dec(x_24); -x_27 = lean::mk_nat_obj(58u); -lean::inc(x_0); -x_29 = _l_s3_nat_s3_pow_s6___main(x_0, x_27); -x_30 = lean::nat_mul(x_29, x_4); -lean::dec(x_29); -x_32 = lean::mk_nat_obj(57u); -lean::inc(x_0); -x_34 = _l_s3_nat_s3_pow_s6___main(x_0, x_32); -x_35 = lean::nat_mul(x_34, x_4); -lean::dec(x_34); -x_37 = lean::mk_nat_obj(56u); -lean::inc(x_0); -x_39 = _l_s3_nat_s3_pow_s6___main(x_0, x_37); -x_40 = lean::nat_mul(x_39, x_4); -lean::dec(x_39); -x_42 = lean::mk_nat_obj(55u); -lean::inc(x_0); -x_44 = _l_s3_nat_s3_pow_s6___main(x_0, x_42); -x_45 = lean::nat_mul(x_44, x_4); -lean::dec(x_44); -x_47 = lean::mk_nat_obj(54u); -lean::inc(x_0); -x_49 = _l_s3_nat_s3_pow_s6___main(x_0, x_47); -x_50 = lean::nat_mul(x_49, x_4); -lean::dec(x_49); -x_52 = lean::mk_nat_obj(53u); -lean::inc(x_0); -x_54 = _l_s3_nat_s3_pow_s6___main(x_0, x_52); -x_55 = lean::nat_mul(x_54, x_4); -lean::dec(x_54); -x_57 = lean::mk_nat_obj(52u); -lean::inc(x_0); -x_59 = _l_s3_nat_s3_pow_s6___main(x_0, x_57); -x_60 = lean::nat_mul(x_59, x_4); -lean::dec(x_59); -x_62 = lean::mk_nat_obj(51u); -lean::inc(x_0); -x_64 = _l_s3_nat_s3_pow_s6___main(x_0, x_62); -x_65 = lean::nat_mul(x_64, x_4); -lean::dec(x_64); -x_67 = lean::mk_nat_obj(50u); -lean::inc(x_0); -x_69 = _l_s3_nat_s3_pow_s6___main(x_0, x_67); -x_70 = lean::nat_mul(x_69, x_4); -lean::dec(x_69); -x_72 = lean::mk_nat_obj(49u); -lean::inc(x_0); -x_74 = _l_s3_nat_s3_pow_s6___main(x_0, x_72); -x_75 = lean::nat_mul(x_74, x_4); -lean::dec(x_74); -x_77 = lean::mk_nat_obj(48u); -lean::inc(x_0); -x_79 = _l_s3_nat_s3_pow_s6___main(x_0, x_77); -x_80 = lean::nat_mul(x_79, x_4); -lean::dec(x_79); -x_82 = lean::mk_nat_obj(47u); -lean::inc(x_0); -x_84 = _l_s3_nat_s3_pow_s6___main(x_0, x_82); -x_85 = lean::nat_mul(x_84, x_4); -lean::dec(x_84); -x_87 = lean::mk_nat_obj(46u); -lean::inc(x_0); -x_89 = _l_s3_nat_s3_pow_s6___main(x_0, x_87); -x_90 = lean::nat_mul(x_89, x_4); -lean::dec(x_89); -x_92 = lean::mk_nat_obj(45u); -lean::inc(x_0); -x_94 = _l_s3_nat_s3_pow_s6___main(x_0, x_92); -x_95 = lean::nat_mul(x_94, x_4); -lean::dec(x_94); -x_97 = lean::mk_nat_obj(44u); -lean::inc(x_0); -x_99 = _l_s3_nat_s3_pow_s6___main(x_0, x_97); -x_100 = lean::nat_mul(x_99, x_4); -lean::dec(x_99); -x_102 = lean::mk_nat_obj(43u); -lean::inc(x_0); -x_104 = _l_s3_nat_s3_pow_s6___main(x_0, x_102); -x_105 = lean::nat_mul(x_104, x_4); -lean::dec(x_104); -x_107 = lean::mk_nat_obj(42u); -lean::inc(x_0); -x_109 = _l_s3_nat_s3_pow_s6___main(x_0, x_107); -x_110 = lean::nat_mul(x_109, x_4); -lean::dec(x_109); -x_112 = lean::mk_nat_obj(41u); -lean::inc(x_0); -x_114 = _l_s3_nat_s3_pow_s6___main(x_0, x_112); -x_115 = lean::nat_mul(x_114, x_4); -lean::dec(x_114); -x_117 = lean::mk_nat_obj(40u); -lean::inc(x_0); -x_119 = _l_s3_nat_s3_pow_s6___main(x_0, x_117); -x_120 = lean::nat_mul(x_119, x_4); -lean::dec(x_119); -x_122 = lean::mk_nat_obj(39u); -lean::inc(x_0); -x_124 = _l_s3_nat_s3_pow_s6___main(x_0, x_122); -x_125 = lean::nat_mul(x_124, x_4); -lean::dec(x_124); -x_127 = lean::mk_nat_obj(38u); -lean::inc(x_0); -x_129 = _l_s3_nat_s3_pow_s6___main(x_0, x_127); -x_130 = lean::nat_mul(x_129, x_4); -lean::dec(x_129); -x_132 = lean::mk_nat_obj(37u); -lean::inc(x_0); -x_134 = _l_s3_nat_s3_pow_s6___main(x_0, x_132); -x_135 = lean::nat_mul(x_134, x_4); -lean::dec(x_134); -x_137 = lean::mk_nat_obj(36u); -lean::inc(x_0); -x_139 = _l_s3_nat_s3_pow_s6___main(x_0, x_137); -x_140 = lean::nat_mul(x_139, x_4); -lean::dec(x_139); -x_142 = lean::mk_nat_obj(35u); -lean::inc(x_0); -x_144 = _l_s3_nat_s3_pow_s6___main(x_0, x_142); -x_145 = lean::nat_mul(x_144, x_4); -lean::dec(x_144); -x_147 = lean::mk_nat_obj(34u); -lean::inc(x_0); -x_149 = _l_s3_nat_s3_pow_s6___main(x_0, x_147); -x_150 = lean::nat_mul(x_149, x_4); -lean::dec(x_149); -x_152 = lean::mk_nat_obj(33u); -lean::inc(x_0); -x_154 = _l_s3_nat_s3_pow_s6___main(x_0, x_152); -x_155 = lean::nat_mul(x_154, x_4); -lean::dec(x_154); -x_157 = lean::mk_nat_obj(32u); -lean::inc(x_0); -x_159 = _l_s3_nat_s3_pow_s6___main(x_0, x_157); -x_160 = lean::nat_mul(x_159, x_4); -lean::dec(x_159); -x_162 = lean::mk_nat_obj(31u); -lean::inc(x_0); -x_164 = _l_s3_nat_s3_pow_s6___main(x_0, x_162); -x_165 = lean::nat_mul(x_164, x_4); -lean::dec(x_164); -x_167 = lean::mk_nat_obj(30u); -lean::inc(x_0); -x_169 = _l_s3_nat_s3_pow_s6___main(x_0, x_167); -x_170 = lean::nat_mul(x_169, x_4); -lean::dec(x_169); -x_172 = lean::mk_nat_obj(29u); -lean::inc(x_0); -x_174 = _l_s3_nat_s3_pow_s6___main(x_0, x_172); -x_175 = lean::nat_mul(x_174, x_4); -lean::dec(x_174); -x_177 = lean::mk_nat_obj(28u); -lean::inc(x_0); -x_179 = _l_s3_nat_s3_pow_s6___main(x_0, x_177); -x_180 = lean::nat_mul(x_179, x_4); -lean::dec(x_179); -x_182 = lean::mk_nat_obj(27u); -lean::inc(x_0); -x_184 = _l_s3_nat_s3_pow_s6___main(x_0, x_182); -x_185 = lean::nat_mul(x_184, x_4); -lean::dec(x_184); -x_187 = lean::mk_nat_obj(26u); -lean::inc(x_0); -x_189 = _l_s3_nat_s3_pow_s6___main(x_0, x_187); -x_190 = lean::nat_mul(x_189, x_4); -lean::dec(x_189); -x_192 = lean::mk_nat_obj(25u); -lean::inc(x_0); -x_194 = _l_s3_nat_s3_pow_s6___main(x_0, x_192); -x_195 = lean::nat_mul(x_194, x_4); -lean::dec(x_194); -x_197 = lean::mk_nat_obj(24u); -lean::inc(x_0); -x_199 = _l_s3_nat_s3_pow_s6___main(x_0, x_197); -x_200 = lean::nat_mul(x_199, x_4); -lean::dec(x_199); -x_202 = lean::mk_nat_obj(23u); -lean::inc(x_0); -x_204 = _l_s3_nat_s3_pow_s6___main(x_0, x_202); -x_205 = lean::nat_mul(x_204, x_4); -lean::dec(x_204); -x_207 = lean::mk_nat_obj(22u); -lean::inc(x_0); -x_209 = _l_s3_nat_s3_pow_s6___main(x_0, x_207); -x_210 = lean::nat_mul(x_209, x_4); -lean::dec(x_209); -x_212 = lean::mk_nat_obj(21u); -lean::inc(x_0); -x_214 = _l_s3_nat_s3_pow_s6___main(x_0, x_212); -x_215 = lean::nat_mul(x_214, x_4); -lean::dec(x_214); -x_217 = lean::mk_nat_obj(20u); -lean::inc(x_0); -x_219 = _l_s3_nat_s3_pow_s6___main(x_0, x_217); -x_220 = lean::nat_mul(x_219, x_4); -lean::dec(x_219); -x_222 = lean::mk_nat_obj(19u); -lean::inc(x_0); -x_224 = _l_s3_nat_s3_pow_s6___main(x_0, x_222); -x_225 = lean::nat_mul(x_224, x_4); -lean::dec(x_224); -x_227 = lean::mk_nat_obj(18u); -lean::inc(x_0); -x_229 = _l_s3_nat_s3_pow_s6___main(x_0, x_227); -x_230 = lean::nat_mul(x_229, x_4); -lean::dec(x_229); -x_232 = lean::mk_nat_obj(17u); -lean::inc(x_0); -x_234 = _l_s3_nat_s3_pow_s6___main(x_0, x_232); -x_235 = lean::nat_mul(x_234, x_4); -lean::dec(x_234); -x_237 = lean::mk_nat_obj(16u); -lean::inc(x_0); -x_239 = _l_s3_nat_s3_pow_s6___main(x_0, x_237); -x_240 = lean::nat_mul(x_239, x_4); -lean::dec(x_239); -x_242 = lean::mk_nat_obj(15u); -lean::inc(x_0); -x_244 = _l_s3_nat_s3_pow_s6___main(x_0, x_242); -x_245 = lean::nat_mul(x_244, x_4); -lean::dec(x_244); -x_247 = lean::mk_nat_obj(14u); -lean::inc(x_0); -x_249 = _l_s3_nat_s3_pow_s6___main(x_0, x_247); -x_250 = lean::nat_mul(x_249, x_4); -lean::dec(x_249); -x_252 = lean::mk_nat_obj(13u); -lean::inc(x_0); -x_254 = _l_s3_nat_s3_pow_s6___main(x_0, x_252); -x_255 = lean::nat_mul(x_254, x_4); -lean::dec(x_254); -x_257 = lean::mk_nat_obj(12u); -lean::inc(x_0); -x_259 = _l_s3_nat_s3_pow_s6___main(x_0, x_257); -x_260 = lean::nat_mul(x_259, x_4); -lean::dec(x_259); -x_262 = lean::mk_nat_obj(11u); -lean::inc(x_0); -x_264 = _l_s3_nat_s3_pow_s6___main(x_0, x_262); -x_265 = lean::nat_mul(x_264, x_4); -lean::dec(x_264); -x_267 = lean::mk_nat_obj(10u); -lean::inc(x_0); -x_269 = _l_s3_nat_s3_pow_s6___main(x_0, x_267); -x_270 = lean::nat_mul(x_269, x_4); -lean::dec(x_269); -x_272 = lean::mk_nat_obj(9u); -lean::inc(x_0); -x_274 = _l_s3_nat_s3_pow_s6___main(x_0, x_272); -x_275 = lean::nat_mul(x_274, x_4); -lean::dec(x_274); -x_277 = lean::mk_nat_obj(8u); -lean::inc(x_0); -x_279 = _l_s3_nat_s3_pow_s6___main(x_0, x_277); -x_280 = lean::nat_mul(x_279, x_4); -lean::dec(x_279); -x_282 = lean::mk_nat_obj(7u); -lean::inc(x_0); -x_284 = _l_s3_nat_s3_pow_s6___main(x_0, x_282); -x_285 = lean::nat_mul(x_284, x_4); -lean::dec(x_284); -x_287 = lean::mk_nat_obj(6u); -lean::inc(x_0); -x_289 = _l_s3_nat_s3_pow_s6___main(x_0, x_287); -x_290 = lean::nat_mul(x_289, x_4); -lean::dec(x_289); -x_292 = lean::mk_nat_obj(5u); -lean::inc(x_0); -x_294 = _l_s3_nat_s3_pow_s6___main(x_0, x_292); -x_295 = lean::nat_mul(x_294, x_4); -lean::dec(x_294); -x_297 = lean::mk_nat_obj(4u); -lean::inc(x_0); -x_299 = _l_s3_nat_s3_pow_s6___main(x_0, x_297); -x_300 = lean::nat_mul(x_299, x_4); -lean::dec(x_299); -x_302 = lean::mk_nat_obj(3u); -lean::inc(x_0); -x_304 = _l_s3_nat_s3_pow_s6___main(x_0, x_302); -x_305 = lean::nat_mul(x_304, x_4); -lean::dec(x_304); -lean::inc(x_0); -lean::inc(x_0); -x_309 = _l_s3_nat_s3_pow_s6___main(x_0, x_0); -x_310 = lean::nat_mul(x_309, x_4); -lean::dec(x_309); -lean::inc(x_4); -lean::inc(x_0); -x_314 = _l_s3_nat_s3_pow_s6___main(x_0, x_4); -x_315 = lean::nat_mul(x_314, x_4); -lean::dec(x_314); -x_317 = lean::mk_nat_obj(0u); -lean::inc(x_317); -x_319 = _l_s3_nat_s3_pow_s6___main(x_0, x_317); -x_320 = lean::nat_mul(x_319, x_4); -lean::dec(x_4); -lean::dec(x_319); -x_323 = lean::nat_add(x_320, x_317); -lean::dec(x_320); -x_325 = lean::nat_add(x_315, x_323); -lean::dec(x_323); -lean::dec(x_315); -x_328 = lean::nat_add(x_310, x_325); -lean::dec(x_325); -lean::dec(x_310); -x_331 = lean::nat_add(x_305, x_328); -lean::dec(x_328); -lean::dec(x_305); -x_334 = lean::nat_add(x_300, x_331); -lean::dec(x_331); -lean::dec(x_300); -x_337 = lean::nat_add(x_295, x_334); -lean::dec(x_334); -lean::dec(x_295); -x_340 = lean::nat_add(x_290, x_337); -lean::dec(x_337); -lean::dec(x_290); -x_343 = lean::nat_add(x_285, x_340); -lean::dec(x_340); -lean::dec(x_285); -x_346 = lean::nat_add(x_280, x_343); -lean::dec(x_343); -lean::dec(x_280); -x_349 = lean::nat_add(x_275, x_346); -lean::dec(x_346); -lean::dec(x_275); -x_352 = lean::nat_add(x_270, x_349); -lean::dec(x_349); -lean::dec(x_270); -x_355 = lean::nat_add(x_265, x_352); -lean::dec(x_352); -lean::dec(x_265); -x_358 = lean::nat_add(x_260, x_355); -lean::dec(x_355); -lean::dec(x_260); -x_361 = lean::nat_add(x_255, x_358); -lean::dec(x_358); -lean::dec(x_255); -x_364 = lean::nat_add(x_250, x_361); -lean::dec(x_361); -lean::dec(x_250); -x_367 = lean::nat_add(x_245, x_364); -lean::dec(x_364); -lean::dec(x_245); -x_370 = lean::nat_add(x_240, x_367); -lean::dec(x_367); -lean::dec(x_240); -x_373 = lean::nat_add(x_235, x_370); -lean::dec(x_370); -lean::dec(x_235); -x_376 = lean::nat_add(x_230, x_373); -lean::dec(x_373); -lean::dec(x_230); -x_379 = lean::nat_add(x_225, x_376); -lean::dec(x_376); -lean::dec(x_225); -x_382 = lean::nat_add(x_220, x_379); -lean::dec(x_379); -lean::dec(x_220); -x_385 = lean::nat_add(x_215, x_382); -lean::dec(x_382); -lean::dec(x_215); -x_388 = lean::nat_add(x_210, x_385); -lean::dec(x_385); -lean::dec(x_210); -x_391 = lean::nat_add(x_205, x_388); -lean::dec(x_388); -lean::dec(x_205); -x_394 = lean::nat_add(x_200, x_391); -lean::dec(x_391); -lean::dec(x_200); -x_397 = lean::nat_add(x_195, x_394); -lean::dec(x_394); -lean::dec(x_195); -x_400 = lean::nat_add(x_190, x_397); -lean::dec(x_397); -lean::dec(x_190); -x_403 = lean::nat_add(x_185, x_400); -lean::dec(x_400); -lean::dec(x_185); -x_406 = lean::nat_add(x_180, x_403); -lean::dec(x_403); -lean::dec(x_180); -x_409 = lean::nat_add(x_175, x_406); -lean::dec(x_406); -lean::dec(x_175); -x_412 = lean::nat_add(x_170, x_409); -lean::dec(x_409); -lean::dec(x_170); -x_415 = lean::nat_add(x_165, x_412); -lean::dec(x_412); -lean::dec(x_165); -x_418 = lean::nat_add(x_160, x_415); -lean::dec(x_415); -lean::dec(x_160); -x_421 = lean::nat_add(x_155, x_418); -lean::dec(x_418); -lean::dec(x_155); -x_424 = lean::nat_add(x_150, x_421); -lean::dec(x_421); -lean::dec(x_150); -x_427 = lean::nat_add(x_145, x_424); -lean::dec(x_424); -lean::dec(x_145); -x_430 = lean::nat_add(x_140, x_427); -lean::dec(x_427); -lean::dec(x_140); -x_433 = lean::nat_add(x_135, x_430); -lean::dec(x_430); -lean::dec(x_135); -x_436 = lean::nat_add(x_130, x_433); -lean::dec(x_433); -lean::dec(x_130); -x_439 = lean::nat_add(x_125, x_436); -lean::dec(x_436); -lean::dec(x_125); -x_442 = lean::nat_add(x_120, x_439); -lean::dec(x_439); -lean::dec(x_120); -x_445 = lean::nat_add(x_115, x_442); -lean::dec(x_442); -lean::dec(x_115); -x_448 = lean::nat_add(x_110, x_445); -lean::dec(x_445); -lean::dec(x_110); -x_451 = lean::nat_add(x_105, x_448); -lean::dec(x_448); -lean::dec(x_105); -x_454 = lean::nat_add(x_100, x_451); -lean::dec(x_451); -lean::dec(x_100); -x_457 = lean::nat_add(x_95, x_454); -lean::dec(x_454); -lean::dec(x_95); -x_460 = lean::nat_add(x_90, x_457); -lean::dec(x_457); -lean::dec(x_90); -x_463 = lean::nat_add(x_85, x_460); -lean::dec(x_460); -lean::dec(x_85); -x_466 = lean::nat_add(x_80, x_463); -lean::dec(x_463); -lean::dec(x_80); -x_469 = lean::nat_add(x_75, x_466); -lean::dec(x_466); -lean::dec(x_75); -x_472 = lean::nat_add(x_70, x_469); -lean::dec(x_469); -lean::dec(x_70); -x_475 = lean::nat_add(x_65, x_472); -lean::dec(x_472); -lean::dec(x_65); -x_478 = lean::nat_add(x_60, x_475); -lean::dec(x_475); -lean::dec(x_60); -x_481 = lean::nat_add(x_55, x_478); -lean::dec(x_478); -lean::dec(x_55); -x_484 = lean::nat_add(x_50, x_481); -lean::dec(x_481); -lean::dec(x_50); -x_487 = lean::nat_add(x_45, x_484); -lean::dec(x_484); -lean::dec(x_45); -x_490 = lean::nat_add(x_40, x_487); -lean::dec(x_487); -lean::dec(x_40); -x_493 = lean::nat_add(x_35, x_490); -lean::dec(x_490); -lean::dec(x_35); -x_496 = lean::nat_add(x_30, x_493); -lean::dec(x_493); -lean::dec(x_30); -x_499 = lean::nat_add(x_25, x_496); -lean::dec(x_496); -lean::dec(x_25); -x_502 = lean::nat_add(x_20, x_499); -lean::dec(x_499); -lean::dec(x_20); -x_505 = lean::nat_add(x_15, x_502); -lean::dec(x_502); -lean::dec(x_15); -x_508 = lean::nat_add(x_10, x_505); -lean::dec(x_505); -lean::dec(x_10); -x_511 = lean::nat_add(x_5, x_508); -lean::dec(x_508); -lean::dec(x_5); -x_514 = _l_s3_fin_s7_of__nat(x_511, x_317); -x_515 = lean::alloc_cnstr(0, 1, 0); -lean::cnstr_set(x_515, 0, x_514); -return x_515; -} -} -obj* _l_s5_usize_s7_dec__eq_s6___main(size_t x_0, size_t x_1) { -{ -obj* x_2; obj* x_5; obj* x_8; -x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); +obj* x_0; size_t x_1; +x_0 = lean::mk_nat_obj(0u); +x_1 = lean::usize_of_nat(x_0); lean::dec(x_0); -x_5 = lean::cnstr_get(x_1, 0); -lean::inc(x_5); -lean::dec(x_1); -x_8 = lean::nat_dec_eq(x_2, x_5); -lean::dec(x_5); -lean::dec(x_2); -return x_8; +return x_1; } } -obj* _l_s5_usize_s7_dec__eq_s6___main_s7___boxed(obj* x_0, obj* x_1) { +obj* _init__l_s5_usize_s9_inhabited_s7___boxed() { { -size_t x_2; size_t x_3; obj* x_4; -x_2 = lean::unbox_size_t(x_0); -x_3 = lean::unbox_size_t(x_1); -x_4 = _l_s5_usize_s7_dec__eq_s6___main(x_2, x_3); -return x_4; -} -} -obj* _l_s5_usize_s7_dec__eq(size_t x_0, size_t x_1) { -{ -obj* x_2; -x_2 = _l_s5_usize_s7_dec__eq_s6___main(x_0, x_1); -return x_2; +size_t x_0; obj* x_1; +x_0 = _l_s5_usize_s9_inhabited; +x_1 = lean::box_size_t(x_0); +return x_1; } } obj* _l_s5_usize_s7_dec__eq_s7___boxed(obj* x_0, obj* x_1) { @@ -2657,87 +259,25 @@ obj* _l_s5_usize_s7_dec__eq_s7___boxed(obj* x_0, obj* x_1) { size_t x_2; size_t x_3; obj* x_4; x_2 = lean::unbox_size_t(x_0); x_3 = lean::unbox_size_t(x_1); -x_4 = _l_s5_usize_s7_dec__eq(x_2, x_3); +x_4 = lean::usize_dec_eq(x_2, x_3); return x_4; } } -obj* _l_s5_usize_s7_dec__lt_s6___main(size_t x_0, size_t x_1) { -{ -obj* x_2; obj* x_5; obj* x_8; -x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); -lean::dec(x_0); -x_5 = lean::cnstr_get(x_1, 0); -lean::inc(x_5); -lean::dec(x_1); -x_8 = lean::nat_dec_lt(x_2, x_5); -lean::dec(x_5); -lean::dec(x_2); -return x_8; -} -} -obj* _l_s5_usize_s7_dec__lt_s6___main_s7___boxed(obj* x_0, obj* x_1) { -{ -size_t x_2; size_t x_3; obj* x_4; -x_2 = lean::unbox_size_t(x_0); -x_3 = lean::unbox_size_t(x_1); -x_4 = _l_s5_usize_s7_dec__lt_s6___main(x_2, x_3); -return x_4; -} -} -obj* _l_s5_usize_s7_dec__lt(size_t x_0, size_t x_1) { -{ -obj* x_2; -x_2 = _l_s5_usize_s7_dec__lt_s6___main(x_0, x_1); -return x_2; -} -} obj* _l_s5_usize_s7_dec__lt_s7___boxed(obj* x_0, obj* x_1) { { size_t x_2; size_t x_3; obj* x_4; x_2 = lean::unbox_size_t(x_0); x_3 = lean::unbox_size_t(x_1); -x_4 = _l_s5_usize_s7_dec__lt(x_2, x_3); +x_4 = lean::usize_dec_lt(x_2, x_3); return x_4; } } -obj* _l_s5_usize_s7_dec__le_s6___main(size_t x_0, size_t x_1) { -{ -obj* x_2; obj* x_5; obj* x_8; -x_2 = lean::cnstr_get(x_0, 0); -lean::inc(x_2); -lean::dec(x_0); -x_5 = lean::cnstr_get(x_1, 0); -lean::inc(x_5); -lean::dec(x_1); -x_8 = lean::nat_dec_le(x_2, x_5); -lean::dec(x_5); -lean::dec(x_2); -return x_8; -} -} -obj* _l_s5_usize_s7_dec__le_s6___main_s7___boxed(obj* x_0, obj* x_1) { -{ -size_t x_2; size_t x_3; obj* x_4; -x_2 = lean::unbox_size_t(x_0); -x_3 = lean::unbox_size_t(x_1); -x_4 = _l_s5_usize_s7_dec__le_s6___main(x_2, x_3); -return x_4; -} -} -obj* _l_s5_usize_s7_dec__le(size_t x_0, size_t x_1) { -{ -obj* x_2; -x_2 = _l_s5_usize_s7_dec__le_s6___main(x_0, x_1); -return x_2; -} -} obj* _l_s5_usize_s7_dec__le_s7___boxed(obj* x_0, obj* x_1) { { size_t x_2; size_t x_3; obj* x_4; x_2 = lean::unbox_size_t(x_0); x_3 = lean::unbox_size_t(x_1); -x_4 = _l_s5_usize_s7_dec__le(x_2, x_3); +x_4 = lean::usize_dec_le(x_2, x_3); return x_4; } } @@ -2751,7 +291,7 @@ return x_0; obj* _l_s5_usize_s18_has__decidable__lt(size_t x_0, size_t x_1) { { obj* x_2; -x_2 = _l_s5_usize_s7_dec__lt_s6___main(x_0, x_1); +x_2 = lean::usize_dec_lt(x_0, x_1); return x_2; } } @@ -2767,7 +307,7 @@ return x_4; obj* _l_s5_usize_s18_has__decidable__le(size_t x_0, size_t x_1) { { obj* x_2; -x_2 = _l_s5_usize_s7_dec__le_s6___main(x_0, x_1); +x_2 = lean::usize_dec_le(x_0, x_1); return x_2; } } @@ -2791,13 +331,12 @@ void _l_initialize__l_s4_init_s4_data_s5_usize() { _l_initialize__l_s4_init_s8_platform(); _l_initialize__l_s4_init_s4_data_s3_fin_s7_default(); _l_s9_usize__sz = _init__l_s9_usize__sz(); - _l_s5_usize_s7_of__nat_s11___closed__1 = _init__l_s5_usize_s7_of__nat_s11___closed__1(); - _l_s5_usize_s2_lt_s6___main = _init__l_s5_usize_s2_lt_s6___main(); _l_s5_usize_s2_lt = _init__l_s5_usize_s2_lt(); - _l_s5_usize_s2_le_s6___main = _init__l_s5_usize_s2_le_s6___main(); _l_s5_usize_s2_le = _init__l_s5_usize_s2_le(); _l_s5_usize_s9_has__zero = _init__l_s5_usize_s9_has__zero(); + _l_s5_usize_s9_has__zero_s7___boxed = _init__l_s5_usize_s9_has__zero_s7___boxed(); _l_s5_usize_s8_has__one = _init__l_s5_usize_s8_has__one(); + _l_s5_usize_s8_has__one_s7___boxed = _init__l_s5_usize_s8_has__one_s7___boxed(); _l_s5_usize_s8_has__add = _init__l_s5_usize_s8_has__add(); _l_s5_usize_s8_has__sub = _init__l_s5_usize_s8_has__sub(); _l_s5_usize_s8_has__mul = _init__l_s5_usize_s8_has__mul(); @@ -2807,5 +346,6 @@ void _l_initialize__l_s4_init_s4_data_s5_usize() { _l_s5_usize_s7_has__lt = _init__l_s5_usize_s7_has__lt(); _l_s5_usize_s7_has__le = _init__l_s5_usize_s7_has__le(); _l_s5_usize_s9_inhabited = _init__l_s5_usize_s9_inhabited(); + _l_s5_usize_s9_inhabited_s7___boxed = _init__l_s5_usize_s9_inhabited_s7___boxed(); _l_s5_usize_s13_decidable__eq = _init__l_s5_usize_s13_decidable__eq(); } diff --git a/src/boot/init/lean/format.cpp b/src/boot/init/lean/format.cpp index c3a06af401..a64882f116 100644 --- a/src/boot/init/lean/format.cpp +++ b/src/boot/init/lean/format.cpp @@ -54,9 +54,7 @@ obj* _l_s4_lean_s6_format_s4_repr_s6___main_s11___closed__6; obj* _l_s4_lean_s6_format_s8_sbracket(obj*); obj* _l_s4_lean_s21_prod__has__to__format(obj*, obj*); obj* _l_s4_lean_s6_format_s21_space__upto__line_x27_s6___main_s11___lambda__1(obj*, obj*, unsigned char); -obj* _l_s6_uint32_s7_to__nat_s6___main(unsigned); obj* _l_s4_lean_s20_nat__has__to__format(obj*); -obj* _l_s6_uint16_s7_to__nat_s6___main(unsigned short); obj* _l_s4_lean_s23_string__has__to__format(obj*); obj* _l_s4_lean_s6_format_s12_join__suffix(obj*); obj* _l_s4_lean_s7_to__fmt(obj*); @@ -68,7 +66,6 @@ obj* _l_s4_lean_s6_format_s4_repr_s6___main_s11___closed__1; obj* _l_s4_lean_s23_uint16__has__to__format_s7___boxed(obj*); obj* _l_s4_lean_s22_to__string__to__format(obj*); obj* _l_s4_lean_s6_format_s4_join(obj*); -obj* _l_s6_uint64_s7_to__nat_s6___main(unsigned long long); obj* _l_s4_lean_s22_usize__has__to__format(size_t); obj* _l_s4_lean_s21_prod__has__to__format_s6___rarg_s11___closed__1; obj* _l_s4_lean_s6_format_s7_flatten(obj*); @@ -101,7 +98,6 @@ obj* _l_s4_lean_s6_format_s12_prefix__join_s6___main(obj*); obj* _l_s4_lean_s6_format_s2_be(obj*, obj*, obj*, obj*); obj* _l_s4_lean_s6_format_s5_group_s6___main(obj*); obj* _l_s4_lean_s6_format_s4_repr(obj*); -obj* _l_s5_usize_s7_to__nat_s6___main(size_t); obj* _l_s4_lean_s6_format_s9_join__sep(obj*); obj* _l_s4_lean_s6_format_s17_space__upto__line_s6___main_s11___closed__1; obj* _l_s4_lean_s21_prod__has__to__format_s6___rarg(obj*, obj*, obj*); @@ -1645,7 +1641,7 @@ return x_2; obj* _l_s4_lean_s23_uint16__has__to__format(unsigned short x_0) { { obj* x_1; obj* x_2; obj* x_3; -x_1 = _l_s6_uint16_s7_to__nat_s6___main(x_0); +x_1 = lean::uint16_to_nat(x_0); x_2 = _l_s3_nat_s4_repr(x_1); x_3 = lean::alloc_cnstr(2, 1, 0); lean::cnstr_set(x_3, 0, x_2); @@ -1663,7 +1659,7 @@ return x_2; obj* _l_s4_lean_s23_uint32__has__to__format(unsigned x_0) { { obj* x_1; obj* x_2; obj* x_3; -x_1 = _l_s6_uint32_s7_to__nat_s6___main(x_0); +x_1 = lean::uint32_to_nat(x_0); x_2 = _l_s3_nat_s4_repr(x_1); x_3 = lean::alloc_cnstr(2, 1, 0); lean::cnstr_set(x_3, 0, x_2); @@ -1681,7 +1677,7 @@ return x_2; obj* _l_s4_lean_s23_uint64__has__to__format(unsigned long long x_0) { { obj* x_1; obj* x_2; obj* x_3; -x_1 = _l_s6_uint64_s7_to__nat_s6___main(x_0); +x_1 = lean::uint64_to_nat(x_0); x_2 = _l_s3_nat_s4_repr(x_1); x_3 = lean::alloc_cnstr(2, 1, 0); lean::cnstr_set(x_3, 0, x_2); @@ -1699,7 +1695,7 @@ return x_2; obj* _l_s4_lean_s22_usize__has__to__format(size_t x_0) { { obj* x_1; obj* x_2; obj* x_3; -x_1 = _l_s5_usize_s7_to__nat_s6___main(x_0); +x_1 = lean::usize_to_nat(x_0); x_2 = _l_s3_nat_s4_repr(x_1); x_3 = lean::alloc_cnstr(2, 1, 0); lean::cnstr_set(x_3, 0, x_2); diff --git a/src/boot/init/lean/ir/elim_phi.cpp b/src/boot/init/lean/ir/elim_phi.cpp index 1af544197a..757adb66c1 100644 --- a/src/boot/init/lean/ir/elim_phi.cpp +++ b/src/boot/init/lean/ir/elim_phi.cpp @@ -11,8 +11,7 @@ typedef lean::object obj; #endif obj* _l_s4_lean_s2_ir_s9_elim__phi(obj*); obj* _l_s4_list_s4_mmap_s6___main_s4___at_s4_lean_s2_ir_s6_header_s13_replace__vars_s9___spec__1(obj*, obj*); -obj* _l_s4_lean_s4_name_s4_hash_s11___closed__1; -obj* _l_s5_usize_s4_modn_s6___main(size_t, obj*); +size_t _l_s4_lean_s4_name_s4_hash_s11___closed__1; obj* _l_s10_d__hashmap_s4_find_s4___at_s4_lean_s2_ir_s5_merge_s9___spec__4(obj*, obj*); obj* _l_s10_d__hashmap_s6_insert_s4___at_s4_lean_s2_ir_s5_merge_s9___spec__7(obj*, obj*, obj*); obj* _l_s4_lean_s2_ir_s5_instr_s13_replace__vars_s6___main(obj*, obj*); @@ -187,24 +186,22 @@ return x_23; } obj* _l_s12_hashmap__imp_s4_find_s4___at_s4_lean_s2_ir_s5_merge_s9___spec__5(obj* x_0, obj* x_1) { { -obj* x_2; obj* x_5; obj* x_7; size_t x_8; obj* x_10; size_t x_11; obj* x_13; size_t x_14; obj* x_16; obj* x_17; +obj* x_2; obj* x_5; size_t x_7; obj* x_9; size_t x_10; size_t x_12; obj* x_14; obj* x_15; x_2 = lean::cnstr_get(x_0, 1); lean::inc(x_2); lean::dec(x_0); x_5 = lean::cnstr_get(x_2, 0); lean::inc(x_5); x_7 = _l_s4_lean_s4_name_s4_hash_s11___closed__1; -x_8 = lean::unbox_size_t(x_7); lean::inc(x_1); -x_10 = _l_s9___private_1272448207__s9_hash__aux_s6___main(x_1, x_8); -x_11 = lean::unbox_size_t(x_10); -lean::dec(x_10); -x_13 = _l_s5_usize_s4_modn_s6___main(x_11, x_5); -x_14 = lean::unbox_size_t(x_13); -lean::dec(x_13); -x_16 = _l_s5_array_s5_uread_s6___rarg(x_2, x_14, lean::box(0)); -x_17 = _l_s12_hashmap__imp_s9_find__aux_s6___main_s4___at_s4_lean_s2_ir_s5_merge_s9___spec__6(x_1, x_16); -return x_17; +x_9 = _l_s9___private_1272448207__s9_hash__aux_s6___main(x_1, x_7); +x_10 = lean::unbox_size_t(x_9); +lean::dec(x_9); +x_12 = lean::usize_modn(x_10, x_5); +lean::dec(x_5); +x_14 = _l_s5_array_s5_uread_s6___rarg(x_2, x_12, lean::box(0)); +x_15 = _l_s12_hashmap__imp_s9_find__aux_s6___main_s4___at_s4_lean_s2_ir_s5_merge_s9___spec__6(x_1, x_14); +return x_15; } } obj* _l_s10_d__hashmap_s4_find_s4___at_s4_lean_s2_ir_s5_merge_s9___spec__4(obj* x_0, obj* x_1) { @@ -405,7 +402,7 @@ return x_20; } obj* _l_s12_hashmap__imp_s6_insert_s4___at_s4_lean_s2_ir_s5_merge_s9___spec__8(obj* x_0, obj* x_1, obj* x_2) { { -obj* x_3; obj* x_5; obj* x_7; obj* x_8; obj* x_10; size_t x_11; obj* x_13; size_t x_14; obj* x_17; size_t x_18; obj* x_21; unsigned char x_24; +obj* x_3; obj* x_5; obj* x_7; obj* x_8; size_t x_10; obj* x_12; size_t x_13; size_t x_15; obj* x_17; unsigned char x_20; x_3 = lean::cnstr_get(x_0, 0); lean::inc(x_3); x_5 = lean::cnstr_get(x_0, 1); @@ -421,89 +418,85 @@ if (lean::is_shared(x_0)) { x_8 = lean::cnstr_get(x_5, 0); lean::inc(x_8); x_10 = _l_s4_lean_s4_name_s4_hash_s11___closed__1; -x_11 = lean::unbox_size_t(x_10); lean::inc(x_1); -x_13 = _l_s9___private_1272448207__s9_hash__aux_s6___main(x_1, x_11); -x_14 = lean::unbox_size_t(x_13); -lean::dec(x_13); -lean::inc(x_8); -x_17 = _l_s5_usize_s4_modn_s6___main(x_14, x_8); -x_18 = lean::unbox_size_t(x_17); -lean::dec(x_17); +x_12 = _l_s9___private_1272448207__s9_hash__aux_s6___main(x_1, x_10); +x_13 = lean::unbox_size_t(x_12); +lean::dec(x_12); +x_15 = lean::usize_modn(x_13, x_8); lean::inc(x_5); -x_21 = _l_s5_array_s5_uread_s6___rarg(x_5, x_18, lean::box(0)); -lean::inc(x_21); +x_17 = _l_s5_array_s5_uread_s6___rarg(x_5, x_15, lean::box(0)); +lean::inc(x_17); lean::inc(x_1); -x_24 = _l_s12_hashmap__imp_s13_contains__aux_s4___at_s4_lean_s2_ir_s5_merge_s9___spec__9(x_1, x_21); -if (x_24 == 0) +x_20 = _l_s12_hashmap__imp_s13_contains__aux_s4___at_s4_lean_s2_ir_s5_merge_s9___spec__9(x_1, x_17); +if (x_20 == 0) { -obj* x_25; obj* x_26; obj* x_29; obj* x_30; obj* x_31; obj* x_32; -x_25 = lean::mk_nat_obj(1u); -x_26 = lean::nat_add(x_3, x_25); -lean::dec(x_25); +obj* x_21; obj* x_22; obj* x_25; obj* x_26; obj* x_27; obj* x_28; +x_21 = lean::mk_nat_obj(1u); +x_22 = lean::nat_add(x_3, x_21); +lean::dec(x_21); lean::dec(x_3); -x_29 = lean::alloc_cnstr(0, 2, 0); -lean::cnstr_set(x_29, 0, x_1); -lean::cnstr_set(x_29, 1, x_2); -x_30 = lean::alloc_cnstr(1, 2, 0); -lean::cnstr_set(x_30, 0, x_29); -lean::cnstr_set(x_30, 1, x_21); -x_31 = _l_s5_array_s6_uwrite_s6___rarg(x_5, x_18, x_30, lean::box(0)); -x_32 = lean::nat_dec_le(x_26, x_8); -if (lean::obj_tag(x_32) == 0) +x_25 = lean::alloc_cnstr(0, 2, 0); +lean::cnstr_set(x_25, 0, x_1); +lean::cnstr_set(x_25, 1, x_2); +x_26 = lean::alloc_cnstr(1, 2, 0); +lean::cnstr_set(x_26, 0, x_25); +lean::cnstr_set(x_26, 1, x_17); +x_27 = _l_s5_array_s6_uwrite_s6___rarg(x_5, x_15, x_26, lean::box(0)); +x_28 = lean::nat_dec_le(x_22, x_8); +if (lean::obj_tag(x_28) == 0) { -obj* x_34; obj* x_35; obj* x_38; obj* x_39; obj* x_40; obj* x_42; obj* x_43; -lean::dec(x_32); -x_34 = lean::mk_nat_obj(2u); -x_35 = lean::nat_mul(x_8, x_34); -lean::dec(x_34); +obj* x_30; obj* x_31; obj* x_34; obj* x_35; obj* x_36; obj* x_38; obj* x_39; +lean::dec(x_28); +x_30 = lean::mk_nat_obj(2u); +x_31 = lean::nat_mul(x_8, x_30); +lean::dec(x_30); lean::dec(x_8); -x_38 = lean::alloc_cnstr(0, 0, 0); +x_34 = lean::alloc_cnstr(0, 0, 0); ; -x_39 = _l_s9_mk__array_s6___rarg(x_35, x_38); -x_40 = _l_s12_hashmap__imp_s6_insert_s4___at_s4_lean_s2_ir_s5_merge_s9___spec__8_s11___closed__1; -lean::inc(x_40); -x_42 = _l_s12_hashmap__imp_s13_fold__buckets_s6___rarg(x_31, x_39, x_40); +x_35 = _l_s9_mk__array_s6___rarg(x_31, x_34); +x_36 = _l_s12_hashmap__imp_s6_insert_s4___at_s4_lean_s2_ir_s5_merge_s9___spec__8_s11___closed__1; +lean::inc(x_36); +x_38 = _l_s12_hashmap__imp_s13_fold__buckets_s6___rarg(x_27, x_35, x_36); if (lean::is_scalar(x_7)) { - x_43 = lean::alloc_cnstr(0, 2, 0); + x_39 = lean::alloc_cnstr(0, 2, 0); } else { - x_43 = x_7; + x_39 = x_7; } -lean::cnstr_set(x_43, 0, x_26); -lean::cnstr_set(x_43, 1, x_42); -return x_43; +lean::cnstr_set(x_39, 0, x_22); +lean::cnstr_set(x_39, 1, x_38); +return x_39; } else { -obj* x_46; +obj* x_42; lean::dec(x_8); -lean::dec(x_32); +lean::dec(x_28); +if (lean::is_scalar(x_7)) { + x_42 = lean::alloc_cnstr(0, 2, 0); +} else { + x_42 = x_7; +} +lean::cnstr_set(x_42, 0, x_22); +lean::cnstr_set(x_42, 1, x_27); +return x_42; +} +} +else +{ +obj* x_44; obj* x_45; obj* x_46; +lean::dec(x_8); +x_44 = _l_s12_hashmap__imp_s12_replace__aux_s6___main_s4___at_s4_lean_s2_ir_s5_merge_s10___spec__11(x_1, x_2, x_17); +x_45 = _l_s5_array_s6_uwrite_s6___rarg(x_5, x_15, x_44, lean::box(0)); if (lean::is_scalar(x_7)) { x_46 = lean::alloc_cnstr(0, 2, 0); } else { x_46 = x_7; } -lean::cnstr_set(x_46, 0, x_26); -lean::cnstr_set(x_46, 1, x_31); +lean::cnstr_set(x_46, 0, x_3); +lean::cnstr_set(x_46, 1, x_45); return x_46; } } -else -{ -obj* x_48; obj* x_49; obj* x_50; -lean::dec(x_8); -x_48 = _l_s12_hashmap__imp_s12_replace__aux_s6___main_s4___at_s4_lean_s2_ir_s5_merge_s10___spec__11(x_1, x_2, x_21); -x_49 = _l_s5_array_s6_uwrite_s6___rarg(x_5, x_18, x_48, lean::box(0)); -if (lean::is_scalar(x_7)) { - x_50 = lean::alloc_cnstr(0, 2, 0); -} else { - x_50 = x_7; -} -lean::cnstr_set(x_50, 0, x_3); -lean::cnstr_set(x_50, 1, x_49); -return x_50; -} -} } obj* _init__l_s12_hashmap__imp_s6_insert_s4___at_s4_lean_s2_ir_s5_merge_s9___spec__8_s11___closed__1() { { diff --git a/src/boot/init/lean/ir/extract_cpp.cpp b/src/boot/init/lean/ir/extract_cpp.cpp index fadb7bff1f..278d5977bb 100644 --- a/src/boot/init/lean/ir/extract_cpp.cpp +++ b/src/boot/init/lean/ir/extract_cpp.cpp @@ -171,7 +171,6 @@ obj* _l_s4_lean_s2_ir_s3_cpp_s16_assign__unop2cpp_s6___main_s11___closed__8; obj* _l_s4_lean_s2_ir_s3_cpp_s14_emit__sep__aux_s6___main(obj*); obj* _l_s9_reader__t_s4_lift(obj*, obj*, obj*, obj*); obj* _l_s4_lean_s2_ir_s3_cpp_s19_emit__assign__binop_s12___closed__11; -obj* _l_s6_uint16_s7_to__nat_s6___main(unsigned short); obj* _l_s4_lean_s2_ir_s3_cpp_s19_emit__assign__binop_s12___closed__37; obj* _l_s4_lean_s2_ir_s3_cpp_s8_type2cpp_s6___main_s11___closed__7; obj* _l_s4_list_s9_repr__aux_s6___main_s6___rarg_s11___closed__1; @@ -341,7 +340,6 @@ obj* _l_s4_lean_s2_ir_s3_cpp_s4_emit_s4___at_s4_lean_s2_ir_s3_cpp_s11_emit__inst obj* _l_s4_lean_s2_ir_s3_cpp_s8_type2cpp_s6___main_s11___closed__4; obj* _l_s3_nat_s6_repeat_s6___main_s4___at_s4_lean_s2_ir_s3_cpp_s13_emit__uncurry_s9___spec__3(obj*, obj*, obj*); obj* _l_s4_lean_s2_ir_s3_cpp_s16_assign__unop2cpp_s6___main_s12___closed__11; -obj* _l_s5_usize_s7_to__nat_s6___main(size_t); obj* _l_s4_lean_s2_ir_s3_cpp_s8_unop2cpp_s6___main_s11___closed__6; obj* _l_s4_lean_s2_ir_s3_cpp_s11_emit__block_s11___closed__1; obj* _l_s9_except__t_s4_lift_s6___rarg(obj*, obj*, obj*); @@ -14504,7 +14502,7 @@ obj* _l_s4_lean_s2_ir_s3_cpp_s4_emit_s4___at_s4_lean_s2_ir_s3_cpp_s11_emit__inst { obj* x_4; obj* x_5; obj* x_6; obj* x_8; obj* x_10; lean::dec(x_1); -x_4 = _l_s5_usize_s7_to__nat_s6___main(x_0); +x_4 = lean::usize_to_nat(x_0); x_5 = _l_s3_nat_s4_repr(x_4); x_6 = lean::string_append(x_2, x_5); lean::dec(x_5); @@ -14520,7 +14518,7 @@ obj* _l_s4_lean_s2_ir_s3_cpp_s4_emit_s4___at_s4_lean_s2_ir_s3_cpp_s11_emit__inst { obj* x_4; obj* x_5; obj* x_6; obj* x_8; obj* x_10; lean::dec(x_1); -x_4 = _l_s6_uint16_s7_to__nat_s6___main(x_0); +x_4 = lean::uint16_to_nat(x_0); x_5 = _l_s3_nat_s4_repr(x_4); x_6 = lean::string_append(x_2, x_5); lean::dec(x_5); @@ -14536,7 +14534,7 @@ obj* _l_s4_lean_s2_ir_s3_cpp_s4_emit_s4___at_s4_lean_s2_ir_s3_cpp_s11_emit__inst { obj* x_4; obj* x_5; obj* x_6; obj* x_8; obj* x_10; lean::dec(x_1); -x_4 = _l_s6_uint16_s7_to__nat_s6___main(x_0); +x_4 = lean::uint16_to_nat(x_0); x_5 = _l_s3_nat_s4_repr(x_4); x_6 = lean::string_append(x_2, x_5); lean::dec(x_5); diff --git a/src/boot/init/lean/ir/format.cpp b/src/boot/init/lean/ir/format.cpp index 73b3a39410..db91a27217 100644 --- a/src/boot/init/lean/ir/format.cpp +++ b/src/boot/init/lean/ir/format.cpp @@ -120,7 +120,6 @@ obj* _l_s4_lean_s2_ir_s13_assign__binop_s15_has__to__format; obj* _l_s4_lean_s2_ir_s5_instr_s15_has__to__format; obj* _l_s4_lean_s7_to__fmt_s4___at_s4_lean_s2_ir_s7_literal_s10_to__format_s6___main_s9___spec__1_s11___closed__2; obj* _l_s4_lean_s7_to__fmt_s4___at_s4_lean_s2_ir_s13_assign__binop_s15_has__to__string_s9___spec__1_s7___boxed(obj*); -obj* _l_s6_uint16_s7_to__nat_s6___main(unsigned short); obj* _l_s4_lean_s2_ir_s4_type_s10_to__format_s6___main_s11___closed__8; obj* _l_s4_lean_s7_to__fmt_s4___at_s4_lean_s2_ir_s5_instr_s10_to__format_s6___main_s9___spec__4(unsigned short); obj* _l_s4_lean_s6_format_s12_join__suffix_s6___main_s4___at_s4_lean_s2_ir_s5_block_s10_to__format_s6___main_s9___spec__1(obj*, obj*); @@ -245,7 +244,6 @@ obj* _l_s4_lean_s6_format_s9_join__sep_s6___main_s4___at_s4_lean_s2_ir_s6_header obj* _l_s4_lean_s6_format_s5_group_s6___main(obj*); obj* _l_s4_lean_s2_ir_s4_type_s10_to__format_s6___main_s12___closed__10; obj* _l_s4_lean_s7_to__fmt_s4___at_s4_lean_s2_ir_s3_phi_s15_has__to__string_s9___spec__1(obj*); -obj* _l_s5_usize_s7_to__nat_s6___main(size_t); obj* _l_s4_lean_s2_ir_s3_phi_s10_to__format_s6___main(obj*); obj* _l_s4_lean_s2_ir_s4_type_s10_to__format_s6___main_s11___closed__4; obj* _l_s4_lean_s7_to__fmt_s4___at_s4_lean_s2_ir_s5_instr_s10_to__format_s6___main_s9___spec__6_s7___boxed(obj*); @@ -2996,7 +2994,7 @@ return x_17; obj* _l_s4_lean_s7_to__fmt_s4___at_s4_lean_s2_ir_s5_instr_s10_to__format_s6___main_s9___spec__4(unsigned short x_0) { { obj* x_1; obj* x_2; obj* x_3; -x_1 = _l_s6_uint16_s7_to__nat_s6___main(x_0); +x_1 = lean::uint16_to_nat(x_0); x_2 = _l_s3_nat_s4_repr(x_1); x_3 = lean::alloc_cnstr(2, 1, 0); lean::cnstr_set(x_3, 0, x_2); @@ -3006,7 +3004,7 @@ return x_3; obj* _l_s4_lean_s7_to__fmt_s4___at_s4_lean_s2_ir_s5_instr_s10_to__format_s6___main_s9___spec__5(unsigned short x_0) { { obj* x_1; obj* x_2; obj* x_3; -x_1 = _l_s6_uint16_s7_to__nat_s6___main(x_0); +x_1 = lean::uint16_to_nat(x_0); x_2 = _l_s3_nat_s4_repr(x_1); x_3 = lean::alloc_cnstr(2, 1, 0); lean::cnstr_set(x_3, 0, x_2); @@ -3016,7 +3014,7 @@ return x_3; obj* _l_s4_lean_s7_to__fmt_s4___at_s4_lean_s2_ir_s5_instr_s10_to__format_s6___main_s9___spec__6(size_t x_0) { { obj* x_1; obj* x_2; obj* x_3; -x_1 = _l_s5_usize_s7_to__nat_s6___main(x_0); +x_1 = lean::usize_to_nat(x_0); x_2 = _l_s3_nat_s4_repr(x_1); x_3 = lean::alloc_cnstr(2, 1, 0); lean::cnstr_set(x_3, 0, x_2); diff --git a/src/boot/init/lean/ir/parser.cpp b/src/boot/init/lean/ir/parser.cpp index 6b5eafa60b..5143ddaa9f 100644 --- a/src/boot/init/lean/ir/parser.cpp +++ b/src/boot/init/lean/ir/parser.cpp @@ -232,7 +232,6 @@ obj* _l_s4_lean_s2_ir_s13_parse__uint16_s11___closed__2; obj* _l_s4_lean_s6_parser_s13_monad__parsec_s10_eoi__error_s6___rarg_s11___closed__1; obj* _l_s4_lean_s6_parser_s13_monad__parsec_s17_take__while__cont_s4___at_s4_lean_s2_ir_s10_identifier_s9___spec__7(unsigned, obj*); obj* _l_s4_lean_s2_ir_s14_parse__key2val(obj*); -obj* _l_s6_uint16_s7_of__nat(obj*); obj* _l_s4_lean_s2_ir_s10_parse__def(obj*); obj* _l_s4_lean_s6_parser_s13_monad__parsec_s10_many1__aux_s6___main_s4___at_s4_lean_s2_ir_s10_parse__def_s9___spec__3(obj*, obj*); obj* _l_s4_lean_s6_parser_s13_monad__parsec_s5_digit_s4___at_s4_lean_s2_ir_s14_parse__literal_s9___spec__7(obj*); @@ -240,7 +239,6 @@ obj* _l_s4_lean_s6_parser_s13_monad__parsec_s17_take__while__cont_s4___at_s4_lea obj* _l_s4_lean_s2_ir_s12_parse__instr_s11___closed__1; obj* _l_s4_lean_s6_parser_s13_monad__parsec_s10_whitespace_s4___at_s4_lean_s2_ir_s6_symbol_s9___spec__2(obj*); obj* _l_s4_lean_s6_parser_s13_monad__parsec_s5_many1_s4___at_s4_lean_s2_ir_s10_parse__phi_s9___spec__1(obj*); -obj* _l_s5_usize_s7_of__nat(obj*); obj* _l_s4_lean_s2_ir_s11_parse__decl(obj*); obj* _l_s9___private_31565857__s16_take__while__aux_s6___main_s4___at_s4_lean_s2_ir_s14_parse__literal_s10___spec__22(obj*, obj*, obj*); obj* _l_s4_lean_s2_ir_s12_parse__usize_s11___closed__2; @@ -8418,101 +8416,105 @@ x_90 = _l_s10_uint16__sz; x_91 = lean::nat_dec_le(x_90, x_1); if (lean::obj_tag(x_91) == 0) { -obj* x_94; obj* x_95; obj* x_97; obj* x_98; obj* x_99; obj* x_101; obj* x_102; obj* x_103; obj* x_105; +unsigned short x_94; obj* x_96; obj* x_97; obj* x_99; obj* x_100; obj* x_101; obj* x_103; obj* x_104; obj* x_105; obj* x_107; lean::dec(x_91); lean::dec(x_0); -x_94 = _l_s6_uint16_s7_of__nat(x_1); -x_95 = _l_s4_lean_s2_ir_s7_keyword_s11___closed__1; -lean::inc(x_95); -x_97 = lean::alloc_cnstr(0, 3, 0); -lean::cnstr_set(x_97, 0, x_94); -lean::cnstr_set(x_97, 1, x_2); -lean::cnstr_set(x_97, 2, x_95); -x_98 = _l_s4_lean_s6_parser_s9_parsec__t_s13_bind__mk__res_s6___rarg(x_3, x_97); -x_99 = _l_s4_lean_s6_parser_s6_parsec_s6_result_s7_mk__eps_s6___rarg_s11___closed__1; -lean::inc(x_99); -x_101 = _l_s4_lean_s6_parser_s9_parsec__t_s13_bind__mk__res_s6___rarg(x_99, x_98); -x_102 = _l_s4_lean_s6_parser_s9_parsec__t_s12_try__mk__res_s6___rarg(x_101); -x_103 = _l_s4_lean_s2_ir_s13_parse__uint16_s11___closed__1; -lean::inc(x_103); -x_105 = _l_s4_lean_s6_parser_s9_parsec__t_s15_labels__mk__res_s6___rarg(x_102, x_103); -return x_105; -} -else -{ -obj* x_107; obj* x_109; -lean::dec(x_91); -x_107 = _l_s4_lean_s2_ir_s13_parse__uint16_s11___closed__2; -lean::inc(x_107); -x_109 = _l_s4_lean_s6_parser_s13_monad__parsec_s14_unexpected__at_s4___at_s4_lean_s2_ir_s14_parse__literal_s9___spec__8_s6___rarg(x_107, x_0, x_2); -if (lean::obj_tag(x_109) == 0) -{ -obj* x_110; obj* x_112; obj* x_114; obj* x_115; obj* x_116; obj* x_118; obj* x_119; obj* x_120; obj* x_122; obj* x_123; obj* x_124; obj* x_126; -x_110 = lean::cnstr_get(x_109, 1); -lean::inc(x_110); -x_112 = lean::cnstr_get(x_109, 2); -lean::inc(x_112); -if (lean::is_shared(x_109)) { - lean::dec(x_109); - x_114 = lean::box(0); -} else { - lean::cnstr_release(x_109, 0); - lean::cnstr_release(x_109, 1); - lean::cnstr_release(x_109, 2); - x_114 = x_109; -} -x_115 = _l_s6_uint16_s7_of__nat(x_1); -x_116 = _l_s4_lean_s6_parser_s6_parsec_s6_result_s7_mk__eps_s6___rarg_s11___closed__1; -lean::inc(x_116); -if (lean::is_scalar(x_114)) { - x_118 = lean::alloc_cnstr(0, 3, 0); -} else { - x_118 = x_114; -} -lean::cnstr_set(x_118, 0, x_115); -lean::cnstr_set(x_118, 1, x_110); -lean::cnstr_set(x_118, 2, x_116); -x_119 = _l_s4_lean_s6_parser_s9_parsec__t_s13_bind__mk__res_s6___rarg(x_112, x_118); -x_120 = _l_s4_lean_s6_parser_s9_parsec__t_s13_bind__mk__res_s6___rarg(x_3, x_119); -lean::inc(x_116); -x_122 = _l_s4_lean_s6_parser_s9_parsec__t_s13_bind__mk__res_s6___rarg(x_116, x_120); -x_123 = _l_s4_lean_s6_parser_s9_parsec__t_s12_try__mk__res_s6___rarg(x_122); -x_124 = _l_s4_lean_s2_ir_s13_parse__uint16_s11___closed__1; -lean::inc(x_124); -x_126 = _l_s4_lean_s6_parser_s9_parsec__t_s15_labels__mk__res_s6___rarg(x_123, x_124); -return x_126; -} -else -{ -obj* x_128; unsigned char x_130; obj* x_131; obj* x_132; obj* x_133; obj* x_134; obj* x_135; obj* x_137; obj* x_138; obj* x_139; obj* x_141; +x_94 = lean::uint16_of_nat(x_1); lean::dec(x_1); -x_128 = lean::cnstr_get(x_109, 0); +x_96 = _l_s4_lean_s2_ir_s7_keyword_s11___closed__1; +x_97 = lean::box(x_94); +lean::inc(x_96); +x_99 = lean::alloc_cnstr(0, 3, 0); +lean::cnstr_set(x_99, 0, x_97); +lean::cnstr_set(x_99, 1, x_2); +lean::cnstr_set(x_99, 2, x_96); +x_100 = _l_s4_lean_s6_parser_s9_parsec__t_s13_bind__mk__res_s6___rarg(x_3, x_99); +x_101 = _l_s4_lean_s6_parser_s6_parsec_s6_result_s7_mk__eps_s6___rarg_s11___closed__1; +lean::inc(x_101); +x_103 = _l_s4_lean_s6_parser_s9_parsec__t_s13_bind__mk__res_s6___rarg(x_101, x_100); +x_104 = _l_s4_lean_s6_parser_s9_parsec__t_s12_try__mk__res_s6___rarg(x_103); +x_105 = _l_s4_lean_s2_ir_s13_parse__uint16_s11___closed__1; +lean::inc(x_105); +x_107 = _l_s4_lean_s6_parser_s9_parsec__t_s15_labels__mk__res_s6___rarg(x_104, x_105); +return x_107; +} +else +{ +obj* x_109; obj* x_111; +lean::dec(x_91); +x_109 = _l_s4_lean_s2_ir_s13_parse__uint16_s11___closed__2; +lean::inc(x_109); +x_111 = _l_s4_lean_s6_parser_s13_monad__parsec_s14_unexpected__at_s4___at_s4_lean_s2_ir_s14_parse__literal_s9___spec__8_s6___rarg(x_109, x_0, x_2); +if (lean::obj_tag(x_111) == 0) +{ +obj* x_112; obj* x_114; obj* x_116; unsigned short x_117; obj* x_119; obj* x_120; obj* x_122; obj* x_123; obj* x_124; obj* x_126; obj* x_127; obj* x_128; obj* x_130; +x_112 = lean::cnstr_get(x_111, 1); +lean::inc(x_112); +x_114 = lean::cnstr_get(x_111, 2); +lean::inc(x_114); +if (lean::is_shared(x_111)) { + lean::dec(x_111); + x_116 = lean::box(0); +} else { + lean::cnstr_release(x_111, 0); + lean::cnstr_release(x_111, 1); + lean::cnstr_release(x_111, 2); + x_116 = x_111; +} +x_117 = lean::uint16_of_nat(x_1); +lean::dec(x_1); +x_119 = _l_s4_lean_s6_parser_s6_parsec_s6_result_s7_mk__eps_s6___rarg_s11___closed__1; +x_120 = lean::box(x_117); +lean::inc(x_119); +if (lean::is_scalar(x_116)) { + x_122 = lean::alloc_cnstr(0, 3, 0); +} else { + x_122 = x_116; +} +lean::cnstr_set(x_122, 0, x_120); +lean::cnstr_set(x_122, 1, x_112); +lean::cnstr_set(x_122, 2, x_119); +x_123 = _l_s4_lean_s6_parser_s9_parsec__t_s13_bind__mk__res_s6___rarg(x_114, x_122); +x_124 = _l_s4_lean_s6_parser_s9_parsec__t_s13_bind__mk__res_s6___rarg(x_3, x_123); +lean::inc(x_119); +x_126 = _l_s4_lean_s6_parser_s9_parsec__t_s13_bind__mk__res_s6___rarg(x_119, x_124); +x_127 = _l_s4_lean_s6_parser_s9_parsec__t_s12_try__mk__res_s6___rarg(x_126); +x_128 = _l_s4_lean_s2_ir_s13_parse__uint16_s11___closed__1; lean::inc(x_128); -x_130 = lean::cnstr_get_scalar(x_109, sizeof(void*)*1); -if (lean::is_shared(x_109)) { - lean::dec(x_109); - x_131 = lean::box(0); -} else { - lean::cnstr_release(x_109, 0); - x_131 = x_109; +x_130 = _l_s4_lean_s6_parser_s9_parsec__t_s15_labels__mk__res_s6___rarg(x_127, x_128); +return x_130; } -if (lean::is_scalar(x_131)) { - x_132 = lean::alloc_cnstr(1, 1, 1); +else +{ +obj* x_132; unsigned char x_134; obj* x_135; obj* x_136; obj* x_137; obj* x_138; obj* x_139; obj* x_141; obj* x_142; obj* x_143; obj* x_145; +lean::dec(x_1); +x_132 = lean::cnstr_get(x_111, 0); +lean::inc(x_132); +x_134 = lean::cnstr_get_scalar(x_111, sizeof(void*)*1); +if (lean::is_shared(x_111)) { + lean::dec(x_111); + x_135 = lean::box(0); } else { - x_132 = x_131; + lean::cnstr_release(x_111, 0); + x_135 = x_111; } -lean::cnstr_set(x_132, 0, x_128); -lean::cnstr_set_scalar(x_132, sizeof(void*)*1, x_130); -x_133 = x_132; -x_134 = _l_s4_lean_s6_parser_s9_parsec__t_s13_bind__mk__res_s6___rarg(x_3, x_133); -x_135 = _l_s4_lean_s6_parser_s6_parsec_s6_result_s7_mk__eps_s6___rarg_s11___closed__1; -lean::inc(x_135); -x_137 = _l_s4_lean_s6_parser_s9_parsec__t_s13_bind__mk__res_s6___rarg(x_135, x_134); -x_138 = _l_s4_lean_s6_parser_s9_parsec__t_s12_try__mk__res_s6___rarg(x_137); -x_139 = _l_s4_lean_s2_ir_s13_parse__uint16_s11___closed__1; +if (lean::is_scalar(x_135)) { + x_136 = lean::alloc_cnstr(1, 1, 1); +} else { + x_136 = x_135; +} +lean::cnstr_set(x_136, 0, x_132); +lean::cnstr_set_scalar(x_136, sizeof(void*)*1, x_134); +x_137 = x_136; +x_138 = _l_s4_lean_s6_parser_s9_parsec__t_s13_bind__mk__res_s6___rarg(x_3, x_137); +x_139 = _l_s4_lean_s6_parser_s6_parsec_s6_result_s7_mk__eps_s6___rarg_s11___closed__1; lean::inc(x_139); -x_141 = _l_s4_lean_s6_parser_s9_parsec__t_s15_labels__mk__res_s6___rarg(x_138, x_139); -return x_141; +x_141 = _l_s4_lean_s6_parser_s9_parsec__t_s13_bind__mk__res_s6___rarg(x_139, x_138); +x_142 = _l_s4_lean_s6_parser_s9_parsec__t_s12_try__mk__res_s6___rarg(x_141); +x_143 = _l_s4_lean_s2_ir_s13_parse__uint16_s11___closed__1; +lean::inc(x_143); +x_145 = _l_s4_lean_s6_parser_s9_parsec__t_s15_labels__mk__res_s6___rarg(x_142, x_143); +return x_145; } } } @@ -8735,101 +8737,105 @@ x_90 = _l_s9_usize__sz; x_91 = lean::nat_dec_le(x_90, x_1); if (lean::obj_tag(x_91) == 0) { -obj* x_94; obj* x_95; obj* x_97; obj* x_98; obj* x_99; obj* x_101; obj* x_102; obj* x_103; obj* x_105; +size_t x_94; obj* x_96; obj* x_97; obj* x_99; obj* x_100; obj* x_101; obj* x_103; obj* x_104; obj* x_105; obj* x_107; lean::dec(x_91); lean::dec(x_0); -x_94 = _l_s5_usize_s7_of__nat(x_1); -x_95 = _l_s4_lean_s2_ir_s7_keyword_s11___closed__1; -lean::inc(x_95); -x_97 = lean::alloc_cnstr(0, 3, 0); -lean::cnstr_set(x_97, 0, x_94); -lean::cnstr_set(x_97, 1, x_2); -lean::cnstr_set(x_97, 2, x_95); -x_98 = _l_s4_lean_s6_parser_s9_parsec__t_s13_bind__mk__res_s6___rarg(x_3, x_97); -x_99 = _l_s4_lean_s6_parser_s6_parsec_s6_result_s7_mk__eps_s6___rarg_s11___closed__1; -lean::inc(x_99); -x_101 = _l_s4_lean_s6_parser_s9_parsec__t_s13_bind__mk__res_s6___rarg(x_99, x_98); -x_102 = _l_s4_lean_s6_parser_s9_parsec__t_s12_try__mk__res_s6___rarg(x_101); -x_103 = _l_s4_lean_s2_ir_s12_parse__usize_s11___closed__1; -lean::inc(x_103); -x_105 = _l_s4_lean_s6_parser_s9_parsec__t_s15_labels__mk__res_s6___rarg(x_102, x_103); -return x_105; -} -else -{ -obj* x_107; obj* x_109; -lean::dec(x_91); -x_107 = _l_s4_lean_s2_ir_s12_parse__usize_s11___closed__2; -lean::inc(x_107); -x_109 = _l_s4_lean_s6_parser_s13_monad__parsec_s14_unexpected__at_s4___at_s4_lean_s2_ir_s14_parse__literal_s9___spec__8_s6___rarg(x_107, x_0, x_2); -if (lean::obj_tag(x_109) == 0) -{ -obj* x_110; obj* x_112; obj* x_114; obj* x_115; obj* x_116; obj* x_118; obj* x_119; obj* x_120; obj* x_122; obj* x_123; obj* x_124; obj* x_126; -x_110 = lean::cnstr_get(x_109, 1); -lean::inc(x_110); -x_112 = lean::cnstr_get(x_109, 2); -lean::inc(x_112); -if (lean::is_shared(x_109)) { - lean::dec(x_109); - x_114 = lean::box(0); -} else { - lean::cnstr_release(x_109, 0); - lean::cnstr_release(x_109, 1); - lean::cnstr_release(x_109, 2); - x_114 = x_109; -} -x_115 = _l_s5_usize_s7_of__nat(x_1); -x_116 = _l_s4_lean_s6_parser_s6_parsec_s6_result_s7_mk__eps_s6___rarg_s11___closed__1; -lean::inc(x_116); -if (lean::is_scalar(x_114)) { - x_118 = lean::alloc_cnstr(0, 3, 0); -} else { - x_118 = x_114; -} -lean::cnstr_set(x_118, 0, x_115); -lean::cnstr_set(x_118, 1, x_110); -lean::cnstr_set(x_118, 2, x_116); -x_119 = _l_s4_lean_s6_parser_s9_parsec__t_s13_bind__mk__res_s6___rarg(x_112, x_118); -x_120 = _l_s4_lean_s6_parser_s9_parsec__t_s13_bind__mk__res_s6___rarg(x_3, x_119); -lean::inc(x_116); -x_122 = _l_s4_lean_s6_parser_s9_parsec__t_s13_bind__mk__res_s6___rarg(x_116, x_120); -x_123 = _l_s4_lean_s6_parser_s9_parsec__t_s12_try__mk__res_s6___rarg(x_122); -x_124 = _l_s4_lean_s2_ir_s12_parse__usize_s11___closed__1; -lean::inc(x_124); -x_126 = _l_s4_lean_s6_parser_s9_parsec__t_s15_labels__mk__res_s6___rarg(x_123, x_124); -return x_126; -} -else -{ -obj* x_128; unsigned char x_130; obj* x_131; obj* x_132; obj* x_133; obj* x_134; obj* x_135; obj* x_137; obj* x_138; obj* x_139; obj* x_141; +x_94 = lean::usize_of_nat(x_1); lean::dec(x_1); -x_128 = lean::cnstr_get(x_109, 0); +x_96 = _l_s4_lean_s2_ir_s7_keyword_s11___closed__1; +x_97 = lean::box_size_t(x_94); +lean::inc(x_96); +x_99 = lean::alloc_cnstr(0, 3, 0); +lean::cnstr_set(x_99, 0, x_97); +lean::cnstr_set(x_99, 1, x_2); +lean::cnstr_set(x_99, 2, x_96); +x_100 = _l_s4_lean_s6_parser_s9_parsec__t_s13_bind__mk__res_s6___rarg(x_3, x_99); +x_101 = _l_s4_lean_s6_parser_s6_parsec_s6_result_s7_mk__eps_s6___rarg_s11___closed__1; +lean::inc(x_101); +x_103 = _l_s4_lean_s6_parser_s9_parsec__t_s13_bind__mk__res_s6___rarg(x_101, x_100); +x_104 = _l_s4_lean_s6_parser_s9_parsec__t_s12_try__mk__res_s6___rarg(x_103); +x_105 = _l_s4_lean_s2_ir_s12_parse__usize_s11___closed__1; +lean::inc(x_105); +x_107 = _l_s4_lean_s6_parser_s9_parsec__t_s15_labels__mk__res_s6___rarg(x_104, x_105); +return x_107; +} +else +{ +obj* x_109; obj* x_111; +lean::dec(x_91); +x_109 = _l_s4_lean_s2_ir_s12_parse__usize_s11___closed__2; +lean::inc(x_109); +x_111 = _l_s4_lean_s6_parser_s13_monad__parsec_s14_unexpected__at_s4___at_s4_lean_s2_ir_s14_parse__literal_s9___spec__8_s6___rarg(x_109, x_0, x_2); +if (lean::obj_tag(x_111) == 0) +{ +obj* x_112; obj* x_114; obj* x_116; size_t x_117; obj* x_119; obj* x_120; obj* x_122; obj* x_123; obj* x_124; obj* x_126; obj* x_127; obj* x_128; obj* x_130; +x_112 = lean::cnstr_get(x_111, 1); +lean::inc(x_112); +x_114 = lean::cnstr_get(x_111, 2); +lean::inc(x_114); +if (lean::is_shared(x_111)) { + lean::dec(x_111); + x_116 = lean::box(0); +} else { + lean::cnstr_release(x_111, 0); + lean::cnstr_release(x_111, 1); + lean::cnstr_release(x_111, 2); + x_116 = x_111; +} +x_117 = lean::usize_of_nat(x_1); +lean::dec(x_1); +x_119 = _l_s4_lean_s6_parser_s6_parsec_s6_result_s7_mk__eps_s6___rarg_s11___closed__1; +x_120 = lean::box_size_t(x_117); +lean::inc(x_119); +if (lean::is_scalar(x_116)) { + x_122 = lean::alloc_cnstr(0, 3, 0); +} else { + x_122 = x_116; +} +lean::cnstr_set(x_122, 0, x_120); +lean::cnstr_set(x_122, 1, x_112); +lean::cnstr_set(x_122, 2, x_119); +x_123 = _l_s4_lean_s6_parser_s9_parsec__t_s13_bind__mk__res_s6___rarg(x_114, x_122); +x_124 = _l_s4_lean_s6_parser_s9_parsec__t_s13_bind__mk__res_s6___rarg(x_3, x_123); +lean::inc(x_119); +x_126 = _l_s4_lean_s6_parser_s9_parsec__t_s13_bind__mk__res_s6___rarg(x_119, x_124); +x_127 = _l_s4_lean_s6_parser_s9_parsec__t_s12_try__mk__res_s6___rarg(x_126); +x_128 = _l_s4_lean_s2_ir_s12_parse__usize_s11___closed__1; lean::inc(x_128); -x_130 = lean::cnstr_get_scalar(x_109, sizeof(void*)*1); -if (lean::is_shared(x_109)) { - lean::dec(x_109); - x_131 = lean::box(0); -} else { - lean::cnstr_release(x_109, 0); - x_131 = x_109; +x_130 = _l_s4_lean_s6_parser_s9_parsec__t_s15_labels__mk__res_s6___rarg(x_127, x_128); +return x_130; } -if (lean::is_scalar(x_131)) { - x_132 = lean::alloc_cnstr(1, 1, 1); +else +{ +obj* x_132; unsigned char x_134; obj* x_135; obj* x_136; obj* x_137; obj* x_138; obj* x_139; obj* x_141; obj* x_142; obj* x_143; obj* x_145; +lean::dec(x_1); +x_132 = lean::cnstr_get(x_111, 0); +lean::inc(x_132); +x_134 = lean::cnstr_get_scalar(x_111, sizeof(void*)*1); +if (lean::is_shared(x_111)) { + lean::dec(x_111); + x_135 = lean::box(0); } else { - x_132 = x_131; + lean::cnstr_release(x_111, 0); + x_135 = x_111; } -lean::cnstr_set(x_132, 0, x_128); -lean::cnstr_set_scalar(x_132, sizeof(void*)*1, x_130); -x_133 = x_132; -x_134 = _l_s4_lean_s6_parser_s9_parsec__t_s13_bind__mk__res_s6___rarg(x_3, x_133); -x_135 = _l_s4_lean_s6_parser_s6_parsec_s6_result_s7_mk__eps_s6___rarg_s11___closed__1; -lean::inc(x_135); -x_137 = _l_s4_lean_s6_parser_s9_parsec__t_s13_bind__mk__res_s6___rarg(x_135, x_134); -x_138 = _l_s4_lean_s6_parser_s9_parsec__t_s12_try__mk__res_s6___rarg(x_137); -x_139 = _l_s4_lean_s2_ir_s12_parse__usize_s11___closed__1; +if (lean::is_scalar(x_135)) { + x_136 = lean::alloc_cnstr(1, 1, 1); +} else { + x_136 = x_135; +} +lean::cnstr_set(x_136, 0, x_132); +lean::cnstr_set_scalar(x_136, sizeof(void*)*1, x_134); +x_137 = x_136; +x_138 = _l_s4_lean_s6_parser_s9_parsec__t_s13_bind__mk__res_s6___rarg(x_3, x_137); +x_139 = _l_s4_lean_s6_parser_s6_parsec_s6_result_s7_mk__eps_s6___rarg_s11___closed__1; lean::inc(x_139); -x_141 = _l_s4_lean_s6_parser_s9_parsec__t_s15_labels__mk__res_s6___rarg(x_138, x_139); -return x_141; +x_141 = _l_s4_lean_s6_parser_s9_parsec__t_s13_bind__mk__res_s6___rarg(x_139, x_138); +x_142 = _l_s4_lean_s6_parser_s9_parsec__t_s12_try__mk__res_s6___rarg(x_141); +x_143 = _l_s4_lean_s2_ir_s12_parse__usize_s11___closed__1; +lean::inc(x_143); +x_145 = _l_s4_lean_s6_parser_s9_parsec__t_s15_labels__mk__res_s6___rarg(x_142, x_143); +return x_145; } } } diff --git a/src/boot/init/lean/name.cpp b/src/boot/init/lean/name.cpp index 63729e360d..1225b58555 100644 --- a/src/boot/init/lean/name.cpp +++ b/src/boot/init/lean/name.cpp @@ -9,9 +9,8 @@ typedef lean::object obj; #if defined(__clang__) #pragma clang diagnostic ignored "-Wunused-parameter" #endif -obj* _l_s3_nat_s3_pow_s6___main(obj*, obj*); obj* _l_s4_lean_s16_mk__simple__name(obj*); -obj* _l_s4_lean_s4_name_s4_hash_s11___closed__1; +size_t _l_s4_lean_s4_name_s4_hash_s11___closed__1; obj* _l_s4_lean_s4_name_s9_quick__lt(obj*, obj*); obj* _l_s4_lean_s4_name_s14_decidable__rel(obj*, obj*); obj* _l_s4_lean_s4_name_s10_to__string(obj*); @@ -19,12 +18,11 @@ obj* _l_s4_lean_s4_name_s11_get__prefix(obj*); obj* _l_s4_lean_s4_name_s14_update__prefix(obj*, obj*); obj* _l_s4_lean_s4_name_s12_has__dec__eq(obj*, obj*); obj* _l_s4_lean_s4_name_s4_lean_s15_has__to__format(obj*); +obj* _l_s4_lean_s4_name_s4_hash_s11___closed__1_s7___boxed; obj* _l_s4_lean_s4_name_s8_hashable; obj* _l_s9___private_1272448207__s9_hash__aux(obj*, size_t); obj* _l_s4_lean_s4_name_s14_components_x27(obj*); obj* _l_s4_lean_s4_name_s21_to__string__with__sep(obj*, obj*); -obj* _l_s5_usize_s3_add_s6___main(size_t, size_t); -obj* _l_s3_fin_s7_of__nat(obj*, obj*); obj* _l_s4_lean_s4_name_s9_quick__lt_s6___main(obj*, obj*); obj* _l_s4_lean_s4_name_s10_to__string_s11___closed__1; obj* _l_s4_lean_s4_name_s4_hash(obj*); @@ -47,7 +45,7 @@ obj* _l_s4_lean_s16_string__to__name; obj* _l_s4_lean_s4_name_s6_append_s6___main(obj*, obj*); obj* _l_s4_lean_s13_mk__num__name(obj*, obj*); obj* _l_s4_lean_s4_name_s15_replace__prefix_s6___main(obj*, obj*, obj*); -obj* _l_s9_mix__hash_s11___closed__1; +size_t _l_s9_mix__hash_s11___closed__1; obj* _l_s4_lean_s4_name_s12_has__dec__eq_s6___main(obj*, obj*); obj* _l_s4_lean_s4_name_s15_replace__prefix(obj*, obj*, obj*); obj* _l_s9___private_1272448207__s9_hash__aux_s6___main(obj*, size_t); @@ -110,25 +108,23 @@ return x_3; } case 1: { -obj* x_4; obj* x_7; size_t x_8; obj* x_9; +obj* x_4; size_t x_7; obj* x_8; x_4 = lean::cnstr_get(x_0, 0); lean::inc(x_4); lean::dec(x_0); x_7 = _l_s9_mix__hash_s11___closed__1; -x_8 = lean::unbox_size_t(x_7); -x_9 = _l_s9___private_1272448207__s9_hash__aux_s6___main(x_4, x_8); -return x_9; +x_8 = _l_s9___private_1272448207__s9_hash__aux_s6___main(x_4, x_7); +return x_8; } default: { -obj* x_10; obj* x_13; size_t x_14; obj* x_15; -x_10 = lean::cnstr_get(x_0, 0); -lean::inc(x_10); +obj* x_9; size_t x_12; obj* x_13; +x_9 = lean::cnstr_get(x_0, 0); +lean::inc(x_9); lean::dec(x_0); -x_13 = _l_s9_mix__hash_s11___closed__1; -x_14 = lean::unbox_size_t(x_13); -x_15 = _l_s9___private_1272448207__s9_hash__aux_s6___main(x_10, x_14); -return x_15; +x_12 = _l_s9_mix__hash_s11___closed__1; +x_13 = _l_s9___private_1272448207__s9_hash__aux_s6___main(x_9, x_12); +return x_13; } } } @@ -158,547 +154,32 @@ return x_3; } obj* _l_s4_lean_s4_name_s4_hash(obj* x_0) { { -obj* x_1; size_t x_2; obj* x_3; +size_t x_1; obj* x_2; x_1 = _l_s4_lean_s4_name_s4_hash_s11___closed__1; -x_2 = lean::unbox_size_t(x_1); -x_3 = _l_s9___private_1272448207__s9_hash__aux_s6___main(x_0, x_2); -return x_3; +x_2 = _l_s9___private_1272448207__s9_hash__aux_s6___main(x_0, x_1); +return x_2; } } -obj* _init__l_s4_lean_s4_name_s4_hash_s11___closed__1() { +size_t _init__l_s4_lean_s4_name_s4_hash_s11___closed__1() { { -obj* x_0; obj* x_1; obj* x_3; obj* x_4; obj* x_5; obj* x_7; obj* x_9; obj* x_10; obj* x_12; obj* x_14; obj* x_15; obj* x_17; obj* x_19; obj* x_20; obj* x_22; obj* x_24; obj* x_25; obj* x_27; obj* x_29; obj* x_30; obj* x_32; obj* x_34; obj* x_35; obj* x_37; obj* x_39; obj* x_40; obj* x_42; obj* x_44; obj* x_45; obj* x_47; obj* x_49; obj* x_50; obj* x_52; obj* x_54; obj* x_55; obj* x_57; obj* x_59; obj* x_60; obj* x_62; obj* x_64; obj* x_65; obj* x_67; obj* x_69; obj* x_70; obj* x_72; obj* x_74; obj* x_75; obj* x_77; obj* x_79; obj* x_80; obj* x_82; obj* x_84; obj* x_85; obj* x_87; obj* x_89; obj* x_90; obj* x_92; obj* x_94; obj* x_95; obj* x_97; obj* x_99; obj* x_100; obj* x_102; obj* x_104; obj* x_105; obj* x_107; obj* x_109; obj* x_110; obj* x_112; obj* x_114; obj* x_115; obj* x_117; obj* x_119; obj* x_120; obj* x_122; obj* x_124; obj* x_125; obj* x_127; obj* x_129; obj* x_130; obj* x_132; obj* x_134; obj* x_135; obj* x_137; obj* x_139; obj* x_140; obj* x_142; obj* x_144; obj* x_145; obj* x_147; obj* x_149; obj* x_150; obj* x_152; obj* x_154; obj* x_155; obj* x_157; obj* x_159; obj* x_160; obj* x_162; obj* x_164; obj* x_165; obj* x_167; obj* x_169; obj* x_170; obj* x_172; obj* x_174; obj* x_175; obj* x_177; obj* x_179; obj* x_180; obj* x_182; obj* x_184; obj* x_185; obj* x_187; obj* x_189; obj* x_190; obj* x_192; obj* x_194; obj* x_195; obj* x_197; obj* x_199; obj* x_200; obj* x_202; obj* x_204; obj* x_205; obj* x_207; obj* x_209; obj* x_210; obj* x_212; obj* x_214; obj* x_215; obj* x_217; obj* x_219; obj* x_220; obj* x_222; obj* x_224; obj* x_225; obj* x_227; obj* x_229; obj* x_230; obj* x_232; obj* x_234; obj* x_235; obj* x_237; obj* x_239; obj* x_240; obj* x_242; obj* x_244; obj* x_245; obj* x_247; obj* x_249; obj* x_250; obj* x_252; obj* x_254; obj* x_255; obj* x_257; obj* x_259; obj* x_260; obj* x_262; obj* x_264; obj* x_265; obj* x_267; obj* x_269; obj* x_270; obj* x_272; obj* x_274; obj* x_275; obj* x_277; obj* x_279; obj* x_280; obj* x_282; obj* x_284; obj* x_285; obj* x_287; obj* x_289; obj* x_290; obj* x_292; obj* x_294; obj* x_295; obj* x_297; obj* x_299; obj* x_300; obj* x_302; obj* x_304; obj* x_305; obj* x_309; obj* x_310; obj* x_314; obj* x_315; obj* x_317; obj* x_319; obj* x_320; obj* x_322; obj* x_325; obj* x_328; obj* x_331; obj* x_334; obj* x_337; obj* x_340; obj* x_343; obj* x_346; obj* x_349; obj* x_352; obj* x_355; obj* x_358; obj* x_361; obj* x_364; obj* x_367; obj* x_370; obj* x_373; obj* x_376; obj* x_379; obj* x_382; obj* x_385; obj* x_388; obj* x_391; obj* x_394; obj* x_397; obj* x_400; obj* x_403; obj* x_406; obj* x_409; obj* x_412; obj* x_415; obj* x_418; obj* x_421; obj* x_424; obj* x_427; obj* x_430; obj* x_433; obj* x_436; obj* x_439; obj* x_442; obj* x_445; obj* x_448; obj* x_451; obj* x_454; obj* x_457; obj* x_460; obj* x_463; obj* x_466; obj* x_469; obj* x_472; obj* x_475; obj* x_478; obj* x_481; obj* x_484; obj* x_487; obj* x_490; obj* x_493; obj* x_496; obj* x_499; obj* x_502; obj* x_505; obj* x_508; obj* x_511; obj* x_514; size_t x_515; obj* x_516; size_t x_517; obj* x_519; size_t x_520; obj* x_522; size_t x_523; obj* x_525; size_t x_526; obj* x_528; -x_0 = lean::mk_nat_obj(2u); -x_1 = lean::mk_nat_obj(63u); -lean::inc(x_0); -x_3 = _l_s3_nat_s3_pow_s6___main(x_0, x_1); -x_4 = lean::mk_nat_obj(1u); -x_5 = lean::nat_mul(x_3, x_4); -lean::dec(x_3); -x_7 = lean::mk_nat_obj(62u); -lean::inc(x_0); -x_9 = _l_s3_nat_s3_pow_s6___main(x_0, x_7); -x_10 = lean::nat_mul(x_9, x_4); -lean::dec(x_9); -x_12 = lean::mk_nat_obj(61u); -lean::inc(x_0); -x_14 = _l_s3_nat_s3_pow_s6___main(x_0, x_12); -x_15 = lean::nat_mul(x_14, x_4); -lean::dec(x_14); -x_17 = lean::mk_nat_obj(60u); -lean::inc(x_0); -x_19 = _l_s3_nat_s3_pow_s6___main(x_0, x_17); -x_20 = lean::nat_mul(x_19, x_4); -lean::dec(x_19); -x_22 = lean::mk_nat_obj(59u); -lean::inc(x_0); -x_24 = _l_s3_nat_s3_pow_s6___main(x_0, x_22); -x_25 = lean::nat_mul(x_24, x_4); -lean::dec(x_24); -x_27 = lean::mk_nat_obj(58u); -lean::inc(x_0); -x_29 = _l_s3_nat_s3_pow_s6___main(x_0, x_27); -x_30 = lean::nat_mul(x_29, x_4); -lean::dec(x_29); -x_32 = lean::mk_nat_obj(57u); -lean::inc(x_0); -x_34 = _l_s3_nat_s3_pow_s6___main(x_0, x_32); -x_35 = lean::nat_mul(x_34, x_4); -lean::dec(x_34); -x_37 = lean::mk_nat_obj(56u); -lean::inc(x_0); -x_39 = _l_s3_nat_s3_pow_s6___main(x_0, x_37); -x_40 = lean::nat_mul(x_39, x_4); -lean::dec(x_39); -x_42 = lean::mk_nat_obj(55u); -lean::inc(x_0); -x_44 = _l_s3_nat_s3_pow_s6___main(x_0, x_42); -x_45 = lean::nat_mul(x_44, x_4); -lean::dec(x_44); -x_47 = lean::mk_nat_obj(54u); -lean::inc(x_0); -x_49 = _l_s3_nat_s3_pow_s6___main(x_0, x_47); -x_50 = lean::nat_mul(x_49, x_4); -lean::dec(x_49); -x_52 = lean::mk_nat_obj(53u); -lean::inc(x_0); -x_54 = _l_s3_nat_s3_pow_s6___main(x_0, x_52); -x_55 = lean::nat_mul(x_54, x_4); -lean::dec(x_54); -x_57 = lean::mk_nat_obj(52u); -lean::inc(x_0); -x_59 = _l_s3_nat_s3_pow_s6___main(x_0, x_57); -x_60 = lean::nat_mul(x_59, x_4); -lean::dec(x_59); -x_62 = lean::mk_nat_obj(51u); -lean::inc(x_0); -x_64 = _l_s3_nat_s3_pow_s6___main(x_0, x_62); -x_65 = lean::nat_mul(x_64, x_4); -lean::dec(x_64); -x_67 = lean::mk_nat_obj(50u); -lean::inc(x_0); -x_69 = _l_s3_nat_s3_pow_s6___main(x_0, x_67); -x_70 = lean::nat_mul(x_69, x_4); -lean::dec(x_69); -x_72 = lean::mk_nat_obj(49u); -lean::inc(x_0); -x_74 = _l_s3_nat_s3_pow_s6___main(x_0, x_72); -x_75 = lean::nat_mul(x_74, x_4); -lean::dec(x_74); -x_77 = lean::mk_nat_obj(48u); -lean::inc(x_0); -x_79 = _l_s3_nat_s3_pow_s6___main(x_0, x_77); -x_80 = lean::nat_mul(x_79, x_4); -lean::dec(x_79); -x_82 = lean::mk_nat_obj(47u); -lean::inc(x_0); -x_84 = _l_s3_nat_s3_pow_s6___main(x_0, x_82); -x_85 = lean::nat_mul(x_84, x_4); -lean::dec(x_84); -x_87 = lean::mk_nat_obj(46u); -lean::inc(x_0); -x_89 = _l_s3_nat_s3_pow_s6___main(x_0, x_87); -x_90 = lean::nat_mul(x_89, x_4); -lean::dec(x_89); -x_92 = lean::mk_nat_obj(45u); -lean::inc(x_0); -x_94 = _l_s3_nat_s3_pow_s6___main(x_0, x_92); -x_95 = lean::nat_mul(x_94, x_4); -lean::dec(x_94); -x_97 = lean::mk_nat_obj(44u); -lean::inc(x_0); -x_99 = _l_s3_nat_s3_pow_s6___main(x_0, x_97); -x_100 = lean::nat_mul(x_99, x_4); -lean::dec(x_99); -x_102 = lean::mk_nat_obj(43u); -lean::inc(x_0); -x_104 = _l_s3_nat_s3_pow_s6___main(x_0, x_102); -x_105 = lean::nat_mul(x_104, x_4); -lean::dec(x_104); -x_107 = lean::mk_nat_obj(42u); -lean::inc(x_0); -x_109 = _l_s3_nat_s3_pow_s6___main(x_0, x_107); -x_110 = lean::nat_mul(x_109, x_4); -lean::dec(x_109); -x_112 = lean::mk_nat_obj(41u); -lean::inc(x_0); -x_114 = _l_s3_nat_s3_pow_s6___main(x_0, x_112); -x_115 = lean::nat_mul(x_114, x_4); -lean::dec(x_114); -x_117 = lean::mk_nat_obj(40u); -lean::inc(x_0); -x_119 = _l_s3_nat_s3_pow_s6___main(x_0, x_117); -x_120 = lean::nat_mul(x_119, x_4); -lean::dec(x_119); -x_122 = lean::mk_nat_obj(39u); -lean::inc(x_0); -x_124 = _l_s3_nat_s3_pow_s6___main(x_0, x_122); -x_125 = lean::nat_mul(x_124, x_4); -lean::dec(x_124); -x_127 = lean::mk_nat_obj(38u); -lean::inc(x_0); -x_129 = _l_s3_nat_s3_pow_s6___main(x_0, x_127); -x_130 = lean::nat_mul(x_129, x_4); -lean::dec(x_129); -x_132 = lean::mk_nat_obj(37u); -lean::inc(x_0); -x_134 = _l_s3_nat_s3_pow_s6___main(x_0, x_132); -x_135 = lean::nat_mul(x_134, x_4); -lean::dec(x_134); -x_137 = lean::mk_nat_obj(36u); -lean::inc(x_0); -x_139 = _l_s3_nat_s3_pow_s6___main(x_0, x_137); -x_140 = lean::nat_mul(x_139, x_4); -lean::dec(x_139); -x_142 = lean::mk_nat_obj(35u); -lean::inc(x_0); -x_144 = _l_s3_nat_s3_pow_s6___main(x_0, x_142); -x_145 = lean::nat_mul(x_144, x_4); -lean::dec(x_144); -x_147 = lean::mk_nat_obj(34u); -lean::inc(x_0); -x_149 = _l_s3_nat_s3_pow_s6___main(x_0, x_147); -x_150 = lean::nat_mul(x_149, x_4); -lean::dec(x_149); -x_152 = lean::mk_nat_obj(33u); -lean::inc(x_0); -x_154 = _l_s3_nat_s3_pow_s6___main(x_0, x_152); -x_155 = lean::nat_mul(x_154, x_4); -lean::dec(x_154); -x_157 = lean::mk_nat_obj(32u); -lean::inc(x_0); -x_159 = _l_s3_nat_s3_pow_s6___main(x_0, x_157); -x_160 = lean::nat_mul(x_159, x_4); -lean::dec(x_159); -x_162 = lean::mk_nat_obj(31u); -lean::inc(x_0); -x_164 = _l_s3_nat_s3_pow_s6___main(x_0, x_162); -x_165 = lean::nat_mul(x_164, x_4); -lean::dec(x_164); -x_167 = lean::mk_nat_obj(30u); -lean::inc(x_0); -x_169 = _l_s3_nat_s3_pow_s6___main(x_0, x_167); -x_170 = lean::nat_mul(x_169, x_4); -lean::dec(x_169); -x_172 = lean::mk_nat_obj(29u); -lean::inc(x_0); -x_174 = _l_s3_nat_s3_pow_s6___main(x_0, x_172); -x_175 = lean::nat_mul(x_174, x_4); -lean::dec(x_174); -x_177 = lean::mk_nat_obj(28u); -lean::inc(x_0); -x_179 = _l_s3_nat_s3_pow_s6___main(x_0, x_177); -x_180 = lean::nat_mul(x_179, x_4); -lean::dec(x_179); -x_182 = lean::mk_nat_obj(27u); -lean::inc(x_0); -x_184 = _l_s3_nat_s3_pow_s6___main(x_0, x_182); -x_185 = lean::nat_mul(x_184, x_4); -lean::dec(x_184); -x_187 = lean::mk_nat_obj(26u); -lean::inc(x_0); -x_189 = _l_s3_nat_s3_pow_s6___main(x_0, x_187); -x_190 = lean::nat_mul(x_189, x_4); -lean::dec(x_189); -x_192 = lean::mk_nat_obj(25u); -lean::inc(x_0); -x_194 = _l_s3_nat_s3_pow_s6___main(x_0, x_192); -x_195 = lean::nat_mul(x_194, x_4); -lean::dec(x_194); -x_197 = lean::mk_nat_obj(24u); -lean::inc(x_0); -x_199 = _l_s3_nat_s3_pow_s6___main(x_0, x_197); -x_200 = lean::nat_mul(x_199, x_4); -lean::dec(x_199); -x_202 = lean::mk_nat_obj(23u); -lean::inc(x_0); -x_204 = _l_s3_nat_s3_pow_s6___main(x_0, x_202); -x_205 = lean::nat_mul(x_204, x_4); -lean::dec(x_204); -x_207 = lean::mk_nat_obj(22u); -lean::inc(x_0); -x_209 = _l_s3_nat_s3_pow_s6___main(x_0, x_207); -x_210 = lean::nat_mul(x_209, x_4); -lean::dec(x_209); -x_212 = lean::mk_nat_obj(21u); -lean::inc(x_0); -x_214 = _l_s3_nat_s3_pow_s6___main(x_0, x_212); -x_215 = lean::nat_mul(x_214, x_4); -lean::dec(x_214); -x_217 = lean::mk_nat_obj(20u); -lean::inc(x_0); -x_219 = _l_s3_nat_s3_pow_s6___main(x_0, x_217); -x_220 = lean::nat_mul(x_219, x_4); -lean::dec(x_219); -x_222 = lean::mk_nat_obj(19u); -lean::inc(x_0); -x_224 = _l_s3_nat_s3_pow_s6___main(x_0, x_222); -x_225 = lean::nat_mul(x_224, x_4); -lean::dec(x_224); -x_227 = lean::mk_nat_obj(18u); -lean::inc(x_0); -x_229 = _l_s3_nat_s3_pow_s6___main(x_0, x_227); -x_230 = lean::nat_mul(x_229, x_4); -lean::dec(x_229); -x_232 = lean::mk_nat_obj(17u); -lean::inc(x_0); -x_234 = _l_s3_nat_s3_pow_s6___main(x_0, x_232); -x_235 = lean::nat_mul(x_234, x_4); -lean::dec(x_234); -x_237 = lean::mk_nat_obj(16u); -lean::inc(x_0); -x_239 = _l_s3_nat_s3_pow_s6___main(x_0, x_237); -x_240 = lean::nat_mul(x_239, x_4); -lean::dec(x_239); -x_242 = lean::mk_nat_obj(15u); -lean::inc(x_0); -x_244 = _l_s3_nat_s3_pow_s6___main(x_0, x_242); -x_245 = lean::nat_mul(x_244, x_4); -lean::dec(x_244); -x_247 = lean::mk_nat_obj(14u); -lean::inc(x_0); -x_249 = _l_s3_nat_s3_pow_s6___main(x_0, x_247); -x_250 = lean::nat_mul(x_249, x_4); -lean::dec(x_249); -x_252 = lean::mk_nat_obj(13u); -lean::inc(x_0); -x_254 = _l_s3_nat_s3_pow_s6___main(x_0, x_252); -x_255 = lean::nat_mul(x_254, x_4); -lean::dec(x_254); -x_257 = lean::mk_nat_obj(12u); -lean::inc(x_0); -x_259 = _l_s3_nat_s3_pow_s6___main(x_0, x_257); -x_260 = lean::nat_mul(x_259, x_4); -lean::dec(x_259); -x_262 = lean::mk_nat_obj(11u); -lean::inc(x_0); -x_264 = _l_s3_nat_s3_pow_s6___main(x_0, x_262); -x_265 = lean::nat_mul(x_264, x_4); -lean::dec(x_264); -x_267 = lean::mk_nat_obj(10u); -lean::inc(x_0); -x_269 = _l_s3_nat_s3_pow_s6___main(x_0, x_267); -x_270 = lean::nat_mul(x_269, x_4); -lean::dec(x_269); -x_272 = lean::mk_nat_obj(9u); -lean::inc(x_0); -x_274 = _l_s3_nat_s3_pow_s6___main(x_0, x_272); -x_275 = lean::nat_mul(x_274, x_4); -lean::dec(x_274); -x_277 = lean::mk_nat_obj(8u); -lean::inc(x_0); -x_279 = _l_s3_nat_s3_pow_s6___main(x_0, x_277); -x_280 = lean::nat_mul(x_279, x_4); -lean::dec(x_279); -x_282 = lean::mk_nat_obj(7u); -lean::inc(x_0); -x_284 = _l_s3_nat_s3_pow_s6___main(x_0, x_282); -x_285 = lean::nat_mul(x_284, x_4); -lean::dec(x_284); -x_287 = lean::mk_nat_obj(6u); -lean::inc(x_0); -x_289 = _l_s3_nat_s3_pow_s6___main(x_0, x_287); -x_290 = lean::nat_mul(x_289, x_4); -lean::dec(x_289); -x_292 = lean::mk_nat_obj(5u); -lean::inc(x_0); -x_294 = _l_s3_nat_s3_pow_s6___main(x_0, x_292); -x_295 = lean::nat_mul(x_294, x_4); -lean::dec(x_294); -x_297 = lean::mk_nat_obj(4u); -lean::inc(x_0); -x_299 = _l_s3_nat_s3_pow_s6___main(x_0, x_297); -x_300 = lean::nat_mul(x_299, x_4); -lean::dec(x_299); -x_302 = lean::mk_nat_obj(3u); -lean::inc(x_0); -x_304 = _l_s3_nat_s3_pow_s6___main(x_0, x_302); -x_305 = lean::nat_mul(x_304, x_4); -lean::dec(x_304); -lean::inc(x_0); -lean::inc(x_0); -x_309 = _l_s3_nat_s3_pow_s6___main(x_0, x_0); -x_310 = lean::nat_mul(x_309, x_4); -lean::dec(x_309); -lean::inc(x_4); -lean::inc(x_0); -x_314 = _l_s3_nat_s3_pow_s6___main(x_0, x_4); -x_315 = lean::nat_mul(x_314, x_4); -lean::dec(x_314); -x_317 = lean::mk_nat_obj(0u); -lean::inc(x_317); -x_319 = _l_s3_nat_s3_pow_s6___main(x_0, x_317); -x_320 = lean::nat_mul(x_319, x_4); -lean::dec(x_319); -x_322 = lean::nat_add(x_320, x_317); -lean::dec(x_317); -lean::dec(x_320); -x_325 = lean::nat_add(x_315, x_322); -lean::dec(x_322); -lean::dec(x_315); -x_328 = lean::nat_add(x_310, x_325); -lean::dec(x_325); -lean::dec(x_310); -x_331 = lean::nat_add(x_305, x_328); -lean::dec(x_328); -lean::dec(x_305); -x_334 = lean::nat_add(x_300, x_331); -lean::dec(x_331); -lean::dec(x_300); -x_337 = lean::nat_add(x_295, x_334); -lean::dec(x_334); -lean::dec(x_295); -x_340 = lean::nat_add(x_290, x_337); -lean::dec(x_337); -lean::dec(x_290); -x_343 = lean::nat_add(x_285, x_340); -lean::dec(x_340); -lean::dec(x_285); -x_346 = lean::nat_add(x_280, x_343); -lean::dec(x_343); -lean::dec(x_280); -x_349 = lean::nat_add(x_275, x_346); -lean::dec(x_346); -lean::dec(x_275); -x_352 = lean::nat_add(x_270, x_349); -lean::dec(x_349); -lean::dec(x_270); -x_355 = lean::nat_add(x_265, x_352); -lean::dec(x_352); -lean::dec(x_265); -x_358 = lean::nat_add(x_260, x_355); -lean::dec(x_355); -lean::dec(x_260); -x_361 = lean::nat_add(x_255, x_358); -lean::dec(x_358); -lean::dec(x_255); -x_364 = lean::nat_add(x_250, x_361); -lean::dec(x_361); -lean::dec(x_250); -x_367 = lean::nat_add(x_245, x_364); -lean::dec(x_364); -lean::dec(x_245); -x_370 = lean::nat_add(x_240, x_367); -lean::dec(x_367); -lean::dec(x_240); -x_373 = lean::nat_add(x_235, x_370); -lean::dec(x_370); -lean::dec(x_235); -x_376 = lean::nat_add(x_230, x_373); -lean::dec(x_373); -lean::dec(x_230); -x_379 = lean::nat_add(x_225, x_376); -lean::dec(x_376); -lean::dec(x_225); -x_382 = lean::nat_add(x_220, x_379); -lean::dec(x_379); -lean::dec(x_220); -x_385 = lean::nat_add(x_215, x_382); -lean::dec(x_382); -lean::dec(x_215); -x_388 = lean::nat_add(x_210, x_385); -lean::dec(x_385); -lean::dec(x_210); -x_391 = lean::nat_add(x_205, x_388); -lean::dec(x_388); -lean::dec(x_205); -x_394 = lean::nat_add(x_200, x_391); -lean::dec(x_391); -lean::dec(x_200); -x_397 = lean::nat_add(x_195, x_394); -lean::dec(x_394); -lean::dec(x_195); -x_400 = lean::nat_add(x_190, x_397); -lean::dec(x_397); -lean::dec(x_190); -x_403 = lean::nat_add(x_185, x_400); -lean::dec(x_400); -lean::dec(x_185); -x_406 = lean::nat_add(x_180, x_403); -lean::dec(x_403); -lean::dec(x_180); -x_409 = lean::nat_add(x_175, x_406); -lean::dec(x_406); -lean::dec(x_175); -x_412 = lean::nat_add(x_170, x_409); -lean::dec(x_409); -lean::dec(x_170); -x_415 = lean::nat_add(x_165, x_412); -lean::dec(x_412); -lean::dec(x_165); -x_418 = lean::nat_add(x_160, x_415); -lean::dec(x_415); -lean::dec(x_160); -x_421 = lean::nat_add(x_155, x_418); -lean::dec(x_418); -lean::dec(x_155); -x_424 = lean::nat_add(x_150, x_421); -lean::dec(x_421); -lean::dec(x_150); -x_427 = lean::nat_add(x_145, x_424); -lean::dec(x_424); -lean::dec(x_145); -x_430 = lean::nat_add(x_140, x_427); -lean::dec(x_427); -lean::dec(x_140); -x_433 = lean::nat_add(x_135, x_430); -lean::dec(x_430); -lean::dec(x_135); -x_436 = lean::nat_add(x_130, x_433); -lean::dec(x_433); -lean::dec(x_130); -x_439 = lean::nat_add(x_125, x_436); -lean::dec(x_436); -lean::dec(x_125); -x_442 = lean::nat_add(x_120, x_439); -lean::dec(x_439); -lean::dec(x_120); -x_445 = lean::nat_add(x_115, x_442); -lean::dec(x_442); -lean::dec(x_115); -x_448 = lean::nat_add(x_110, x_445); -lean::dec(x_445); -lean::dec(x_110); -x_451 = lean::nat_add(x_105, x_448); -lean::dec(x_448); -lean::dec(x_105); -x_454 = lean::nat_add(x_100, x_451); -lean::dec(x_451); -lean::dec(x_100); -x_457 = lean::nat_add(x_95, x_454); -lean::dec(x_454); -lean::dec(x_95); -x_460 = lean::nat_add(x_90, x_457); -lean::dec(x_457); -lean::dec(x_90); -x_463 = lean::nat_add(x_85, x_460); -lean::dec(x_460); -lean::dec(x_85); -x_466 = lean::nat_add(x_80, x_463); -lean::dec(x_463); -lean::dec(x_80); -x_469 = lean::nat_add(x_75, x_466); -lean::dec(x_466); -lean::dec(x_75); -x_472 = lean::nat_add(x_70, x_469); -lean::dec(x_469); -lean::dec(x_70); -x_475 = lean::nat_add(x_65, x_472); -lean::dec(x_472); -lean::dec(x_65); -x_478 = lean::nat_add(x_60, x_475); -lean::dec(x_475); -lean::dec(x_60); -x_481 = lean::nat_add(x_55, x_478); -lean::dec(x_478); -lean::dec(x_55); -x_484 = lean::nat_add(x_50, x_481); -lean::dec(x_481); -lean::dec(x_50); -x_487 = lean::nat_add(x_45, x_484); -lean::dec(x_484); -lean::dec(x_45); -x_490 = lean::nat_add(x_40, x_487); -lean::dec(x_487); -lean::dec(x_40); -x_493 = lean::nat_add(x_35, x_490); -lean::dec(x_490); -lean::dec(x_35); -x_496 = lean::nat_add(x_30, x_493); -lean::dec(x_493); -lean::dec(x_30); -x_499 = lean::nat_add(x_25, x_496); -lean::dec(x_496); -lean::dec(x_25); -x_502 = lean::nat_add(x_20, x_499); -lean::dec(x_499); -lean::dec(x_20); -x_505 = lean::nat_add(x_15, x_502); -lean::dec(x_502); -lean::dec(x_15); -x_508 = lean::nat_add(x_10, x_505); -lean::dec(x_505); -lean::dec(x_10); -x_511 = lean::nat_add(x_5, x_508); -lean::dec(x_508); -lean::dec(x_5); -x_514 = _l_s3_fin_s7_of__nat(x_511, x_4); -x_515 = lean::alloc_cnstr(0, 1, 0); -lean::cnstr_set(x_515, 0, x_514); -x_516 = _l_s5_usize_s3_add_s6___main(x_515, x_515); -x_517 = lean::unbox_size_t(x_516); -lean::dec(x_516); -x_519 = _l_s5_usize_s3_add_s6___main(x_517, x_517); -x_520 = lean::unbox_size_t(x_519); -lean::dec(x_519); -x_522 = _l_s5_usize_s3_add_s6___main(x_520, x_515); -x_523 = lean::unbox_size_t(x_522); -lean::dec(x_522); -x_525 = _l_s5_usize_s3_add_s6___main(x_523, x_523); -x_526 = lean::unbox_size_t(x_525); -lean::dec(x_525); -x_528 = _l_s5_usize_s3_add_s6___main(x_526, x_515); -return x_528; +obj* x_0; size_t x_1; size_t x_3; size_t x_4; size_t x_5; size_t x_6; size_t x_7; +x_0 = lean::mk_nat_obj(1u); +x_1 = lean::usize_of_nat(x_0); +lean::dec(x_0); +x_3 = lean::usize_add(x_1, x_1); +x_4 = lean::usize_add(x_3, x_3); +x_5 = lean::usize_add(x_4, x_1); +x_6 = lean::usize_add(x_5, x_5); +x_7 = lean::usize_add(x_6, x_1); +return x_7; +} +} +obj* _init__l_s4_lean_s4_name_s4_hash_s11___closed__1_s7___boxed() { +{ +size_t x_0; obj* x_1; +x_0 = _l_s4_lean_s4_name_s4_hash_s11___closed__1; +x_1 = lean::box_size_t(x_0); +return x_1; } } obj* _init__l_s4_lean_s4_name_s8_hashable() { @@ -1595,6 +1076,7 @@ void _l_initialize__l_s4_init_s4_lean_s4_name() { _l_s4_lean_s9_inhabited = _init__l_s4_lean_s9_inhabited(); _l_s4_lean_s16_string__to__name = _init__l_s4_lean_s16_string__to__name(); _l_s4_lean_s4_name_s4_hash_s11___closed__1 = _init__l_s4_lean_s4_name_s4_hash_s11___closed__1(); + _l_s4_lean_s4_name_s4_hash_s11___closed__1_s7___boxed = _init__l_s4_lean_s4_name_s4_hash_s11___closed__1_s7___boxed(); _l_s4_lean_s4_name_s8_hashable = _init__l_s4_lean_s4_name_s8_hashable(); _l_s4_lean_s4_name_s13_decidable__eq = _init__l_s4_lean_s4_name_s13_decidable__eq(); _l_s4_lean_s4_name_s11_has__append = _init__l_s4_lean_s4_name_s11_has__append(); diff --git a/src/boot/init/version.cpp b/src/boot/init/version.cpp index 6e35fb5752..29f205afe8 100644 --- a/src/boot/init/version.cpp +++ b/src/boot/init/version.cpp @@ -32,7 +32,7 @@ return x_4; obj* _init__l_s4_lean_s7_githash() { { obj* x_0; -x_0 = lean::mk_string("ac53080ced1df54054de9f6796cb9bfa9de42888"); +x_0 = lean::mk_string("0918a599ae5fff973b671e28df12d76c69d3055b"); return x_0; } }