Created
June 18, 2025 09:39
-
-
Save olomix/168a65938c6ae123b7f74c966254102b to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| ;; Prime value | |
| %%prime 21888242871839275222246405745257275088548364400416034343698204186575808495617 | |
| ;; Memory of signals | |
| %%signals 5 | |
| ;; Heap of components | |
| %%components_heap 3 | |
| ;; Types (for each field we store name type offset size nDims dims) | |
| ;; Main template | |
| %%start Pos_0 | |
| ;; Component creation mode (implicit/explicit) | |
| %%components explicit | |
| ;; Witness (signal list) | |
| %%witness 0 1 2 3 4 | |
| %%function f1_0 [] [ i64 0 i64 0 ff 0 ff 2 2 2] | |
| x_0 = i64.26 | |
| x_1 = i64.load i64.0 | |
| x_2 = i64.load i64.1 | |
| ;; store bucket in function | |
| ;;line 6 | |
| ;; getting dest | |
| x_3 = i64.add i64.5 i64.2 | |
| ff.store i64.5 ff.0 | |
| ;; end of store bucket | |
| ;; store bucket in function | |
| ;;line 7 | |
| ;; getting dest | |
| x_4 = i64.add i64.6 i64.2 | |
| ff.store i64.6 ff.0 | |
| ;; end of store bucket | |
| ;; loop bucket. Line 7 | |
| loop | |
| ;; compute bucket | |
| ;; load bucket | |
| x_6 = i64.add i64.6 i64.2 | |
| x_5 = ff.load x_6 | |
| ;; end of load bucket | |
| ;; OP(LESSER) | |
| x_7 = ff.lt x_5 ff.2 | |
| ;; end of compute bucket | |
| ff.if x_7 | |
| ;; store bucket in function | |
| ;;line 8 | |
| ;; getting dest | |
| x_8 = i64.add i64.7 i64.2 | |
| ff.store i64.7 ff.0 | |
| ;; end of store bucket | |
| ;; loop bucket. Line 8 | |
| loop | |
| ;; compute bucket | |
| ;; load bucket | |
| x_10 = i64.add i64.7 i64.2 | |
| x_9 = ff.load x_10 | |
| ;; end of load bucket | |
| ;; OP(LESSER) | |
| x_11 = ff.lt x_9 ff.2 | |
| ;; end of compute bucket | |
| ff.if x_11 | |
| ;; store bucket in function | |
| ;;line 9 | |
| ;; compute bucket | |
| ;; load bucket | |
| x_13 = i64.add i64.5 i64.2 | |
| x_12 = ff.load x_13 | |
| ;; end of load bucket | |
| ;; load bucket | |
| ;; compute bucket | |
| ;; compute bucket | |
| ;; compute bucket | |
| ;; compute bucket | |
| ;; load bucket | |
| x_15 = i64.add i64.6 i64.2 | |
| x_14 = ff.load x_15 | |
| ;; end of load bucket | |
| ;; OP(TO_ADDRESS) | |
| x_16 = ff.wrap_i64 x_14 | |
| ;; end of compute bucket | |
| ;; OP(MUL_ADDRESS) | |
| ;;line 0 | |
| x_17 = i64.mul i64.2 x_16 | |
| ;; end of compute bucket | |
| ;; compute bucket | |
| ;; compute bucket | |
| ;; load bucket | |
| ;;line 9 | |
| x_19 = i64.add i64.7 i64.2 | |
| x_18 = ff.load x_19 | |
| ;; end of load bucket | |
| ;; OP(TO_ADDRESS) | |
| x_20 = ff.wrap_i64 x_18 | |
| ;; end of compute bucket | |
| ;; OP(MUL_ADDRESS) | |
| ;;line 0 | |
| x_21 = i64.mul i64.1 x_20 | |
| ;; end of compute bucket | |
| ;; OP(ADD_ADDRESS) | |
| x_22 = i64.add x_17 x_21 | |
| ;; end of compute bucket | |
| ;; OP(ADD_ADDRESS) | |
| x_23 = i64.add x_22 i64.1 | |
| ;; end of compute bucket | |
| x_25 = i64.add x_23 i64.2 | |
| x_24 = ff.load x_25 | |
| ;; end of load bucket | |
| ;; OP(ADD) | |
| ;;line 9 | |
| x_26 = ff.add x_12 x_24 | |
| ;; end of compute bucket | |
| ;; getting dest | |
| x_27 = i64.add i64.5 i64.2 | |
| ff.store i64.5 x_26 | |
| ;; end of store bucket | |
| ;; store bucket in function | |
| ;;line 8 | |
| ;; compute bucket | |
| ;; load bucket | |
| x_29 = i64.add i64.7 i64.2 | |
| x_28 = ff.load x_29 | |
| ;; end of load bucket | |
| ;; OP(ADD) | |
| x_30 = ff.add x_28 ff.1 | |
| ;; end of compute bucket | |
| ;; getting dest | |
| x_31 = i64.add i64.7 i64.2 | |
| ff.store i64.7 x_30 | |
| ;; end of store bucket | |
| continue | |
| end | |
| end | |
| ;; end of loop bucket | |
| ;; store bucket in function | |
| ;;line 7 | |
| ;; compute bucket | |
| ;; load bucket | |
| x_33 = i64.add i64.6 i64.2 | |
| x_32 = ff.load x_33 | |
| ;; end of load bucket | |
| ;; OP(ADD) | |
| x_34 = ff.add x_32 ff.1 | |
| ;; end of compute bucket | |
| ;; getting dest | |
| x_35 = i64.add i64.6 i64.2 | |
| ff.store i64.6 x_34 | |
| ;; end of store bucket | |
| continue | |
| end | |
| end | |
| ;; end of loop bucket | |
| ;; branch bucket | |
| ;; compute bucket | |
| ;; load bucket | |
| ;;line 12 | |
| x_37 = i64.add i64.0 i64.2 | |
| x_36 = ff.load x_37 | |
| ;; end of load bucket | |
| ;; OP(EQ(Single(1))) | |
| x_38 = ff.eq x_36 ff.2 | |
| ;; end of compute bucket | |
| ff.if x_38 | |
| ;; store bucket in function | |
| ;;line 15 | |
| ;; getting dest | |
| x_39 = i64.add i64.6 i64.2 | |
| ff.store i64.6 ff.2910766817845651019878574839501801340070030115151021261302834310722729507541 | |
| ;; end of store bucket | |
| ;; store bucket in function | |
| ;; getting dest | |
| x_40 = i64.add i64.7 i64.2 | |
| ff.store i64.7 ff.5776684794125549462448597414050232243778680302179439492664047328281728356345 | |
| ;; end of store bucket | |
| ;; store bucket in function | |
| ;;line 19 | |
| ;; getting dest | |
| x_41 = i64.add i64.8 i64.2 | |
| ff.store i64.8 ff.19727366863391167538122140361473584127147630672623100827934084310230022599144 | |
| ;; end of store bucket | |
| ;; store bucket in function | |
| ;; getting dest | |
| x_42 = i64.add i64.9 i64.2 | |
| ff.store i64.9 ff.8348174920934122550483593999453880006756108121341067172388445916328941978568 | |
| ;; end of store bucket | |
| ;; store bucket in function | |
| ;;line 13 | |
| x_47 = i64.add i64.6 i64.2 | |
| x_48 = i64.add i64.10 i64.2 | |
| x_43 = x_47 | |
| x_44 = x_48 | |
| x_45 = i64.2 | |
| loop | |
| i64.if x_45 | |
| x_46 = ff.load x_43 | |
| ff.store x_44 x_46 | |
| x_43 = i64.add x_43 i64.1 | |
| x_44 = i64.add x_44 i64.1 | |
| x_45 = i64.sub x_45 i64.1 | |
| continue | |
| end | |
| break | |
| end | |
| ;; end of store bucket | |
| ;; store bucket in function | |
| x_53 = i64.add i64.8 i64.2 | |
| x_54 = i64.add i64.12 i64.2 | |
| x_49 = x_53 | |
| x_50 = x_54 | |
| x_51 = i64.2 | |
| loop | |
| i64.if x_51 | |
| x_52 = ff.load x_49 | |
| ff.store x_50 x_52 | |
| x_49 = i64.add x_49 i64.1 | |
| x_50 = i64.add x_50 i64.1 | |
| x_51 = i64.sub x_51 i64.1 | |
| continue | |
| end | |
| break | |
| end | |
| ;; end of store bucket | |
| ;; return bucket | |
| ;; load bucket | |
| x_56 = i64.add i64.10 i64.2 | |
| x_55 = ff.load x_56 | |
| ;; end of load bucket | |
| x_57 = i64.le i64.4 x_1 | |
| i64.if x_57 | |
| x_58 = i64.4 | |
| else | |
| x_58 = x_1 | |
| end | |
| return x_1 x_55 x_58 | |
| ;;line 12 | |
| else | |
| ;; branch bucket | |
| ;; compute bucket | |
| ;; load bucket | |
| ;;line 24 | |
| x_60 = i64.add i64.0 i64.2 | |
| x_59 = ff.load x_60 | |
| ;; end of load bucket | |
| ;; OP(EQ(Single(1))) | |
| x_61 = ff.eq x_59 ff.3 | |
| ;; end of compute bucket | |
| ff.if x_61 | |
| ;; store bucket in function | |
| ;;line 27 | |
| ;; getting dest | |
| x_62 = i64.add i64.6 i64.2 | |
| ff.store i64.6 ff.7511745149465107256748700652201246547602992235352608707588321460060273774987 | |
| ;; end of store bucket | |
| ;; store bucket in function | |
| ;; getting dest | |
| x_63 = i64.add i64.7 i64.2 | |
| ff.store i64.7 ff.18732019378264290557468133440468564866454307626475683536618613112504878618481 | |
| ;; end of store bucket | |
| ;; store bucket in function | |
| ;; getting dest | |
| x_64 = i64.add i64.8 i64.2 | |
| ff.store i64.8 ff.9131299761947733513298312097611845208338517739621853568979632113419485819303 | |
| ;; end of store bucket | |
| ;; store bucket in function | |
| ;;line 32 | |
| ;; getting dest | |
| x_65 = i64.add i64.9 i64.2 | |
| ff.store i64.9 ff.10370080108974718697676803824769673834027675643658433702224577712625900127200 | |
| ;; end of store bucket | |
| ;; store bucket in function | |
| ;; getting dest | |
| x_66 = i64.add i64.10 i64.2 | |
| ff.store i64.10 ff.20870176810702568768751421378473869562658540583882454726129544628203806653987 | |
| ;; end of store bucket | |
| ;; store bucket in function | |
| ;; getting dest | |
| x_67 = i64.add i64.11 i64.2 | |
| ff.store i64.11 ff.10595341252162738537912664445405114076324478519622938027420701542910180337937 | |
| ;; end of store bucket | |
| ;; store bucket in function | |
| ;;line 37 | |
| ;; getting dest | |
| x_68 = i64.add i64.12 i64.2 | |
| ff.store i64.12 ff.19705173408229649878903981084052839426532978878058043055305024233888854471533 | |
| ;; end of store bucket | |
| ;; store bucket in function | |
| ;; getting dest | |
| x_69 = i64.add i64.13 i64.2 | |
| ff.store i64.13 ff.7266061498423634438633389053804536045105766754026813321943009179476902321146 | |
| ;; end of store bucket | |
| ;; store bucket in function | |
| ;; getting dest | |
| x_70 = i64.add i64.14 i64.2 | |
| ff.store i64.14 ff.11597556804922396090267472882856054602429588299176362916247939723151043581408 | |
| ;; end of store bucket | |
| ;; store bucket in function | |
| ;;line 25 | |
| x_75 = i64.add i64.6 i64.2 | |
| x_76 = i64.add i64.15 i64.2 | |
| x_71 = x_75 | |
| x_72 = x_76 | |
| x_73 = i64.3 | |
| loop | |
| i64.if x_73 | |
| x_74 = ff.load x_71 | |
| ff.store x_72 x_74 | |
| x_71 = i64.add x_71 i64.1 | |
| x_72 = i64.add x_72 i64.1 | |
| x_73 = i64.sub x_73 i64.1 | |
| continue | |
| end | |
| break | |
| end | |
| ;; end of store bucket | |
| ;; store bucket in function | |
| x_81 = i64.add i64.9 i64.2 | |
| x_82 = i64.add i64.18 i64.2 | |
| x_77 = x_81 | |
| x_78 = x_82 | |
| x_79 = i64.3 | |
| loop | |
| i64.if x_79 | |
| x_80 = ff.load x_77 | |
| ff.store x_78 x_80 | |
| x_77 = i64.add x_77 i64.1 | |
| x_78 = i64.add x_78 i64.1 | |
| x_79 = i64.sub x_79 i64.1 | |
| continue | |
| end | |
| break | |
| end | |
| ;; end of store bucket | |
| ;; store bucket in function | |
| x_87 = i64.add i64.12 i64.2 | |
| x_88 = i64.add i64.21 i64.2 | |
| x_83 = x_87 | |
| x_84 = x_88 | |
| x_85 = i64.3 | |
| loop | |
| i64.if x_85 | |
| x_86 = ff.load x_83 | |
| ff.store x_84 x_86 | |
| x_83 = i64.add x_83 i64.1 | |
| x_84 = i64.add x_84 i64.1 | |
| x_85 = i64.sub x_85 i64.1 | |
| continue | |
| end | |
| break | |
| end | |
| ;; end of store bucket | |
| ;; return bucket | |
| ;; load bucket | |
| x_90 = i64.add i64.15 i64.2 | |
| x_89 = ff.load x_90 | |
| ;; end of load bucket | |
| x_91 = i64.le i64.9 x_1 | |
| i64.if x_91 | |
| x_92 = i64.9 | |
| else | |
| x_92 = x_1 | |
| end | |
| return x_1 x_89 x_92 | |
| ;;line 24 | |
| else | |
| ;; assert bucket | |
| ;;line 44 | |
| x_93 = ff.eqz ff.0 | |
| ff.if x_93 | |
| error i64.0 | |
| end | |
| ;; end of assert bucket | |
| ;; store bucket in function | |
| ;;line 45 | |
| ;; getting dest | |
| x_94 = i64.add i64.6 i64.2 | |
| ff.store i64.6 ff.0 | |
| ;; end of store bucket | |
| ;; store bucket in function | |
| ;; load bucket | |
| x_96 = i64.add i64.6 i64.2 | |
| x_95 = ff.load x_96 | |
| ;; end of load bucket | |
| ;; getting dest | |
| x_97 = i64.add i64.7 i64.2 | |
| ff.store i64.7 x_95 | |
| ;; end of store bucket | |
| ;; return bucket | |
| ;; load bucket | |
| x_99 = i64.add i64.7 i64.2 | |
| x_98 = ff.load x_99 | |
| ;; end of load bucket | |
| x_100 = i64.le i64.1 x_1 | |
| i64.if x_100 | |
| x_101 = i64.1 | |
| else | |
| x_101 = x_1 | |
| end | |
| return x_1 x_98 x_101 | |
| end | |
| ;; end of branch bucket | |
| end | |
| ;; end of branch bucket | |
| %%template Pos_0 [ ff 0 ff 0 ] [ ff 0 ff 0 ] [4] [ ] | |
| x_102 = i64.18 | |
| ;;line 0 | |
| ;; getting dest | |
| ff.store i64.0 ff.2 | |
| ;; end of store bucket | |
| ;;line 59 | |
| ;; getting dest | |
| ff.store i64.15 ff.0 | |
| ;; end of store bucket | |
| ;; getting dest | |
| ff.store i64.16 ff.0 | |
| ;; end of store bucket | |
| ;; getting dest | |
| ff.store i64.17 ff.0 | |
| ;; end of store bucket | |
| x_103 = i64.15 | |
| x_104 = i64.6 | |
| x_105 = i64.3 | |
| loop | |
| i64.if x_105 | |
| x_106 = ff.load x_103 | |
| ff.store x_104 x_106 | |
| x_103 = i64.add x_103 i64.1 | |
| x_104 = i64.add x_104 i64.1 | |
| x_105 = i64.sub x_105 i64.1 | |
| continue | |
| end | |
| break | |
| end | |
| ;; end of store bucket | |
| x_107 = i64.15 | |
| x_108 = i64.9 | |
| x_109 = i64.3 | |
| loop | |
| i64.if x_109 | |
| x_110 = ff.load x_107 | |
| ff.store x_108 x_110 | |
| x_107 = i64.add x_107 i64.1 | |
| x_108 = i64.add x_108 i64.1 | |
| x_109 = i64.sub x_109 i64.1 | |
| continue | |
| end | |
| break | |
| end | |
| ;; end of store bucket | |
| x_111 = i64.15 | |
| x_112 = i64.12 | |
| x_113 = i64.3 | |
| loop | |
| i64.if x_113 | |
| x_114 = ff.load x_111 | |
| ff.store x_112 x_114 | |
| x_111 = i64.add x_111 i64.1 | |
| x_112 = i64.add x_112 i64.1 | |
| x_113 = i64.sub x_113 i64.1 | |
| continue | |
| end | |
| break | |
| end | |
| ;; end of store bucket | |
| ;; start of call bucket | |
| ;; end copying argument 0 | |
| ;; end copying argument 1 | |
| x_115 = call $f1_0 ff.3 ff.memory(i64.2,i64.4) | |
| ff.store i64.6 x_115 | |
| ;; end call bucket | |
| ;;line 61 | |
| ;; compute bucket | |
| ;; compute bucket | |
| ;; load bucket | |
| x_116 = get_signal i64.2 | |
| ;; end of load bucket | |
| ;; OP(MUL) | |
| x_117 = ff.mul x_116 ff.7511745149465107256748700652201246547602992235352608707588321460060273774987 | |
| ;; end of compute bucket | |
| ;; load bucket | |
| x_118 = get_signal i64.3 | |
| ;; end of load bucket | |
| ;; OP(MUL) | |
| x_119 = ff.mul x_117 x_118 | |
| ;; end of compute bucket | |
| ;; getting dest | |
| set_signal i64.0 x_119 | |
| ;; end of store bucket | |
| ;;line 62 | |
| ;; compute bucket | |
| ;; load bucket | |
| x_120 = get_signal i64.0 | |
| ;; end of load bucket | |
| ;; OP(ADD) | |
| x_121 = ff.add x_120 ff.11597556804922396090267472882856054602429588299176362916247939723151043581408 | |
| ;; end of compute bucket | |
| ;; getting dest | |
| set_signal i64.1 x_121 | |
| ;; end of store bucket | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment