diff --git a/.github/workflows/e8-nine-stage-low-read.yml b/.github/workflows/e8-nine-stage-low-read.yml new file mode 100644 index 0000000000..4fda4886e8 --- /dev/null +++ b/.github/workflows/e8-nine-stage-low-read.yml @@ -0,0 +1,36 @@ +name: Verify nine-stage E8 low-read composition +on: + pull_request: + paths: + - 'research/e8-nine-stage-low-read/**' + - '.github/workflows/e8-nine-stage-low-read.yml' + push: + paths: + - 'research/e8-nine-stage-low-read/**' + - '.github/workflows/e8-nine-stage-low-read.yml' + workflow_dispatch: +permissions: + contents: read +jobs: + verify: + runs-on: ubuntu-latest + strategy: + fail-fast: false + matrix: + python: ['3.11', '3.14'] + steps: + - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 + with: + persist-credentials: false + - uses: actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97 + with: + python-version: ${{ matrix.python }} + - name: Install verifier dependencies + run: | + sudo apt-get update + sudo apt-get install -y g++ libboost-dev + python -m pip install -r research/e8-nine-stage-low-read/requirements.txt + - name: Replay source and new certificate + run: python -B research/e8-nine-stage-low-read/verify.py "$RUNNER_TEMP/e8-composed" + - name: Confirm source tree unchanged + run: git diff --exit-code diff --git a/certificates/joint-dual-kappa.json b/certificates/joint-dual-kappa.json index b7f7b89bc2..1f35b89221 100644 --- a/certificates/joint-dual-kappa.json +++ b/certificates/joint-dual-kappa.json @@ -842,7 +842,7 @@ "scripts/experiments/pin_joint_dual_sources.py": "4d31cc0e38b7902709ca5f8f714cba109760d2592346dd7f8dc0b900a2d9fe00", "scripts/experiments/verify_joint_dual.py": "7a31bba1e9c0ded32ae285df2ca9bc91ef20c330f6789fdba361876f3c7a1985" }, - "source_manifest_sha256": "4f3c15b82a2d97335d4fe95fb8bcb96bd2a921087da289d9da16c68213a17f17", + "source_manifest_sha256": "698fe862a620e5b80b85fbc6034c9456fa0fa9aea638dbbbcb3f9edd24c0415e", "sources": [ { "files": { diff --git a/certificates/joint-dual-validation.json b/certificates/joint-dual-validation.json index 194861d3c3..61a8d41622 100644 --- a/certificates/joint-dual-validation.json +++ b/certificates/joint-dual-validation.json @@ -226,7 +226,7 @@ } }, "bit_saving": "2382370177/50000000000000", - "certificate_sha256": "9801147b1502cf1e43d5fa39aa37f5291f03b48c30c4dd4f272e0877894a1c24", + "certificate_sha256": "6f684fa7f747073a132e8d0b5652cf12a8afa389f2a16ff6ade8e080d786dd22", "kappa": "4764513337/100000000000000", "margins": 7, "producer_words_regenerated_and_matched": true, diff --git a/research/e8-nine-stage-low-read/EXPECTED.json b/research/e8-nine-stage-low-read/EXPECTED.json new file mode 100644 index 0000000000..16b27c43e3 --- /dev/null +++ b/research/e8-nine-stage-low-read/EXPECTED.json @@ -0,0 +1,47 @@ +{ + "K": 4, + "stages": 9, + "halving_degree": 2, + "idle_blocks_per_role_pair": [ + 50, + 14, + 7, + 36, + 28, + 7, + 22, + 42, + 7, + 8 + ], + "h": 8, + "T": 9, + "maxchild": 50, + "bit_moment_interval": [ + "13479973333575319870289313525043061666739007764000319276683749596397/13479973333575319897333507543509815336818572211270286240551805124608", + "6739986666787659935144656762521530833369503882000159638341874798199/6739986666787659948666753771754907668409286105635143120275902562304" + ], + "normalized_histogram": { + "1": 169776, + "2": 75330, + "3": 36774, + "4": 31590, + "5": 24948, + "6": 162, + "8": 3618, + "7": 7614, + "50": 2160, + "14": 2160, + "36": 2160, + "28": 2160, + "22": 2160, + "42": 2160 + }, + "W": 16425, + "m": 72, + "bit_coarse": "997756388440101/1000000000000000000", + "complex_coarse": "999240641319551/1000000000000000000", + "binding": "bit", + "kappa": "996761861969671/1000000000000000000", + "kappa_float": 0.000996761861969671 +} diff --git a/research/e8-nine-stage-low-read/LICENSE b/research/e8-nine-stage-low-read/LICENSE new file mode 100644 index 0000000000..261eeb9e9f --- /dev/null +++ b/research/e8-nine-stage-low-read/LICENSE @@ -0,0 +1,201 @@ + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/research/e8-nine-stage-low-read/MANIFEST.json b/research/e8-nine-stage-low-read/MANIFEST.json new file mode 100644 index 0000000000..9a202fee10 --- /dev/null +++ b/research/e8-nine-stage-low-read/MANIFEST.json @@ -0,0 +1,243 @@ +{ + "EXPECTED.json": "4f09ca67e7cec10d033a4460441310f03c6ba35e2236dc174a725dc6f2d1b50d", + "LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "NOTICE.md": "005e67063bd0dcb9d1aeb0156539f99bd08df551718cb0d34315de57d7aeaa49", + "README.md": "b828a802f18891e0d48426d8d5678da690c188983f3ba2c6d0813ca3f0cad917", + "SOURCES.json": "e510c19b3c7e4a96eafec4c7679bd4373324c4cbd38208e63fadaced8e912ec2", + "candidate379.tar.gz": "827c0b6859f2b1ff7e5f5fbac955d61ecb25c828e7a0ff4dbc279ba6854d6a9d", + "requirements.txt": "12ce61badd5c50c101d6d759e1de6bc494be3f906df49a63b6db20d7e54a7348", + "source381/LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "source381/MANIFEST.sha256": "5cf9a292cbc046e81e18666b8ec3588cb0dad80e50b10a498a565cbf8ac93d30", + "source381/NOTICE-PR352.md": "967e6d7e76e216e4898cf543c75b527e8d397ec1ddba3800cb20701f24c89524", + "source381/NOTICE.md": "56995c03a75e590e192f8f07a24a0f8a23494fbb37a1f7fc131c2e1942af6bd9", + "source381/README.md": "75b5011d5633b6a291eb9d21d25913afdb4d20946a4fcfaafc2f02570868b126", + "source381/SOURCE-pr363.json": "8d7bd2ab583f3aecd4658226c37fff7b8fe86443e0c2bf1ebc8b49875ade6c5e", + "source381/SOURCE-pr370.json": "cf0a6fc0332c921ad7b65883ec05cf3083c0956e32b5dbc620442c834022833b", + "source381/SOURCE-pr373.json": "3423fe9da587ceeabd5c131bf0373d500a083217bebc574c14add5cd5c4b1ca4", + "source381/SOURCE-pr375.json": "e29543f847e5064ac4b808526af47b9782a891eccf5d62718ec944bde30888c3", + "source381/SOURCE-pr377.json": "0acfb5da9979baee00660b9b9761b9208398e73354e33a0dbadf2817dcdcb4f2", + "source381/code/bit/checkers/certify_bit_g.py": "c9a31508126f34e7ac95d802c39e8919a872cd705314de5bf3538de1636ce8ce", + "source381/code/bit/checkers/certify_bit_k.py": "e68a81ef7981a90d613752003cd5cab5351e260f909b094f1668d8a4dfe480df", + "source381/code/bit/checkers/columns_h.cpp": "d1297f9052be4f2496e1ff2a77e4db2c0cdbd7d460d489b4c03e50bf317238ce", + "source381/code/bit/checkers/columns_k.cpp": "1c344d18fcd494eeca93e259f10cafae7705780e6592f6dcb35b34752dab9bc2", + "source381/code/bit/checkers/cost.py": "d55d2b865d1c3d35e343e1a38c592b9172ed8e2596d1107e34d92e2a80c7d03f", + "source381/code/bit/checkers/exactnd_h.py": "28a0d8ee29ac75b8a789705454987f07d618f135ed1f1bd45b97f18bcc4163e3", + "source381/code/bit/checkers/finite_g.py": "a591d8caa9ab50a4c7ec6934c71c93fc18fd14680180b43071e8d9d704f7ac9a", + "source381/code/bit/checkers/finite_k.py": "7e67dc75e63a11e38ac6d6615656c7cf6982e5a33dd404d04b967bf474cad02e", + "source381/code/bit/checkers/geometry_g.py": "b9fa3cd05f36f5fcebfdebfb4a86fb90e92ed3c1d9157c52918ee8c5b563b54f", + "source381/code/bit/checkers/geometry_k.py": "646b7e8773d9c99376cb00627f109a97319e6d72b439ff513c39035c28c3f70f", + "source381/code/bit/checkers/gram_frames.py": "223a5a07731fc315a90a3e48177796babc155c1d9985c7ae5017eff6af2a0608", + "source381/code/bit/checkers/json.hpp": "aaf127c04cb31c406e5b04a63f1ae89369fccde6d8fa7cdda1ed4f32dfc5de63", + "source381/code/bit/checkers/legality_h.cpp": "6c1ef2b24e57781d6951c172a1024fc4300e6fd392c9d6672079a7806ab663b3", + "source381/code/bit/checkers/tile_g.py": "8140eec180e42202f2c6a9f11f5c92885e60861c38a7611dd805c524e3438138", + "source381/code/bit/checkers/tile_k.py": "64255088821f601ede2c3006f08cb97c39a4fa10dbbeb93a8a71fcfa0e1d8d77", + "source381/code/bit/export_records.py": "8a5999601f917dbb492bb9ae9a344611f18cc7cedc53dc3c76496a369e530eb3", + "source381/code/bit/independent/centres_sat.py": "f69379968367544807db2f0cf14359977e56299383b3edcc4469ddea7c7ecb40", + "source381/code/bit/independent/checkword.py": "11bf9620ca9db16d52d9fe806b814fc9ec9a89c4d7645354d1861d96f6e805ad", + "source381/code/bit/independent/mutate.py": "0ff65aace5da4b57d96235bf830f8f11969322e75134d498aeb70e9753ec6b0d", + "source381/code/bit/mutate_records.py": "b0e75d6550412a7be4017695e6b237392b611bb852ad8ff309d6682c9f166a4e", + "source381/code/bit/producer/compile.py": "60fea6a9d6617a3f87376d3fda040642e9cb70e7c179015e03ede8d289f30357", + "source381/code/bit/producer/compile2.py": "0e23d4282ceb75768e82631da016aaff9818aec53c7d75a6b2a28ee1b1160dc3", + "source381/code/bit/producer/e8lib.py": "4f8a6843e83bc4f7055d7337f33dbe12ce499051f46bee1b81bbf6b34c652574", + "source381/code/bit/producer/frames.py": "ba71f77dd3e3c1c54f361c066cebe9faadbc78db46376046e7af625bf1de8c24", + "source381/code/bit/producer/fullword.py": "0daf87599e9e48646b985ad87351c56c1b73cfc99cdf9eca081483846ddbfa90", + "source381/code/bit/producer/ham1.py": "359040fb432fd392472af6b8f5dca0234dd6c2be744a791df27ba62bc5da5175", + "source381/code/bit/producer/ham2.py": "fdf0af785ce697bd7f80b4e75f7163735f3b599d9dc42f652f0ffdbdf18ea8bf", + "source381/code/bit/producer/params-r865.json": "1256c54debe0a551da8e24896ab73ef0bd4a5233ff8e6fedf21a9e6301d6e6f3", + "source381/code/bit/producer/price.py": "46c858e60ba0a117bf8227b864abf55e85ebee2d56a0dce64472b706499ac405", + "source381/code/bit/producer/search2.py": "4999c5d6bac9757e4236c45435201631eae21f644dc9543d8c0b6e3cc8360daf", + "source381/code/bit/receipts_e8.py": "935ea65d9c6739e868ccf1aa439bd3c246657dfc887e4a0222a8f0901a5b41a5", + "source381/code/bit/receipts_k.py": "67f714e10a846e9cc62996342f825cd715055031e0b12591abdafd225717e195", + "source381/code/bit/regression/certify_bit.py": "fc03e8f7bf73d7d70346b87c835d44508b0581c9ff9aec708fbbd4f0121e0394", + "source381/code/bit/regression/columns_h_pr346.cpp": "26f5c9be3a7f545d50be458e3d17403921b5542a7dcd2986c848664a774977a8", + "source381/code/bit/regression/cost.py": "d55d2b865d1c3d35e343e1a38c592b9172ed8e2596d1107e34d92e2a80c7d03f", + "source381/code/bit/regression/json.hpp": "aaf127c04cb31c406e5b04a63f1ae89369fccde6d8fa7cdda1ed4f32dfc5de63", + "source381/code/bit/regression/legality_h_pr346.cpp": "5661d0b91e07d95736bde4c1824f27bebaecce0a84e38403f5391ebc51a52056", + "source381/code/bit/regression/prime_new.py": "7bd5cb48537621f1217d174274d42483da4e2d02feec238643c798c36b30366a", + "source381/code/bit/regression/prime_witnesses.py": "98cd03bc9582e7bd0ab194c191ea8eea940539e510051443ab9fd3e572a364ab", + "source381/code/bit/regression/stage_cohort.py": "6c288f6f234b528c1a7c0a4adfb724e91e0fe6b18c8dffad96af3f973de1829a", + "source381/code/bit/regression/tile_check.py": "38c3f78daac118395565a65fa3543b1c349638ff2519ce7fda0dad2d788e90ae", + "source381/code/complex/code/bridged.py": "5fe7174cd3a6580a74e4c1bf8fa7b426e8673f1c285603bf3076d4e758d70731", + "source381/code/pricing/base_two_moment.py": "aee70c242a2f1d225528fabe2002e1564d1dc884797c07d28a831c7878ee9098", + "source381/code/pricing/moment.py": "81cbc864e106418fc7854322746f72180cb8110ff39f74450a3b8d55a82c1482", + "source381/code/pricing/outer.py": "c1ebb52163a7219504c728a5c2b098bf1e50bf20148a2879c5a74c3cadc7c03c", + "source381/code/pricing/prime_witnesses.py": "98cd03bc9582e7bd0ab194c191ea8eea940539e510051443ab9fd3e572a364ab", + "source381/code/provenance.py": "2d85285d54b287c8362b11311ac72999d6faa6b22a9f102c99150b26fcf35f3c", + "source381/complex377/LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "source381/complex377/MANIFEST.json": "3743f954b5a652e51fa9ae5101318345d79f4c897ff9a29d5c54387b92118458", + "source381/complex377/README.md": "a62afee2856e1eb096250efd3202a429cd4118e7d9a114e7b9c67e3c168df3ab", + "source381/complex377/README.txt": "ffe26cdb8a7e083f2f745b6cf18916a6af4f1635bc5b1577f30fb1ca4e575e07", + "source381/complex377/verify.py": "f99a2601b4864bb596955933b41f45a04e9c9b300b23e4aae2cb2934ec5d8c74", + "source381/complex377/work/complex-nine-native/PROOF.txt": "ea0edb8cfb6b2f2c1adb2de12cc0aa5fb7c57e649033528565af3e52087beda7", + "source381/complex377/work/native358/vendor/complex-reserve/LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "source381/complex377/work/native358/vendor/complex-reserve/MANIFEST.json": "3d0d867b84b86dd9f0850cedce9a6de83f2313a604bdef58f7235af30f94bcbd", + "source381/complex377/work/native358/vendor/complex-reserve/NOTICE.md": "380ce615ddb67da3680fa188a0ba0daf578b983d58c2496cd20dd06f32e4ef57", + "source381/complex377/work/native358/vendor/complex-reserve/SOURCE.json": "e69f2a72785302f892263cf765c84d07e083d9ad05730748f9c3374aade11e53", + "source381/complex377/work/native358/vendor/complex-reserve/admit.py": "1b9b069fbdef37b7e3fbc586aad9578ba85948e9f80877733af387573f3fa723", + "source381/complex377/work/native358/vendor/complex-reserve/finite_guard.py": "bef59dddd391bcb49ed16ec6384517b8b7a2e21415cc810f9c2f59f440370983", + "source381/complex377/work/native358/vendor/complex-reserve/price.py": "90cfb8d102adf0b5f93b71b05af5c078076f56873a868a66865575a5ea85d573", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/MANIFEST.sha256": "4b76fb09595321986da04017db16cf6aa36bcd6a048cdee2ec8b656de811e488", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/NOTICE.md": "967e6d7e76e216e4898cf543c75b527e8d397ec1ddba3800cb20701f24c89524", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/README.md": "c5349ae6637e846fefe132756968376d52c5e3f76241e96214f59e65cdb7ad16", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/SOURCE-pr346.json": "2ad0b2138d2aa8cd5c6ab6995fa8c6c167a822b668ef56a9cc39c5765d1134b3", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/builders/addcomp.py": "82e5ef0c7b6cf84c53bf6039330930242c9a5c8e8ea13183b2805cf9577f7129", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/builders/build_v5.py": "c0867d68b863ca7d8cdd7002ffed263cbd5525fea4522267b5f640e4eff5597b", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/builders/decomp.py": "699c424170b41d3711da6a283f58cac824402ca373764365fd05c8e645ed07f5", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/builders/gather.py": "8c7d2a34fdcbe75d8ed8299e399d578b32adf44402c773fd905aa7c88e2b460d", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/builders/interface.py": "3b3e2fb894f871a9b6145844faaff34a05add59ae0eb8882c8feb2b914265b8a", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/builders/twin.py": "cfd261d82a31dd9024f1fa191eac2f5d893a7b51833b912459de46a1e9aac003", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/checkers/columns_h.cpp": "26f5c9be3a7f545d50be458e3d17403921b5542a7dcd2986c848664a774977a8", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/checkers/exactnd_h.py": "28a0d8ee29ac75b8a789705454987f07d618f135ed1f1bd45b97f18bcc4163e3", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/checkers/json.hpp": "aaf127c04cb31c406e5b04a63f1ae89369fccde6d8fa7cdda1ed4f32dfc5de63", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/checkers/legality_h.cpp": "5661d0b91e07d95736bde4c1824f27bebaecce0a84e38403f5391ebc51a52056", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/checkers/sub.hpp": "59c1a64f9df61fc50f47d5a78c8f9351875bf6b352db1c9d109c7c90542a4f19", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/checkers/verifyT.cpp": "1a5aea81aab652622e6547d901ead6aaf54fdca231da897dd99474c9f64a33bf", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/certify_complex.py": "7e480b7761fa700944a7dca41ccbefd530203b5e9168b6b37fe879b7e6da57fa", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/code/complex_basis.py": "52d68781eaf6d9decf02446a532a7336fcf15924a9f6781ba0833d038decb9f8", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/code/complex_gx.py": "ccc924537db0c0d55f0c1934e79b8cf4d85b4fb336473d7b42d69e12557aa9f2", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/code/complex_labels.py": "e000ee131389fec427388b85f632879cbaaf10e5e5d979a47d6307d64ce58982", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/code/complex_scalars.py": "38e985ebe8c8e7f8c83c03828abde0c80be418caf95e97afdf2d0c357c0ed919", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/code/complex_splice.py": "aaf46c8e5c68875b8315892e924e082b2f219f8d042dd14937e7cd2f72456dce", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/code/p10pins.py": "93b78a2e038b23264d04836928c78b6ebf33b87ff3dcc0e43ba0f1748fadd143", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/code/scatter.py": "dfd1afbbb3ff86f54db6a0313916403ec8ee6f939caa62f3edcc9d7a151bff95", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/NOTICE": "9419dd03a2f52cf8bdfc4d18216ce29f263ab583b27f01ced8e420985bcb7c81", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/retained/FINITE_BRIDGE.txt": "66d8f4ea8752abd89952d6674a636575a0db16e18b1c16e293f48f64242f0c46", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/retained/compact-control-layout.tex": "2bc28e50f3eb092195294cafa81213e520f6d42e7935e9905ad8a6199e2a7c87", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/retained/compact-control-movement.tex": "b963c3d2f4e1b7059aa289bb4b4ac89b688920bcf42f5b20d7698cdef0132cc6", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/retained/copied-centers-assembly.tex": "00117892971ae766188ace0af03030c44164fda105e42b70d84f52c3339a7dcb", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/retained/copied-centers-lemma.tex": "d0ce6d3d504996aadb098227885224e48df46101daec8893523a0a8b7364d8fe", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/retained/endpoint-gauge-complex.tex": "dfee33b0281e5551bb6927f757ff0240abade60ae1800f715afd88853ae0191e", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/retained/general-clifford-frames.tex": "c9bb9655b594583c6b4bab8cb485233f1d1e588f83858cf1e4c3530cee8fed54", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/retained/stopped-product-complex.tex": "4738089103a4b263b3b0ef458f5ef35519c696f1ea871ae79e508d3720f5870a", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/source-pins.json": "0d76527bf9c259b9532466a7b056ad6ff118867a96e044ff8e1a24aca12e1dbb", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/sources/Work__Bridge__Cert.lean": "5c24746a6330907b9b37d6064095035a58575d64ce793d6d7c9881121fdc3980", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/sources/Work__Bridge__Net.lean": "cf7d7d330b1bffe2e66712c873e647b13dc32db1ccfc0e0f4cd62ee6caf584f0", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/sources/Work__Carrier__Live.lean": "6d0649eb62589e66057f044e1e2103fc42f3f57a1498f82a26565bd8eb4026d0", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/sources/Work__Carrier__Phases.lean": "71dc3dda23dfe510d5d53cbada3a6c540cd1dc2825503fda618a5bd6cfc3e812", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/sources/Work__Fourier__Main.lean": "2e8e88efd4dcbdf0b1a6e39ce7eea8c5fd5ffee2faf360a8c0c9cba84c0e4ef3", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/sources/Work__GCert__Chain__Geom.lean": "c302f5834287421f11f3b0da7112fcde876cbc702896f2af4145b2d72ee393a2", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/sources/Work__GCert__Chain__InvThm.lean": "ade7e7873da75ca63a4b5ce2f562dde9c12bfbb69d87d7ae831039ff790e5adb", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/sources/Work__GCert__Chain__NetCert.lean": "22ae34809466b4ac2a2c5cdde526f51ff246f5189f7c142b38aa4c0dcffb04a4", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/sources/Work__GCert__Chain__NetDef.lean": "6e17a68b1e988969f6eb77000028f7ed877e687b8ad3976ec1707fcfe1d2f520", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/sources/Work__GCert__Chain__NetStage.lean": "c122bc01392a6fdcc0bee918fed81804d3c9b1d3e071016dab65a4ed804ef0b6", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/sources/Work__GCert__Chain__Phased.lean": "0de429c80231334f1ce92575c1e8ac382ca2d5e7d956767b547639a8941d9a8c", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/sources/Work__GCert__Chain__WinB.lean": "c33ec3fce09c0971c32ddcbb86d9383ffbe4c6d05cf36f20460005e6547bb845", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/sources/Work__GCert__Data__B2Gp193Main.lean": "cb61f304da51f1dd0a2ec25bca4b63eb095eeb2863289e1e2bdee7c82beff48b", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/sources/Work__GCert__Data__Glue.lean": "d5314f2b93a7f0e1c949fb502331825bfc6d9d8762d35f865443e7c95b6c7ef7", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/sources/Work__GCert__Data__InstB2Gp193.lean": "9587ddb9961f44938032b609307ab91c0b0e757e3991f1ad95480dd50fd4f72b", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/sources/Work__GCert__Data__P193Cert.lean": "d92ee6889be4753fc99f467bd84039743325123a1165128378b9c906a04f2703", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/sources/Work__GCert__Data__P193Price.lean": "0299bcd0fe255960eec682eef0f045f7e5cb1e4711af2aab4393526eae2caea3", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/sources/Work__GCert__Data__P193ScalOK.lean": "479434815822e98f015e335361089c3788d00dc3dd39c2944f75410aa0c158fe", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/sources/Work__GCert__Data__RateB2Gp193x.lean": "6b40cac1481c931d47b1a092e382d04716ede0e785c492a2f2983e886a257c3f", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/sources/Work__GCert__Data__Raw.lean": "aba94a004c94dcae7cf3047c88a6da9561555f4ebe8ab92e299e6ce09ee7aa66", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/sources/Work__GCert__Data__SolutionB2Gp193x.lean": "45c768c9d71a7cc18bd6db74cb036db880d89580ca60557bb4a492280296b169", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/sources/Work__GFrame__Engine__Adapt.lean": "feec0a3828867968a5c7c2c30b86ed70449abc3c660a60ada67203a75bae2ef7", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/sources/Work__GFrame__Engine__Letters.lean": "34906dbf5ae16b5174db00b4881a5cc1d2e583b8c8806db6523a5e2f86565f09", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/sources/Work__GFrame__Engine__Level.lean": "80fb3daa9a45de0ed6da570eb4476b9104734be65d0116f58bcfcbcd67f771d0", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/sources/tools__gx__ORIGIN.md": "6ba897a9495ddadcf8558b93133fdfaf66fc35ce7fa2c53e2d5667335c315e0b", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/sources/tools__gx__gx.py": "6f3dc8bb639933227a8dae181ec4a542e85c7276be9c9e330f49518e7b630b95", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/sources/tools__gx__gxbind.py": "9c9dcfac47f0535bf3aa8ebf7c662cdef0ebda50a9f0a9282b8f3cf34809f835", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/sources/tools__gx__gxconv.py": "dab7fec9f44c2d368ed334055d7126e202017feb46e41a8d86e2d998720f67c2", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/sources/tools__gx__gxcore.py": "eb972c06fe8c322db2d9a8d9a7d05596e8f40c4ca8e5f42eb6df3c7361b5d517", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/NOTICE": "557c9ad4660eebd14a00583736c4d12d2c45f3fc9bc148845f9f3efec72c9434", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/Work/GCert/Data/B2Ge8.lean": "842b217147cf84e8042d6ef1c33104d5444b6587b594664bc9eb89b237ab4ad0", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/Work/GCert/Data/B2Ge8Main.lean": "987103107d5586c096016f0a702d0de35b74398dbb50ac66f5886a43a5ca0d05", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/Work/GCert/Data/ChallengeB2Ge8x.lean": "a59db9d54b83adc73391916f7c1ef5e381ff073027781c26cb350f43b79839e3", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/Work/GCert/Data/E8Cert.lean": "13a243c7d7be31ae429d19b5ecd5d428d60c41b7cca8a330f0c4179b110ba7ea", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/Work/GCert/Data/E8Price.lean": "cd250dd72406dde37765c501f666ceeedcc18f831070b26369bcb154c1f99a8e", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/Work/GCert/Data/E8ScalOK.lean": "6bd5e68effe8913a3f73e25ea59142cd9928ddf81e94250a6ea28aa7317388b3", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/Work/GCert/Data/Gen/E8/S0.lean": "36de82f6969c23082876a4d6848428623d1c65d2df3fc917f23ecba003189dd2", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/Work/GCert/Data/Gen/E8.lean": "5c7fb23df2c10b690f638a19bf066905b5b620b8a2ad0ffde76cc9348d8aa2b4", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/Work/GCert/Data/Gen/E8End.lean": "6ea83365afe01664b2132a630511b4de65f938dc328744ce7f77a01fad97f32d", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/Work/GCert/Data/Gen/E8Hist.lean": "cce81699abe1f85a870dcf64edd395d2cf5a586da7700af565b557093095ab51", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/Work/GCert/Data/Gen/E8Par.lean": "a343219b419f30f8ac4dd3a0a98bf53550c5fec6b2cbd245320a95977c319016", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/Work/GCert/Data/Gen/E8Scal0.lean": "78036e5443775ade5bde46a77ba3e0433fe22160da11b5b6c96c7f1075ecfbbd", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/Work/GCert/Data/Gen/E8Seg0.lean": "f6b248dc4c3b2c94db95989b6bd5ad3c3f0d7ece3a511e5b69069550b821b138", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/Work/GCert/Data/Gen/E8Seg1.lean": "79d16ccceb61391446ea97f77fddadafa9150e9dea97919e775f6c78daa71839", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/Work/GCert/Data/Gen/E8SegF.lean": "924340aebc6f68b5a6526311ce33341af0a0a5a8375416762f08c1914ec08abe", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/Work/GCert/Data/Gen/E8Tab0.lean": "650600b631a21221956f9abbab9abebcc9cca628512d3e9a017e2373e2649b17", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/Work/GCert/Data/Gen/E8Tab1.lean": "60036fa4deeb19d39fc0dddf31359d2b6d2407ff66070f145b111bff16190eb0", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/Work/GCert/Data/Gen/E8Tab2.lean": "c8a248da3eb770ba55ef267d118b29d49983311087ef789398d555e2c44b3a41", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/Work/GCert/Data/Gen/E8Tab3.lean": "41975d430ec0095ad465a36d4903e90c01bc891d3abe5e2c372ef786c029a7ed", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/Work/GCert/Data/Gen/E8YChk.lean": "a290360c175544cb85edffe1b92fcf7d447cba09128e19de8dc87e0a1ff0c524", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/Work/GCert/Data/InstB2Ge8.lean": "c1fee298187ea19b5d70fcfccef7d4fd4161be70c0adda19a89ca9933a759954", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/Work/GCert/Data/RateB2Ge8.lean": "7b6e59724c0f140e714afba237d5a1a91b22da70abc096ce274690140b39a3a6", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/Work/GCert/Data/RateB2Ge8x.lean": "7c56d865ed6bfcb6919dabc1a6e53f8744ff4824a2f78335787485f3090970d1", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/Work/GCert/Data/SolutionB2Ge8x.lean": "dd52f1fe0a372480edaf5e6c64903d6257c410e43d406f8acb6bf8f60a1ee28f", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/comparator/B2Ge8x.json": "ddad06c37f9268986f3ec8ce43da5230ee2bd887da2480328413a0dc58f2a926", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/tools/certificate/gcert1-e8-r783.json.gz": "4b92f00fc7454b9b15e6d71a3b05062792eacca0a0ca4efee46f87827d57c8aa", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/tools/e8/replay.py": "be41ee310f28121c3e424cc8637d8fa02ef7c47fc8945e9bbd3856138fd800d6", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/tools/gen/foldgen.py": "a0f16e2c9e078ffbfb2174281ee93a48c18593aefb880318fc105ec85a205932", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/tools/gen/foldlib.py": "7a3c38a698c129e13a767da75926a1305eb0c031b908450afc6feb185505c59a", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/tools/gen/gen_rates.py": "ef8c869e4cf8da33a4c10b96f7f6faafd46e15d66766238070a60315aa169994", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/tools/gen/gen_sharp.py": "1b5eb3730cb16cf516e760879951fdfb9b065efc55f78c29a5c6404fcca57a78", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/tools/gen/templates/ChallengeB2L16x.lean.txt": "0488b7a2442c795414f103df912d1e6cc66d37b5be270940ea9564b7f2b666be", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/tools/gen/templates/SolutionB2L16x.lean.txt": "d414a890dfe126916374c1afc804b90e5081b7760f894b9ccdcf23d83a12f9ee", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/tools/gx/gsmirror.py": "0e22bbe5924284e2fb916337ccefc8e41f6e54469749986ad15b3b81cfaec534", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/tools/gx/gxbind.py": "9c9dcfac47f0535bf3aa8ebf7c662cdef0ebda50a9f0a9282b8f3cf34809f835", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/tools/gx/gxcore.py": "eb972c06fe8c322db2d9a8d9a7d05596e8f40c4ca8e5f42eb6df3c7361b5d517", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/tools/gx/gxgen.py": "ce9151054370c2210ed08f54c249a19dcb6946d182cdf934dee1a3781b53040f", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/tools/gx/gxpaths.py": "f00802d48ef3fedb00278f0b1c7bde074cc49dd30f202d7f32a9d2aebb3be443", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/tools/gx/gxrate.py": "514a5719f970fe36b1273cf59df0396db0e042dd7864c2eea53ab2a2fd1e2ad6", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/tools/gx/gxunit.py": "3cc09a9c1a2db681c0f2016bc821af5b674d34834dbd6f195b9d482ce7c0ff58", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/tools/gx/regen_check.py": "b6172d58749c0b3b9138570c74827bcb23bf5db4ff9643740768cd7782ac4ca6", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/tools/gx/regen_check_e8.py": "ad8fe9811c6ea0d89c795caef48686cfca600f5d540ebfd5d1251d6777cec7cf", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/pins-e8.json": "bf66f785878f636616ceab193e5a222143945ea06fc2f13dfb99b204ebba82ff", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/portable_complex.py": "44e8ae8a5b915358a97dbed5fe4e70195ed3581fd45a216df48fc82a029db87d", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/regress_pr346.py": "29479da1547cd39cf20fe387cde4cad847a2880266db9d0ef3fb474f68591feb", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/export_p10.py": "1161d23b459f7d981d6716073745909126d5465018cbbea7e6e6a9e4e5d68add", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/pricing/base_two_moment.py": "aee70c242a2f1d225528fabe2002e1564d1dc884797c07d28a831c7878ee9098", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/pricing/certify_bit.py": "fc03e8f7bf73d7d70346b87c835d44508b0581c9ff9aec708fbbd4f0121e0394", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/pricing/cost.py": "d55d2b865d1c3d35e343e1a38c592b9172ed8e2596d1107e34d92e2a80c7d03f", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/pricing/moment.py": "81cbc864e106418fc7854322746f72180cb8110ff39f74450a3b8d55a82c1482", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/pricing/outer.py": "c1ebb52163a7219504c728a5c2b098bf1e50bf20148a2879c5a74c3cadc7c03c", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/pricing/prime_new.py": "7bd5cb48537621f1217d174274d42483da4e2d02feec238643c798c36b30366a", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/pricing/prime_witnesses.py": "98cd03bc9582e7bd0ab194c191ea8eea940539e510051443ab9fd3e572a364ab", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/pricing/tile_check.py": "38c3f78daac118395565a65fa3543b1c349638ff2519ce7fda0dad2d788e90ae", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/provenance.py": "9f5c05aa4d172478f2ab67e7bb83cacebfccc10ecba650c23539cdcee18f2139", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/stage_cohort.py": "6c288f6f234b528c1a7c0a4adfb724e91e0fe6b18c8dffad96af3f973de1829a", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/data/bit/BASE-RECORDS.bin.gz": "caabc13126e8f87d08f7697f51512cb3431ff52861f4190149251d8e19224430", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/data/bit/BASE-frames.json.gz": "35070b83d12ebc60003ed344315328713134a43bdb04217c2c5cbc39e101391f", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/data/bit/BASE-states.json.gz": "1e37ae5001447dd78a8287d8aa23d73a1d5862c4017f44db49af327f58d7cf22", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/data/bit/FINAL-NEW-FRAMES.json": "e7fe9d0686829ad5acf7930698b3c81a866ae834422aa3c9a12057dfae627175", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/data/bit/FINAL-RECORDS.bin.gz": "fc4f1986da4585dc1721bcd954a95b3ffb2b562cc7031f40242de81664e3acb6", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/data/bit/RECORD-SHA256SUMS": "21f732671eb34468be2252d4dfb81bdec4e7d7cd6564b93a482c2dd925e9c3b2", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/data/bit/labels.json": "e037cd3d19d68e08523d09fce1c5f92206567784eb59f1924d93a837e4302fce", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/receipts/complex-guard-e8.json": "f94a5dca42cbb88e9650f8f8a3ffbd1153636dfc0a48da5f7a7fca908c0650ad", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/receipts/kappa.json": "36316b6cfe423b56cda1fd52843e56c997d060e33d26b732b3ecf4de3ae83aaa", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/receipts/official-five-stage-columns.json": "32e291f249b4eab8d65664d10c94208fe2154bdb4a45aaff84e9e8da5295a29f", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/receipts/official-legality.json": "7e675b7720f056548c1ee9f9de523eea10e6b014ddf90b7a630fd96163acbce6", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/requirements.txt": "ca0825e0ae3db2855af7535ebdc4775beadbb6f07f8d3a84f0f4fd5b95ba5eae", + "source381/complex377/work/native358/vendor/complex-reserve/upstream/pr352/verify.sh": "1a05c0b31ea37b2b5a4b84f6f9f504af8dd4220e13a6d9d86f64b2a731a903c7", + "source381/complex377/work/native358/vendor/complex-reserve/verify.py": "aa6f05c39404b4038c31c72f9fe7a8e137df911f6cb6fc668e316be37c40b126", + "source381/complex377/work/odd-stages/RECIPE-9.json": "abda2e4c73ecb48d29c30c12bc9a5c2db71d11a35667b4298788ec9154eeec7b", + "source381/complex377/work/odd-stages/audit_nine_template.py": "30c33508d02aeb8823dc477e8027bf6d44740aea0d3a3970fd2490aaf3b072d0", + "source381/complex377/work/odd-stages/clifford_exact.py": "2982ead07721e83358dc67c6f49c2b4c16a236a6bebdfd72f58221be1f5d0962", + "source381/complex377/work/odd-stages/complex_candidate.py": "e4faf656403720f78223934bec90c667086453d449323c85fa839d19829b4517", + "source381/complex377/work/odd-stages/data_phases.py": "671d6f8144c6d31e1766c6a0e144172da661a63f86b3d4d17fe2710f3ef752c4", + "source381/complex377/work/odd-stages/global_nine.py": "7e33e6ca88b11e28544bf7d43b02252208d4355369a14adb2aa8baa15773e42a", + "source381/complex377/work/odd-stages/outer_fixed.py": "0dc5b5a23bba5b4532cd11a290019d66d56ead611dddd3c40e2c9d0df64da198", + "source381/complex377/work/odd-stages/verify_clifford_frames.py": "5d8cf110150c66f2e2df58ea4e24096f335740e2ae726a4778347d98053cfa76", + "source381/complex377/work/pr361/code/engines/base_two_moment.py": "aee70c242a2f1d225528fabe2002e1564d1dc884797c07d28a831c7878ee9098", + "source381/complex377/work/pr361/code/engines/moment.py": "81cbc864e106418fc7854322746f72180cb8110ff39f74450a3b8d55a82c1482", + "source381/complex377/work/pr361/code/engines/outer.py": "c1ebb52163a7219504c728a5c2b098bf1e50bf20148a2879c5a74c3cadc7c03c", + "source381/complex377/work/pr361/complex/gcert1-e8-r783.json.gz": "4b92f00fc7454b9b15e6d71a3b05062792eacca0a0ca4efee46f87827d57c8aa", + "source381/data/bit/RECORD-SHA256SUMS": "cfc30216f441a1c44a533f2f26954f90e454136af8842c497de4e2da9bd32d8d", + "source381/data/bit/bitE8-r865.json.gz": "1fb726ea3818fe0837cceb0dd22a71a0814f064e5e781628104610d6468e0e55", + "source381/data/regression-p10/BASE-RECORDS.bin.gz": "caabc13126e8f87d08f7697f51512cb3431ff52861f4190149251d8e19224430", + "source381/data/regression-p10/BASE-frames.json.gz": "35070b83d12ebc60003ed344315328713134a43bdb04217c2c5cbc39e101391f", + "source381/data/regression-p10/BASE-states.json.gz": "1e37ae5001447dd78a8287d8aa23d73a1d5862c4017f44db49af327f58d7cf22", + "source381/data/regression-p10/receipts-loans/banks.json.gz": "0bd464f873b0f59622026793affb308bf087833de6f3197202adc7a36d9d0782", + "source381/data/regression-p10/receipts-loans/finite.json.gz": "82b21b4e6bb4b20e0ecbca44f59941362f57a26a019f179e19b5b7b86262a116", + "source381/data/regression-p10/receipts-loans/global_result.json.gz": "7dccea4b8c4a81597779dc0944297d5f60efd9e2e5b19469417712e2192c6cca", + "source381/data/regression-p10/receipts-loans/math.json.gz": "c4074b86171c5bde8fbbff6df0022a116f17e11f0d2116ae3dfe75c8b2a18c64", + "source381/data/regression-p10/receipts-loans/raw.json.gz": "505c13c667230e946e708d7c9086de34d1c5e259a557f6685765054001e29981", + "source381/data/regression-p10/receipts-loans/scalar.json.gz": "e7bb691b741227ce389ff6341fa0548ff8f638cc492a06be40fcd829fac0bed9", + "source381/requirements.txt": "1939ad706e192fb3781e8a0018880b1c6291ded07d40edc4048ab1a0e48f71ee", + "source381/verify.sh": "d535e6d1386a1d5a5a30c90384cf3f758f66fb2b7d6ce71118de7389bebf8fe2", + "support/bits/stdc++.h": "51908262576163a64815def96ff39b62aef3d52daaad9c561505c4293ff88e18", + "verify.py": "9200f345424c0798fd7c16a11c7f98fe2692869e500494f3c9f750155728012a" +} diff --git a/research/e8-nine-stage-low-read/NOTICE.md b/research/e8-nine-stage-low-read/NOTICE.md new file mode 100644 index 0000000000..b9d24c7a4e --- /dev/null +++ b/research/e8-nine-stage-low-read/NOTICE.md @@ -0,0 +1,11 @@ +# Attribution + +Composition, replay harness, and explicit second-difference certificate: Rohan Arun with OpenAI Codex assistance. + +The low-read local E8 schedule and its reconstruction certificate are from PR #379, GitHub author eumemic, with OpenAI Codex assistance, pinned at e01bcc51ca7ee93cec54350afae8f163aafc8f93. The unchanged source archive preserves its upstream notices and producer credits. + +The nine-stage unsplit bit construction, generalized checkers, and assembly are from PR #381, DaysSky with Claude, pinned at 00765b291d0f924f337298eb1e2930cb0878b95e. Its unchanged package includes the E8 work of Dylan Crow / Claude and earlier suppliers credited there. + +The unchanged nine-stage complex component is PR #377 by Zhihao Chen (jacklightChen), with OpenAI Codex assistance, pinned within #381. The underlying repository and inherited proofs/checkers include Jacob Sussman and the contributors credited in the retained source notices. This package does not claim authorship of their constructions. + +Apache-2.0; upstream licenses and notices remain in place. diff --git a/research/e8-nine-stage-low-read/README.md b/research/e8-nine-stage-low-read/README.md new file mode 100644 index 0000000000..ec70fd80cc --- /dev/null +++ b/research/e8-nine-stage-low-read/README.md @@ -0,0 +1,45 @@ +# Nine-stage E8 low-read composition + +Conditional kappa = **0.000996761861969671** (`996761861969671/10^18`), **0.11097150583734022% above PR #381** at its pinned head. The bit side binds: `c = 997756388440101/10^18`; the complex side remains PR #377's `b = 999240641319551/10^18`. + +This transplants the lower-read local schedule published in [PR #379](https://github.com/CrocSwap/integer-mult-bounds/pull/379) into [PR #381](https://github.com/CrocSwap/integer-mult-bounds/pull/381)'s nine-stage unsplit bit layout, retaining its unchanged nine-stage complex component. The new contribution is the composition, exact re-pricing, full replay harness, and the explicit strict-concavity identity below. The local schedule and nine-stage construction belong to their cited authors. + +## Reproduce + +Python 3.11+, a C++17 compiler, Boost headers, and `requirements.txt` dependencies are required. From the repository root: + +```sh +python -m pip install -r research/e8-nine-stage-low-read/requirements.txt +python -B research/e8-nine-stage-low-read/verify.py /fresh/output/directory +``` + +The output directory must not exist. On macOS pass `--boost-include /opt/homebrew/include`. The included standard-header shim is used only on macOS. The workflow replays on Python 3.11 and 3.14. + +The harness first reruns the complete pinned #381 verifier, including its K=2 and p10 regressions and the complete unchanged #377 complex verifier. A shell adapter only selects the current Python and supports paths with spaces. It then safely extracts the pinned #379 candidate certificate, checks its manifest, regenerates both words, verifies the commuting scalar-operator identity, and reruns independent local admission and mutation controls. The candidate receives fresh native legality, all 1,825 physical columns through nine stages, 18 omitted-bridge controls, six record mutations, exact frame nondegeneracy, unsplit geometry, width-72 bank tiling, two exact moment engines, all 47 outer inequalities, adjacent-grid rejection, and a fresh finite bill. Expected values never replace these calculations. + +## Why the local profile improves + +Only phase B changes. Its elementary additions have the same multiset; all destinations lie in Y and all sources lie outside Y. These transvections commute, so their abstract all-positive integer operator agrees. Every other word field is unchanged. This does not independently discharge the inherited signed-integer lifting interface. + +The one-invocation paid-rank histogram change is + +``` +rank: 1 2 3 4 7 +change: +20 -12 +6 -28 +14 +``` + +For `f(r)=r^p`, this is exactly + +``` +20*(f(1)-2*f(2)+f(3)) + 28*(f(2)-2*f(3)+f(4)) ++42*(f(3)-2*f(4)+f(5)) +28*(f(4)-2*f(5)+f(6)) ++14*(f(5)-2*f(6)+f(7)). +``` + +Every bracket is strictly negative for `0
=2.0,<3
+sympy==1.14.0
+mpmath==1.3.0
diff --git a/research/e8-nine-stage-low-read/source381/LICENSE b/research/e8-nine-stage-low-read/source381/LICENSE
new file mode 100644
index 0000000000..261eeb9e9f
--- /dev/null
+++ b/research/e8-nine-stage-low-read/source381/LICENSE
@@ -0,0 +1,201 @@
+ Apache License
+ Version 2.0, January 2004
+ http://www.apache.org/licenses/
+
+ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
+
+ 1. Definitions.
+
+ "License" shall mean the terms and conditions for use, reproduction,
+ and distribution as defined by Sections 1 through 9 of this document.
+
+ "Licensor" shall mean the copyright owner or entity authorized by
+ the copyright owner that is granting the License.
+
+ "Legal Entity" shall mean the union of the acting entity and all
+ other entities that control, are controlled by, or are under common
+ control with that entity. For the purposes of this definition,
+ "control" means (i) the power, direct or indirect, to cause the
+ direction or management of such entity, whether by contract or
+ otherwise, or (ii) ownership of fifty percent (50%) or more of the
+ outstanding shares, or (iii) beneficial ownership of such entity.
+
+ "You" (or "Your") shall mean an individual or Legal Entity
+ exercising permissions granted by this License.
+
+ "Source" form shall mean the preferred form for making modifications,
+ including but not limited to software source code, documentation
+ source, and configuration files.
+
+ "Object" form shall mean any form resulting from mechanical
+ transformation or translation of a Source form, including but
+ not limited to compiled object code, generated documentation,
+ and conversions to other media types.
+
+ "Work" shall mean the work of authorship, whether in Source or
+ Object form, made available under the License, as indicated by a
+ copyright notice that is included in or attached to the work
+ (an example is provided in the Appendix below).
+
+ "Derivative Works" shall mean any work, whether in Source or Object
+ form, that is based on (or derived from) the Work and for which the
+ editorial revisions, annotations, elaborations, or other modifications
+ represent, as a whole, an original work of authorship. For the purposes
+ of this License, Derivative Works shall not include works that remain
+ separable from, or merely link (or bind by name) to the interfaces of,
+ the Work and Derivative Works thereof.
+
+ "Contribution" shall mean any work of authorship, including
+ the original version of the Work and any modifications or additions
+ to that Work or Derivative Works thereof, that is intentionally
+ submitted to Licensor for inclusion in the Work by the copyright owner
+ or by an individual or Legal Entity authorized to submit on behalf of
+ the copyright owner. For the purposes of this definition, "submitted"
+ means any form of electronic, verbal, or written communication sent
+ to the Licensor or its representatives, including but not limited to
+ communication on electronic mailing lists, source code control systems,
+ and issue tracking systems that are managed by, or on behalf of, the
+ Licensor for the purpose of discussing and improving the Work, but
+ excluding communication that is conspicuously marked or otherwise
+ designated in writing by the copyright owner as "Not a Contribution."
+
+ "Contributor" shall mean Licensor and any individual or Legal Entity
+ on behalf of whom a Contribution has been received by Licensor and
+ subsequently incorporated within the Work.
+
+ 2. Grant of Copyright License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ copyright license to reproduce, prepare Derivative Works of,
+ publicly display, publicly perform, sublicense, and distribute the
+ Work and such Derivative Works in Source or Object form.
+
+ 3. Grant of Patent License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ (except as stated in this section) patent license to make, have made,
+ use, offer to sell, sell, import, and otherwise transfer the Work,
+ where such license applies only to those patent claims licensable
+ by such Contributor that are necessarily infringed by their
+ Contribution(s) alone or by combination of their Contribution(s)
+ with the Work to which such Contribution(s) was submitted. If You
+ institute patent litigation against any entity (including a
+ cross-claim or counterclaim in a lawsuit) alleging that the Work
+ or a Contribution incorporated within the Work constitutes direct
+ or contributory patent infringement, then any patent licenses
+ granted to You under this License for that Work shall terminate
+ as of the date such litigation is filed.
+
+ 4. Redistribution. You may reproduce and distribute copies of the
+ Work or Derivative Works thereof in any medium, with or without
+ modifications, and in Source or Object form, provided that You
+ meet the following conditions:
+
+ (a) You must give any other recipients of the Work or
+ Derivative Works a copy of this License; and
+
+ (b) You must cause any modified files to carry prominent notices
+ stating that You changed the files; and
+
+ (c) You must retain, in the Source form of any Derivative Works
+ that You distribute, all copyright, patent, trademark, and
+ attribution notices from the Source form of the Work,
+ excluding those notices that do not pertain to any part of
+ the Derivative Works; and
+
+ (d) If the Work includes a "NOTICE" text file as part of its
+ distribution, then any Derivative Works that You distribute must
+ include a readable copy of the attribution notices contained
+ within such NOTICE file, excluding those notices that do not
+ pertain to any part of the Derivative Works, in at least one
+ of the following places: within a NOTICE text file distributed
+ as part of the Derivative Works; within the Source form or
+ documentation, if provided along with the Derivative Works; or,
+ within a display generated by the Derivative Works, if and
+ wherever such third-party notices normally appear. The contents
+ of the NOTICE file are for informational purposes only and
+ do not modify the License. You may add Your own attribution
+ notices within Derivative Works that You distribute, alongside
+ or as an addendum to the NOTICE text from the Work, provided
+ that such additional attribution notices cannot be construed
+ as modifying the License.
+
+ You may add Your own copyright statement to Your modifications and
+ may provide additional or different license terms and conditions
+ for use, reproduction, or distribution of Your modifications, or
+ for any such Derivative Works as a whole, provided Your use,
+ reproduction, and distribution of the Work otherwise complies with
+ the conditions stated in this License.
+
+ 5. Submission of Contributions. Unless You explicitly state otherwise,
+ any Contribution intentionally submitted for inclusion in the Work
+ by You to the Licensor shall be under the terms and conditions of
+ this License, without any additional terms or conditions.
+ Notwithstanding the above, nothing herein shall supersede or modify
+ the terms of any separate license agreement you may have executed
+ with Licensor regarding such Contributions.
+
+ 6. Trademarks. This License does not grant permission to use the trade
+ names, trademarks, service marks, or product names of the Licensor,
+ except as required for reasonable and customary use in describing the
+ origin of the Work and reproducing the content of the NOTICE file.
+
+ 7. Disclaimer of Warranty. Unless required by applicable law or
+ agreed to in writing, Licensor provides the Work (and each
+ Contributor provides its Contributions) on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied, including, without limitation, any warranties or conditions
+ of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
+ PARTICULAR PURPOSE. You are solely responsible for determining the
+ appropriateness of using or redistributing the Work and assume any
+ risks associated with Your exercise of permissions under this License.
+
+ 8. Limitation of Liability. In no event and under no legal theory,
+ whether in tort (including negligence), contract, or otherwise,
+ unless required by applicable law (such as deliberate and grossly
+ negligent acts) or agreed to in writing, shall any Contributor be
+ liable to You for damages, including any direct, indirect, special,
+ incidental, or consequential damages of any character arising as a
+ result of this License or out of the use or inability to use the
+ Work (including but not limited to damages for loss of goodwill,
+ work stoppage, computer failure or malfunction, or any and all
+ other commercial damages or losses), even if such Contributor
+ has been advised of the possibility of such damages.
+
+ 9. Accepting Warranty or Additional Liability. While redistributing
+ the Work or Derivative Works thereof, You may choose to offer,
+ and charge a fee for, acceptance of support, warranty, indemnity,
+ or other liability obligations and/or rights consistent with this
+ License. However, in accepting such obligations, You may act only
+ on Your own behalf and on Your sole responsibility, not on behalf
+ of any other Contributor, and only if You agree to indemnify,
+ defend, and hold each Contributor harmless for any liability
+ incurred by, or claims asserted against, such Contributor by reason
+ of your accepting any such warranty or additional liability.
+
+ END OF TERMS AND CONDITIONS
+
+ APPENDIX: How to apply the Apache License to your work.
+
+ To apply the Apache License to your work, attach the following
+ boilerplate notice, with the fields enclosed by brackets "[]"
+ replaced with your own identifying information. (Don't include
+ the brackets!) The text should be enclosed in the appropriate
+ comment syntax for the file format. We also recommend that a
+ file or class name and description of purpose be included on the
+ same "printed page" as the copyright notice for easier
+ identification within third-party archives.
+
+ Copyright [yyyy] [name of copyright owner]
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
diff --git a/research/e8-nine-stage-low-read/source381/MANIFEST.sha256 b/research/e8-nine-stage-low-read/source381/MANIFEST.sha256
new file mode 100644
index 0000000000..8179065e6f
--- /dev/null
+++ b/research/e8-nine-stage-low-read/source381/MANIFEST.sha256
@@ -0,0 +1,230 @@
+c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4 ./LICENSE
+967e6d7e76e216e4898cf543c75b527e8d397ec1ddba3800cb20701f24c89524 ./NOTICE-PR352.md
+56995c03a75e590e192f8f07a24a0f8a23494fbb37a1f7fc131c2e1942af6bd9 ./NOTICE.md
+75b5011d5633b6a291eb9d21d25913afdb4d20946a4fcfaafc2f02570868b126 ./README.md
+8d7bd2ab583f3aecd4658226c37fff7b8fe86443e0c2bf1ebc8b49875ade6c5e ./SOURCE-pr363.json
+cf0a6fc0332c921ad7b65883ec05cf3083c0956e32b5dbc620442c834022833b ./SOURCE-pr370.json
+3423fe9da587ceeabd5c131bf0373d500a083217bebc574c14add5cd5c4b1ca4 ./SOURCE-pr373.json
+e29543f847e5064ac4b808526af47b9782a891eccf5d62718ec944bde30888c3 ./SOURCE-pr375.json
+0acfb5da9979baee00660b9b9761b9208398e73354e33a0dbadf2817dcdcb4f2 ./SOURCE-pr377.json
+c9a31508126f34e7ac95d802c39e8919a872cd705314de5bf3538de1636ce8ce ./code/bit/checkers/certify_bit_g.py
+e68a81ef7981a90d613752003cd5cab5351e260f909b094f1668d8a4dfe480df ./code/bit/checkers/certify_bit_k.py
+d1297f9052be4f2496e1ff2a77e4db2c0cdbd7d460d489b4c03e50bf317238ce ./code/bit/checkers/columns_h.cpp
+1c344d18fcd494eeca93e259f10cafae7705780e6592f6dcb35b34752dab9bc2 ./code/bit/checkers/columns_k.cpp
+d55d2b865d1c3d35e343e1a38c592b9172ed8e2596d1107e34d92e2a80c7d03f ./code/bit/checkers/cost.py
+28a0d8ee29ac75b8a789705454987f07d618f135ed1f1bd45b97f18bcc4163e3 ./code/bit/checkers/exactnd_h.py
+a591d8caa9ab50a4c7ec6934c71c93fc18fd14680180b43071e8d9d704f7ac9a ./code/bit/checkers/finite_g.py
+7e67dc75e63a11e38ac6d6615656c7cf6982e5a33dd404d04b967bf474cad02e ./code/bit/checkers/finite_k.py
+b9fa3cd05f36f5fcebfdebfb4a86fb90e92ed3c1d9157c52918ee8c5b563b54f ./code/bit/checkers/geometry_g.py
+646b7e8773d9c99376cb00627f109a97319e6d72b439ff513c39035c28c3f70f ./code/bit/checkers/geometry_k.py
+223a5a07731fc315a90a3e48177796babc155c1d9985c7ae5017eff6af2a0608 ./code/bit/checkers/gram_frames.py
+aaf127c04cb31c406e5b04a63f1ae89369fccde6d8fa7cdda1ed4f32dfc5de63 ./code/bit/checkers/json.hpp
+6c1ef2b24e57781d6951c172a1024fc4300e6fd392c9d6672079a7806ab663b3 ./code/bit/checkers/legality_h.cpp
+8140eec180e42202f2c6a9f11f5c92885e60861c38a7611dd805c524e3438138 ./code/bit/checkers/tile_g.py
+64255088821f601ede2c3006f08cb97c39a4fa10dbbeb93a8a71fcfa0e1d8d77 ./code/bit/checkers/tile_k.py
+8a5999601f917dbb492bb9ae9a344611f18cc7cedc53dc3c76496a369e530eb3 ./code/bit/export_records.py
+f69379968367544807db2f0cf14359977e56299383b3edcc4469ddea7c7ecb40 ./code/bit/independent/centres_sat.py
+11bf9620ca9db16d52d9fe806b814fc9ec9a89c4d7645354d1861d96f6e805ad ./code/bit/independent/checkword.py
+0ff65aace5da4b57d96235bf830f8f11969322e75134d498aeb70e9753ec6b0d ./code/bit/independent/mutate.py
+b0e75d6550412a7be4017695e6b237392b611bb852ad8ff309d6682c9f166a4e ./code/bit/mutate_records.py
+60fea6a9d6617a3f87376d3fda040642e9cb70e7c179015e03ede8d289f30357 ./code/bit/producer/compile.py
+0e23d4282ceb75768e82631da016aaff9818aec53c7d75a6b2a28ee1b1160dc3 ./code/bit/producer/compile2.py
+4f8a6843e83bc4f7055d7337f33dbe12ce499051f46bee1b81bbf6b34c652574 ./code/bit/producer/e8lib.py
+ba71f77dd3e3c1c54f361c066cebe9faadbc78db46376046e7af625bf1de8c24 ./code/bit/producer/frames.py
+0daf87599e9e48646b985ad87351c56c1b73cfc99cdf9eca081483846ddbfa90 ./code/bit/producer/fullword.py
+359040fb432fd392472af6b8f5dca0234dd6c2be744a791df27ba62bc5da5175 ./code/bit/producer/ham1.py
+fdf0af785ce697bd7f80b4e75f7163735f3b599d9dc42f652f0ffdbdf18ea8bf ./code/bit/producer/ham2.py
+1256c54debe0a551da8e24896ab73ef0bd4a5233ff8e6fedf21a9e6301d6e6f3 ./code/bit/producer/params-r865.json
+46c858e60ba0a117bf8227b864abf55e85ebee2d56a0dce64472b706499ac405 ./code/bit/producer/price.py
+4999c5d6bac9757e4236c45435201631eae21f644dc9543d8c0b6e3cc8360daf ./code/bit/producer/search2.py
+935ea65d9c6739e868ccf1aa439bd3c246657dfc887e4a0222a8f0901a5b41a5 ./code/bit/receipts_e8.py
+67f714e10a846e9cc62996342f825cd715055031e0b12591abdafd225717e195 ./code/bit/receipts_k.py
+fc03e8f7bf73d7d70346b87c835d44508b0581c9ff9aec708fbbd4f0121e0394 ./code/bit/regression/certify_bit.py
+26f5c9be3a7f545d50be458e3d17403921b5542a7dcd2986c848664a774977a8 ./code/bit/regression/columns_h_pr346.cpp
+d55d2b865d1c3d35e343e1a38c592b9172ed8e2596d1107e34d92e2a80c7d03f ./code/bit/regression/cost.py
+aaf127c04cb31c406e5b04a63f1ae89369fccde6d8fa7cdda1ed4f32dfc5de63 ./code/bit/regression/json.hpp
+5661d0b91e07d95736bde4c1824f27bebaecce0a84e38403f5391ebc51a52056 ./code/bit/regression/legality_h_pr346.cpp
+7bd5cb48537621f1217d174274d42483da4e2d02feec238643c798c36b30366a ./code/bit/regression/prime_new.py
+98cd03bc9582e7bd0ab194c191ea8eea940539e510051443ab9fd3e572a364ab ./code/bit/regression/prime_witnesses.py
+6c288f6f234b528c1a7c0a4adfb724e91e0fe6b18c8dffad96af3f973de1829a ./code/bit/regression/stage_cohort.py
+38c3f78daac118395565a65fa3543b1c349638ff2519ce7fda0dad2d788e90ae ./code/bit/regression/tile_check.py
+5fe7174cd3a6580a74e4c1bf8fa7b426e8673f1c285603bf3076d4e758d70731 ./code/complex/code/bridged.py
+aee70c242a2f1d225528fabe2002e1564d1dc884797c07d28a831c7878ee9098 ./code/pricing/base_two_moment.py
+81cbc864e106418fc7854322746f72180cb8110ff39f74450a3b8d55a82c1482 ./code/pricing/moment.py
+c1ebb52163a7219504c728a5c2b098bf1e50bf20148a2879c5a74c3cadc7c03c ./code/pricing/outer.py
+98cd03bc9582e7bd0ab194c191ea8eea940539e510051443ab9fd3e572a364ab ./code/pricing/prime_witnesses.py
+2d85285d54b287c8362b11311ac72999d6faa6b22a9f102c99150b26fcf35f3c ./code/provenance.py
+c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4 ./complex377/LICENSE
+3743f954b5a652e51fa9ae5101318345d79f4c897ff9a29d5c54387b92118458 ./complex377/MANIFEST.json
+a62afee2856e1eb096250efd3202a429cd4118e7d9a114e7b9c67e3c168df3ab ./complex377/README.md
+ffe26cdb8a7e083f2f745b6cf18916a6af4f1635bc5b1577f30fb1ca4e575e07 ./complex377/README.txt
+f99a2601b4864bb596955933b41f45a04e9c9b300b23e4aae2cb2934ec5d8c74 ./complex377/verify.py
+ea0edb8cfb6b2f2c1adb2de12cc0aa5fb7c57e649033528565af3e52087beda7 ./complex377/work/complex-nine-native/PROOF.txt
+c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4 ./complex377/work/native358/vendor/complex-reserve/LICENSE
+3d0d867b84b86dd9f0850cedce9a6de83f2313a604bdef58f7235af30f94bcbd ./complex377/work/native358/vendor/complex-reserve/MANIFEST.json
+380ce615ddb67da3680fa188a0ba0daf578b983d58c2496cd20dd06f32e4ef57 ./complex377/work/native358/vendor/complex-reserve/NOTICE.md
+e69f2a72785302f892263cf765c84d07e083d9ad05730748f9c3374aade11e53 ./complex377/work/native358/vendor/complex-reserve/SOURCE.json
+1b9b069fbdef37b7e3fbc586aad9578ba85948e9f80877733af387573f3fa723 ./complex377/work/native358/vendor/complex-reserve/admit.py
+bef59dddd391bcb49ed16ec6384517b8b7a2e21415cc810f9c2f59f440370983 ./complex377/work/native358/vendor/complex-reserve/finite_guard.py
+90cfb8d102adf0b5f93b71b05af5c078076f56873a868a66865575a5ea85d573 ./complex377/work/native358/vendor/complex-reserve/price.py
+c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/LICENSE
+967e6d7e76e216e4898cf543c75b527e8d397ec1ddba3800cb20701f24c89524 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/NOTICE.md
+c5349ae6637e846fefe132756968376d52c5e3f76241e96214f59e65cdb7ad16 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/README.md
+2ad0b2138d2aa8cd5c6ab6995fa8c6c167a822b668ef56a9cc39c5765d1134b3 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/SOURCE-pr346.json
+82e5ef0c7b6cf84c53bf6039330930242c9a5c8e8ea13183b2805cf9577f7129 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/builders/addcomp.py
+c0867d68b863ca7d8cdd7002ffed263cbd5525fea4522267b5f640e4eff5597b ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/builders/build_v5.py
+699c424170b41d3711da6a283f58cac824402ca373764365fd05c8e645ed07f5 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/builders/decomp.py
+8c7d2a34fdcbe75d8ed8299e399d578b32adf44402c773fd905aa7c88e2b460d ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/builders/gather.py
+3b3e2fb894f871a9b6145844faaff34a05add59ae0eb8882c8feb2b914265b8a ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/builders/interface.py
+cfd261d82a31dd9024f1fa191eac2f5d893a7b51833b912459de46a1e9aac003 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/builders/twin.py
+26f5c9be3a7f545d50be458e3d17403921b5542a7dcd2986c848664a774977a8 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/checkers/columns_h.cpp
+28a0d8ee29ac75b8a789705454987f07d618f135ed1f1bd45b97f18bcc4163e3 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/checkers/exactnd_h.py
+aaf127c04cb31c406e5b04a63f1ae89369fccde6d8fa7cdda1ed4f32dfc5de63 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/checkers/json.hpp
+5661d0b91e07d95736bde4c1824f27bebaecce0a84e38403f5391ebc51a52056 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/checkers/legality_h.cpp
+59c1a64f9df61fc50f47d5a78c8f9351875bf6b352db1c9d109c7c90542a4f19 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/checkers/sub.hpp
+1a5aea81aab652622e6547d901ead6aaf54fdca231da897dd99474c9f64a33bf ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/checkers/verifyT.cpp
+7e480b7761fa700944a7dca41ccbefd530203b5e9168b6b37fe879b7e6da57fa ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/certify_complex.py
+52d68781eaf6d9decf02446a532a7336fcf15924a9f6781ba0833d038decb9f8 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/code/complex_basis.py
+ccc924537db0c0d55f0c1934e79b8cf4d85b4fb336473d7b42d69e12557aa9f2 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/code/complex_gx.py
+e000ee131389fec427388b85f632879cbaaf10e5e5d979a47d6307d64ce58982 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/code/complex_labels.py
+38e985ebe8c8e7f8c83c03828abde0c80be418caf95e97afdf2d0c357c0ed919 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/code/complex_scalars.py
+aaf46c8e5c68875b8315892e924e082b2f219f8d042dd14937e7cd2f72456dce ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/code/complex_splice.py
+93b78a2e038b23264d04836928c78b6ebf33b87ff3dcc0e43ba0f1748fadd143 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/code/p10pins.py
+dfd1afbbb3ff86f54db6a0313916403ec8ee6f939caa62f3edcc9d7a151bff95 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/code/scatter.py
+c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/LICENSE
+9419dd03a2f52cf8bdfc4d18216ce29f263ab583b27f01ced8e420985bcb7c81 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/NOTICE
+66d8f4ea8752abd89952d6674a636575a0db16e18b1c16e293f48f64242f0c46 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/retained/FINITE_BRIDGE.txt
+2bc28e50f3eb092195294cafa81213e520f6d42e7935e9905ad8a6199e2a7c87 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/retained/compact-control-layout.tex
+b963c3d2f4e1b7059aa289bb4b4ac89b688920bcf42f5b20d7698cdef0132cc6 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/retained/compact-control-movement.tex
+00117892971ae766188ace0af03030c44164fda105e42b70d84f52c3339a7dcb ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/retained/copied-centers-assembly.tex
+d0ce6d3d504996aadb098227885224e48df46101daec8893523a0a8b7364d8fe ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/retained/copied-centers-lemma.tex
+dfee33b0281e5551bb6927f757ff0240abade60ae1800f715afd88853ae0191e ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/retained/endpoint-gauge-complex.tex
+c9bb9655b594583c6b4bab8cb485233f1d1e588f83858cf1e4c3530cee8fed54 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/retained/general-clifford-frames.tex
+4738089103a4b263b3b0ef458f5ef35519c696f1ea871ae79e508d3720f5870a ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/retained/stopped-product-complex.tex
+0d76527bf9c259b9532466a7b056ad6ff118867a96e044ff8e1a24aca12e1dbb ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/source-pins.json
+5c24746a6330907b9b37d6064095035a58575d64ce793d6d7c9881121fdc3980 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/sources/Work__Bridge__Cert.lean
+cf7d7d330b1bffe2e66712c873e647b13dc32db1ccfc0e0f4cd62ee6caf584f0 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/sources/Work__Bridge__Net.lean
+6d0649eb62589e66057f044e1e2103fc42f3f57a1498f82a26565bd8eb4026d0 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/sources/Work__Carrier__Live.lean
+71dc3dda23dfe510d5d53cbada3a6c540cd1dc2825503fda618a5bd6cfc3e812 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/sources/Work__Carrier__Phases.lean
+2e8e88efd4dcbdf0b1a6e39ce7eea8c5fd5ffee2faf360a8c0c9cba84c0e4ef3 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/sources/Work__Fourier__Main.lean
+c302f5834287421f11f3b0da7112fcde876cbc702896f2af4145b2d72ee393a2 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/sources/Work__GCert__Chain__Geom.lean
+ade7e7873da75ca63a4b5ce2f562dde9c12bfbb69d87d7ae831039ff790e5adb ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/sources/Work__GCert__Chain__InvThm.lean
+22ae34809466b4ac2a2c5cdde526f51ff246f5189f7c142b38aa4c0dcffb04a4 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/sources/Work__GCert__Chain__NetCert.lean
+6e17a68b1e988969f6eb77000028f7ed877e687b8ad3976ec1707fcfe1d2f520 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/sources/Work__GCert__Chain__NetDef.lean
+c122bc01392a6fdcc0bee918fed81804d3c9b1d3e071016dab65a4ed804ef0b6 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/sources/Work__GCert__Chain__NetStage.lean
+0de429c80231334f1ce92575c1e8ac382ca2d5e7d956767b547639a8941d9a8c ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/sources/Work__GCert__Chain__Phased.lean
+c33ec3fce09c0971c32ddcbb86d9383ffbe4c6d05cf36f20460005e6547bb845 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/sources/Work__GCert__Chain__WinB.lean
+cb61f304da51f1dd0a2ec25bca4b63eb095eeb2863289e1e2bdee7c82beff48b ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/sources/Work__GCert__Data__B2Gp193Main.lean
+d5314f2b93a7f0e1c949fb502331825bfc6d9d8762d35f865443e7c95b6c7ef7 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/sources/Work__GCert__Data__Glue.lean
+9587ddb9961f44938032b609307ab91c0b0e757e3991f1ad95480dd50fd4f72b ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/sources/Work__GCert__Data__InstB2Gp193.lean
+d92ee6889be4753fc99f467bd84039743325123a1165128378b9c906a04f2703 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/sources/Work__GCert__Data__P193Cert.lean
+0299bcd0fe255960eec682eef0f045f7e5cb1e4711af2aab4393526eae2caea3 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/sources/Work__GCert__Data__P193Price.lean
+479434815822e98f015e335361089c3788d00dc3dd39c2944f75410aa0c158fe ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/sources/Work__GCert__Data__P193ScalOK.lean
+6b40cac1481c931d47b1a092e382d04716ede0e785c492a2f2983e886a257c3f ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/sources/Work__GCert__Data__RateB2Gp193x.lean
+aba94a004c94dcae7cf3047c88a6da9561555f4ebe8ab92e299e6ce09ee7aa66 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/sources/Work__GCert__Data__Raw.lean
+45c768c9d71a7cc18bd6db74cb036db880d89580ca60557bb4a492280296b169 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/sources/Work__GCert__Data__SolutionB2Gp193x.lean
+feec0a3828867968a5c7c2c30b86ed70449abc3c660a60ada67203a75bae2ef7 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/sources/Work__GFrame__Engine__Adapt.lean
+34906dbf5ae16b5174db00b4881a5cc1d2e583b8c8806db6523a5e2f86565f09 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/sources/Work__GFrame__Engine__Letters.lean
+80fb3daa9a45de0ed6da570eb4476b9104734be65d0116f58bcfcbcd67f771d0 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/sources/Work__GFrame__Engine__Level.lean
+6ba897a9495ddadcf8558b93133fdfaf66fc35ce7fa2c53e2d5667335c315e0b ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/sources/tools__gx__ORIGIN.md
+6f3dc8bb639933227a8dae181ec4a542e85c7276be9c9e330f49518e7b630b95 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/sources/tools__gx__gx.py
+9c9dcfac47f0535bf3aa8ebf7c662cdef0ebda50a9f0a9282b8f3cf34809f835 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/sources/tools__gx__gxbind.py
+dab7fec9f44c2d368ed334055d7126e202017feb46e41a8d86e2d998720f67c2 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/sources/tools__gx__gxconv.py
+eb972c06fe8c322db2d9a8d9a7d05596e8f40c4ca8e5f42eb6df3c7361b5d517 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/complex/sources/tools__gx__gxcore.py
+c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/LICENSE
+557c9ad4660eebd14a00583736c4d12d2c45f3fc9bc148845f9f3efec72c9434 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/NOTICE
+842b217147cf84e8042d6ef1c33104d5444b6587b594664bc9eb89b237ab4ad0 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/Work/GCert/Data/B2Ge8.lean
+987103107d5586c096016f0a702d0de35b74398dbb50ac66f5886a43a5ca0d05 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/Work/GCert/Data/B2Ge8Main.lean
+a59db9d54b83adc73391916f7c1ef5e381ff073027781c26cb350f43b79839e3 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/Work/GCert/Data/ChallengeB2Ge8x.lean
+13a243c7d7be31ae429d19b5ecd5d428d60c41b7cca8a330f0c4179b110ba7ea ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/Work/GCert/Data/E8Cert.lean
+cd250dd72406dde37765c501f666ceeedcc18f831070b26369bcb154c1f99a8e ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/Work/GCert/Data/E8Price.lean
+6bd5e68effe8913a3f73e25ea59142cd9928ddf81e94250a6ea28aa7317388b3 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/Work/GCert/Data/E8ScalOK.lean
+5c7fb23df2c10b690f638a19bf066905b5b620b8a2ad0ffde76cc9348d8aa2b4 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/Work/GCert/Data/Gen/E8.lean
+36de82f6969c23082876a4d6848428623d1c65d2df3fc917f23ecba003189dd2 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/Work/GCert/Data/Gen/E8/S0.lean
+6ea83365afe01664b2132a630511b4de65f938dc328744ce7f77a01fad97f32d ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/Work/GCert/Data/Gen/E8End.lean
+cce81699abe1f85a870dcf64edd395d2cf5a586da7700af565b557093095ab51 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/Work/GCert/Data/Gen/E8Hist.lean
+a343219b419f30f8ac4dd3a0a98bf53550c5fec6b2cbd245320a95977c319016 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/Work/GCert/Data/Gen/E8Par.lean
+78036e5443775ade5bde46a77ba3e0433fe22160da11b5b6c96c7f1075ecfbbd ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/Work/GCert/Data/Gen/E8Scal0.lean
+f6b248dc4c3b2c94db95989b6bd5ad3c3f0d7ece3a511e5b69069550b821b138 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/Work/GCert/Data/Gen/E8Seg0.lean
+79d16ccceb61391446ea97f77fddadafa9150e9dea97919e775f6c78daa71839 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/Work/GCert/Data/Gen/E8Seg1.lean
+924340aebc6f68b5a6526311ce33341af0a0a5a8375416762f08c1914ec08abe ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/Work/GCert/Data/Gen/E8SegF.lean
+650600b631a21221956f9abbab9abebcc9cca628512d3e9a017e2373e2649b17 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/Work/GCert/Data/Gen/E8Tab0.lean
+60036fa4deeb19d39fc0dddf31359d2b6d2407ff66070f145b111bff16190eb0 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/Work/GCert/Data/Gen/E8Tab1.lean
+c8a248da3eb770ba55ef267d118b29d49983311087ef789398d555e2c44b3a41 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/Work/GCert/Data/Gen/E8Tab2.lean
+41975d430ec0095ad465a36d4903e90c01bc891d3abe5e2c372ef786c029a7ed ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/Work/GCert/Data/Gen/E8Tab3.lean
+a290360c175544cb85edffe1b92fcf7d447cba09128e19de8dc87e0a1ff0c524 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/Work/GCert/Data/Gen/E8YChk.lean
+c1fee298187ea19b5d70fcfccef7d4fd4161be70c0adda19a89ca9933a759954 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/Work/GCert/Data/InstB2Ge8.lean
+7b6e59724c0f140e714afba237d5a1a91b22da70abc096ce274690140b39a3a6 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/Work/GCert/Data/RateB2Ge8.lean
+7c56d865ed6bfcb6919dabc1a6e53f8744ff4824a2f78335787485f3090970d1 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/Work/GCert/Data/RateB2Ge8x.lean
+dd52f1fe0a372480edaf5e6c64903d6257c410e43d406f8acb6bf8f60a1ee28f ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/Work/GCert/Data/SolutionB2Ge8x.lean
+ddad06c37f9268986f3ec8ce43da5230ee2bd887da2480328413a0dc58f2a926 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/comparator/B2Ge8x.json
+4b92f00fc7454b9b15e6d71a3b05062792eacca0a0ca4efee46f87827d57c8aa ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/tools/certificate/gcert1-e8-r783.json.gz
+be41ee310f28121c3e424cc8637d8fa02ef7c47fc8945e9bbd3856138fd800d6 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/tools/e8/replay.py
+a0f16e2c9e078ffbfb2174281ee93a48c18593aefb880318fc105ec85a205932 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/tools/gen/foldgen.py
+7a3c38a698c129e13a767da75926a1305eb0c031b908450afc6feb185505c59a ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/tools/gen/foldlib.py
+ef8c869e4cf8da33a4c10b96f7f6faafd46e15d66766238070a60315aa169994 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/tools/gen/gen_rates.py
+1b5eb3730cb16cf516e760879951fdfb9b065efc55f78c29a5c6404fcca57a78 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/tools/gen/gen_sharp.py
+0488b7a2442c795414f103df912d1e6cc66d37b5be270940ea9564b7f2b666be ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/tools/gen/templates/ChallengeB2L16x.lean.txt
+d414a890dfe126916374c1afc804b90e5081b7760f894b9ccdcf23d83a12f9ee ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/tools/gen/templates/SolutionB2L16x.lean.txt
+0e22bbe5924284e2fb916337ccefc8e41f6e54469749986ad15b3b81cfaec534 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/tools/gx/gsmirror.py
+9c9dcfac47f0535bf3aa8ebf7c662cdef0ebda50a9f0a9282b8f3cf34809f835 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/tools/gx/gxbind.py
+eb972c06fe8c322db2d9a8d9a7d05596e8f40c4ca8e5f42eb6df3c7361b5d517 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/tools/gx/gxcore.py
+ce9151054370c2210ed08f54c249a19dcb6946d182cdf934dee1a3781b53040f ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/tools/gx/gxgen.py
+f00802d48ef3fedb00278f0b1c7bde074cc49dd30f202d7f32a9d2aebb3be443 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/tools/gx/gxpaths.py
+514a5719f970fe36b1273cf59df0396db0e042dd7864c2eea53ab2a2fd1e2ad6 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/tools/gx/gxrate.py
+3cc09a9c1a2db681c0f2016bc821af5b674d34834dbd6f195b9d482ce7c0ff58 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/tools/gx/gxunit.py
+b6172d58749c0b3b9138570c74827bcb23bf5db4ff9643740768cd7782ac4ca6 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/tools/gx/regen_check.py
+ad8fe9811c6ea0d89c795caef48686cfca600f5d540ebfd5d1251d6777cec7cf ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/inputs/e8/tools/gx/regen_check_e8.py
+bf66f785878f636616ceab193e5a222143945ea06fc2f13dfb99b204ebba82ff ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/pins-e8.json
+44e8ae8a5b915358a97dbed5fe4e70195ed3581fd45a216df48fc82a029db87d ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/portable_complex.py
+29479da1547cd39cf20fe387cde4cad847a2880266db9d0ef3fb474f68591feb ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/complex/regress_pr346.py
+1161d23b459f7d981d6716073745909126d5465018cbbea7e6e6a9e4e5d68add ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/export_p10.py
+aee70c242a2f1d225528fabe2002e1564d1dc884797c07d28a831c7878ee9098 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/pricing/base_two_moment.py
+fc03e8f7bf73d7d70346b87c835d44508b0581c9ff9aec708fbbd4f0121e0394 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/pricing/certify_bit.py
+d55d2b865d1c3d35e343e1a38c592b9172ed8e2596d1107e34d92e2a80c7d03f ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/pricing/cost.py
+81cbc864e106418fc7854322746f72180cb8110ff39f74450a3b8d55a82c1482 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/pricing/moment.py
+c1ebb52163a7219504c728a5c2b098bf1e50bf20148a2879c5a74c3cadc7c03c ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/pricing/outer.py
+7bd5cb48537621f1217d174274d42483da4e2d02feec238643c798c36b30366a ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/pricing/prime_new.py
+98cd03bc9582e7bd0ab194c191ea8eea940539e510051443ab9fd3e572a364ab ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/pricing/prime_witnesses.py
+38c3f78daac118395565a65fa3543b1c349638ff2519ce7fda0dad2d788e90ae ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/pricing/tile_check.py
+9f5c05aa4d172478f2ab67e7bb83cacebfccc10ecba650c23539cdcee18f2139 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/provenance.py
+6c288f6f234b528c1a7c0a4adfb724e91e0fe6b18c8dffad96af3f973de1829a ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/code/stage_cohort.py
+caabc13126e8f87d08f7697f51512cb3431ff52861f4190149251d8e19224430 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/data/bit/BASE-RECORDS.bin.gz
+35070b83d12ebc60003ed344315328713134a43bdb04217c2c5cbc39e101391f ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/data/bit/BASE-frames.json.gz
+1e37ae5001447dd78a8287d8aa23d73a1d5862c4017f44db49af327f58d7cf22 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/data/bit/BASE-states.json.gz
+e7fe9d0686829ad5acf7930698b3c81a866ae834422aa3c9a12057dfae627175 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/data/bit/FINAL-NEW-FRAMES.json
+fc4f1986da4585dc1721bcd954a95b3ffb2b562cc7031f40242de81664e3acb6 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/data/bit/FINAL-RECORDS.bin.gz
+21f732671eb34468be2252d4dfb81bdec4e7d7cd6564b93a482c2dd925e9c3b2 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/data/bit/RECORD-SHA256SUMS
+e037cd3d19d68e08523d09fce1c5f92206567784eb59f1924d93a837e4302fce ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/data/bit/labels.json
+f94a5dca42cbb88e9650f8f8a3ffbd1153636dfc0a48da5f7a7fca908c0650ad ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/receipts/complex-guard-e8.json
+36316b6cfe423b56cda1fd52843e56c997d060e33d26b732b3ecf4de3ae83aaa ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/receipts/kappa.json
+32e291f249b4eab8d65664d10c94208fe2154bdb4a45aaff84e9e8da5295a29f ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/receipts/official-five-stage-columns.json
+7e675b7720f056548c1ee9f9de523eea10e6b014ddf90b7a630fd96163acbce6 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/receipts/official-legality.json
+ca0825e0ae3db2855af7535ebdc4775beadbb6f07f8d3a84f0f4fd5b95ba5eae ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/requirements.txt
+1a05c0b31ea37b2b5a4b84f6f9f504af8dd4220e13a6d9d86f64b2a731a903c7 ./complex377/work/native358/vendor/complex-reserve/upstream/pr352/verify.sh
+aa6f05c39404b4038c31c72f9fe7a8e137df911f6cb6fc668e316be37c40b126 ./complex377/work/native358/vendor/complex-reserve/verify.py
+abda2e4c73ecb48d29c30c12bc9a5c2db71d11a35667b4298788ec9154eeec7b ./complex377/work/odd-stages/RECIPE-9.json
+30c33508d02aeb8823dc477e8027bf6d44740aea0d3a3970fd2490aaf3b072d0 ./complex377/work/odd-stages/audit_nine_template.py
+2982ead07721e83358dc67c6f49c2b4c16a236a6bebdfd72f58221be1f5d0962 ./complex377/work/odd-stages/clifford_exact.py
+e4faf656403720f78223934bec90c667086453d449323c85fa839d19829b4517 ./complex377/work/odd-stages/complex_candidate.py
+671d6f8144c6d31e1766c6a0e144172da661a63f86b3d4d17fe2710f3ef752c4 ./complex377/work/odd-stages/data_phases.py
+7e33e6ca88b11e28544bf7d43b02252208d4355369a14adb2aa8baa15773e42a ./complex377/work/odd-stages/global_nine.py
+0dc5b5a23bba5b4532cd11a290019d66d56ead611dddd3c40e2c9d0df64da198 ./complex377/work/odd-stages/outer_fixed.py
+5d8cf110150c66f2e2df58ea4e24096f335740e2ae726a4778347d98053cfa76 ./complex377/work/odd-stages/verify_clifford_frames.py
+aee70c242a2f1d225528fabe2002e1564d1dc884797c07d28a831c7878ee9098 ./complex377/work/pr361/code/engines/base_two_moment.py
+81cbc864e106418fc7854322746f72180cb8110ff39f74450a3b8d55a82c1482 ./complex377/work/pr361/code/engines/moment.py
+c1ebb52163a7219504c728a5c2b098bf1e50bf20148a2879c5a74c3cadc7c03c ./complex377/work/pr361/code/engines/outer.py
+4b92f00fc7454b9b15e6d71a3b05062792eacca0a0ca4efee46f87827d57c8aa ./complex377/work/pr361/complex/gcert1-e8-r783.json.gz
+cfc30216f441a1c44a533f2f26954f90e454136af8842c497de4e2da9bd32d8d ./data/bit/RECORD-SHA256SUMS
+1fb726ea3818fe0837cceb0dd22a71a0814f064e5e781628104610d6468e0e55 ./data/bit/bitE8-r865.json.gz
+caabc13126e8f87d08f7697f51512cb3431ff52861f4190149251d8e19224430 ./data/regression-p10/BASE-RECORDS.bin.gz
+35070b83d12ebc60003ed344315328713134a43bdb04217c2c5cbc39e101391f ./data/regression-p10/BASE-frames.json.gz
+1e37ae5001447dd78a8287d8aa23d73a1d5862c4017f44db49af327f58d7cf22 ./data/regression-p10/BASE-states.json.gz
+0bd464f873b0f59622026793affb308bf087833de6f3197202adc7a36d9d0782 ./data/regression-p10/receipts-loans/banks.json.gz
+82b21b4e6bb4b20e0ecbca44f59941362f57a26a019f179e19b5b7b86262a116 ./data/regression-p10/receipts-loans/finite.json.gz
+7dccea4b8c4a81597779dc0944297d5f60efd9e2e5b19469417712e2192c6cca ./data/regression-p10/receipts-loans/global_result.json.gz
+c4074b86171c5bde8fbbff6df0022a116f17e11f0d2116ae3dfe75c8b2a18c64 ./data/regression-p10/receipts-loans/math.json.gz
+505c13c667230e946e708d7c9086de34d1c5e259a557f6685765054001e29981 ./data/regression-p10/receipts-loans/raw.json.gz
+e7bb691b741227ce389ff6341fa0548ff8f638cc492a06be40fcd829fac0bed9 ./data/regression-p10/receipts-loans/scalar.json.gz
+1939ad706e192fb3781e8a0018880b1c6291ded07d40edc4048ab1a0e48f71ee ./requirements.txt
+d535e6d1386a1d5a5a30c90384cf3f758f66fb2b7d6ce71118de7389bebf8fe2 ./verify.sh
diff --git a/research/e8-nine-stage-low-read/source381/NOTICE-PR352.md b/research/e8-nine-stage-low-read/source381/NOTICE-PR352.md
new file mode 100644
index 0000000000..4f9a0194a3
--- /dev/null
+++ b/research/e8-nine-stage-low-read/source381/NOTICE-PR352.md
@@ -0,0 +1,33 @@
+# Attribution and provenance
+
+Prepared by DaysSky, assisted with Claude. Apache-2.0 (see `LICENSE`) applies to the new code and to the inherited Apache-2.0
+code below; third-party notices are preserved where files are vendored.
+
+- **Complex supplier: the E8 unit** (`code/complex/inputs/e8/`): Jacob Sussman, jacobalansussman/wht-power-saving-lean
+ at `9c94857bbaee886f8649edee0bc2d3c738f9555e` (Apache-2.0, Copyright 2026 Jacob Sussman; his `LICENSE` and `NOTICE`
+ are vendored beside the files). The certificate `tools/certificate/gcert1-e8-r783.json.gz`, the 24 Lean modules and
+ the comparator configuration of his kernel-checked theorem `wht_main_block_B2Ge8x`, his Lean-data generators
+ (`tools/gx/{gxgen,gxrate,gxbind,gxunit,gxcore,gsmirror,gxpaths,regen_check,regen_check_e8}.py`,
+ `tools/gen/{foldlib,foldgen,gen_rates,gen_sharp}.py` and templates) and his stand-alone `tools/e8/replay.py` are
+ vendored byte-identical and sha-pinned in `code/complex/inputs/complex/source-pins.json`. His README credits
+ devices from this repository in the unit: slot reuse with a compensating read (jamesyc #124, eumemic #143), late
+ pairing (Chafik Boukhalfa #200/#233), the in-place pair (icekylinx #184, carried in ikeboy's #191/#193).
+- **Bit word, Design T, twin condensation, checkers and engines** (`data/bit/`, `code/builders/`, `code/checkers/`,
+ `code/pricing/`, `code/export_p10.py`, `code/stage_cohort.py`): unchanged from LJH-217's PR #346 at
+ `11b4de5ff8ed5fccf55d4af1043358d257308e8e`, which builds on DreamingOfClouds' PR #325 p10b word and PR #315 engines
+ (#285/#276 gen5/gen4 lineage on eumemic's PR168 generator and source527 package, PR #200's physical rules, hcg890
+ and Jacob Sussman's five-stage architecture, Evan McKinney's completed banks), utcorvusvolat-dotcom's w3 Design T,
+ twin condensation and verifier (PR #310) and PR #266's official checkers. See PR #346's notice for detail.
+ `json.hpp`: Niels Lohmann, MIT license in its header.
+- **Complex checks** (`code/complex/portable_complex.py`, `code/complex/code/`, `code/complex/inputs/complex/`):
+ PR #315's portable complex checks as ported to p = 10 in PR #346 (#256/#233/#202/#200/#194/#184 lineage:
+ icekylinx, Chafik Boukhalfa, Avi Eisenberg, eumemic and others). Jacob Sussman's `gx.check1`, `gxcore` and pinned
+ Lean chain sources under `code/complex/inputs/complex/sources` are unchanged from PR #346 (byte-identical at
+ `9c94857` except his `ORIGIN.md`, kept at `f010392`).
+- **New here**: `code/complex/code/scatter.py` and the generalization of the label, scalar, splice and guard checks
+ from the paired-cube star scatter with h centres of rank h − 2 to any gx scatter (table or star) with any number
+ of retained totals of any rank (regression: on PR #346's p = 10 program the generalized checks give byte-identical
+ scalar schedules, splice programs, primitive expansions, ledger and precision guard); the generalized final-climb
+ partition; the E8 pins; the Lean-binding and replay steps of `certify_complex.py`; `verify.sh` changes.
+
+Credits do not imply endorsement or review by the credited authors.
diff --git a/research/e8-nine-stage-low-read/source381/NOTICE.md b/research/e8-nine-stage-low-read/source381/NOTICE.md
new file mode 100644
index 0000000000..4bfe56e6c9
--- /dev/null
+++ b/research/e8-nine-stage-low-read/source381/NOTICE.md
@@ -0,0 +1,33 @@
+# Attribution and provenance
+
+Prepared by DaysSky, assisted with Claude. Apache-2.0 (see `LICENSE`) applies to the new code and to the inherited
+Apache-2.0 code; third-party notices are preserved where files are vendored. The `SOURCE-pr*.json` files record, by git
+blob id, every file taken unchanged from PR #370, #363, #373, #375 and #377.
+
+## Vendored
+
+- **`complex377/`**: PR #377 (Zhihao Chen, jacklightChen) at `d0a620fcc99ba012468d61d01f5bb14007076d50`,
+ `research/nine-stage-complex-e8/`, byte for byte, with its own `MANIFEST.json`, verifier, construction argument,
+ `LICENSE` and vendored notices. It is built on Jacob Sussman's E8 unit (jacobalansussman/wht-power-saving-lean at
+ `9c94857`, Apache-2.0) through PR #352, and its vendored notices retain the five-stage, completed-bank, compiler and
+ analytic-framework credits. PR #377 states that it was prepared with OpenAI Codex assistance.
+- **The E8 bit word and the bit-side checks** (`data/`, `code/bit/`, `code/pricing/`, `NOTICE-PR352.md`, `LICENSE`):
+ PR #370 (Dylan Crow, utcorvusvolat-dotcom) at `b7fe9cd`. PR #370's notice gives their lineage: PR #266's official
+ cohort checkers as generalized by PR #346; the source527/p10 `finite_check.py`, `geometry527.py` and
+ `global_lowering.py` (eumemic; PR #200, Chafik Boukhalfa; PR234, hcg890 / Henry Grant, on Jacob Sussman's five-stage
+ architecture; Evan McKinney's completed banks; DreamingOfClouds and Chafik Boukhalfa's p = 10 ports); and PR #315's
+ engines. `json.hpp`: Niels Lohmann, MIT license in its header.
+- **`code/complex/code/bridged.py`**: PR #363 (DaysSky) at `9df55da`.
+- **The K-parameterized bit checkers** (`columns_k.cpp`, `geometry_k.py`, `tile_k.py`, `certify_bit_k.py`, `finite_k.py`,
+ `receipts_k.py`): PR #373 / PR #375 (DaysSky).
+
+## New in this package
+
+- `geometry_k.py`: the option `unsplit`, which skips the splits and reports the least halving degree.
+- `certify_bit_k.py`: the option `unsplit` and the halving degree in the receipt.
+- `finite_k.py`: the least halving degree in place of the half-shrink assertion, and the internal row reserve
+ t·(d + 1). At t = 1 it is the PR #370 bill.
+- `verify.sh`, `code/provenance.py`, `README.md`, this notice, `MANIFEST.sha256`, the provenance files and the
+ workflow.
+
+Credits do not imply endorsement or review by the credited authors.
diff --git a/research/e8-nine-stage-low-read/source381/README.md b/research/e8-nine-stage-low-read/source381/README.md
new file mode 100644
index 0000000000..ed223f037c
--- /dev/null
+++ b/research/e8-nine-stage-low-read/source381/README.md
@@ -0,0 +1,111 @@
+κ = 9.95656966441037e-4
+
+# The E8 bit word in the nine-stage bridged word, with PR #377's nine-stage E8 complex component
+
+This package gives a conditional finite construction with **κ = 995656966441037/10¹⁸ ≈ 9.95656966441037·10⁻⁴**, which
+is above 2⁻¹⁰ = 9.765625·10⁻⁴:
+
+- +2.94 % over #380 (9.67261003170394e-4), which pairs PR #377's complex component with the seven-stage bit word;
+- +4.34 % over #375 (9.5424356568133e-4).
+
+| side | supplier | layout | coarse saving |
+| --- | --- | --- | ---: |
+| bit | PR #370's E8 bit word `bitE8-r865` (h = 8, v = 120, R = 865, 9 centres), unchanged | **B₄**: nine stages, m = 72, idle climbs unsplit (max child 50, halving degree 2) | c = 249162322049641/(25·10¹⁶) ≈ **9.96649288198564·10⁻⁴** |
+| complex | PR #377's compressed nine-stage E8 component (Sussman's unit), vendored unchanged | m = 73, banks, halving degree 2 | b = 999240641319551/10¹⁸ ≈ 9.99240641319551·10⁻⁴ |
+
+The bit side binds. κ is the bit-bound assembly of PR #315's `outer.assembly`: all 47 constraints hold, and the
+adjacent 10⁻¹⁸ grid point is rejected.
+
+## The bit side: B₄, unsplit
+
+PR #373 put the bit word in the bridged word B_K of PR #363 with K = 3. Its K-parameterized checkers run here at K = 4:
+four bank pairs per class and nine invocations, with m = 9·8 = 72 and W = 8v + R = 1,825. The deficit is
+8v − 9·72 = 312 per unit.
+
+As in PR #375 for the complex side, the idle climbs are **not split** below m/2. The B₄ idle climbs of the bit word
+are:
+
+ [50] | [14, 7, 36] | [28, 7, 22] | [42, 7, 8]
+
+The largest child is 50 of 72, and 72² = 5184 > 2·50² = 5000, so the halving degree is two. Split below m/2, B₄
+would price at 9.5702·10⁻⁴. Unsplit B₃ gives 9.9123·10⁻⁴.
+
+**Banks.** 9 stages × 865 helper residuals of width 8 tile width-72 banks with 9 residuals each. Since 865 ≡ 1 (mod
+9), this takes **T = 9 literal replicas**, and gives 865 exact banks.
+
+## What is checked (`bash research/e8-nine-stage-kappa/verify.sh