diff --git a/research/r439-two-sided-compensation/CERTIFICATE.json b/research/r439-two-sided-compensation/CERTIFICATE.json new file mode 100644 index 0000000000..bdbe161603 --- /dev/null +++ b/research/r439-two-sided-compensation/CERTIFICATE.json @@ -0,0 +1,1562 @@ +{ + "B": 10562318, + "D_adds": 5760, + "F": 71907, + "baseline_sha256": "5642fd0e35a1acc11acff8d0c08350c1617e95f310d4d35ad63a651f9eeeba0b", + "candidate_sha256": "fdb1a0dfafe5392e01fb87f5813737db0f15682c5cb98fc224d4d4cdbc806dd2", + "census_sha256": "0994d83fb946309c93f499b329cca99f7dfc0a8e3d2cd03b5b571e5ab74bb306", + "format": "r439-two-sided/1", + "guard_rejections": [], + "helper_pairs": 192, + "max_pair_gain": 19, + "middle_weight": 4764, + "native_ADDs": 11980, + "nine_stage_prefix_bits": 192, + "overlap_skips": 2106, + "pair_scores": 192282, + "parent_sha256": "6aec2c6f91c87a7440af10cdeb90b8814501224a86de14d4033ae3ffa00899da", + "payload_bits": 102, + "positive_pairs": 2298, + "saved_beyond_parent": 1228, + "seed": 5, + "steps": [ + { + "B": 9534616, + "F": 49743, + "a": 129, + "b": 155, + "gain": 19, + "middle_weight": 6355 + }, + { + "B": 9534616, + "F": 49743, + "a": 58, + "b": 38, + "gain": 19, + "middle_weight": 6334 + }, + { + "B": 9534616, + "F": 49743, + "a": 52, + "b": 62, + "gain": 17, + "middle_weight": 6315 + }, + { + "B": 9534616, + "F": 49939, + "a": 239, + "b": 229, + "gain": 15, + "middle_weight": 6298 + }, + { + "B": 9540838, + "F": 49939, + "a": 123, + "b": 158, + "gain": 15, + "middle_weight": 6281 + }, + { + "B": 9541828, + "F": 49971, + "a": 131, + "b": 149, + "gain": 14, + "middle_weight": 6265 + }, + { + "B": 9541828, + "F": 50067, + "a": 79, + "b": 189, + "gain": 14, + "middle_weight": 6249 + }, + { + "B": 9541828, + "F": 50083, + "a": 434, + "b": 374, + "gain": 14, + "middle_weight": 6233 + }, + { + "B": 9541828, + "F": 50143, + "a": 134, + "b": 98, + "gain": 13, + "middle_weight": 6218 + }, + { + "B": 9541828, + "F": 50143, + "a": 284, + "b": 152, + "gain": 13, + "middle_weight": 6203 + }, + { + "B": 9541828, + "F": 50175, + "a": 84, + "b": 160, + "gain": 13, + "middle_weight": 6188 + }, + { + "B": 9541828, + "F": 50183, + "a": 31, + "b": 7, + "gain": 13, + "middle_weight": 6173 + }, + { + "B": 9541828, + "F": 50279, + "a": 202, + "b": 37, + "gain": 13, + "middle_weight": 6158 + }, + { + "B": 9541828, + "F": 51467, + "a": 196, + "b": 32, + "gain": 13, + "middle_weight": 6143 + }, + { + "B": 9541828, + "F": 51467, + "a": 9, + "b": 237, + "gain": 12, + "middle_weight": 6129 + }, + { + "B": 9541828, + "F": 51599, + "a": 72, + "b": 68, + "gain": 12, + "middle_weight": 6115 + }, + { + "B": 9541828, + "F": 51995, + "a": 101, + "b": 144, + "gain": 12, + "middle_weight": 6101 + }, + { + "B": 9541828, + "F": 51995, + "a": 113, + "b": 142, + "gain": 12, + "middle_weight": 6087 + }, + { + "B": 9541828, + "F": 51995, + "a": 296, + "b": 332, + "gain": 12, + "middle_weight": 6073 + }, + { + "B": 9541828, + "F": 51995, + "a": 266, + "b": 96, + "gain": 12, + "middle_weight": 6059 + }, + { + "B": 9541828, + "F": 52083, + "a": 273, + "b": 126, + "gain": 12, + "middle_weight": 6045 + }, + { + "B": 9597692, + "F": 52171, + "a": 274, + "b": 114, + "gain": 12, + "middle_weight": 6031 + }, + { + "B": 9597692, + "F": 52219, + "a": 63, + "b": 214, + "gain": 11, + "middle_weight": 6018 + }, + { + "B": 9597692, + "F": 52235, + "a": 285, + "b": 133, + "gain": 11, + "middle_weight": 6005 + }, + { + "B": 9597692, + "F": 52295, + "a": 43, + "b": 39, + "gain": 11, + "middle_weight": 5992 + }, + { + "B": 9597692, + "F": 53483, + "a": 212, + "b": 55, + "gain": 11, + "middle_weight": 5979 + }, + { + "B": 9597692, + "F": 53483, + "a": 41, + "b": 192, + "gain": 11, + "middle_weight": 5966 + }, + { + "B": 9597692, + "F": 53483, + "a": 208, + "b": 35, + "gain": 11, + "middle_weight": 5953 + }, + { + "B": 9605606, + "F": 53615, + "a": 169, + "b": 191, + "gain": 11, + "middle_weight": 5940 + }, + { + "B": 9605606, + "F": 53639, + "a": 234, + "b": 15, + "gain": 11, + "middle_weight": 5927 + }, + { + "B": 9605606, + "F": 53639, + "a": 390, + "b": 403, + "gain": 11, + "middle_weight": 5914 + }, + { + "B": 9605606, + "F": 54827, + "a": 16, + "b": 26, + "gain": 11, + "middle_weight": 5901 + }, + { + "B": 9605606, + "F": 54895, + "a": 199, + "b": 50, + "gain": 10, + "middle_weight": 5889 + }, + { + "B": 9610476, + "F": 55023, + "a": 182, + "b": 73, + "gain": 10, + "middle_weight": 5877 + }, + { + "B": 9610476, + "F": 55023, + "a": 203, + "b": 36, + "gain": 10, + "middle_weight": 5865 + }, + { + "B": 9610476, + "F": 55023, + "a": 377, + "b": 437, + "gain": 10, + "middle_weight": 5853 + }, + { + "B": 9610476, + "F": 55023, + "a": 309, + "b": 346, + "gain": 10, + "middle_weight": 5841 + }, + { + "B": 9610476, + "F": 55119, + "a": 371, + "b": 409, + "gain": 10, + "middle_weight": 5829 + }, + { + "B": 9650838, + "F": 55179, + "a": 115, + "b": 151, + "gain": 10, + "middle_weight": 5817 + }, + { + "B": 9650838, + "F": 55223, + "a": 12, + "b": 30, + "gain": 10, + "middle_weight": 5805 + }, + { + "B": 9650838, + "F": 55271, + "a": 209, + "b": 51, + "gain": 10, + "middle_weight": 5793 + }, + { + "B": 9650838, + "F": 55271, + "a": 236, + "b": 5, + "gain": 10, + "middle_weight": 5781 + }, + { + "B": 9650838, + "F": 55279, + "a": 195, + "b": 211, + "gain": 9, + "middle_weight": 5770 + }, + { + "B": 9654018, + "F": 55279, + "a": 314, + "b": 42, + "gain": 9, + "middle_weight": 5759 + }, + { + "B": 9654018, + "F": 55279, + "a": 18, + "b": 1, + "gain": 9, + "middle_weight": 5748 + }, + { + "B": 9654018, + "F": 55295, + "a": 122, + "b": 103, + "gain": 9, + "middle_weight": 5737 + }, + { + "B": 9662752, + "F": 55295, + "a": 94, + "b": 171, + "gain": 9, + "middle_weight": 5726 + }, + { + "B": 9662752, + "F": 55295, + "a": 429, + "b": 381, + "gain": 9, + "middle_weight": 5715 + }, + { + "B": 9662752, + "F": 55363, + "a": 46, + "b": 205, + "gain": 9, + "middle_weight": 5704 + }, + { + "B": 9667326, + "F": 55543, + "a": 54, + "b": 217, + "gain": 9, + "middle_weight": 5693 + }, + { + "B": 9679936, + "F": 55567, + "a": 139, + "b": 99, + "gain": 9, + "middle_weight": 5682 + }, + { + "B": 9679936, + "F": 55567, + "a": 364, + "b": 327, + "gain": 9, + "middle_weight": 5671 + }, + { + "B": 9679936, + "F": 55567, + "a": 125, + "b": 146, + "gain": 9, + "middle_weight": 5660 + }, + { + "B": 9679936, + "F": 55903, + "a": 29, + "b": 69, + "gain": 8, + "middle_weight": 5650 + }, + { + "B": 9693366, + "F": 55947, + "a": 64, + "b": 87, + "gain": 8, + "middle_weight": 5640 + }, + { + "B": 9696008, + "F": 55947, + "a": 66, + "b": 82, + "gain": 8, + "middle_weight": 5630 + }, + { + "B": 9696008, + "F": 56171, + "a": 85, + "b": 170, + "gain": 8, + "middle_weight": 5620 + }, + { + "B": 9696008, + "F": 56171, + "a": 227, + "b": 28, + "gain": 8, + "middle_weight": 5610 + }, + { + "B": 9696008, + "F": 56231, + "a": 351, + "b": 315, + "gain": 8, + "middle_weight": 5600 + }, + { + "B": 9696008, + "F": 56363, + "a": 25, + "b": 21, + "gain": 8, + "middle_weight": 5590 + }, + { + "B": 9696008, + "F": 56543, + "a": 154, + "b": 105, + "gain": 8, + "middle_weight": 5580 + }, + { + "B": 9696008, + "F": 56543, + "a": 392, + "b": 416, + "gain": 8, + "middle_weight": 5570 + }, + { + "B": 9696008, + "F": 56543, + "a": 80, + "b": 74, + "gain": 8, + "middle_weight": 5560 + }, + { + "B": 9696008, + "F": 56543, + "a": 232, + "b": 23, + "gain": 8, + "middle_weight": 5550 + }, + { + "B": 9696008, + "F": 56543, + "a": 336, + "b": 295, + "gain": 8, + "middle_weight": 5540 + }, + { + "B": 9696008, + "F": 56591, + "a": 40, + "b": 193, + "gain": 8, + "middle_weight": 5530 + }, + { + "B": 9696008, + "F": 56607, + "a": 112, + "b": 124, + "gain": 8, + "middle_weight": 5520 + }, + { + "B": 9696008, + "F": 56607, + "a": 260, + "b": 281, + "gain": 8, + "middle_weight": 5510 + }, + { + "B": 9696008, + "F": 56703, + "a": 91, + "b": 70, + "gain": 8, + "middle_weight": 5500 + }, + { + "B": 9696008, + "F": 56771, + "a": 83, + "b": 172, + "gain": 8, + "middle_weight": 5490 + }, + { + "B": 9881228, + "F": 57167, + "a": 110, + "b": 120, + "gain": 8, + "middle_weight": 5480 + }, + { + "B": 9881228, + "F": 57191, + "a": 404, + "b": 389, + "gain": 7, + "middle_weight": 5471 + }, + { + "B": 9924566, + "F": 57191, + "a": 27, + "b": 17, + "gain": 7, + "middle_weight": 5462 + }, + { + "B": 9930372, + "F": 57287, + "a": 44, + "b": 197, + "gain": 7, + "middle_weight": 5453 + }, + { + "B": 9946174, + "F": 57683, + "a": 14, + "b": 235, + "gain": 7, + "middle_weight": 5444 + }, + { + "B": 9946174, + "F": 57695, + "a": 337, + "b": 306, + "gain": 7, + "middle_weight": 5435 + }, + { + "B": 9946174, + "F": 57695, + "a": 419, + "b": 395, + "gain": 7, + "middle_weight": 5426 + }, + { + "B": 9946174, + "F": 57695, + "a": 258, + "b": 316, + "gain": 7, + "middle_weight": 5417 + }, + { + "B": 9946174, + "F": 57695, + "a": 391, + "b": 420, + "gain": 7, + "middle_weight": 5408 + }, + { + "B": 9946174, + "F": 57695, + "a": 369, + "b": 415, + "gain": 7, + "middle_weight": 5399 + }, + { + "B": 9946174, + "F": 57779, + "a": 92, + "b": 180, + "gain": 7, + "middle_weight": 5390 + }, + { + "B": 9946174, + "F": 57779, + "a": 270, + "b": 119, + "gain": 7, + "middle_weight": 5381 + }, + { + "B": 9950752, + "F": 57779, + "a": 102, + "b": 132, + "gain": 7, + "middle_weight": 5372 + }, + { + "B": 9957362, + "F": 57875, + "a": 220, + "b": 34, + "gain": 7, + "middle_weight": 5363 + }, + { + "B": 9957362, + "F": 57939, + "a": 375, + "b": 435, + "gain": 7, + "middle_weight": 5354 + }, + { + "B": 9957362, + "F": 58051, + "a": 426, + "b": 367, + "gain": 6, + "middle_weight": 5346 + }, + { + "B": 9957362, + "F": 58867, + "a": 173, + "b": 89, + "gain": 6, + "middle_weight": 5338 + }, + { + "B": 9957362, + "F": 58935, + "a": 300, + "b": 430, + "gain": 6, + "middle_weight": 5330 + }, + { + "B": 9957362, + "F": 62103, + "a": 176, + "b": 67, + "gain": 6, + "middle_weight": 5322 + }, + { + "B": 9957362, + "F": 62131, + "a": 178, + "b": 75, + "gain": 6, + "middle_weight": 5314 + }, + { + "B": 9957362, + "F": 62607, + "a": 78, + "b": 188, + "gain": 6, + "middle_weight": 5306 + }, + { + "B": 9957362, + "F": 62607, + "a": 282, + "b": 0, + "gain": 6, + "middle_weight": 5298 + }, + { + "B": 9957362, + "F": 62703, + "a": 393, + "b": 417, + "gain": 6, + "middle_weight": 5290 + }, + { + "B": 9961796, + "F": 63099, + "a": 372, + "b": 421, + "gain": 6, + "middle_weight": 5282 + }, + { + "B": 9961796, + "F": 63099, + "a": 345, + "b": 310, + "gain": 6, + "middle_weight": 5274 + }, + { + "B": 9976818, + "F": 63219, + "a": 216, + "b": 45, + "gain": 6, + "middle_weight": 5266 + }, + { + "B": 9976818, + "F": 63615, + "a": 223, + "b": 49, + "gain": 6, + "middle_weight": 5258 + }, + { + "B": 9976818, + "F": 63631, + "a": 330, + "b": 361, + "gain": 6, + "middle_weight": 5250 + }, + { + "B": 9976818, + "F": 63663, + "a": 432, + "b": 379, + "gain": 6, + "middle_weight": 5242 + }, + { + "B": 9976818, + "F": 63663, + "a": 230, + "b": 2, + "gain": 6, + "middle_weight": 5234 + }, + { + "B": 9976818, + "F": 63663, + "a": 53, + "b": 219, + "gain": 6, + "middle_weight": 5226 + }, + { + "B": 9976818, + "F": 64011, + "a": 22, + "b": 233, + "gain": 6, + "middle_weight": 5218 + }, + { + "B": 9976818, + "F": 64011, + "a": 408, + "b": 385, + "gain": 6, + "middle_weight": 5210 + }, + { + "B": 9976818, + "F": 64011, + "a": 305, + "b": 341, + "gain": 5, + "middle_weight": 5203 + }, + { + "B": 9976818, + "F": 64043, + "a": 376, + "b": 436, + "gain": 5, + "middle_weight": 5196 + }, + { + "B": 9976818, + "F": 64043, + "a": 57, + "b": 47, + "gain": 5, + "middle_weight": 5189 + }, + { + "B": 9976818, + "F": 64171, + "a": 422, + "b": 402, + "gain": 5, + "middle_weight": 5182 + }, + { + "B": 9976818, + "F": 64171, + "a": 378, + "b": 433, + "gain": 5, + "middle_weight": 5175 + }, + { + "B": 9976818, + "F": 65359, + "a": 410, + "b": 398, + "gain": 5, + "middle_weight": 5168 + }, + { + "B": 9976818, + "F": 65359, + "a": 231, + "b": 3, + "gain": 5, + "middle_weight": 5161 + }, + { + "B": 9976818, + "F": 65403, + "a": 174, + "b": 77, + "gain": 5, + "middle_weight": 5154 + }, + { + "B": 9976818, + "F": 65651, + "a": 226, + "b": 238, + "gain": 5, + "middle_weight": 5147 + }, + { + "B": 9977636, + "F": 65667, + "a": 147, + "b": 143, + "gain": 5, + "middle_weight": 5140 + }, + { + "B": 9977636, + "F": 65667, + "a": 370, + "b": 423, + "gain": 5, + "middle_weight": 5133 + }, + { + "B": 9981136, + "F": 65667, + "a": 251, + "b": 118, + "gain": 5, + "middle_weight": 5126 + }, + { + "B": 9981136, + "F": 65667, + "a": 407, + "b": 386, + "gain": 5, + "middle_weight": 5119 + }, + { + "B": 9981136, + "F": 65675, + "a": 104, + "b": 308, + "gain": 5, + "middle_weight": 5112 + }, + { + "B": 9981136, + "F": 65807, + "a": 322, + "b": 90, + "gain": 5, + "middle_weight": 5105 + }, + { + "B": 9981136, + "F": 65831, + "a": 293, + "b": 347, + "gain": 5, + "middle_weight": 5098 + }, + { + "B": 9981136, + "F": 65831, + "a": 283, + "b": 224, + "gain": 5, + "middle_weight": 5091 + }, + { + "B": 9981136, + "F": 65831, + "a": 140, + "b": 111, + "gain": 5, + "middle_weight": 5084 + }, + { + "B": 9990620, + "F": 65855, + "a": 33, + "b": 206, + "gain": 5, + "middle_weight": 5077 + }, + { + "B": 9990620, + "F": 65939, + "a": 225, + "b": 4, + "gain": 5, + "middle_weight": 5070 + }, + { + "B": 10004594, + "F": 65975, + "a": 400, + "b": 181, + "gain": 4, + "middle_weight": 5064 + }, + { + "B": 10030054, + "F": 66195, + "a": 183, + "b": 179, + "gain": 4, + "middle_weight": 5058 + }, + { + "B": 10063010, + "F": 66207, + "a": 109, + "b": 107, + "gain": 4, + "middle_weight": 5052 + }, + { + "B": 10063010, + "F": 66279, + "a": 401, + "b": 413, + "gain": 4, + "middle_weight": 5046 + }, + { + "B": 10063010, + "F": 66279, + "a": 247, + "b": 257, + "gain": 4, + "middle_weight": 5040 + }, + { + "B": 10100554, + "F": 66279, + "a": 11, + "b": 20, + "gain": 4, + "middle_weight": 5034 + }, + { + "B": 10100554, + "F": 66279, + "a": 333, + "b": 297, + "gain": 4, + "middle_weight": 5028 + }, + { + "B": 10103474, + "F": 66287, + "a": 145, + "b": 100, + "gain": 4, + "middle_weight": 5022 + }, + { + "B": 10169470, + "F": 66467, + "a": 156, + "b": 141, + "gain": 4, + "middle_weight": 5016 + }, + { + "B": 10171312, + "F": 66647, + "a": 397, + "b": 414, + "gain": 4, + "middle_weight": 5010 + }, + { + "B": 10171312, + "F": 66647, + "a": 320, + "b": 162, + "gain": 4, + "middle_weight": 5004 + }, + { + "B": 10171312, + "F": 66647, + "a": 252, + "b": 287, + "gain": 4, + "middle_weight": 4998 + }, + { + "B": 10171312, + "F": 66731, + "a": 190, + "b": 71, + "gain": 4, + "middle_weight": 4992 + }, + { + "B": 10195316, + "F": 66819, + "a": 198, + "b": 24, + "gain": 4, + "middle_weight": 4986 + }, + { + "B": 10196346, + "F": 66879, + "a": 60, + "b": 213, + "gain": 4, + "middle_weight": 4980 + }, + { + "B": 10196346, + "F": 66879, + "a": 384, + "b": 427, + "gain": 4, + "middle_weight": 4974 + }, + { + "B": 10208598, + "F": 67023, + "a": 186, + "b": 161, + "gain": 3, + "middle_weight": 4969 + }, + { + "B": 10208598, + "F": 67023, + "a": 354, + "b": 313, + "gain": 3, + "middle_weight": 4964 + }, + { + "B": 10373362, + "F": 67055, + "a": 271, + "b": 128, + "gain": 3, + "middle_weight": 4959 + }, + { + "B": 10373362, + "F": 67123, + "a": 365, + "b": 326, + "gain": 3, + "middle_weight": 4954 + }, + { + "B": 10373362, + "F": 67147, + "a": 157, + "b": 116, + "gain": 3, + "middle_weight": 4949 + }, + { + "B": 10502550, + "F": 67543, + "a": 168, + "b": 61, + "gain": 3, + "middle_weight": 4944 + }, + { + "B": 10502550, + "F": 67551, + "a": 318, + "b": 349, + "gain": 3, + "middle_weight": 4939 + }, + { + "B": 10502550, + "F": 67551, + "a": 335, + "b": 200, + "gain": 3, + "middle_weight": 4934 + }, + { + "B": 10502550, + "F": 67551, + "a": 290, + "b": 76, + "gain": 3, + "middle_weight": 4929 + }, + { + "B": 10503806, + "F": 67551, + "a": 256, + "b": 242, + "gain": 3, + "middle_weight": 4924 + }, + { + "B": 10503806, + "F": 67551, + "a": 355, + "b": 324, + "gain": 3, + "middle_weight": 4919 + }, + { + "B": 10505666, + "F": 67551, + "a": 108, + "b": 130, + "gain": 3, + "middle_weight": 4914 + }, + { + "B": 10505666, + "F": 67583, + "a": 294, + "b": 276, + "gain": 3, + "middle_weight": 4909 + }, + { + "B": 10505666, + "F": 67611, + "a": 304, + "b": 321, + "gain": 3, + "middle_weight": 4904 + }, + { + "B": 10505666, + "F": 67655, + "a": 338, + "b": 302, + "gain": 3, + "middle_weight": 4899 + }, + { + "B": 10522288, + "F": 67655, + "a": 288, + "b": 153, + "gain": 3, + "middle_weight": 4894 + }, + { + "B": 10522288, + "F": 67655, + "a": 424, + "b": 298, + "gain": 3, + "middle_weight": 4889 + }, + { + "B": 10522288, + "F": 67679, + "a": 175, + "b": 86, + "gain": 2, + "middle_weight": 4885 + }, + { + "B": 10522288, + "F": 67679, + "a": 253, + "b": 246, + "gain": 2, + "middle_weight": 4881 + }, + { + "B": 10522288, + "F": 67679, + "a": 396, + "b": 350, + "gain": 2, + "middle_weight": 4877 + }, + { + "B": 10522288, + "F": 67687, + "a": 323, + "b": 106, + "gain": 2, + "middle_weight": 4873 + }, + { + "B": 10546868, + "F": 67703, + "a": 167, + "b": 88, + "gain": 2, + "middle_weight": 4869 + }, + { + "B": 10546868, + "F": 67731, + "a": 277, + "b": 262, + "gain": 2, + "middle_weight": 4865 + }, + { + "B": 10546868, + "F": 67731, + "a": 254, + "b": 245, + "gain": 2, + "middle_weight": 4861 + }, + { + "B": 10546868, + "F": 67731, + "a": 222, + "b": 248, + "gain": 2, + "middle_weight": 4857 + }, + { + "B": 10546868, + "F": 67731, + "a": 411, + "b": 399, + "gain": 2, + "middle_weight": 4853 + }, + { + "B": 10546868, + "F": 68127, + "a": 275, + "b": 127, + "gain": 2, + "middle_weight": 4849 + }, + { + "B": 10546868, + "F": 68247, + "a": 368, + "b": 221, + "gain": 2, + "middle_weight": 4845 + }, + { + "B": 10546868, + "F": 68319, + "a": 207, + "b": 268, + "gain": 2, + "middle_weight": 4841 + }, + { + "B": 10551326, + "F": 68343, + "a": 187, + "b": 95, + "gain": 2, + "middle_weight": 4837 + }, + { + "B": 10551326, + "F": 68391, + "a": 418, + "b": 394, + "gain": 2, + "middle_weight": 4833 + }, + { + "B": 10551326, + "F": 68391, + "a": 280, + "b": 261, + "gain": 2, + "middle_weight": 4829 + }, + { + "B": 10551326, + "F": 68399, + "a": 359, + "b": 81, + "gain": 2, + "middle_weight": 4825 + }, + { + "B": 10555848, + "F": 68399, + "a": 362, + "b": 329, + "gain": 2, + "middle_weight": 4821 + }, + { + "B": 10555848, + "F": 68399, + "a": 405, + "b": 159, + "gain": 1, + "middle_weight": 4818 + }, + { + "B": 10557070, + "F": 68415, + "a": 267, + "b": 6, + "gain": 1, + "middle_weight": 4815 + }, + { + "B": 10557070, + "F": 68547, + "a": 387, + "b": 406, + "gain": 1, + "middle_weight": 4812 + }, + { + "B": 10557070, + "F": 68723, + "a": 438, + "b": 373, + "gain": 1, + "middle_weight": 4809 + }, + { + "B": 10557070, + "F": 68723, + "a": 356, + "b": 163, + "gain": 1, + "middle_weight": 4806 + }, + { + "B": 10557070, + "F": 68859, + "a": 382, + "b": 331, + "gain": 1, + "middle_weight": 4803 + }, + { + "B": 10557070, + "F": 71235, + "a": 428, + "b": 380, + "gain": 1, + "middle_weight": 4800 + }, + { + "B": 10557070, + "F": 71235, + "a": 286, + "b": 150, + "gain": 1, + "middle_weight": 4797 + }, + { + "B": 10557070, + "F": 71267, + "a": 366, + "b": 325, + "gain": 1, + "middle_weight": 4794 + }, + { + "B": 10557070, + "F": 71295, + "a": 259, + "b": 250, + "gain": 1, + "middle_weight": 4791 + }, + { + "B": 10560744, + "F": 71295, + "a": 319, + "b": 360, + "gain": 1, + "middle_weight": 4788 + }, + { + "B": 10560744, + "F": 71339, + "a": 291, + "b": 19, + "gain": 1, + "middle_weight": 4785 + }, + { + "B": 10560744, + "F": 71339, + "a": 241, + "b": 240, + "gain": 1, + "middle_weight": 4782 + }, + { + "B": 10560744, + "F": 71347, + "a": 263, + "b": 264, + "gain": 1, + "middle_weight": 4779 + }, + { + "B": 10560744, + "F": 71479, + "a": 339, + "b": 303, + "gain": 1, + "middle_weight": 4776 + }, + { + "B": 10560744, + "F": 71479, + "a": 117, + "b": 121, + "gain": 1, + "middle_weight": 4773 + }, + { + "B": 10562318, + "F": 71511, + "a": 352, + "b": 48, + "gain": 1, + "middle_weight": 4770 + }, + { + "B": 10562318, + "F": 71511, + "a": 353, + "b": 317, + "gain": 1, + "middle_weight": 4767 + }, + { + "B": 10562318, + "F": 71907, + "a": 312, + "b": 348, + "gain": 1, + "middle_weight": 4764 + } + ], + "stopping_reason": "completed one sorted disjoint greedy pass on all positive ordered pairs", + "target_shears": 306 +} diff --git a/research/r439-two-sided-compensation/CLAIM.json b/research/r439-two-sided-compensation/CLAIM.json new file mode 100644 index 0000000000..891542f70b --- /dev/null +++ b/research/r439-two-sided-compensation/CLAIM.json @@ -0,0 +1,96 @@ +{ + "pass": 11, + "assignment_seed": 5, + "drawn_at_utc": "2026-10-13T12:26:24.184229+00:00", + "track": "bit supplier", + "source": "secrets.randbelow(100), OS randomness", + "base": "91a2094f2e022930069e8cfdc810a3ea1b81cd09", + "branch": "research/pass11-bit-seed05", + "status": "submitted", + "claimed_at_utc": "2026-10-13T12:36:24.399839+00:00", + "candidate_selection": "Seed 5 modulo 3 selects candidate 2; seed 5 fixes the helper-pair tie order.", + "candidates": [ + { + "object": "Reduce P111 copied rank below 63 with fixed label functionals", + "chosen": false, + "reason": "The fixed class is closed by PR757/761 and PR620." + }, + { + "object": "Append another strictly profitable target shear to PR915", + "chosen": false, + "reason": "PR915 exhausts the 12,210 final one-shear choices and finds maximum paid gain zero." + }, + { + "object": "Two-sided R439 compensation with disjoint helper pairs around the frozen PR915 target basis", + "chosen": true, + "method": "Score helper-column pairs on the actual transformed matrix. Select a deterministic disjoint set, paying both helper shears and admitting only complete positive bounds below the existing local and nine-stage prefix ceilings." + } + ], + "statement": "Keep PR915 target basis fixed and add disjoint restored helper-basis pairs. Form the actual two-sided middle matrix, preserve the complete arbitrary-input D boundary, and count every operation. Compare accepted PR589, pinned PR915 and the composition separately.", + "domain": "All 439*438 = 192,282 ordered helper pairs on the frozen 111-by-439 transformed compensation matrix. One sorted greedy disjoint pass with seed-5 tie order, at most 219 accepted pairs. No target-basis reselection, neutral detours or global matching optimality claim.", + "admission": "The complete word must satisfy 64*F^3*B^2 < 2^104 and 2^18*F^5*B^4 < 2^192. Both F and B are recomputed for the combined word; parent bounds or standalone savings are not added.", + "optimistic_complete_cost": "Starting from 13,208 native ADDs and 6,988 D ADDs: replace the 6,376 helper injections by the actual transformed matrix weight, and add two ADDs per helper pair. The 612 target-basis operations, other 6,220 ADDs, frame moves and nine copies are all retained.", + "stopping_rule": "Complete the ordered-pair census and one guarded disjoint greedy pass. Stop at its end. At most one evidence-driven pivot if the fully charged candidate does not improve its parent.", + "expected_finish": "Approximately 120 minutes, with the final quarter reserved for validation and handoff.", + "coordination": "No pinned sprint coordination issue was found. Current issues #650 and #913 concern Discussions and prose quality. The local claim is separate from the frozen 18-PR review batch.", + "predecessors": { + "915": { + "head": "e9daefe320a0043000bd9746664ed02c3287d056", + "mathematical_head": "7d5ef1dcf994d0542f2d302110b33780f5504ab7", + "use": "Exact frozen target basis and candidate; revalidate its boundary and native bill." + }, + "733": { + "head": "dfe84e09298abc5c5e0074afda59a821e10abfb4", + "author": "Scott Woolsey Biggart", + "use": "Prior two-sided F2 conjugation and mixed-term obligation on R420." + }, + "694": "Greer Guthrie, disjoint restored helper pairs", + "794": "commdata2338, guarded target-basis method", + "917": "Ross Richardson, concurrent two-sided CK compensation in another field/word; no executable or saving imported." + }, + "overlap": { + "open_count": 707, + "latest": 917, + "new_main": "91a2094f freezes an 18-PR follow-up review batch; selected PR799/PR589 result is unchanged. This contribution does not edit that batch or claim approval." + }, + "scope": "Finite construction with the semantic D-boundary contract already required by PR915. Integration still requires acceptance of that contract and a complete updated hosted reconstruction/invoice. No new kappa or measured runtime speedup.", + "completed_at_utc": "2026-10-13T13:08:53.779229+00:00", + "result": { + "pr": 926, + "url": "https://github.com/CrocSwap/integer-mult-bounds/pull/926", + "mathematical_head": "1e9c43ee8dbeeb9aca0e8fdecbf9769db4f4a29e", + "complete_ADDs": { + "selected_PR589": 24305, + "parent_PR915": 13208, + "candidate": 11980 + }, + "D_ADDs": 5760, + "saving_beyond_parent": 1228, + "saving_against_selected_word": 12325, + "helper_pairs": 192, + "middle_weight": 4764, + "F": 71907, + "B": 10562318, + "payload_bits": 102, + "nine_stage_prefix_bits": 192, + "coverage": { + "ordered_pair_scores": 192282, + "positive_pairs": 2298, + "overlap_skips": 2106, + "guard_rejections": 0, + "four_term_coefficients": 48729, + "mixed_term_nonzeros": 7031, + "literal_prefix_instructions": 4760850 + }, + "validation": "Complete receipts match on CPython 3.14.4 and isolated optimized read-only CPython 3.12.3. All three words pass original endpoint and native 5/9/11-stage checks; 144 bridge controls, 19 local controls, 8 package tests. Selected record and whitespace checks pass.", + "integration": "Original H2 and literal K extraction remain false. Requires semantic D acceptance, changed whole-hosted emission/audit, full finite/precision invoices and outer assembly. Nine-stage bound uses about 99.925% of its ceiling; no new kappa.", + "hosted_CI": "Separate from local verification; no hosted success claimed." + }, + "final_refresh": { + "upstream": "91a2094f2e022930069e8cfdc810a3ea1b81cd09", + "open_prs": 714, + "through_pr": 924, + "gist_revision": "4180bf0d4045ffdcd12d75bb1fec91c234420162", + "overlap": "PR917 is complex CK; PR923 changes R439 phase-B frame520 and cleanup. Neither is composed; no new R439 two-sided D construction in snapshot." + } +} diff --git a/research/r439-two-sided-compensation/EXPECTED.json b/research/r439-two-sided-compensation/EXPECTED.json new file mode 100644 index 0000000000..eed21b81f5 --- /dev/null +++ b/research/r439-two-sided-compensation/EXPECTED.json @@ -0,0 +1,1762 @@ +{ + "baseline_sha256": "5642fd0e35a1acc11acff8d0c08350c1617e95f310d4d35ad63a651f9eeeba0b", + "bills": { + "baseline": { + "B": 1113070, + "D_adds": 18085, + "F": 49347, + "native_ADDs": 24305, + "nine_stage_prefix_bits": 177, + "payload_bits": 93 + }, + "candidate": { + "B": 10562318, + "D_adds": 5760, + "F": 71907, + "native_ADDs": 11980, + "nine_stage_prefix_bits": 192, + "payload_bits": 102 + }, + "parent": { + "B": 9534616, + "D_adds": 6988, + "F": 49347, + "native_ADDs": 13208, + "nine_stage_prefix_bits": 189, + "payload_bits": 100 + } + }, + "boundary_columns": 661, + "boundary_words_and_directions": 6, + "candidate_sha256": "fdb1a0dfafe5392e01fb87f5813737db0f15682c5cb98fc224d4d4cdbc806dd2", + "certificate_sha256": "fa9f0223ec67a7f6f448d33448814f455705a31a4bab19bb03d54e33d1b6829d", + "controls": { + "paid_neutral_helper_pair": 2, + "rejected": [ + "missing target preparation passes helper-only columns", + "missing helper preparation passes clean-helper inputs", + "missing helper restoration", + "missing target restoration", + "omitted mixed term", + "stale one-sided middle matrix", + "wrong direction of helper-column change", + "target restoration in forward order", + "nonzero D frame", + "D writes source", + "D reads source", + "helper reads target", + "unpaid helper restoration", + "inherited parent forward bound", + "local payload ceiling equality", + "nine-stage overrun below local cap", + "overlapping helper pairs", + "boolean helper index", + "unrelated cleanup change" + ] + }, + "matrix": { + "coefficients_checked": 48729, + "helper_only_D_cost_for_same_pairs": 14156, + "helper_only_middle_weight_for_same_pairs": 13772, + "mixed_term_nonzeros": 7031 + }, + "native": { + "baseline": { + "common_frame_ADDs": 24305, + "copies": 9, + "erasures": 9, + "paid_histogram": [ + [ + 1, + 1323 + ], + [ + 2, + 1342 + ], + [ + 3, + 79 + ], + [ + 4, + 44 + ], + [ + 5, + 102 + ], + [ + 6, + 11 + ], + [ + 7, + 19 + ] + ], + "rank_mass": 5129, + "records": 27234, + "staged": { + "11": { + "bridge_additions": 2664, + "controls_rejected": 24, + "formal_columns_checked": 1549, + "fresh_center_copies": 99, + "local_raw_H": [ + [ + 1, + 1323 + ], + [ + 2, + 1342 + ], + [ + 3, + 79 + ], + [ + 4, + 44 + ], + [ + 5, + 102 + ], + [ + 6, + 11 + ], + [ + 7, + 19 + ] + ], + "payload_prefix_bits": 93, + "payload_prefix_upper": "9528119495320518471870892800", + "reverse_fresh_center_copies": 45, + "signed_lift_prefix": [ + { + "bits": 16, + "cancellation_free_signed_row_l1_upper": "49347", + "reverse": false + }, + { + "bits": 21, + "cancellation_free_signed_row_l1_upper": "1113070", + "reverse": true + } + ], + "stages": [ + { + "fresh_copies": 9, + "scalar_additions": 24305, + "signed_inverse": false, + "stage": 0 + }, + { + "fresh_copies": 9, + "scalar_additions": 24305, + "signed_inverse": true, + "stage": 1 + }, + { + "fresh_copies": 9, + "scalar_additions": 24305, + "signed_inverse": false, + "stage": 2 + }, + { + "fresh_copies": 9, + "scalar_additions": 24305, + "signed_inverse": true, + "stage": 3 + }, + { + "fresh_copies": 9, + "scalar_additions": 24305, + "signed_inverse": false, + "stage": 4 + }, + { + "fresh_copies": 9, + "scalar_additions": 24305, + "signed_inverse": true, + "stage": 5 + }, + { + "fresh_copies": 9, + "scalar_additions": 24305, + "signed_inverse": false, + "stage": 6 + }, + { + "fresh_copies": 9, + "scalar_additions": 24305, + "signed_inverse": true, + "stage": 7 + }, + { + "fresh_copies": 9, + "scalar_additions": 24305, + "signed_inverse": false, + "stage": 8 + }, + { + "fresh_copies": 9, + "scalar_additions": 24305, + "signed_inverse": true, + "stage": 9 + }, + { + "fresh_copies": 9, + "scalar_additions": 24305, + "signed_inverse": false, + "stage": 10 + } + ] + }, + "5": { + "bridge_additions": 666, + "controls_rejected": 6, + "formal_columns_checked": 883, + "fresh_center_copies": 45, + "local_raw_H": [ + [ + 1, + 1323 + ], + [ + 2, + 1342 + ], + [ + 3, + 79 + ], + [ + 4, + 44 + ], + [ + 5, + 102 + ], + [ + 6, + 11 + ], + [ + 7, + 19 + ] + ], + "payload_prefix_bits": 93, + "payload_prefix_upper": "9528119495320518471870892800", + "reverse_fresh_center_copies": 18, + "signed_lift_prefix": [ + { + "bits": 16, + "cancellation_free_signed_row_l1_upper": "49347", + "reverse": false + }, + { + "bits": 21, + "cancellation_free_signed_row_l1_upper": "1113070", + "reverse": true + } + ], + "stages": [ + { + "fresh_copies": 9, + "scalar_additions": 24305, + "signed_inverse": false, + "stage": 0 + }, + { + "fresh_copies": 9, + "scalar_additions": 24305, + "signed_inverse": true, + "stage": 1 + }, + { + "fresh_copies": 9, + "scalar_additions": 24305, + "signed_inverse": false, + "stage": 2 + }, + { + "fresh_copies": 9, + "scalar_additions": 24305, + "signed_inverse": true, + "stage": 3 + }, + { + "fresh_copies": 9, + "scalar_additions": 24305, + "signed_inverse": false, + "stage": 4 + } + ] + }, + "9": { + "bridge_additions": 1998, + "controls_rejected": 18, + "formal_columns_checked": 1327, + "fresh_center_copies": 81, + "local_raw_H": [ + [ + 1, + 1323 + ], + [ + 2, + 1342 + ], + [ + 3, + 79 + ], + [ + 4, + 44 + ], + [ + 5, + 102 + ], + [ + 6, + 11 + ], + [ + 7, + 19 + ] + ], + "payload_prefix_bits": 93, + "payload_prefix_upper": "9528119495320518471870892800", + "reverse_fresh_center_copies": 36, + "signed_lift_prefix": [ + { + "bits": 16, + "cancellation_free_signed_row_l1_upper": "49347", + "reverse": false + }, + { + "bits": 21, + "cancellation_free_signed_row_l1_upper": "1113070", + "reverse": true + } + ], + "stages": [ + { + "fresh_copies": 9, + "scalar_additions": 24305, + "signed_inverse": false, + "stage": 0 + }, + { + "fresh_copies": 9, + "scalar_additions": 24305, + "signed_inverse": true, + "stage": 1 + }, + { + "fresh_copies": 9, + "scalar_additions": 24305, + "signed_inverse": false, + "stage": 2 + }, + { + "fresh_copies": 9, + "scalar_additions": 24305, + "signed_inverse": true, + "stage": 3 + }, + { + "fresh_copies": 9, + "scalar_additions": 24305, + "signed_inverse": false, + "stage": 4 + }, + { + "fresh_copies": 9, + "scalar_additions": 24305, + "signed_inverse": true, + "stage": 5 + }, + { + "fresh_copies": 9, + "scalar_additions": 24305, + "signed_inverse": false, + "stage": 6 + }, + { + "fresh_copies": 9, + "scalar_additions": 24305, + "signed_inverse": true, + "stage": 7 + }, + { + "fresh_copies": 9, + "scalar_additions": 24305, + "signed_inverse": false, + "stage": 8 + } + ] + } + } + }, + "candidate": { + "common_frame_ADDs": 11980, + "copies": 9, + "erasures": 9, + "paid_histogram": [ + [ + 1, + 1323 + ], + [ + 2, + 1342 + ], + [ + 3, + 79 + ], + [ + 4, + 44 + ], + [ + 5, + 102 + ], + [ + 6, + 11 + ], + [ + 7, + 19 + ] + ], + "rank_mass": 5129, + "records": 14909, + "staged": { + "11": { + "bridge_additions": 2664, + "controls_rejected": 24, + "formal_columns_checked": 1549, + "fresh_center_copies": 99, + "local_raw_H": [ + [ + 1, + 1323 + ], + [ + 2, + 1342 + ], + [ + 3, + 79 + ], + [ + 4, + 44 + ], + [ + 5, + 102 + ], + [ + 6, + 11 + ], + [ + 7, + 19 + ] + ], + "payload_prefix_bits": 102, + "payload_prefix_upper": "2654678678257550221373682862848", + "reverse_fresh_center_copies": 45, + "signed_lift_prefix": [ + { + "bits": 17, + "cancellation_free_signed_row_l1_upper": "71907", + "reverse": false + }, + { + "bits": 24, + "cancellation_free_signed_row_l1_upper": "10562318", + "reverse": true + } + ], + "stages": [ + { + "fresh_copies": 9, + "scalar_additions": 11980, + "signed_inverse": false, + "stage": 0 + }, + { + "fresh_copies": 9, + "scalar_additions": 11980, + "signed_inverse": true, + "stage": 1 + }, + { + "fresh_copies": 9, + "scalar_additions": 11980, + "signed_inverse": false, + "stage": 2 + }, + { + "fresh_copies": 9, + "scalar_additions": 11980, + "signed_inverse": true, + "stage": 3 + }, + { + "fresh_copies": 9, + "scalar_additions": 11980, + "signed_inverse": false, + "stage": 4 + }, + { + "fresh_copies": 9, + "scalar_additions": 11980, + "signed_inverse": true, + "stage": 5 + }, + { + "fresh_copies": 9, + "scalar_additions": 11980, + "signed_inverse": false, + "stage": 6 + }, + { + "fresh_copies": 9, + "scalar_additions": 11980, + "signed_inverse": true, + "stage": 7 + }, + { + "fresh_copies": 9, + "scalar_additions": 11980, + "signed_inverse": false, + "stage": 8 + }, + { + "fresh_copies": 9, + "scalar_additions": 11980, + "signed_inverse": true, + "stage": 9 + }, + { + "fresh_copies": 9, + "scalar_additions": 11980, + "signed_inverse": false, + "stage": 10 + } + ] + }, + "5": { + "bridge_additions": 666, + "controls_rejected": 6, + "formal_columns_checked": 883, + "fresh_center_copies": 45, + "local_raw_H": [ + [ + 1, + 1323 + ], + [ + 2, + 1342 + ], + [ + 3, + 79 + ], + [ + 4, + 44 + ], + [ + 5, + 102 + ], + [ + 6, + 11 + ], + [ + 7, + 19 + ] + ], + "payload_prefix_bits": 102, + "payload_prefix_upper": "2654678678257550221373682862848", + "reverse_fresh_center_copies": 18, + "signed_lift_prefix": [ + { + "bits": 17, + "cancellation_free_signed_row_l1_upper": "71907", + "reverse": false + }, + { + "bits": 24, + "cancellation_free_signed_row_l1_upper": "10562318", + "reverse": true + } + ], + "stages": [ + { + "fresh_copies": 9, + "scalar_additions": 11980, + "signed_inverse": false, + "stage": 0 + }, + { + "fresh_copies": 9, + "scalar_additions": 11980, + "signed_inverse": true, + "stage": 1 + }, + { + "fresh_copies": 9, + "scalar_additions": 11980, + "signed_inverse": false, + "stage": 2 + }, + { + "fresh_copies": 9, + "scalar_additions": 11980, + "signed_inverse": true, + "stage": 3 + }, + { + "fresh_copies": 9, + "scalar_additions": 11980, + "signed_inverse": false, + "stage": 4 + } + ] + }, + "9": { + "bridge_additions": 1998, + "controls_rejected": 18, + "formal_columns_checked": 1327, + "fresh_center_copies": 81, + "local_raw_H": [ + [ + 1, + 1323 + ], + [ + 2, + 1342 + ], + [ + 3, + 79 + ], + [ + 4, + 44 + ], + [ + 5, + 102 + ], + [ + 6, + 11 + ], + [ + 7, + 19 + ] + ], + "payload_prefix_bits": 102, + "payload_prefix_upper": "2654678678257550221373682862848", + "reverse_fresh_center_copies": 36, + "signed_lift_prefix": [ + { + "bits": 17, + "cancellation_free_signed_row_l1_upper": "71907", + "reverse": false + }, + { + "bits": 24, + "cancellation_free_signed_row_l1_upper": "10562318", + "reverse": true + } + ], + "stages": [ + { + "fresh_copies": 9, + "scalar_additions": 11980, + "signed_inverse": false, + "stage": 0 + }, + { + "fresh_copies": 9, + "scalar_additions": 11980, + "signed_inverse": true, + "stage": 1 + }, + { + "fresh_copies": 9, + "scalar_additions": 11980, + "signed_inverse": false, + "stage": 2 + }, + { + "fresh_copies": 9, + "scalar_additions": 11980, + "signed_inverse": true, + "stage": 3 + }, + { + "fresh_copies": 9, + "scalar_additions": 11980, + "signed_inverse": false, + "stage": 4 + }, + { + "fresh_copies": 9, + "scalar_additions": 11980, + "signed_inverse": true, + "stage": 5 + }, + { + "fresh_copies": 9, + "scalar_additions": 11980, + "signed_inverse": false, + "stage": 6 + }, + { + "fresh_copies": 9, + "scalar_additions": 11980, + "signed_inverse": true, + "stage": 7 + }, + { + "fresh_copies": 9, + "scalar_additions": 11980, + "signed_inverse": false, + "stage": 8 + } + ] + } + } + }, + "parent": { + "common_frame_ADDs": 13208, + "copies": 9, + "erasures": 9, + "paid_histogram": [ + [ + 1, + 1323 + ], + [ + 2, + 1342 + ], + [ + 3, + 79 + ], + [ + 4, + 44 + ], + [ + 5, + 102 + ], + [ + 6, + 11 + ], + [ + 7, + 19 + ] + ], + "rank_mass": 5129, + "records": 16137, + "staged": { + "11": { + "bridge_additions": 2664, + "controls_rejected": 24, + "formal_columns_checked": 1549, + "fresh_center_copies": 99, + "local_raw_H": [ + [ + 1, + 1323 + ], + [ + 2, + 1342 + ], + [ + 3, + 79 + ], + [ + 4, + 44 + ], + [ + 5, + 102 + ], + [ + 6, + 11 + ], + [ + 7, + 19 + ] + ], + "payload_prefix_bits": 100, + "payload_prefix_upper": "699147249763640764132165496832", + "reverse_fresh_center_copies": 45, + "signed_lift_prefix": [ + { + "bits": 16, + "cancellation_free_signed_row_l1_upper": "49347", + "reverse": false + }, + { + "bits": 24, + "cancellation_free_signed_row_l1_upper": "9534616", + "reverse": true + } + ], + "stages": [ + { + "fresh_copies": 9, + "scalar_additions": 13208, + "signed_inverse": false, + "stage": 0 + }, + { + "fresh_copies": 9, + "scalar_additions": 13208, + "signed_inverse": true, + "stage": 1 + }, + { + "fresh_copies": 9, + "scalar_additions": 13208, + "signed_inverse": false, + "stage": 2 + }, + { + "fresh_copies": 9, + "scalar_additions": 13208, + "signed_inverse": true, + "stage": 3 + }, + { + "fresh_copies": 9, + "scalar_additions": 13208, + "signed_inverse": false, + "stage": 4 + }, + { + "fresh_copies": 9, + "scalar_additions": 13208, + "signed_inverse": true, + "stage": 5 + }, + { + "fresh_copies": 9, + "scalar_additions": 13208, + "signed_inverse": false, + "stage": 6 + }, + { + "fresh_copies": 9, + "scalar_additions": 13208, + "signed_inverse": true, + "stage": 7 + }, + { + "fresh_copies": 9, + "scalar_additions": 13208, + "signed_inverse": false, + "stage": 8 + }, + { + "fresh_copies": 9, + "scalar_additions": 13208, + "signed_inverse": true, + "stage": 9 + }, + { + "fresh_copies": 9, + "scalar_additions": 13208, + "signed_inverse": false, + "stage": 10 + } + ] + }, + "5": { + "bridge_additions": 666, + "controls_rejected": 6, + "formal_columns_checked": 883, + "fresh_center_copies": 45, + "local_raw_H": [ + [ + 1, + 1323 + ], + [ + 2, + 1342 + ], + [ + 3, + 79 + ], + [ + 4, + 44 + ], + [ + 5, + 102 + ], + [ + 6, + 11 + ], + [ + 7, + 19 + ] + ], + "payload_prefix_bits": 100, + "payload_prefix_upper": "699147249763640764132165496832", + "reverse_fresh_center_copies": 18, + "signed_lift_prefix": [ + { + "bits": 16, + "cancellation_free_signed_row_l1_upper": "49347", + "reverse": false + }, + { + "bits": 24, + "cancellation_free_signed_row_l1_upper": "9534616", + "reverse": true + } + ], + "stages": [ + { + "fresh_copies": 9, + "scalar_additions": 13208, + "signed_inverse": false, + "stage": 0 + }, + { + "fresh_copies": 9, + "scalar_additions": 13208, + "signed_inverse": true, + "stage": 1 + }, + { + "fresh_copies": 9, + "scalar_additions": 13208, + "signed_inverse": false, + "stage": 2 + }, + { + "fresh_copies": 9, + "scalar_additions": 13208, + "signed_inverse": true, + "stage": 3 + }, + { + "fresh_copies": 9, + "scalar_additions": 13208, + "signed_inverse": false, + "stage": 4 + } + ] + }, + "9": { + "bridge_additions": 1998, + "controls_rejected": 18, + "formal_columns_checked": 1327, + "fresh_center_copies": 81, + "local_raw_H": [ + [ + 1, + 1323 + ], + [ + 2, + 1342 + ], + [ + 3, + 79 + ], + [ + 4, + 44 + ], + [ + 5, + 102 + ], + [ + 6, + 11 + ], + [ + 7, + 19 + ] + ], + "payload_prefix_bits": 100, + "payload_prefix_upper": "699147249763640764132165496832", + "reverse_fresh_center_copies": 36, + "signed_lift_prefix": [ + { + "bits": 16, + "cancellation_free_signed_row_l1_upper": "49347", + "reverse": false + }, + { + "bits": 24, + "cancellation_free_signed_row_l1_upper": "9534616", + "reverse": true + } + ], + "stages": [ + { + "fresh_copies": 9, + "scalar_additions": 13208, + "signed_inverse": false, + "stage": 0 + }, + { + "fresh_copies": 9, + "scalar_additions": 13208, + "signed_inverse": true, + "stage": 1 + }, + { + "fresh_copies": 9, + "scalar_additions": 13208, + "signed_inverse": false, + "stage": 2 + }, + { + "fresh_copies": 9, + "scalar_additions": 13208, + "signed_inverse": true, + "stage": 3 + }, + { + "fresh_copies": 9, + "scalar_additions": 13208, + "signed_inverse": false, + "stage": 4 + }, + { + "fresh_copies": 9, + "scalar_additions": 13208, + "signed_inverse": true, + "stage": 5 + }, + { + "fresh_copies": 9, + "scalar_additions": 13208, + "signed_inverse": false, + "stage": 6 + }, + { + "fresh_copies": 9, + "scalar_additions": 13208, + "signed_inverse": true, + "stage": 7 + }, + { + "fresh_copies": 9, + "scalar_additions": 13208, + "signed_inverse": false, + "stage": 8 + } + ] + } + } + } + }, + "nine_stage_prefix_bound": { + "baseline": { + "bits": 177, + "bound": "117742596540718658156527847560864213734191286190080000" + }, + "candidate": { + "bits": 192, + "bound": "6272385284143355252940491378432965655169900286360795742208" + }, + "formula": "2^18 * F^5 * B^4", + "parent": { + "bits": 189, + "bound": "633952218342189222305933054575935669674977721489175871488" + }, + "source_charge_bits": 192 + }, + "parent_sha256": "6aec2c6f91c87a7440af10cdeb90b8814501224a86de14d4033ae3ffa00899da", + "predecessor_files": { + "vendor/pr733/README.md": "af2d829749b369ef4bcda42a3fbaef20652121663a61f7242fb988e0f63e2d1c", + "vendor/pr915/CERTIFICATE.json": "a9958d9a933b57dcb9f7e5cf8e9694c0762f055a1cdab9f8ab42b2c6561fc4d7", + "vendor/pr915/EXPECTED.json": "5607287aab393ed6e95a76f69c1a2c02ef271a6ae901e2448ad7858a501884ba", + "vendor/pr915/LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "vendor/pr915/NOTICE.md": "efbb1d2b2c85cbdbb7b048e2b7405e0654dfa40ddf6a1e94f11df313bdedb638", + "vendor/pr915/PROOF.md": "ddb5c3affbef52fa37af13b291bf089ca16f9dfe976e5a5590188b128b262425", + "vendor/pr915/README.md": "0c606598a6366bc0e6840d853c28237f8e5fe5866d89765d79815f973224f1fd", + "vendor/pr915/SOURCES.json": "abee8b99a79fce8a53ea7522ec490200ad0585093684b13883af1dec337158f0", + "vendor/pr915/candidate.json.gz": "ac30266144f8772ec8cd629153993aa9eb692fe745a9f95015a1b7fa88977a2e" + }, + "recipe": { + "guard_rejections": 0, + "helper_pairs": 192, + "literal_prefix_instructions_checked": 4760850, + "max_pair_gain": 19, + "middle_weight": 4764, + "overlap_skips": 2106, + "pair_scores": 192282, + "positive_pairs": 2298, + "saved_beyond_parent": 1228, + "target_shears": 306 + }, + "source_checks": { + "baseline": { + "conclusions": { + "C_is_U_inverse": true, + "J_identity": true, + "K_equals_D": true, + "U_block_form": true + }, + "full": { + "columns": 661, + "gates": { + "A": 2075, + "B": 712, + "C": 2574, + "D": 111 + }, + "scatter_terms": 527, + "totals": [ + { + "frame": 510, + "hyperplane_of_punctured_line": [ + 0, + 1, + 1, + 0, + -1, + 0, + 0, + 1 + ], + "rank": 7, + "register": 472 + }, + { + "frame": 511, + "hyperplane_of_punctured_line": [ + 0, + 1, + -1, + 0, + -1, + 0, + 0, + -1 + ], + "rank": 7, + "register": 473 + }, + { + "frame": 512, + "hyperplane_of_punctured_line": [ + 0, + 1, + 1, + 0, + 0, + -1, + -1, + 0 + ], + "rank": 7, + "register": 474 + }, + { + "frame": 513, + "hyperplane_of_punctured_line": [ + 0, + 1, + -1, + 0, + 0, + 1, + -1, + 0 + ], + "rank": 7, + "register": 475 + }, + { + "frame": 514, + "hyperplane_of_punctured_line": [ + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ], + "rank": 7, + "register": 476 + }, + { + "frame": 515, + "hyperplane_of_punctured_line": [ + 1, + 1, + -1, + 1, + 0, + 0, + 0, + 0 + ], + "rank": 7, + "register": 477 + }, + { + "frame": 516, + "hyperplane_of_punctured_line": [ + 1, + 0, + 0, + 1, + 1, + 0, + 0, + 1 + ], + "rank": 7, + "register": 478 + }, + { + "frame": 517, + "hyperplane_of_punctured_line": [ + 0, + 0, + 1, + 1, + 0, + 0, + 1, + -1 + ], + "rank": 7, + "register": 479 + }, + { + "frame": 518, + "hyperplane_of_punctured_line": [ + 0, + 1, + 0, + -1, + 0, + -1, + 0, + -1 + ], + "rank": 7, + "register": 480 + } + ] + }, + "hypotheses": { + "H1_no_target_feeds_z": true, + "H2_D_frame0_targets_from_helpers": true, + "H3_A_z_only_scatter_targets_B_split": true, + "H4_C_literal_reverse_at_full": true, + "H5_V_identity": true + }, + "info": { + "B_target_reads_of_registers_rewritten_earlier_in_B": 111, + "B_z_operand_kinds": { + "helper<-helper": 3, + "helper<-source": 13, + "source<-helper": 108, + "source<-source": 375 + }, + "B_z_operand_kinds_by_dim": { + "dim4:helper<-source": 13, + "dim4:source<-source": 375, + "dim6:helper<-helper": 3, + "dim6:source<-helper": 108 + }, + "B_z_write_frame_dims": { + "4": 388, + "6": 111 + }, + "B_z_writes_after_a_target_read_of_the_same_register": 454, + "cleanup_gates": 2574, + "helper_writes_B": 16, + "source_writes_A": 0, + "source_writes_B": 483, + "sources_rewritten_B": 108, + "target_reads_of_targets": 0, + "z_gates_A": 2075, + "z_gates_B": 499 + }, + "labels": { + "frames": 636, + "gram_det": 1, + "labels": 111, + "lattice_rank": 8, + "punctured": 9, + "root_lines": 120 + } + }, + "candidate": { + "conclusions": { + "C_is_U_inverse": true, + "J_identity": true, + "K_equals_D": false, + "U_block_form": true + }, + "full": { + "columns": 661, + "gates": { + "A": 2075, + "B": 712, + "C": 2574, + "D": 1107 + }, + "scatter_terms": 527, + "totals": [ + { + "frame": 510, + "hyperplane_of_punctured_line": [ + 0, + 1, + 1, + 0, + -1, + 0, + 0, + 1 + ], + "rank": 7, + "register": 472 + }, + { + "frame": 511, + "hyperplane_of_punctured_line": [ + 0, + 1, + -1, + 0, + -1, + 0, + 0, + -1 + ], + "rank": 7, + "register": 473 + }, + { + "frame": 512, + "hyperplane_of_punctured_line": [ + 0, + 1, + 1, + 0, + 0, + -1, + -1, + 0 + ], + "rank": 7, + "register": 474 + }, + { + "frame": 513, + "hyperplane_of_punctured_line": [ + 0, + 1, + -1, + 0, + 0, + 1, + -1, + 0 + ], + "rank": 7, + "register": 475 + }, + { + "frame": 514, + "hyperplane_of_punctured_line": [ + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ], + "rank": 7, + "register": 476 + }, + { + "frame": 515, + "hyperplane_of_punctured_line": [ + 1, + 1, + -1, + 1, + 0, + 0, + 0, + 0 + ], + "rank": 7, + "register": 477 + }, + { + "frame": 516, + "hyperplane_of_punctured_line": [ + 1, + 0, + 0, + 1, + 1, + 0, + 0, + 1 + ], + "rank": 7, + "register": 478 + }, + { + "frame": 517, + "hyperplane_of_punctured_line": [ + 0, + 0, + 1, + 1, + 0, + 0, + 1, + -1 + ], + "rank": 7, + "register": 479 + }, + { + "frame": 518, + "hyperplane_of_punctured_line": [ + 0, + 1, + 0, + -1, + 0, + -1, + 0, + -1 + ], + "rank": 7, + "register": 480 + } + ] + }, + "hypotheses": { + "H1_no_target_feeds_z": true, + "H2_D_frame0_targets_from_helpers": false, + "H3_A_z_only_scatter_targets_B_split": true, + "H4_C_literal_reverse_at_full": true, + "H5_V_identity": true + }, + "info": { + "B_target_reads_of_registers_rewritten_earlier_in_B": 111, + "B_z_operand_kinds": { + "helper<-helper": 3, + "helper<-source": 13, + "source<-helper": 108, + "source<-source": 375 + }, + "B_z_operand_kinds_by_dim": { + "dim4:helper<-source": 13, + "dim4:source<-source": 375, + "dim6:helper<-helper": 3, + "dim6:source<-helper": 108 + }, + "B_z_write_frame_dims": { + "4": 388, + "6": 111 + }, + "B_z_writes_after_a_target_read_of_the_same_register": 454, + "cleanup_gates": 2574, + "helper_writes_B": 16, + "source_writes_A": 0, + "source_writes_B": 483, + "sources_rewritten_B": 108, + "target_reads_of_targets": 0, + "z_gates_A": 2075, + "z_gates_B": 499 + }, + "labels": { + "frames": 636, + "gram_det": 1, + "labels": 111, + "lattice_rank": 8, + "punctured": 9, + "root_lines": 120 + } + }, + "parent": { + "conclusions": { + "C_is_U_inverse": true, + "J_identity": true, + "K_equals_D": false, + "U_block_form": true + }, + "full": { + "columns": 661, + "gates": { + "A": 2075, + "B": 712, + "C": 2574, + "D": 723 + }, + "scatter_terms": 527, + "totals": [ + { + "frame": 510, + "hyperplane_of_punctured_line": [ + 0, + 1, + 1, + 0, + -1, + 0, + 0, + 1 + ], + "rank": 7, + "register": 472 + }, + { + "frame": 511, + "hyperplane_of_punctured_line": [ + 0, + 1, + -1, + 0, + -1, + 0, + 0, + -1 + ], + "rank": 7, + "register": 473 + }, + { + "frame": 512, + "hyperplane_of_punctured_line": [ + 0, + 1, + 1, + 0, + 0, + -1, + -1, + 0 + ], + "rank": 7, + "register": 474 + }, + { + "frame": 513, + "hyperplane_of_punctured_line": [ + 0, + 1, + -1, + 0, + 0, + 1, + -1, + 0 + ], + "rank": 7, + "register": 475 + }, + { + "frame": 514, + "hyperplane_of_punctured_line": [ + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ], + "rank": 7, + "register": 476 + }, + { + "frame": 515, + "hyperplane_of_punctured_line": [ + 1, + 1, + -1, + 1, + 0, + 0, + 0, + 0 + ], + "rank": 7, + "register": 477 + }, + { + "frame": 516, + "hyperplane_of_punctured_line": [ + 1, + 0, + 0, + 1, + 1, + 0, + 0, + 1 + ], + "rank": 7, + "register": 478 + }, + { + "frame": 517, + "hyperplane_of_punctured_line": [ + 0, + 0, + 1, + 1, + 0, + 0, + 1, + -1 + ], + "rank": 7, + "register": 479 + }, + { + "frame": 518, + "hyperplane_of_punctured_line": [ + 0, + 1, + 0, + -1, + 0, + -1, + 0, + -1 + ], + "rank": 7, + "register": 480 + } + ] + }, + "hypotheses": { + "H1_no_target_feeds_z": true, + "H2_D_frame0_targets_from_helpers": false, + "H3_A_z_only_scatter_targets_B_split": true, + "H4_C_literal_reverse_at_full": true, + "H5_V_identity": true + }, + "info": { + "B_target_reads_of_registers_rewritten_earlier_in_B": 111, + "B_z_operand_kinds": { + "helper<-helper": 3, + "helper<-source": 13, + "source<-helper": 108, + "source<-source": 375 + }, + "B_z_operand_kinds_by_dim": { + "dim4:helper<-source": 13, + "dim4:source<-source": 375, + "dim6:helper<-helper": 3, + "dim6:source<-helper": 108 + }, + "B_z_write_frame_dims": { + "4": 388, + "6": 111 + }, + "B_z_writes_after_a_target_read_of_the_same_register": 454, + "cleanup_gates": 2574, + "helper_writes_B": 16, + "source_writes_A": 0, + "source_writes_B": 483, + "sources_rewritten_B": 108, + "target_reads_of_targets": 0, + "z_gates_A": 2075, + "z_gates_B": 499 + }, + "labels": { + "frames": 636, + "gram_det": 1, + "labels": 111, + "lattice_rank": 8, + "punctured": 9, + "root_lines": 120 + } + } + }, + "source_files": { + "research/e8-bit-carrier-skeleton/LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "research/e8-bit-carrier-skeleton/NOTICE.md": "5f4b7fcbf99f572be28b6da612ce775363908cdfc7810f7aca167be01c86e49a", + "research/e8-bit-carrier-skeleton/code/bit/checkers/columns_k.cpp": "1c344d18fcd494eeca93e259f10cafae7705780e6592f6dcb35b34752dab9bc2", + "research/e8-bit-carrier-skeleton/code/bit/checkers/json.hpp": "aaf127c04cb31c406e5b04a63f1ae89369fccde6d8fa7cdda1ed4f32dfc5de63", + "research/e8-bit-carrier-skeleton/code/bit/checkers/legality_h.cpp": "6c1ef2b24e57781d6951c172a1024fc4300e6fd392c9d6672079a7806ab663b3", + "research/e8-bit-carrier-skeleton/code/bit/export_records.py": "8a5999601f917dbb492bb9ae9a344611f18cc7cedc53dc3c76496a369e530eb3", + "research/e8-bit-carrier-skeleton/code/bit/regression/stage_cohort.py": "6c288f6f234b528c1a7c0a4adfb724e91e0fe6b18c8dffad96af3f973de1829a", + "research/e8-bit-carrier-skeleton/portable-include/bits/stdc++.h": "420094be2af295eed03a983dd66debbbe9cfb78d8252859f4498a615a0074b99", + "research/e8-bit-p111-tuned/LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "research/e8-bit-p111-tuned/NOTICE.md": "5b88eb2b7de76aa2a3288ee3c7a08d18a5eadfa82f5e7a99e207d232aed71221", + "research/e8-bit-p111-tuned/code/xcheck_p.py": "af3decc877e27c00001cf56f50c6c09566e8e101297ab34c7860aed96a06d80e", + "research/e8-bit-p111-tuned/tune/EXPECTED.json": "b9f0e5ca038abe837b0007c8fe006f366a6f02009244ac57705a8a200e2301f4", + "research/e8-bit-p111-tuned/tune/bitE8mut-p111-tuned.json.gz": "e3e301e62bc2b41dbf1ceac0acf3d35824ebeab1848c5a2142d4577b109da52f", + "research/e8-bit-p111-tuned/vendor/pr510/e8-r480-nine-stage/vendor/e8-r715-eleven-stage-whole/code/global_k.py": "6368196a393ac25bb2918880e4c4bd31ed733b762c27b6873ab391cbc0c5c3c8" + }, + "status": "PASS_R439_TWO_SIDED_COMPENSATION" +} diff --git a/research/r439-two-sided-compensation/LICENSE b/research/r439-two-sided-compensation/LICENSE new file mode 100644 index 0000000000..261eeb9e9f --- /dev/null +++ b/research/r439-two-sided-compensation/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/r439-two-sided-compensation/NOTICE.md b/research/r439-two-sided-compensation/NOTICE.md new file mode 100644 index 0000000000..19b5b9f61e --- /dev/null +++ b/research/r439-two-sided-compensation/NOTICE.md @@ -0,0 +1,65 @@ +# Notice and attribution + +New code and documentation are Apache-2.0. Prepared for Gareth Davidson +(@bitplane), with substantial OpenAI Codex assistance in research, +implementation, proof, verification and packaging. One AI agent performed +the work. Algorithmic independence does not imply independent human review. + +**Scott Woolsey Biggart (@swbiggart), PR733**, at +`dfe84e09298abc5c5e0074afda59a821e10abfb4`, supplies the prior two-sided binary +basis composition and the explicit mixed-term verification obligation. Its +README is retained verbatim under `vendor/pr733/`, with SHA256 and Git-blob +pins in SOURCES.json. It discloses substantial OpenAI Codex assistance. No +PR733 executable or numerical saving is imported. This package changes the +selected R439 word around a fixed overlapping target basis and checks the +complete nine-stage prefix guard after every accepted helper pair. + +**PR915**, at `e9daefe320a0043000bd9746664ed02c3287d056`, is this contributor's +immediate target-basis parent. Its word, recipe, receipt, proof, README, +notice, source manifest and license are retained verbatim. I/O utilities, +package tests, native-runner structure and some verification routines are +adapted from that contribution. The native harness follows **Sagar Thakrar's +`research/r420-decoder-sharing/native.py`** validation pattern. This version +checks all three complete words and charges both increased positive bounds. +Relative links in archival vendored documents refer to their original +packages; the parent source manifest is preserved for provenance, not used +to claim that all of its historical dependencies are imported here. + +The original word derives from **DreamingOfClouds's PR589** +(`a5afc8c6169ea61ba7c51dfd3cade02cc7b13b46`), tuning **eumemic's PR555/543**. +DreamingOfClouds disclosed Claude Opus 5.5 via Claude Code; eumemic's retained +notice discloses Anthropic Claude assistance. Transport precedents include +Dugongue's PR541/548 and rohanarun's PR542. The immutable in-tree notices and +licenses for the tuned word and carrier skeleton are pinned inputs. LICENSE +here is copied from that Apache-2.0 lineage. Only D changes in the candidate. + +Prior mechanisms and semantic-interface credit remain with: + +- **Mikhail R. Gadelha**, PR686: restored helper pairs and semantic D-boundary + substitution. +- **Greer Guthrie**, PR694: simultaneous disjoint helper-basis construction. +- **Scott Woolsey Biggart**, PR713, and **Sagar Thakrar**, PR716: target-basis + compensation, with OpenAI Codex assistance. +- **commdata2338**, PR794: guarded target-basis search and positive-vector + bounds, inherited through PR915; its incremental implementation is not + used by this new helper-pair search. +- **Dugongue**, PR476/478: reversible target-factoring precedent. +- **navinor**, PR848: the selected R439 sharing barrier under unchanged H2. + This package explicitly requires a semantic replacement for H2. +- **Ross Richardson**, concurrent PR917: a two-sided compensation example + for historical CK over another field. No code or saving is imported. + +The unmodified owning tools retain their cumulative notices: **eumemic** for +the punctured checker and carrier skeleton; **Dylan Crow / +utcorvusvolat-dotcom** (PR370) for exporter, staging and native checker +lineage; **DaysSky** (PR381) for bridged-stage checks; **Zhihao Chen / +jacklightChen** (PR386) for the portable header and common-label interface +lineage; **DreamingOfClouds** for nine-stage accounting and the global +template; **Chafik Boukhalfa** and other credited contributors for hosted +compilation, physical routes and audits. Their original AI disclosures +remain in the source notices. **Niels Lohmann and contributors** retain the +MIT header in `json.hpp`. **Jacob Sussman** introduced the E8 unit. + +No priority is claimed for basis factoring, the mixed-term identity or the +semantic-prefix contract. Source pins, the finite construction and remaining +integration obligations are recorded separately. diff --git a/research/r439-two-sided-compensation/PROOF.md b/research/r439-two-sided-compensation/PROOF.md new file mode 100644 index 0000000000..21952a5faf --- /dev/null +++ b/research/r439-two-sided-compensation/PROOF.md @@ -0,0 +1,141 @@ +# Exact two-sided prefix substitution and complete cost + +All endpoint matrices in this section act over F2. Integer positive prefix +bounds are checked separately; equality of the forward integer operators is +not claimed. Fix the input hashes in SOURCES.json and the 111 target rows and +439 helper columns of the selected PR589 compensation matrix K. Physical +targets are registers 111 through 221; helpers are 222 through 660. + +## Restored arbitrary-input boundary + +Let E be the product of PR915's 306 target transvections in their actual +execution order. If T1 is executed first, E = T306 ... T1. Let H be the +product of helper transvections `helper[a] ^= helper[b]` for the 192 disjoint +pairs in CERTIFICATE.json. Each transvection is its own inverse over F2. +Disjointness implies that the helper transvections commute and H inverse = H. +The target transvections need not commute; E inverse is executed by reversing +their order. + +The emitted D acts on arbitrary `(x, y, s)` as follows: + +1. Helpers become Hs. +2. Targets become Ey. +3. Targets become Ey + (E K H inverse)(Hs) = Ey + EKs. +4. Applying E inverse to targets gives y + Ks. +5. Applying H inverse to helpers restores s. + +Sources x are never read or written in D. All D operands start and remain at +frame zero. Every helper is restored before A, and targets have the same +value and frame as after the original D. All non-D fields are identical, so +the entire unchanged suffix receives the original boundary state. This is +the exact semantic substitution needed under the inherited realization +assumptions. + +The original H2 only permits helper-to-target additions. It is false for +both PR915 and this word. The original literal K extractor is also false. +We retain both predicates unchanged and require them to be reported false. +The replacement contract is the complete legal D boundary above. H1, H3, +H4 and H5, and all other source-checker conclusions, remain true. Acceptance +of the replacement contract is a maintainer review obligation. + +## Column orientation, mixed term and savings + +For a helper transvection a <- b, H has entry (a,b) in addition to I. Right +multiplication changes **column b by column a**. Thus its paid gain on the +current transformed matrix R = EK is + +```text +weight(R[:,b]) - weight(R[:,b] XOR R[:,a]) - 2. +``` + +The two charged ADDs prepare and restore the actual helper. Because accepted +pairs use disjoint helper indices, the columns of a later admissible pair +have not changed. Their initial pair score is therefore still exact. The +builder sorts all positive scores by `(-gain, tie, a, b)` and walks the list +once. A trial is admitted only after the complete combined word satisfies +both positive-bound ceilings. The independent verifier uses sets for pair +scores and explicit literal instructions for the full positive replay. + +Write A = E-I and B = H-I. Then + +```text +E K H = K + A K + K B + A K B. +``` + +For each row i and column j, the independent check computes these four +terms directly using E's row supports and the original K. Since helper +pairs are disjoint, column j of B has at most one nonzero entry. This checks +all 111 * 439 = 48,729 coefficients without using the builder's packed-column +updates. The mixed term AKB has 7,031 nonzero coefficients. Removing exactly +that term from the emitted middle produces a different full D operator. + +The exact middle weight decreases from 6,376 to 4,764, saving 1,612 helper +reads. Preparing and restoring 192 helpers costs 384 ADDs, leaving a net +gain of 1,228. The fixed target preparation and restoration cost 612. Hence + +```text +D = 192 + 306 + 4,764 + 306 + 192 = 5,760 ADDs. +complete word = 5,760 + 6,220 = 11,980 ADDs. +``` + +The same helper pairs used alone on K would have middle weight 13,772 and D +cost 14,156, saving 3,929 against the original D. Adding that standalone +saving to PR915's 11,097 would suggest 15,026, which is incorrect for this +composition. Its actual saving against PR589 is 12,325. This is why the +combined matrix and full bill are rebuilt. + +## Full-word positive bounds and resources + +Replace each signed scalar ADD by addition of nonnegative input bounds. +Copies inherit their source bound and erasures reset the copy slot. Record +the greatest coordinate at every prefix, separately for the forward word +and its reverse, interchanging copy and erasure roles. This triangle- +inequality calculation bounds signed execution; it does not use F2 +cancellation. Each instruction is counted and each temporary copy is paid. + +The builder computes whole-macro bounds, whose coordinate maxima occur at +their final positive addition because donors are distinct from destinations +and unchanged during a macro. The verifier lowers all individual additions, +copies and erasures. The unchanged C++ native checker gives a third replay. +All agree on F = 71,907 and B = 10,562,318 for the candidate. Both exceed +their parent values and are charged rather than inherited. + +Every accepted partial word obeys `64 F^3 B^2 < 2^104` and +`2^18 F^5 B^4 < 2^192`. These caps were declared before nomination. The local +bound is 102 bits, and the nine-stage bound is 192 bits. The latter is +strictly below 2^192 by +`4716451243325510895298044774700760932455158103238770688`. +Only about 0.075% of that numerical ceiling remains. verify.py binds the +nine-stage formula to the source's `2^nb F^(K+1) B^K`, at K = 4 and +nb = 6(K-1) = 18, and reproduces its baseline 177-bit receipt. + +There are 439 existing helpers and nine retained rank-seven totals. Every +register's MOVE path, the COPY/ERASE subsequence and the paid histogram +`{1:1323, 2:1342, 3:79, 4:44, 5:102, 6:11, 7:19}` remain unchanged; the rank +mass is 5,129. No source access, scratch register, frame change, recursive +child or copied total is added. At 5/9/11 stages the new ADD savings beyond +PR915 are 6,140 / 11,052 / 13,508. Against PR589 they are +61,625 / 110,925 / 135,575. Existing bridge costs are 666 / 1,998 / 2,664, +and fresh-copy counts are 45 / 81 / 99. + +## Coverage and remaining work + +The finite search completes all 192,282 ordered pairs and the single sorted +greedy pass. There are 2,298 positive pairs, 192 accepted pairs, 2,106 overlap +skips and no bound rejects. No neutral detours, matching optimum, target +reselection or general circuit optimality is asserted. + +Exact boundary tests cover every source, target and helper column in both +directions for the original, parent and candidate words. In particular, +omitting target preparation can pass helper-only columns but changes dirty +targets; omitting helper preparation can pass clean-helper inputs but changes +dirty inputs. Controls explicitly demonstrate both failures. Disjoint helper +undo order is immaterial, so the order-failure control concerns the +overlapping target basis. + +The finite native checks do not emit the whole hosted supplier or recompute +its complete invoice. Integration must accept the semantic D contract, +rebuild and audit that hosted supplier, recompute all finite costs and +precision allocations, and rerun the outer assembly. These are the remaining +obligations for using this candidate in a conditional bound. The inherited +common-label realization and analytic assumptions remain in force. diff --git a/research/r439-two-sided-compensation/README.md b/research/r439-two-sided-compensation/README.md new file mode 100644 index 0000000000..3b57242ade --- /dev/null +++ b/research/r439-two-sided-compensation/README.md @@ -0,0 +1,150 @@ +# Two-sided compensation for the selected R439 word + +**Finite bit-circuit construction.** Adding 192 disjoint helper pairs around +the frozen target basis from [PR915](https://github.com/CrocSwap/integer-mult-bounds/pull/915) +saves **1,228 further native ADDs**, including both preparation and restoration. +The complete word costs **11,980 ADDs**, compared with 13,208 in PR915 and +24,305 in the selected PR589 word. The saving against PR589 is 12,325 ADDs. + +| Quantity | Selected PR589 | Frozen PR915 | This composition | +|---|---:|---:|---:| +| D ADDs | 18,085 | 6,988 | 5,760 | +| Complete native ADDs | 24,305 | 13,208 | 11,980 | +| Exported records | 27,234 | 16,137 | 14,909 | +| Forward positive prefix F | 49,347 | 49,347 | 71,907 | +| Reverse positive prefix B | 1,113,070 | 9,534,616 | 10,562,318 | +| Local payload bound, bits | 93 | 100 | 102 | +| Nine-stage prefix bound, bits | 177 | 189 | 192 | +| Helpers / copied totals / rank mass | 439 / 9 / 5,129 | same | same | + +The complete D bill is **192 + 306 + 4,764 + 306 + 192 = 5,760**. Every +non-D field is identical to PR589. The native checks compare each register's +ordered MOVE path and all COPY/ERASE records; every paid resource is retained. +Helpers are temporarily changed during D and restored before A. The full D +boundary remains `(x, y, s) -> (x, y + K s, s)` for arbitrary targets and dirt. + +The original syntactic H2 and literal extraction of K remain **false**, as in +PR915. The old checker is unchanged. Integration requires acceptance of the +semantic D-boundary substitution and a complete updated hosted reconstruction +and invoice. All other H1/H3/H4/H5 predicates and decomposed conclusions pass. +This package does not change the selected frontier or claim a new exponent. + +## Reproduce + +Python 3.12 or later, C++17, and Boost headers are required. From the repository +root, run: + +```sh +python3 -I -B research/r439-two-sided-compensation/verify.py +python3 -I -B research/r439-two-sided-compensation/test_package.py +``` + +Set `BOOST_INCLUDE` to a nonstandard Boost include directory, and `CXX` to +the compiler if needed. The first command rebuilds the search certificate, +compares the entire canonical JSON word, performs independent mathematical +checks, compiles the unchanged native checkers, and compares every receipt +field with [EXPECTED.json](EXPECTED.json). Its final line is: + +```text +PASS_R439_TWO_SIDED_COMPENSATION: ADDs 24,305 -> 13,208 -> 11,980; 192 helper pairs; nine-stage prefix 192 bits; semantic D; no new kappa +``` + +Optional `--output NEW_DIRECTORY` retains all generated words, native records, +commands and logs. `--receipt NEW_FILE` saves the complete report. Existing +destinations are refused. `--source-root ROOT` accepts the minimal source +closure enumerated by [SOURCES.json](SOURCES.json). Normal and optimized +Python are supported: owning Python subprocesses run without optimization so +their existing assertions remain enabled. Regenerated gzip containers are +compared by canonical payload, not compression bytes. + +## Construction and distinct contribution + +Let K be the original 111 by 439 matrix, E the frozen product of PR915's 306 +target transvections, and H the new product of disjoint helper transvections. +The new middle is **E K H inverse**. The complete prefix applies H to helpers, +E to targets, the middle injections, E inverse to targets, and H inverse to +helpers. The helper pairs are disjoint, so H inverse equals H. E is generally +not an involution; its operations are restored in reverse order. + +This applies the two-sided method from **Scott Woolsey Biggart's +[PR733](https://github.com/CrocSwap/integer-mult-bounds/pull/733)** to the selected +R439 matrix with a fixed, overlapping target basis. It scores the actual +transformed matrix and checks the complete 192-bit nine-stage prefix ceiling +after each admitted pair. No PR733 executable or saving is imported. Its +verbatim [README](vendor/pr733/README.md) preserves the prior proof and credit. +The mixed term contains 7,031 nonzero coefficients; omitting it fails the D +operator. [PROOF.md](PROOF.md) gives the algebra and complete cost argument. + +The seed-5 assignment and the three considered tasks are in +[CLAIM.json](CLAIM.json). The completed search scores all **192,282 ordered +helper pairs** once on the frozen matrix. A seed-5 64-bit tie key is drawn for +every pair, including nonpositive ones. Of 2,298 positive pairs, the sorted +greedy pass accepts 192 and skips 2,106 for overlap; no bound rejects occur. +The maximum individual gain is 19 ADDs. Search stops at the end of that pass. +It makes no claim about optimal matchings, target-basis reselection, neutral +detours, or globally optimal circuits. + +## Evidence and precision cost + +The independent verifier uses set-valued supports instead of the builder's +packed columns. It recomputes every pair score and literally executes both +positive orientations of all 192 partial words: 4,760,850 ADD/COPY/ERASE +instructions. A separate coefficient calculation checks all 48,729 entries of +`K + (E-I)K + K(H-I) + (E-I)K(H-I)`. + +All three complete D words are checked on 661 distinct Boolean input columns +in both directions. The unmodified owning checker also checks full-word E8 +labels, geometry, frame legality, restoration and endpoint columns. Native +5/9/11-stage checks cover 883/1,327/1,549 formal columns per word and reject all +144 omitted-bridge controls. Nineteen local controls address preparation, +restoration, mixed terms, wrong column orientation, illegal access, stale +bounds and accounting; a cancelling helper pair is accepted and charged two +ADDs. Eight package tests cover source pins, strict/typed JSON, safe output +handling and gzip recompression. These are independent algorithms where +stated, with shared source data and retained owning tools; no separate human +review is claimed. + +Both larger positive bounds are charged explicitly: + +```text +64 F^3 B^2 = 2654678678257550221373682862848 < 2^104 +2^18 F^5 B^4 = 6272385284143355252940491378432965655169900286360795742208 < 2^192 +``` + +The nine-stage expression is bound to the pinned source formula and its +18-bridge relation. The baseline reproduces the source's 177-bit estimate and +192-bit charge. The candidate uses about **99.925% of that ceiling**, so the +remaining margin is small. A 192-bit result still satisfies the strict +inequality; the verifier compares integers directly. No other global invoice +allocation is inferred from this check. + +## Pins, scope and attribution + +Base: `91a2094f2e022930069e8cfdc810a3ea1b81cd09`. +Selected bit source: PR589, `a5afc8c6169ea61ba7c51dfd3cade02cc7b13b46`. +Frozen parent: PR915, `e9daefe320a0043000bd9746664ed02c3287d056`. +Two-sided predecessor: PR733, `dfe84e09298abc5c5e0074afda59a821e10abfb4`. +The current selected assembly remains PR799. The new follow-up review batch +on this base is triage, and this package makes no claim of batch approval. + +PR915's word, recipe, complete receipt, proof, notice and source manifest are +retained verbatim. We reconstruct its target recipe, check its actual word and +native bill, and do not independently re-review its historical search coverage. +No API/network access is needed for reproduction. [NOTICE.md](NOTICE.md) +retains attribution to DreamingOfClouds, eumemic, commdata2338, Mikhail R. +Gadelha, Greer Guthrie, Scott Woolsey Biggart, Sagar Thakrar and the owning +verification lineage. Ross Richardson's concurrent PR917 provides a separate +two-sided complex-side example; no code or saving is imported from it. + +The remaining integration work is concrete: review the semantic interface; +emit and audit the changed whole hosted supplier; recompute its full finite +invoice and precision allocations; then rerun outer assembly against the +selected complex supplier. The unchanged frame/rank profile alone does not +establish those results. The common-label realization and analytic assumptions +remain those in the selected maintainer review. This finite construction is +not a formal proof of the full multiplication theorem or a measured runtime +speedup. + +Prepared for **Gareth Davidson (@bitplane)** with substantial **OpenAI Codex +assistance** in research, implementation, proof, verification and packaging. +Apache-2.0. diff --git a/research/r439-two-sided-compensation/SOURCES.json b/research/r439-two-sided-compensation/SOURCES.json new file mode 100644 index 0000000000..a616606b9e --- /dev/null +++ b/research/r439-two-sided-compensation/SOURCES.json @@ -0,0 +1,51 @@ +{ + "base_commit": "91a2094f2e022930069e8cfdc810a3ea1b81cd09", + "files": { + "research/e8-bit-carrier-skeleton/LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "research/e8-bit-carrier-skeleton/NOTICE.md": "5f4b7fcbf99f572be28b6da612ce775363908cdfc7810f7aca167be01c86e49a", + "research/e8-bit-carrier-skeleton/code/bit/checkers/columns_k.cpp": "1c344d18fcd494eeca93e259f10cafae7705780e6592f6dcb35b34752dab9bc2", + "research/e8-bit-carrier-skeleton/code/bit/checkers/json.hpp": "aaf127c04cb31c406e5b04a63f1ae89369fccde6d8fa7cdda1ed4f32dfc5de63", + "research/e8-bit-carrier-skeleton/code/bit/checkers/legality_h.cpp": "6c1ef2b24e57781d6951c172a1024fc4300e6fd392c9d6672079a7806ab663b3", + "research/e8-bit-carrier-skeleton/code/bit/export_records.py": "8a5999601f917dbb492bb9ae9a344611f18cc7cedc53dc3c76496a369e530eb3", + "research/e8-bit-carrier-skeleton/code/bit/regression/stage_cohort.py": "6c288f6f234b528c1a7c0a4adfb724e91e0fe6b18c8dffad96af3f973de1829a", + "research/e8-bit-carrier-skeleton/portable-include/bits/stdc++.h": "420094be2af295eed03a983dd66debbbe9cfb78d8252859f4498a615a0074b99", + "research/e8-bit-p111-tuned/LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "research/e8-bit-p111-tuned/NOTICE.md": "5b88eb2b7de76aa2a3288ee3c7a08d18a5eadfa82f5e7a99e207d232aed71221", + "research/e8-bit-p111-tuned/code/xcheck_p.py": "af3decc877e27c00001cf56f50c6c09566e8e101297ab34c7860aed96a06d80e", + "research/e8-bit-p111-tuned/tune/EXPECTED.json": "b9f0e5ca038abe837b0007c8fe006f366a6f02009244ac57705a8a200e2301f4", + "research/e8-bit-p111-tuned/tune/bitE8mut-p111-tuned.json.gz": "e3e301e62bc2b41dbf1ceac0acf3d35824ebeab1848c5a2142d4577b109da52f", + "research/e8-bit-p111-tuned/vendor/pr510/e8-r480-nine-stage/vendor/e8-r715-eleven-stage-whole/code/global_k.py": "6368196a393ac25bb2918880e4c4bd31ed733b762c27b6873ab391cbc0c5c3c8" + }, + "harness_adaptation": { + "head": "e9daefe320a0043000bd9746664ed02c3287d056", + "notice": "I/O, package tests and native runner adapted from own previous contribution; native harness lineage includes Sagar Thakrar.", + "pr": 915 + }, + "local_files": { + "vendor/pr733/README.md": "af2d829749b369ef4bcda42a3fbaef20652121663a61f7242fb988e0f63e2d1c", + "vendor/pr915/CERTIFICATE.json": "a9958d9a933b57dcb9f7e5cf8e9694c0762f055a1cdab9f8ab42b2c6561fc4d7", + "vendor/pr915/EXPECTED.json": "5607287aab393ed6e95a76f69c1a2c02ef271a6ae901e2448ad7858a501884ba", + "vendor/pr915/LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "vendor/pr915/NOTICE.md": "efbb1d2b2c85cbdbb7b048e2b7405e0654dfa40ddf6a1e94f11df313bdedb638", + "vendor/pr915/PROOF.md": "ddb5c3affbef52fa37af13b291bf089ca16f9dfe976e5a5590188b128b262425", + "vendor/pr915/README.md": "0c606598a6366bc0e6840d853c28237f8e5fe5866d89765d79815f973224f1fd", + "vendor/pr915/SOURCES.json": "abee8b99a79fce8a53ea7522ec490200ad0585093684b13883af1dec337158f0", + "vendor/pr915/candidate.json.gz": "ac30266144f8772ec8cd629153993aa9eb692fe745a9f95015a1b7fa88977a2e" + }, + "parent": { + "canonical_word_sha256": "6aec2c6f91c87a7440af10cdeb90b8814501224a86de14d4033ae3ffa00899da", + "head": "e9daefe320a0043000bd9746664ed02c3287d056", + "path": "research/r439-target-compensation/", + "pr": 915, + "scope": "Freeze and replay the actual target-basis word; do not infer or re-review its search claims." + }, + "predecessor": { + "author": "Scott Woolsey Biggart", + "git_blob": "e808135b923977318601cfbbb914507844ab0eed", + "head": "dfe84e09298abc5c5e0074afda59a821e10abfb4", + "pr": 733, + "use": "Two-sided binary conjugation and explicit mixed-term check. No executable imported." + }, + "selected_word_commit": "a5afc8c6169ea61ba7c51dfd3cade02cc7b13b46", + "selected_word_pr": 589 +} diff --git a/research/r439-two-sided-compensation/VALIDATION.md b/research/r439-two-sided-compensation/VALIDATION.md new file mode 100644 index 0000000000..89dea40c4e --- /dev/null +++ b/research/r439-two-sided-compensation/VALIDATION.md @@ -0,0 +1,74 @@ +# Validation record + +Executed on Linux, 2026-10-13, with CPython 3.14.4 and CPython 3.12.3, +GCC C++ 15.2.0, C++17, and Boost 1.83 headers. Boost was extracted outside +the repository from Ubuntu `libboost1.83-dev_1.83.0-5ubuntu5_amd64.deb`, SHA256 +`c17abc5a40a074c3d959655191ebec1561fa25f14f4948f6788be49417d4b234`. + +## Completed checks + +The ordinary CPython 3.14.4 run of `verify.py` passed against the entire +committed EXPECTED.json receipt. An isolated `-I -O -B` CPython 3.12.3 run +also passed from an unrelated working directory. That second run used only +this package and the 14 source files in SOURCES.json, without Git metadata, +under a path containing spaces. All source files and directories were made +read-only before execution; output went to a separate temporary directory. +The canonical full receipts are identical, SHA256 +`5ea81356e925a7326390f17c378bdf3e2f04b58aad0d39a7f1857595a24f3c93`. + +Each full verifier run includes: + +- Regeneration of all 192,282 pair scores, all tie keys, the guarded disjoint + greedy pass, the complete recipe and the canonical word payload. +- Independent set-valued census and reconstruction. Literal forward/reverse + replay checks 4,760,850 positive instructions across all admitted partial + words; no guard rejection occurs. +- All 48,729 four-term matrix coefficients, including the 7,031 nonzero + mixed-term entries. The same helper pairs alone would cost 14,156 D ADDs; + their standalone saving is not added to the parent saving. +- All 661 distinct input columns for original, parent and candidate D words, + each in both directions. Full owning E8/frame/endpoint checks also pass. + The original H2 and literal K extraction remain explicitly false for the + two changed words; every other interface predicate passes. +- Fresh compilation of unchanged C++ legality and 5/9/11-stage checkers. + All three words pass on 883/1,327/1,549 formal columns. All 144 omitted + bridges are rejected. Every register's MOVE sequence and all COPY/ERASE + records agree, retaining rank mass 5,129. +- Nineteen local rejection controls and the paid endpoint-neutral helper + pair. Native and Python counts and both positive bounds agree. +- Binding the nine-stage prefix expression and bridge exponent to the + pinned source, reproducing the baseline invoice estimate, and checking + the strict 192-bit ceiling for all three words. + +All eight package tests passed on both interpreters, including the optimized +read-only run. They reject source drift, missing sources, duplicate/nonfinite +JSON, boolean/integer receipt confusion and overwrites; recompressed candidate +payloads compare equal. + +`make selected-record-check` passed after moving an exploratory Python bytecode +cache outside the selected package inventory. Its initial failure identified +only that untracked `.pyc` file; there were no missing or changed source files. +The scoped staged whitespace check passed. No source or frontier record was +changed to make either check pass. + +## Submission context and limits + +The final upstream fetch remained at +`91a2094f2e022930069e8cfdc810a3ea1b81cd09`. The instructions gist remained at +`4180bf0d4045ffdcd12d75bb1fec91c234420162`. A fresh 714-open-PR snapshot through +PR924 retained parent PR915 at `e9daefe320a0043000bd9746664ed02c3287d056` and +predecessor PR733 at `dfe84e09298abc5c5e0074afda59a821e10abfb4`. + +No new R439 two-sided D construction appeared in that refresh. PR917 is a +complex CK two-sided construction; PR923 changes the selected R439 phase-B +frame520 block and its cleanup. The latter credits PR904's overlap, but does +not change D. Their savings are not composed here. The frozen 18-PR review +batch on the base is not edited or treated as approval of this contribution. + +The executable claim is a finite circuit and explicit prefix bound. Remaining +integration work is acceptance of the semantic D interface, complete changed +hosted emission and audit, updated finite/precision invoices, and outer +assembly. The common-label realization and analytic assumptions remain +inherited. No full `make verify`, selected cold replay, formal multiplication +theorem, new exponent, measured runtime improvement or hosted CI success is +claimed by these local checks. diff --git a/research/r439-two-sided-compensation/build.py b/research/r439-two-sided-compensation/build.py new file mode 100644 index 0000000000..b9054ab836 --- /dev/null +++ b/research/r439-two-sided-compensation/build.py @@ -0,0 +1,124 @@ +#!/usr/bin/env python3 +"""One guarded disjoint helper-pair pass around the frozen PR915 target basis. + +Prepared for Gareth Davidson (@bitplane), with OpenAI Codex assistance. Apache-2.0. +""" +import argparse +import copy +import gzip +from pathlib import Path +import random +import runpy + +C = runpy.run_path(str(Path(__file__).resolve().with_name("common.py"))) +need = C["need"] + + +def assemble(parent, count, columns, pairs): + result = copy.deepcopy(parent) + v = parent["v"] + helpers = [[0, 2 * v + a, [2 * v + b]] for a, b in pairs] + middle = [[0, v + i, [2 * v + j for j, col in enumerate(columns) if (col >> i) & 1]] + for i in range(v)] + result["D"] = helpers + parent["D"][:count] + middle + parent["D"][count + v:] + helpers[::-1] + return result + + +def bounds(word, reverse=False): + """Direct macro interpreter; the verifier separately lowers literal instructions.""" + v, n = word["v"], 2 * word["v"] + word["R"] + values, peak = [1] * n, 1 + sections = ("C", "B", "scatter", "A", "D") if reverse else ("D", "A", "scatter", "B", "C") + for section in sections: + if section == "scatter": + centers = range(len(word["ret"]) - 1, -1, -1) if reverse else range(len(word["ret"])) + for j in centers: + copied = values[word["ret"][j]] + for i, row in enumerate(word["scatter"]): + if j in row: + values[v + i] += copied + peak = max(peak, values[v + i]) + else: + gates = reversed(word[section]) if reverse else word[section] + for _, destination, sources in gates: + values[destination] += sum(values[s] for s in sources) + peak = max(peak, values[destination]) + return peak + + +def admitted(forward, backward): + return (64 * forward ** 3 * backward ** 2 < 1 << 104 + and (1 << 18) * forward ** 5 * backward ** 4 < 1 << 192) + + +def run(root, output): + C["pins"](root) + output = Path(output) + output.mkdir(parents=True, exist_ok=False) + original = C["load"](Path(root) / C["WORD"]) + parent = C["load"](C["HERE"] / "vendor/pr915/candidate.json.gz") + parent_cert = C["load"](C["HERE"] / "vendor/pr915/CERTIFICATE.json") + m, v, helpers = len(parent_cert["steps"]), parent["v"], parent["R"] + need((v, helpers, m) == (111, 439, 306), "frozen parent dimensions") + columns = [0] * helpers + for frame, d, sources in parent["D"][m:m + v]: + need(frame == 0 and v <= d < 2 * v, "parent injection") + for source in sources: + need(2 * v <= source < 2 * v + helpers, "parent helper source") + columns[source - 2 * v] ^= 1 << (d - v) + rng, census, positive = random.Random(5), [], [] + for a in range(helpers): + for b in range(helpers): + if a == b: + continue + gain = columns[b].bit_count() - (columns[b] ^ columns[a]).bit_count() - 2 + tie = rng.getrandbits(64) + census.append([a, b, gain, tie]) + if gain > 0: + positive.append((-gain, tie, a, b)) + positive.sort() + used, accepted, history, skipped, rejected = set(), [], [], 0, [] + for neg_gain, tie, a, b in positive: + if a in used or b in used: + skipped += 1 + continue + trial_cols = list(columns) + trial_cols[b] ^= trial_cols[a] + trial_pairs = accepted + [(a, b)] + trial = assemble(parent, m, trial_cols, trial_pairs) + forward, backward = bounds(trial), bounds(trial, True) + if not admitted(forward, backward): + rejected.append(dict(a=a, b=b, gain=-neg_gain, F=forward, B=backward)) + continue + columns, accepted = trial_cols, trial_pairs + used.update((a, b)) + history.append(dict(a=a, b=b, gain=-neg_gain, F=forward, B=backward, + middle_weight=sum(x.bit_count() for x in columns))) + candidate = assemble(parent, m, columns, accepted) + forward, backward = bounds(candidate), bounds(candidate, True) + d_cost = sum(len(g[2]) for g in candidate["D"]) + total = sum(len(g[2]) for section in "DABC" for g in candidate[section]) + sum(map(len, candidate["scatter"])) + certificate = dict(format="r439-two-sided/1", seed=5, baseline_sha256=C["digest"](original), + parent_sha256=C["digest"](parent), candidate_sha256=C["digest"](candidate), + census_sha256=C["digest"](census), pair_scores=len(census), positive_pairs=len(positive), + max_pair_gain=max(-p[0] for p in positive), overlap_skips=skipped, + guard_rejections=rejected, steps=history, target_shears=m, + helper_pairs=len(accepted), middle_weight=sum(x.bit_count() for x in columns), + D_adds=d_cost, native_ADDs=total, saved_beyond_parent=13208 - total, + F=forward, B=backward, payload_bits=(64 * forward ** 3 * backward ** 2).bit_length(), + nine_stage_prefix_bits=((1 << 18) * forward ** 5 * backward ** 4).bit_length(), + stopping_reason="completed one sorted disjoint greedy pass on all positive ordered pairs") + C["write"](output / "CERTIFICATE.json", certificate) + with (output / "candidate.json.gz").open("xb") as stream: + stream.write(gzip.compress(C["canonical"](candidate), mtime=0)) + print("built", len(accepted), "helper pairs; D", d_cost, "total ADDs", total, + "F", forward, "B", backward, "nine-stage bits", certificate["nine_stage_prefix_bits"], flush=True) + return certificate + + +if __name__ == "__main__": + parser = argparse.ArgumentParser(description=__doc__) + parser.add_argument("--source-root", type=Path, default=C["ROOT"]) + parser.add_argument("--output", type=Path, required=True) + args = parser.parse_args() + run(args.source_root, args.output) diff --git a/research/r439-two-sided-compensation/candidate.json.gz b/research/r439-two-sided-compensation/candidate.json.gz new file mode 100644 index 0000000000..0a19282958 Binary files /dev/null and b/research/r439-two-sided-compensation/candidate.json.gz differ diff --git a/research/r439-two-sided-compensation/common.py b/research/r439-two-sided-compensation/common.py new file mode 100644 index 0000000000..b4f4fbc803 --- /dev/null +++ b/research/r439-two-sided-compensation/common.py @@ -0,0 +1,69 @@ +"""Small I/O helpers; no circuit or verification logic. Apache-2.0.""" +import gzip +import hashlib +import importlib.util +import json +from pathlib import Path + +HERE = Path(__file__).resolve().parent +ROOT = HERE.parents[1] +WORD = "research/e8-bit-p111-tuned/tune/bitE8mut-p111-tuned.json.gz" +CHECKER = "research/e8-bit-p111-tuned/code/xcheck_p.py" +HUB = "research/e8-bit-carrier-skeleton" + + +def need(condition, message): + if not condition: + raise ValueError(message) + + +def canonical(value): + return json.dumps(value, sort_keys=True, separators=(",", ":"), allow_nan=False).encode() + + +def digest(value): + return hashlib.sha256(canonical(value)).hexdigest() + + +def pairs(items): + result = {} + for key, value in items: + need(key not in result, "duplicate JSON key: " + key) + result[key] = value + return result + + +def invalid_constant(value): + raise ValueError("invalid JSON constant: " + value) + + +def load(path): + path = Path(path) + data = path.read_bytes() + if path.suffix == ".gz": + data = gzip.decompress(data) + return json.loads(data, object_pairs_hook=pairs, parse_constant=invalid_constant) + + +def write(path, value): + with Path(path).open("x") as stream: + json.dump(value, stream, indent=2, sort_keys=True, allow_nan=False) + stream.write("\n") + + +def pins(root): + manifest = load(HERE / "SOURCES.json") + for name, sha in manifest["files"].items(): + need(hashlib.sha256((Path(root) / name).read_bytes()).hexdigest() == sha, + "source hash mismatch: " + name) + for name, sha in manifest["local_files"].items(): + need(hashlib.sha256((HERE / name).read_bytes()).hexdigest() == sha, + "predecessor proof hash mismatch: " + name) + return manifest + + +def module(name, path): + spec = importlib.util.spec_from_file_location(name, path) + result = importlib.util.module_from_spec(spec) + spec.loader.exec_module(result) + return result diff --git a/research/r439-two-sided-compensation/native.py b/research/r439-two-sided-compensation/native.py new file mode 100644 index 0000000000..399eb2deac --- /dev/null +++ b/research/r439-two-sided-compensation/native.py @@ -0,0 +1,111 @@ +#!/usr/bin/env python3 +"""Unmodified native legality and 5/9/11-stage checks, R439 compensation. + +Harness adapted from Sagar Thakrar's research/r420-decoder-sharing/native.py. +Prepared for Gareth Davidson (@bitplane), with OpenAI Codex assistance. Apache-2.0. +""" +import os +from pathlib import Path +import runpy +import shlex +import struct +import subprocess +import sys + +C = runpy.run_path(str(Path(__file__).resolve().with_name("common.py"))) +need = C["need"] + + +def run(root, baseline, parent, candidate, output): + C["pins"](root) + output = Path(output).resolve() + output.mkdir(parents=True, exist_ok=False) + hub = Path(root).resolve() / C["HUB"] + checker = hub / "code/bit/checkers" + compiler = shlex.split(os.environ.get("CXX", "c++")) + includes = ["-I" + str(hub / "portable-include"), "-I" + str(checker), + "-I" + os.environ.get("BOOST_INCLUDE", "/usr/include")] + commands = [] + + def execute(args, log): + args = [str(x) for x in args] + commands.append(args) + with log.open("x") as stream: + subprocess.run(args, stdout=stream, stderr=subprocess.STDOUT, check=True) + + common = compiler + ["-O2", "-std=c++17", "-DHDIM=8", "-DNCOPY=9"] + includes + execute(common + ["-o", output / "legality", checker / "legality_h.cpp"], + output / "compile-legality.log") + for k in (2, 4, 5): + execute(common + ["-DVPORTS=111", "-DRHELP=439", "-DKPAIRS=" + str(k), + "-o", output / ("columns-" + str(k)), checker / "columns_k.cpp"], + output / ("compile-columns-" + str(k) + ".log")) + python = [sys.executable, "-I", "-B"] + result, nonadd = {}, {} + for label, word in (("baseline", baseline), ("parent", parent), ("candidate", candidate)): + print("native", label, flush=True) + folder = output / label + folder.mkdir() + records, cin, cout = (folder / name for name in ("records", "cin", "cout")) + execute(python + [hub / "code/bit/export_records.py", Path(word).resolve(), records], + folder / "export.log") + execute(python + [hub / "code/bit/regression/stage_cohort.py", records, records, cin, cout], + folder / "stage.log") + execute([output / "legality", cin, cout, cout / "legality.json"], folder / "legality.log") + legality = C["load"](cout / "legality.json") + need(legality["status"] == "PASS_INDEPENDENT_COHORT_LEGALITY_SOURCE_OWNERS_AND_LIFECYCLE", + "native legality") + need(legality["copies"] == legality["erasures"] == 9, "native copy lifecycle") + # Per-register MOVE sequences, including ranks, and unchanged COPY/ERASE blocks. + record_rows = list(struct.iter_unpack("<6i", (records / "249-records.bin").read_bytes())) + movements = {} + for row in record_rows: + if row[0] == 0: + movements.setdefault(str(row[1]), []).append(list(row)) + nonadd[label] = {"moves": movements, "copy_erase": [list(x) for x in record_rows if x[0] in (2, 3)]} + columns_receipts = {} + for k in (2, 4, 5): + name = "columns-" + str(k) + execute([output / name, cout / "COHORT249-RECORDS.bin", cout / (name + ".json")], + folder / (name + ".log")) + columns = C["load"](cout / (name + ".json")) + expected_status = ("PASS_NEW_COHORT249_ALL_FIVE_STAGE_FORMAL_COLUMNS_AND_PREFIX_BILL" if k == 2 + else "PASS_NEW_COHORT249_ALL_BRIDGED_STAGE_FORMAL_COLUMNS_AND_PREFIX_BILL") + need(columns["status"] == expected_status, "native columns") + need(columns["formal_columns_checked"] == 2 * k * 111 + 439, "column coverage") + need(len(columns["stages"]) == 2 * k + 1, "stage coverage") + need(columns["bridge_additions"] == 6 * (k - 1) * 111, "bridge cost") + need(columns["fresh_center_copies"] == 9 * (2 * k + 1), "stage COPY cost") + need(columns["payload_prefix_bits"] <= 104, "inherited prefix cap") + controls = columns["negative_controls"] + need(len(controls) == 6 * (k - 1) and all(x["rejected"] is True for x in controls), + "omitted bridge controls") + need(legality["common_frame_ADDs"] == columns["local_scalar_additions"], "ADD agreement") + columns_receipts[str(2 * k + 1)] = {key: columns[key] for key in ( + "formal_columns_checked", "bridge_additions", "fresh_center_copies", "reverse_fresh_center_copies", + "signed_lift_prefix", "payload_prefix_bits", "payload_prefix_upper", "local_raw_H", "stages")} + columns_receipts[str(2 * k + 1)]["controls_rejected"] = len(controls) + result[label] = {key: legality[key] for key in ("records", "common_frame_ADDs", "rank_mass", "paid_histogram", + "copies", "erasures")} + result[label]["staged"] = columns_receipts + expected = {"baseline": (24305, 49347, 1113070, 177), + "parent": (13208, 49347, 9534616, 189), + "candidate": (11980, 71907, 10562318, 192)} + before = result["baseline"] + for label, (adds, forward, backward, nine_bits) in expected.items(): + after = result[label] + need(C["canonical"](nonadd["baseline"]) == C["canonical"](nonadd[label]), "frame paths changed") + need(after["common_frame_ADDs"] == adds, "native ADD cost") + need(before["records"] - after["records"] == 24305 - adds, "unexpected record changes") + for key in ("rank_mass", "paid_histogram", "copies", "erasures"): + need(before[key] == after[key], "paid resources changed: " + key) + for stage in ("5", "9", "11"): + old, new = before["staged"][stage], after["staged"][stage] + need(old["local_raw_H"] == new["local_raw_H"], "local raw ranks changed") + bounds = [int(x["cancellation_free_signed_row_l1_upper"]) for x in new["signed_lift_prefix"]] + need(bounds == [forward, backward], "literal/native positive bound agreement") + value = (1 << 18) * bounds[0] ** 5 * bounds[1] ** 4 + need(value.bit_length() == nine_bits and value < 1 << 192, "nine-stage prefix bound") + C["write"](output / "commands.json", commands) + C["write"](output / "native-report.json", result) + return result diff --git a/research/r439-two-sided-compensation/test_package.py b/research/r439-two-sided-compensation/test_package.py new file mode 100644 index 0000000000..305cbe8605 --- /dev/null +++ b/research/r439-two-sided-compensation/test_package.py @@ -0,0 +1,100 @@ +#!/usr/bin/env python3 +"""Fast source/receipt/output controls, separate from mathematical replay. Apache-2.0.""" +import gzip +from pathlib import Path +import runpy +import shutil +import subprocess +import sys +import tempfile +import unittest + +C = runpy.run_path(str(Path(__file__).resolve().with_name("common.py"))) +V = runpy.run_path(str(C["HERE"] / "verify.py")) +B = runpy.run_path(str(C["HERE"] / "build.py")) + + +class PackageControls(unittest.TestCase): + def setUp(self): + self.temp = tempfile.TemporaryDirectory(prefix="r439 package controls ") + self.addCleanup(self.temp.cleanup) + self.path = Path(self.temp.name) + + def closure(self): + root = self.path / "source closure" + manifest = C["load"](C["HERE"] / "SOURCES.json") + for name in manifest["files"]: + target = root / name + target.parent.mkdir(parents=True, exist_ok=True) + shutil.copyfile(C["ROOT"] / name, target) + return root + + def rejected_cli(self, *args, reason): + result = subprocess.run([sys.executable, "-I", "-O", "-B", str(C["HERE"] / "verify.py"), + *map(str, args)], text=True, capture_output=True) + self.assertNotEqual(result.returncode, 0) + self.assertIn(reason, result.stderr) + + def test_typed_receipt(self): + with self.assertRaisesRegex(ValueError, "different"): + V["same"]({"value": 1}, {"value": True}, "different") + + def test_strict_json(self): + for i, text in enumerate(('{"x":0,"x":1}', '{"x":NaN}', '{"x":Infinity}')): + with self.subTest(text=text): + path = self.path / (str(i) + ".json") + path.write_text(text) + with self.assertRaises(ValueError): + C["load"](path) + + def test_changed_source(self): + root = self.closure() + word = root / C["WORD"] + word.write_bytes(word.read_bytes() + b"changed") + with self.assertRaisesRegex(ValueError, "source hash mismatch"): + C["pins"](root) + + def test_missing_source(self): + root = self.closure() + (root / C["CHECKER"]).unlink() + with self.assertRaises(FileNotFoundError): + C["pins"](root) + + def test_builder_output_preserved(self): + output = self.path / "existing output" + output.mkdir() + marker = output / "keep" + marker.write_text("unchanged") + with self.assertRaises(FileExistsError): + B["run"](C["ROOT"], output) + self.assertEqual(marker.read_text(), "unchanged") + self.assertEqual([p.name for p in output.iterdir()], ["keep"]) + + def test_verifier_output_preserved(self): + output = self.path / "existing output" + output.mkdir() + marker = output / "keep" + marker.write_text("unchanged") + self.rejected_cli("--output", output, reason="output already exists") + self.assertEqual(marker.read_text(), "unchanged") + + def test_verifier_receipt_preserved(self): + receipt = self.path / "existing receipt.json" + receipt.write_text("unchanged") + self.rejected_cli("--receipt", receipt, reason="receipt already exists") + self.assertEqual(receipt.read_text(), "unchanged") + + def test_recompression_preserves_every_field(self): + original = C["load"](C["HERE"] / "candidate.json.gz") + encoded = C["canonical"](original) + containers = [gzip.compress(encoded, compresslevel=level, mtime=mtime) + for level, mtime in ((1, 0), (9, 123456789))] + self.assertNotEqual(*containers) + for i, data in enumerate(containers): + path = self.path / (str(i) + ".json.gz") + path.write_bytes(data) + V["same"](original, C["load"](path), "payload changed") + + +if __name__ == "__main__": + unittest.main() diff --git a/research/r439-two-sided-compensation/vendor/pr733/README.md b/research/r439-two-sided-compensation/vendor/pr733/README.md new file mode 100644 index 0000000000..e808135b92 --- /dev/null +++ b/research/r439-two-sided-compensation/vendor/pr733/README.md @@ -0,0 +1,191 @@ +# Two-sided basis factoring of the R420 dirt correction + +**Finite bit-circuit construction and composition evidence; no new κ.** +This combines Greer Guthrie's PR694 helper-basis construction with a fresh +target matching on its transformed coefficient matrix. The result saves +**8,368 binary XORs** in PR543's complete native word: +**26,916 → 18,548**, including all preparation and restoration. It saves +**1,434 more ADDs than PR694**. The predecessor mechanisms are credited to +their authors; the contribution here is the checked two-sided construction. + +| Quantity | Original PR543 | Helper basis PR694 | Two-sided | +|---|---:|---:|---:| +| D additions | 19,922 | 12,988 | 11,554 | +| Complete native ADDs | 26,916 | 19,982 | 18,548 | +| Exported records | 29,874 | 22,940 | 21,506 | +| Forward positive prefix | 144,651 | 202,699 | 202,699 | +| Reverse positive prefix | 2,270,064 | 2,446,788 | 4,152,374 | +| Local payload allowance, bits | 100 | 102 | 103 | +| Helpers / copies / rank mass | 420 / 9 / 5,112 | same | same | + +All 201 helper pairs from PR694 are fixed. All 57 target pairs are nominated +on the resulting matrix `KQ`, using seed 2. The complete D cost is +**201 + 57 + 11,038 + 57 + 201 = 11,554 ADDs**. It uses the same registers, +no new source access, no additional scratch, no new frame movements, and +no additional copies or recursive children. All transformed helpers are +restored before A. + +The larger reverse prefix is fully charged: +`64 * 202699^3 * 4152374^2 = 9190258315617780048732559342336 < 2^104`. +This is a local cohort bound, not a rebuilt hosted-parent invoice. No old +global precision charge or bit exponent is inherited for the changed word. + +## Reproduce + +Python 3.9 or later, standard library only: + +```sh +python3 -B research/r420-two-sided-basis/verify.py +python3 -B -m unittest discover -s research/r420-two-sided-basis -p 'test_*.py' +``` + +Expected verifier output: + +```text +PASS_R420_TWO_SIDED_BASIS native_ADDs=26916->18548 saved=8368 beyond_PR694=1434 payload_bits=103 kappa=unchanged +``` + +For fresh, unchanged C++17 legality and five-/nine-/eleven-stage checks: + +```sh +python3 -B research/r420-two-sided-basis/native.py +``` + +Boost headers are required; set `BOOST_INCLUDE` to their containing directory +and `CXX` to the compiler if needed. Expected final line: + +```text +PASS_R420_TWO_SIDED_BASIS_NATIVE words=2 stages=5,9,11 columns=900,1380,1620 bridge_controls=96 missing_D_controls=6 +``` + +Both entry points compare the complete committed certificates. Explicit +`--write-certificate NEW_PATH` requires a new path and never overwrites a +file. Optimized Python is refused because the inherited exporter uses +assertions. The checker compares decompressed source bytes, so changing gzip +headers does not invalidate the mathematical input. + +## Exact construction and sufficient interface + +All matrices in this construction act over F2. Let the old D be +`(x,s,y) -> (x,s,y+Ks)`, for 420 arbitrary dirty helpers `s` and 120 arbitrary +targets `y`. Let `Q` be PR694's product of disjoint helper transvections, +and `P` the product of the new disjoint target transvections. Both satisfy +`P^2=I` and `Q^2=I`. The literal new D is: + +1. Execute Q on the helpers, obtaining `Qs` (201 ADDs). +2. Execute P on the targets, obtaining `Py` (57 ADDs). +3. Add `(PKQ)(Qs)` to `Py`, using exactly 11,038 helper reads. +4. Undo P (57 ADDs), then undo Q (201 ADDs). + +Thus the target output is `P(Py+PKQ Qs)=y+Ks`, and the helpers return to `s`. +Every gate touches only target/helper registers at frame zero. No source is +accessed in D. Every field outside D is required to equal the original word. +Substitution of this equal complete prefix preserves the original endpoint. + +The target matching must be scored on `KQ`, not K. For a proposed pair +`(a,b)`, its fully charged saving is +`weight((KQ)_b) - weight((KQ)_a XOR (KQ)_b) - 2`. +Adding the standalone predecessor savings (6,934 + 3,150 = 10,084) is not +the saving of this circuit. The exact result is 8,368. + +Writing `P=I+A` and `Q=I+B` gives +`PKQ = K + AK + KB + AKB`. The last term is necessary: a control that omits +only `AKB` fails the full D operator. The tests separately check all 50,400 +middle-matrix coefficients using this direct four-term formula rather than +the producer's sequential row changes. + +The original literal H2 and literal extraction of K reject the changed D +syntax. They remain unchanged. The sufficient semantic replacement is that +D is a legal zero-frame prefix implementing exactly `(x,s,y+Ks)` and +restoring every helper. The proof above and the complete 660-input operator +check establish that finite claim; all other original H1/H3/H4/H5 and +decomposed conclusions are checked. Acceptance of this semantic replacement +under the inherited common-label/mutable-basis interface remains a review +obligation. + +Every register has exactly its original ordered frame path. The entire +MOVE/COPY/ERASE subsequence is identical, so the paid histogram remains +`{1:1320, 2:1440, 4:60, 5:120, 8:9}` with rank mass 5,112. All retained +copies, their closing operations, helper restoration and recursive children +are counted. F2 endpoint equality is not asserted to be equality of the +two forward integer operators. Signed inverse shears and cancellation-free +integer prefix bounds are checked separately by the retained C++ tools. + +## Evidence, search coverage and independence + +The verifier reconstructs PR694 from its recipe using direct row updates, +checks its complete native record hash and both prefix bounds against that +author's certificate, then constructs and exports the new word. It checks +original, helper-only and two-sided words on all 660 arbitrary inputs in +both directions. E8 geometry and full scalar legality use eumemic's retained +checker. Record synthesis and set-valued replay reuse pinned PR713 utilities; +this is **not a wholly independent implementation** of those checks. + +The official exporter independently matches every literal instruction. +Fresh unchanged C++ checks cover original and combined words on +900/1,380/1,620 formal columns at five/nine/eleven stages. All 96 omitted +bridges and six omitted-D-end controls are rejected across the two words. +Ten local controls include both helper/target preparation and restoration, +a wrong coefficient, illegal frame, omitted cleanup, stale target pricing, +using PK instead of PKQ, and omitting only the cross term. Four additional +tests check the direct matrix formula, all pair scores, overlap and cost. + +The OS assignment seed is **2**. Candidate tasks were another phase-B block +synthesis (crowded by PR670/674/688), split target frames (closed in the +specified domain by PR718), and this two-sided composition (chosen). +Exactly 14,280 ordered target pairs on the fixed KQ matrix are scored. +Lexicographic pair enumeration with `random.Random(2)` tie keys and one +decreasing `(gain,tie,a,b)` greedy disjoint pass selects 57 pairs. Search +stops after that pass. There is no matching optimality or general circuit +optimality claim. `CLAIM.json` records the local claim because no pinned +coordination issue existed. The presubmission refresh covered open PRs through +#730 and found no two-sided composition. + +## Provenance, attribution and scope + +Exact base: `66849e1475c930fd7732b1a0067ffee7e1e95f60`. +Selected source: PR626 `660de893d27bb7abd1d5b01b1640207528a5c851`, +conditional κ `51110230636731/31250000000000000`, using eumemic's PR543 +`2065fe4f72a914d907f1046603f5a36f17018535` bit supplier. + +Direct predecessors: + +- **Greer Guthrie's [PR694](https://github.com/CrocSwap/integer-mult-bounds/pull/694)**, + `9732ac127dd4bef98a846aaa904c20b5a84e72c1`: all 201 helper pairs and the + helper-only construction. Its recipe, certificate, README and notice are + retained byte for byte. PR686 (Mikhail R. Gadelha) supplies the preceding + single-helper-pair mechanism and semantic prefix contract. +- **Scott Woolsey Biggart's [PR713](https://github.com/CrocSwap/integer-mult-bounds/pull/713)**, + `1a19af5c5ddb6de9797a6d085e5df0b90ed6d58b`: target-basis construction and + record/set verification utilities. Those utilities and its recipe/README + are retained byte for byte; the native harness is adapted with attribution. +- Sagar Thakrar's concurrent [PR716](https://github.com/CrocSwap/integer-mult-bounds/pull/716), + `c804e7d79ac524723aa8c2d0d6a59d5e662763b3`, independently corroborates the + target-pair construction. It is credited, not imported. Its attribution + points to Dugongue's earlier [PR476](https://github.com/CrocSwap/integer-mult-bounds/pull/476), + `e850569c33ad1d5771e2f8b1c6dfe7a445396167`, for reversible target factoring + in phase B, following PR450. No new elementary identity is claimed here. + +PR708's decoder sharing, PR710's cleanup conjugation and the phase-A/B block +improvements are not composed here. PR661/711/718 concern restricted frame +searches, which this changed circuit does not reopen. `SOURCES.json` pins +every consumed source and the exact commits/Git blobs of vendored inputs. +Original attribution and licenses are retained in the linked notices. + +The selected construction and `upstream/` are unchanged. The selected assembly +is complex-limited, and this identical recursive profile does not produce a +new exponent. Full hosted-parent emission, whole-owner allocation, revised +global precision/finite invoices and outer assembly are separate integration +work. All inherited compiler/common-label/mutable-basis/physical/hosting/ +residual/precision/tape/analytic assumptions remain. This is finite evidence, +not a formal proof of the full multiplication theorem or a measured runtime +improvement. + +Prepared by **Scott Woolsey Biggart (@swbiggart)** with substantial +**OpenAI Codex assistance** in research, implementation, proof, verification +and packaging. Apache-2.0; no independent human review claimed. Credit also +remains with eumemic, Dylan Crow, DaysSky, Zhihao Chen, DreamingOfClouds, +Chafik Boukhalfa, icekylinx, Rohan Arun and the cumulative lineage in the +unchanged [R420 notice](../e8-bit-r420/NOTICE.md), +[carrier notice](../e8-bit-carrier-skeleton/NOTICE.md) and +[PR694 notice](vendor/pr694-NOTICE.md). diff --git a/research/r439-two-sided-compensation/vendor/pr915/CERTIFICATE.json b/research/r439-two-sided-compensation/vendor/pr915/CERTIFICATE.json new file mode 100644 index 0000000000..880e461a02 --- /dev/null +++ b/research/r439-two-sided-compensation/vendor/pr915/CERTIFICATE.json @@ -0,0 +1,2775 @@ +{ + "B": 9534616, + "D_adds": 6988, + "F": 49347, + "baseline_sha256": "5642fd0e35a1acc11acff8d0c08350c1617e95f310d4d35ad63a651f9eeeba0b", + "candidate_sha256": "6aec2c6f91c87a7440af10cdeb90b8814501224a86de14d4033ae3ffa00899da", + "format": "r439-compensation/1", + "forward_cap": 49347, + "forward_rejections": 0, + "native_ADDs": 13208, + "nine_stage_prefix_bits": 189, + "pair_scores": 3748470, + "payload_bits": 100, + "positive_pairs": 218204, + "reverse_cap": 16913320, + "reverse_rejections": 0, + "seed": 10, + "steps": [ + { + "B": 1125980, + "F": 49347, + "delta_forward": 18, + "delta_reverse": 20006, + "destination": 57, + "gain": 187, + "source": 50 + }, + { + "B": 1125980, + "F": 49347, + "delta_forward": 20, + "delta_reverse": 68090, + "destination": 0, + "gain": 176, + "source": 5 + }, + { + "B": 1125980, + "F": 49347, + "delta_forward": 20, + "delta_reverse": 38804, + "destination": 66, + "gain": 173, + "source": 60 + }, + { + "B": 1125980, + "F": 49347, + "delta_forward": 24, + "delta_reverse": 54594, + "destination": 46, + "gain": 172, + "source": 62 + }, + { + "B": 1125980, + "F": 49347, + "delta_forward": 16, + "delta_reverse": 70342, + "destination": 11, + "gain": 170, + "source": 9 + }, + { + "B": 1125980, + "F": 49347, + "delta_forward": 26, + "delta_reverse": 61738, + "destination": 72, + "gain": 145, + "source": 54 + }, + { + "B": 1401222, + "F": 49347, + "delta_forward": 68, + "delta_reverse": 308996, + "destination": 27, + "gain": 117, + "source": 52 + }, + { + "B": 1401222, + "F": 49347, + "delta_forward": 94, + "delta_reverse": 270976, + "destination": 47, + "gain": 112, + "source": 68 + }, + { + "B": 1401222, + "F": 49347, + "delta_forward": 80, + "delta_reverse": 326324, + "destination": 23, + "gain": 111, + "source": 102 + }, + { + "B": 1401222, + "F": 49347, + "delta_forward": 20, + "delta_reverse": 51118, + "destination": 56, + "gain": 108, + "source": 69 + }, + { + "B": 1565750, + "F": 49347, + "delta_forward": 92, + "delta_reverse": 439770, + "destination": 50, + "gain": 104, + "source": 5 + }, + { + "B": 1565750, + "F": 49347, + "delta_forward": 90, + "delta_reverse": 306610, + "destination": 62, + "gain": 103, + "source": 60 + }, + { + "B": 1565750, + "F": 49347, + "delta_forward": 78, + "delta_reverse": 229206, + "destination": 85, + "gain": 101, + "source": 34 + }, + { + "B": 1565750, + "F": 49347, + "delta_forward": 96, + "delta_reverse": 409882, + "destination": 92, + "gain": 100, + "source": 5 + }, + { + "B": 1565750, + "F": 49347, + "delta_forward": 86, + "delta_reverse": 261842, + "destination": 63, + "gain": 99, + "source": 52 + }, + { + "B": 2026388, + "F": 49347, + "delta_forward": 86, + "delta_reverse": 460638, + "destination": 5, + "gain": 97, + "source": 74 + }, + { + "B": 2026388, + "F": 49347, + "delta_forward": 90, + "delta_reverse": 384884, + "destination": 68, + "gain": 96, + "source": 9 + }, + { + "B": 2026388, + "F": 49347, + "delta_forward": 18, + "delta_reverse": 85928, + "destination": 6, + "gain": 96, + "source": 3 + }, + { + "B": 2026388, + "F": 49347, + "delta_forward": 96, + "delta_reverse": 522854, + "destination": 10, + "gain": 94, + "source": 13 + }, + { + "B": 2026388, + "F": 49347, + "delta_forward": 104, + "delta_reverse": 660064, + "destination": 59, + "gain": 87, + "source": 51 + }, + { + "B": 2026388, + "F": 49347, + "delta_forward": 90, + "delta_reverse": 296298, + "destination": 29, + "gain": 87, + "source": 101 + }, + { + "B": 2026388, + "F": 49347, + "delta_forward": 86, + "delta_reverse": 350098, + "destination": 73, + "gain": 85, + "source": 40 + }, + { + "B": 2026388, + "F": 49347, + "delta_forward": 86, + "delta_reverse": 303614, + "destination": 60, + "gain": 85, + "source": 54 + }, + { + "B": 2026388, + "F": 49347, + "delta_forward": 72, + "delta_reverse": 283474, + "destination": 21, + "gain": 84, + "source": 91 + }, + { + "B": 2026388, + "F": 49347, + "delta_forward": 24, + "delta_reverse": 79474, + "destination": 65, + "gain": 84, + "source": 67 + }, + { + "B": 2026388, + "F": 49347, + "delta_forward": 16, + "delta_reverse": 82870, + "destination": 63, + "gain": 83, + "source": 47 + }, + { + "B": 2026388, + "F": 49347, + "delta_forward": 88, + "delta_reverse": 469912, + "destination": 17, + "gain": 83, + "source": 54 + }, + { + "B": 2026388, + "F": 49347, + "delta_forward": 102, + "delta_reverse": 494472, + "destination": 103, + "gain": 82, + "source": 2 + }, + { + "B": 2026388, + "F": 49347, + "delta_forward": 88, + "delta_reverse": 358298, + "destination": 108, + "gain": 82, + "source": 7 + }, + { + "B": 2026388, + "F": 49347, + "delta_forward": 8, + "delta_reverse": 39986, + "destination": 103, + "gain": 91, + "source": 108 + }, + { + "B": 2026388, + "F": 49347, + "delta_forward": 82, + "delta_reverse": 403608, + "destination": 98, + "gain": 80, + "source": 25 + }, + { + "B": 2026388, + "F": 49347, + "delta_forward": 96, + "delta_reverse": 476370, + "destination": 104, + "gain": 80, + "source": 107 + }, + { + "B": 2026388, + "F": 49347, + "delta_forward": 6, + "delta_reverse": 28496, + "destination": 104, + "gain": 97, + "source": 10 + }, + { + "B": 2026388, + "F": 49347, + "delta_forward": 100, + "delta_reverse": 499080, + "destination": 52, + "gain": 79, + "source": 97 + }, + { + "B": 2026388, + "F": 49347, + "delta_forward": 76, + "delta_reverse": 330384, + "destination": 15, + "gain": 79, + "source": 94 + }, + { + "B": 2026388, + "F": 49347, + "delta_forward": 98, + "delta_reverse": 449894, + "destination": 14, + "gain": 79, + "source": 90 + }, + { + "B": 2026388, + "F": 49347, + "delta_forward": 16, + "delta_reverse": 31184, + "destination": 14, + "gain": 84, + "source": 98 + }, + { + "B": 2481858, + "F": 49347, + "delta_forward": 94, + "delta_reverse": 455470, + "destination": 74, + "gain": 79, + "source": 77 + }, + { + "B": 2481858, + "F": 49347, + "delta_forward": 16, + "delta_reverse": 43320, + "destination": 87, + "gain": 88, + "source": 74 + }, + { + "B": 2481858, + "F": 49347, + "delta_forward": 18, + "delta_reverse": 67228, + "destination": 47, + "gain": 76, + "source": 48 + }, + { + "B": 2481858, + "F": 49347, + "delta_forward": 104, + "delta_reverse": 397206, + "destination": 42, + "gain": 76, + "source": 39 + }, + { + "B": 2481858, + "F": 49347, + "delta_forward": 82, + "delta_reverse": 255372, + "destination": 99, + "gain": 76, + "source": 24 + }, + { + "B": 2481858, + "F": 49347, + "delta_forward": 6, + "delta_reverse": 17538, + "destination": 29, + "gain": 98, + "source": 99 + }, + { + "B": 2481858, + "F": 49347, + "delta_forward": 16, + "delta_reverse": 46502, + "destination": 85, + "gain": 75, + "source": 73 + }, + { + "B": 2481858, + "F": 49347, + "delta_forward": 104, + "delta_reverse": 629712, + "destination": 9, + "gain": 75, + "source": 97 + }, + { + "B": 2481858, + "F": 49347, + "delta_forward": 86, + "delta_reverse": 261360, + "destination": 32, + "gain": 74, + "source": 83 + }, + { + "B": 2481858, + "F": 49347, + "delta_forward": 14, + "delta_reverse": 27852, + "destination": 73, + "gain": 75, + "source": 32 + }, + { + "B": 2481858, + "F": 49347, + "delta_forward": 106, + "delta_reverse": 546396, + "destination": 36, + "gain": 72, + "source": 30 + }, + { + "B": 2481858, + "F": 49347, + "delta_forward": 98, + "delta_reverse": 387432, + "destination": 2, + "gain": 72, + "source": 7 + }, + { + "B": 2481858, + "F": 49347, + "delta_forward": 98, + "delta_reverse": 449760, + "destination": 81, + "gain": 70, + "source": 86 + }, + { + "B": 2481858, + "F": 49347, + "delta_forward": 16, + "delta_reverse": 62270, + "destination": 42, + "gain": 87, + "source": 81 + }, + { + "B": 2481858, + "F": 49347, + "delta_forward": 86, + "delta_reverse": 282526, + "destination": 102, + "gain": 69, + "source": 94 + }, + { + "B": 2939320, + "F": 49347, + "delta_forward": 102, + "delta_reverse": 457462, + "destination": 77, + "gain": 69, + "source": 54 + }, + { + "B": 3350744, + "F": 49347, + "delta_forward": 82, + "delta_reverse": 411424, + "destination": 54, + "gain": 68, + "source": 35 + }, + { + "B": 3350744, + "F": 49347, + "delta_forward": 70, + "delta_reverse": 217488, + "destination": 16, + "gain": 68, + "source": 88 + }, + { + "B": 3350744, + "F": 49347, + "delta_forward": 16, + "delta_reverse": 52324, + "destination": 99, + "gain": 86, + "source": 16 + }, + { + "B": 3350744, + "F": 49347, + "delta_forward": 98, + "delta_reverse": 348380, + "destination": 100, + "gain": 68, + "source": 28 + }, + { + "B": 3350744, + "F": 49347, + "delta_forward": 6, + "delta_reverse": 12262, + "destination": 100, + "gain": 94, + "source": 98 + }, + { + "B": 3350744, + "F": 49347, + "delta_forward": 82, + "delta_reverse": 399392, + "destination": 33, + "gain": 68, + "source": 35 + }, + { + "B": 3350744, + "F": 49347, + "delta_forward": 16, + "delta_reverse": 49236, + "destination": 33, + "gain": 88, + "source": 74 + }, + { + "B": 3350744, + "F": 49347, + "delta_forward": 14, + "delta_reverse": 39668, + "destination": 23, + "gain": 67, + "source": 21 + }, + { + "B": 3350744, + "F": 49347, + "delta_forward": 14, + "delta_reverse": 35060, + "destination": 21, + "gain": 67, + "source": 15 + }, + { + "B": 3350744, + "F": 49347, + "delta_forward": 60, + "delta_reverse": 214930, + "destination": 40, + "gain": 66, + "source": 45 + }, + { + "B": 3350744, + "F": 49347, + "delta_forward": 112, + "delta_reverse": 617644, + "destination": 51, + "gain": 65, + "source": 55 + }, + { + "B": 3350744, + "F": 49347, + "delta_forward": 112, + "delta_reverse": 830384, + "destination": 70, + "gain": 65, + "source": 55 + }, + { + "B": 3350744, + "F": 49347, + "delta_forward": 16, + "delta_reverse": 82380, + "destination": 70, + "gain": 94, + "source": 59 + }, + { + "B": 3350744, + "F": 49347, + "delta_forward": 70, + "delta_reverse": 218864, + "destination": 20, + "gain": 64, + "source": 95 + }, + { + "B": 3350744, + "F": 49347, + "delta_forward": 14, + "delta_reverse": 150604, + "destination": 98, + "gain": 85, + "source": 20 + }, + { + "B": 3350744, + "F": 49347, + "delta_forward": 52, + "delta_reverse": 327186, + "destination": 89, + "gain": 62, + "source": 3 + }, + { + "B": 3350744, + "F": 49347, + "delta_forward": 66, + "delta_reverse": 237630, + "destination": 37, + "gain": 59, + "source": 31 + }, + { + "B": 3350744, + "F": 49347, + "delta_forward": 4, + "delta_reverse": 12110, + "destination": 37, + "gain": 99, + "source": 81 + }, + { + "B": 3350744, + "F": 49347, + "delta_forward": 104, + "delta_reverse": 443012, + "destination": 80, + "gain": 59, + "source": 75 + }, + { + "B": 3350744, + "F": 49347, + "delta_forward": 14, + "delta_reverse": 72688, + "destination": 36, + "gain": 95, + "source": 80 + }, + { + "B": 3350744, + "F": 49347, + "delta_forward": 88, + "delta_reverse": 324818, + "destination": 12, + "gain": 58, + "source": 8 + }, + { + "B": 3350744, + "F": 49347, + "delta_forward": 14, + "delta_reverse": 49100, + "destination": 10, + "gain": 87, + "source": 12 + }, + { + "B": 3350744, + "F": 49347, + "delta_forward": 86, + "delta_reverse": 380634, + "destination": 84, + "gain": 57, + "source": 82 + }, + { + "B": 3350744, + "F": 49347, + "delta_forward": 16, + "delta_reverse": 70862, + "destination": 84, + "gain": 93, + "source": 80 + }, + { + "B": 3350744, + "F": 49347, + "delta_forward": 112, + "delta_reverse": 590422, + "destination": 13, + "gain": 56, + "source": 86 + }, + { + "B": 3350744, + "F": 49347, + "delta_forward": 104, + "delta_reverse": 325166, + "destination": 30, + "gain": 56, + "source": 41 + }, + { + "B": 3350744, + "F": 49347, + "delta_forward": 84, + "delta_reverse": 337630, + "destination": 109, + "gain": 54, + "source": 4 + }, + { + "B": 3350744, + "F": 49347, + "delta_forward": 8, + "delta_reverse": 39986, + "destination": 109, + "gain": 91, + "source": 108 + }, + { + "B": 3350744, + "F": 49347, + "delta_forward": 114, + "delta_reverse": 627244, + "destination": 39, + "gain": 54, + "source": 86 + }, + { + "B": 3350744, + "F": 49347, + "delta_forward": 72, + "delta_reverse": 263540, + "destination": 110, + "gain": 53, + "source": 105 + }, + { + "B": 3350744, + "F": 49347, + "delta_forward": 6, + "delta_reverse": 19772, + "destination": 110, + "gain": 95, + "source": 12 + }, + { + "B": 3350744, + "F": 49347, + "delta_forward": 80, + "delta_reverse": 519220, + "destination": 43, + "gain": 53, + "source": 58 + }, + { + "B": 3350744, + "F": 49347, + "delta_forward": 86, + "delta_reverse": 416108, + "destination": 97, + "gain": 52, + "source": 88 + }, + { + "B": 3350744, + "F": 49347, + "delta_forward": 58, + "delta_reverse": 218122, + "destination": 58, + "gain": 52, + "source": 59 + }, + { + "B": 3350744, + "F": 49347, + "delta_forward": 104, + "delta_reverse": 616732, + "destination": 34, + "gain": 51, + "source": 94 + }, + { + "B": 3350744, + "F": 49347, + "delta_forward": 44, + "delta_reverse": 164238, + "destination": 90, + "gain": 50, + "source": 48 + }, + { + "B": 3350744, + "F": 49347, + "delta_forward": 66, + "delta_reverse": 328980, + "destination": 25, + "gain": 61, + "source": 90 + }, + { + "B": 3350744, + "F": 49347, + "delta_forward": 88, + "delta_reverse": 463620, + "destination": 71, + "gain": 49, + "source": 53 + }, + { + "B": 3350744, + "F": 49347, + "delta_forward": 14, + "delta_reverse": 96030, + "destination": 71, + "gain": 96, + "source": 59 + }, + { + "B": 3350744, + "F": 49347, + "delta_forward": 100, + "delta_reverse": 483454, + "destination": 41, + "gain": 48, + "source": 44 + }, + { + "B": 3350744, + "F": 49347, + "delta_forward": 16, + "delta_reverse": 65022, + "destination": 41, + "gain": 93, + "source": 80 + }, + { + "B": 3350744, + "F": 49347, + "delta_forward": 68, + "delta_reverse": 304426, + "destination": 86, + "gain": 46, + "source": 3 + }, + { + "B": 3350744, + "F": 49347, + "delta_forward": 72, + "delta_reverse": 242556, + "destination": 102, + "gain": 45, + "source": 19 + }, + { + "B": 3350744, + "F": 49347, + "delta_forward": 94, + "delta_reverse": 296840, + "destination": 101, + "gain": 44, + "source": 88 + }, + { + "B": 3350744, + "F": 49347, + "delta_forward": 78, + "delta_reverse": 284924, + "destination": 26, + "gain": 44, + "source": 96 + }, + { + "B": 3350744, + "F": 49347, + "delta_forward": 16, + "delta_reverse": 45870, + "destination": 15, + "gain": 65, + "source": 26 + }, + { + "B": 3350744, + "F": 49347, + "delta_forward": 82, + "delta_reverse": 249524, + "destination": 78, + "gain": 44, + "source": 45 + }, + { + "B": 3350744, + "F": 49347, + "delta_forward": 14, + "delta_reverse": 27852, + "destination": 78, + "gain": 75, + "source": 32 + }, + { + "B": 3350744, + "F": 49347, + "delta_forward": 58, + "delta_reverse": 208700, + "destination": 101, + "gain": 43, + "source": 12 + }, + { + "B": 3350744, + "F": 49347, + "delta_forward": 84, + "delta_reverse": 336618, + "destination": 55, + "gain": 43, + "source": 90 + }, + { + "B": 3350744, + "F": 49347, + "delta_forward": 66, + "delta_reverse": 141618, + "destination": 69, + "gain": 42, + "source": 60 + }, + { + "B": 3350744, + "F": 49347, + "delta_forward": 16, + "delta_reverse": 40902, + "destination": 62, + "gain": 72, + "source": 69 + }, + { + "B": 3350744, + "F": 49347, + "delta_forward": 102, + "delta_reverse": 619006, + "destination": 75, + "gain": 41, + "source": 82 + }, + { + "B": 3350744, + "F": 49347, + "delta_forward": 6, + "delta_reverse": 25210, + "destination": 30, + "gain": 116, + "source": 75 + }, + { + "B": 3350744, + "F": 49347, + "delta_forward": 90, + "delta_reverse": 330906, + "destination": 18, + "gain": 35, + "source": 93 + }, + { + "B": 3350744, + "F": 49347, + "delta_forward": 6, + "delta_reverse": 14286, + "destination": 16, + "gain": 96, + "source": 18 + }, + { + "B": 3350744, + "F": 49347, + "delta_forward": 102, + "delta_reverse": 468770, + "destination": 28, + "gain": 35, + "source": 53 + }, + { + "B": 3350744, + "F": 49347, + "delta_forward": 82, + "delta_reverse": 572820, + "destination": 61, + "gain": 32, + "source": 3 + }, + { + "B": 3350744, + "F": 49347, + "delta_forward": 90, + "delta_reverse": 276324, + "destination": 91, + "gain": 32, + "source": 96 + }, + { + "B": 3350744, + "F": 49347, + "delta_forward": 74, + "delta_reverse": 256786, + "destination": 91, + "gain": 43, + "source": 19 + }, + { + "B": 3350744, + "F": 49347, + "delta_forward": 14, + "delta_reverse": 56470, + "destination": 91, + "gain": 63, + "source": 102 + }, + { + "B": 3350744, + "F": 49347, + "delta_forward": 78, + "delta_reverse": 344898, + "destination": 22, + "gain": 32, + "source": 59 + }, + { + "B": 3350744, + "F": 49347, + "delta_forward": 90, + "delta_reverse": 358554, + "destination": 106, + "gain": 31, + "source": 1 + }, + { + "B": 3350744, + "F": 49347, + "delta_forward": 6, + "delta_reverse": 19504, + "destination": 108, + "gain": 93, + "source": 106 + }, + { + "B": 3350744, + "F": 49347, + "delta_forward": 64, + "delta_reverse": 219362, + "destination": 7, + "gain": 30, + "source": 48 + }, + { + "B": 3350744, + "F": 49347, + "delta_forward": 84, + "delta_reverse": 458976, + "destination": 107, + "gain": 29, + "source": 38 + }, + { + "B": 3350744, + "F": 49347, + "delta_forward": 94, + "delta_reverse": 399172, + "destination": 24, + "gain": 28, + "source": 96 + }, + { + "B": 3350744, + "F": 49347, + "delta_forward": 60, + "delta_reverse": 152018, + "destination": 81, + "gain": 28, + "source": 69 + }, + { + "B": 3350744, + "F": 49347, + "delta_forward": 86, + "delta_reverse": 599896, + "destination": 51, + "gain": 28, + "source": 3 + }, + { + "B": 3350744, + "F": 49347, + "delta_forward": 104, + "delta_reverse": 522932, + "destination": 49, + "gain": 27, + "source": 64 + }, + { + "B": 3350744, + "F": 49347, + "delta_forward": 14, + "delta_reverse": 128886, + "destination": 59, + "gain": 92, + "source": 49 + }, + { + "B": 3350744, + "F": 49347, + "delta_forward": 94, + "delta_reverse": 328294, + "destination": 4, + "gain": 27, + "source": 1 + }, + { + "B": 3350744, + "F": 49347, + "delta_forward": 14, + "delta_reverse": 40020, + "destination": 2, + "gain": 97, + "source": 4 + }, + { + "B": 3834238, + "F": 49347, + "delta_forward": 96, + "delta_reverse": 483494, + "destination": 35, + "gain": 26, + "source": 96 + }, + { + "B": 3834238, + "F": 49347, + "delta_forward": 112, + "delta_reverse": 755530, + "destination": 44, + "gain": 26, + "source": 88 + }, + { + "B": 3834238, + "F": 49347, + "delta_forward": 88, + "delta_reverse": 319368, + "destination": 94, + "gain": 25, + "source": 38 + }, + { + "B": 3834238, + "F": 49347, + "delta_forward": 98, + "delta_reverse": 375270, + "destination": 107, + "gain": 24, + "source": 86 + }, + { + "B": 3834238, + "F": 49347, + "delta_forward": 64, + "delta_reverse": 257610, + "destination": 13, + "gain": 61, + "source": 107 + }, + { + "B": 3834238, + "F": 49347, + "delta_forward": 98, + "delta_reverse": 456898, + "destination": 76, + "gain": 24, + "source": 86 + }, + { + "B": 3834238, + "F": 49347, + "delta_forward": 98, + "delta_reverse": 445470, + "destination": 8, + "gain": 23, + "source": 1 + }, + { + "B": 3834238, + "F": 49347, + "delta_forward": 92, + "delta_reverse": 484490, + "destination": 75, + "gain": 22, + "source": 3 + }, + { + "B": 3834238, + "F": 49347, + "delta_forward": 92, + "delta_reverse": 656518, + "destination": 19, + "gain": 22, + "source": 3 + }, + { + "B": 3834238, + "F": 49347, + "delta_forward": 72, + "delta_reverse": 263650, + "destination": 106, + "gain": 23, + "source": 19 + }, + { + "B": 3834238, + "F": 49347, + "delta_forward": 72, + "delta_reverse": 226642, + "destination": 83, + "gain": 22, + "source": 48 + }, + { + "B": 3834238, + "F": 49347, + "delta_forward": 100, + "delta_reverse": 393388, + "destination": 79, + "gain": 22, + "source": 86 + }, + { + "B": 3834238, + "F": 49347, + "delta_forward": 62, + "delta_reverse": 339578, + "destination": 40, + "gain": 21, + "source": 58 + }, + { + "B": 3834238, + "F": 49347, + "delta_forward": 60, + "delta_reverse": 203566, + "destination": 12, + "gain": 21, + "source": 26 + }, + { + "B": 3834238, + "F": 49347, + "delta_forward": 86, + "delta_reverse": 496518, + "destination": 82, + "gain": 20, + "source": 52 + }, + { + "B": 3834238, + "F": 49347, + "delta_forward": 86, + "delta_reverse": 504854, + "destination": 38, + "gain": 18, + "source": 77 + }, + { + "B": 3889268, + "F": 49347, + "delta_forward": 14, + "delta_reverse": 55030, + "destination": 54, + "gain": 83, + "source": 38 + }, + { + "B": 3889268, + "F": 49347, + "delta_forward": 12, + "delta_reverse": 20404, + "destination": 48, + "gain": 16, + "source": 66 + }, + { + "B": 3889268, + "F": 49347, + "delta_forward": 60, + "delta_reverse": 179546, + "destination": 18, + "gain": 20, + "source": 48 + }, + { + "B": 3889268, + "F": 49347, + "delta_forward": 10, + "delta_reverse": 12310, + "destination": 72, + "gain": 15, + "source": 62 + }, + { + "B": 3889268, + "F": 49347, + "delta_forward": 112, + "delta_reverse": 603802, + "destination": 93, + "gain": 15, + "source": 97 + }, + { + "B": 3889268, + "F": 49347, + "delta_forward": 112, + "delta_reverse": 642698, + "destination": 95, + "gain": 14, + "source": 45 + }, + { + "B": 3889268, + "F": 49347, + "delta_forward": 92, + "delta_reverse": 671724, + "destination": 39, + "gain": 14, + "source": 49 + }, + { + "B": 3889268, + "F": 49347, + "delta_forward": 14, + "delta_reverse": 39166, + "destination": 3, + "gain": 14, + "source": 66 + }, + { + "B": 3889268, + "F": 49347, + "delta_forward": 98, + "delta_reverse": 557124, + "destination": 9, + "gain": 14, + "source": 93 + }, + { + "B": 3944612, + "F": 49347, + "delta_forward": 14, + "delta_reverse": 55344, + "destination": 57, + "gain": 13, + "source": 65 + }, + { + "B": 3944612, + "F": 49347, + "delta_forward": 96, + "delta_reverse": 463650, + "destination": 67, + "gain": 13, + "source": 80 + }, + { + "B": 3944612, + "F": 49347, + "delta_forward": 14, + "delta_reverse": 32676, + "destination": 66, + "gain": 13, + "source": 65 + }, + { + "B": 3944612, + "F": 49347, + "delta_forward": 66, + "delta_reverse": 240858, + "destination": 7, + "gain": 12, + "source": 106 + }, + { + "B": 3944612, + "F": 49347, + "delta_forward": 10, + "delta_reverse": 29242, + "destination": 93, + "gain": 12, + "source": 70 + }, + { + "B": 3944612, + "F": 49347, + "delta_forward": 14, + "delta_reverse": 62376, + "destination": 0, + "gain": 11, + "source": 11 + }, + { + "B": 3944612, + "F": 49347, + "delta_forward": 86, + "delta_reverse": 333582, + "destination": 60, + "gain": 11, + "source": 67 + }, + { + "B": 4437804, + "F": 49347, + "delta_forward": 72, + "delta_reverse": 370964, + "destination": 80, + "gain": 11, + "source": 58 + }, + { + "B": 4437804, + "F": 49347, + "delta_forward": 88, + "delta_reverse": 355286, + "destination": 49, + "gain": 14, + "source": 80 + }, + { + "B": 4437804, + "F": 49347, + "delta_forward": 80, + "delta_reverse": 319618, + "destination": 52, + "gain": 20, + "source": 49 + }, + { + "B": 4437804, + "F": 49347, + "delta_forward": 82, + "delta_reverse": 377072, + "destination": 20, + "gain": 18, + "source": 49 + }, + { + "B": 4437804, + "F": 49347, + "delta_forward": 12, + "delta_reverse": 30072, + "destination": 52, + "gain": 10, + "source": 70 + }, + { + "B": 4437804, + "F": 49347, + "delta_forward": 94, + "delta_reverse": 564958, + "destination": 83, + "gain": 10, + "source": 77 + }, + { + "B": 4437804, + "F": 49347, + "delta_forward": 14, + "delta_reverse": 43074, + "destination": 4, + "gain": 10, + "source": 6 + }, + { + "B": 4437804, + "F": 49347, + "delta_forward": 124, + "delta_reverse": 488432, + "destination": 90, + "gain": 10, + "source": 7 + }, + { + "B": 4437804, + "F": 49347, + "delta_forward": 14, + "delta_reverse": 68678, + "destination": 11, + "gain": 10, + "source": 6 + }, + { + "B": 4437804, + "F": 49347, + "delta_forward": 112, + "delta_reverse": 570730, + "destination": 64, + "gain": 10, + "source": 96 + }, + { + "B": 4437804, + "F": 49347, + "delta_forward": 16, + "delta_reverse": 31446, + "destination": 46, + "gain": 9, + "source": 56 + }, + { + "B": 4437804, + "F": 49347, + "delta_forward": 92, + "delta_reverse": 463686, + "destination": 89, + "gain": 9, + "source": 92 + }, + { + "B": 4437804, + "F": 49347, + "delta_forward": 8, + "delta_reverse": 20750, + "destination": 14, + "gain": 9, + "source": 98 + }, + { + "B": 4437804, + "F": 49347, + "delta_forward": 10, + "delta_reverse": 10496, + "destination": 62, + "gain": 9, + "source": 46 + }, + { + "B": 5071832, + "F": 49347, + "delta_forward": 116, + "delta_reverse": 634028, + "destination": 88, + "gain": 9, + "source": 105 + }, + { + "B": 5071832, + "F": 49347, + "delta_forward": 16, + "delta_reverse": 29886, + "destination": 67, + "gain": 9, + "source": 56 + }, + { + "B": 5071832, + "F": 49347, + "delta_forward": 74, + "delta_reverse": 365482, + "destination": 39, + "gain": 9, + "source": 58 + }, + { + "B": 5071832, + "F": 49347, + "delta_forward": 14, + "delta_reverse": 41942, + "destination": 77, + "gain": 8, + "source": 70 + }, + { + "B": 5071832, + "F": 49347, + "delta_forward": 10, + "delta_reverse": 32210, + "destination": 73, + "gain": 8, + "source": 78 + }, + { + "B": 5071832, + "F": 49347, + "delta_forward": 122, + "delta_reverse": 568606, + "destination": 53, + "gain": 8, + "source": 24 + }, + { + "B": 5071832, + "F": 49347, + "delta_forward": 10, + "delta_reverse": 118938, + "destination": 55, + "gain": 8, + "source": 71 + }, + { + "B": 5071832, + "F": 49347, + "delta_forward": 16, + "delta_reverse": 40332, + "destination": 27, + "gain": 8, + "source": 6 + }, + { + "B": 5071832, + "F": 49347, + "delta_forward": 18, + "delta_reverse": 25328, + "destination": 32, + "gain": 7, + "source": 56 + }, + { + "B": 5071832, + "F": 49347, + "delta_forward": 10, + "delta_reverse": 12048, + "destination": 6, + "gain": 7, + "source": 0 + }, + { + "B": 5071832, + "F": 49347, + "delta_forward": 16, + "delta_reverse": 16078, + "destination": 69, + "gain": 7, + "source": 6 + }, + { + "B": 5198920, + "F": 49347, + "delta_forward": 16, + "delta_reverse": 63544, + "destination": 80, + "gain": 7, + "source": 47 + }, + { + "B": 5198920, + "F": 49347, + "delta_forward": 16, + "delta_reverse": 16766, + "destination": 22, + "gain": 7, + "source": 6 + }, + { + "B": 5198920, + "F": 49347, + "delta_forward": 16, + "delta_reverse": 72664, + "destination": 18, + "gain": 7, + "source": 47 + }, + { + "B": 5198920, + "F": 49347, + "delta_forward": 76, + "delta_reverse": 429824, + "destination": 68, + "gain": 7, + "source": 58 + }, + { + "B": 5198920, + "F": 49347, + "delta_forward": 10, + "delta_reverse": 26788, + "destination": 9, + "gain": 7, + "source": 0 + }, + { + "B": 5198920, + "F": 49347, + "delta_forward": 18, + "delta_reverse": 25328, + "destination": 12, + "gain": 7, + "source": 56 + }, + { + "B": 5198920, + "F": 49347, + "delta_forward": 14, + "delta_reverse": 127830, + "destination": 20, + "gain": 6, + "source": 59 + }, + { + "B": 5198920, + "F": 49347, + "delta_forward": 16, + "delta_reverse": 57296, + "destination": 38, + "gain": 6, + "source": 70 + }, + { + "B": 5198920, + "F": 49347, + "delta_forward": 12, + "delta_reverse": 121456, + "destination": 78, + "gain": 6, + "source": 85 + }, + { + "B": 5198920, + "F": 49347, + "delta_forward": 14, + "delta_reverse": 52322, + "destination": 9, + "gain": 6, + "source": 59 + }, + { + "B": 5198920, + "F": 49347, + "delta_forward": 14, + "delta_reverse": 17752, + "destination": 56, + "gain": 6, + "source": 72 + }, + { + "B": 5198920, + "F": 49347, + "delta_forward": 10, + "delta_reverse": 24366, + "destination": 15, + "gain": 6, + "source": 23 + }, + { + "B": 5198920, + "F": 49347, + "delta_forward": 8, + "delta_reverse": 44080, + "destination": 103, + "gain": 6, + "source": 109 + }, + { + "B": 5198920, + "F": 49347, + "delta_forward": 22, + "delta_reverse": 80728, + "destination": 32, + "gain": 5, + "source": 65 + }, + { + "B": 5198920, + "F": 49347, + "delta_forward": 18, + "delta_reverse": 38980, + "destination": 74, + "gain": 5, + "source": 6 + }, + { + "B": 5198920, + "F": 49347, + "delta_forward": 22, + "delta_reverse": 80728, + "destination": 101, + "gain": 5, + "source": 65 + }, + { + "B": 5198920, + "F": 49347, + "delta_forward": 18, + "delta_reverse": 25580, + "destination": 1, + "gain": 5, + "source": 6 + }, + { + "B": 5198920, + "F": 49347, + "delta_forward": 12, + "delta_reverse": 43796, + "destination": 76, + "gain": 4, + "source": 57 + }, + { + "B": 5198920, + "F": 49347, + "delta_forward": 16, + "delta_reverse": 67676, + "destination": 74, + "gain": 4, + "source": 59 + }, + { + "B": 5198920, + "F": 49347, + "delta_forward": 12, + "delta_reverse": 35656, + "destination": 101, + "gain": 4, + "source": 57 + }, + { + "B": 5198920, + "F": 49347, + "delta_forward": 20, + "delta_reverse": 57554, + "destination": 13, + "gain": 4, + "source": 54 + }, + { + "B": 5198920, + "F": 49347, + "delta_forward": 18, + "delta_reverse": 121378, + "destination": 51, + "gain": 4, + "source": 70 + }, + { + "B": 5198920, + "F": 49347, + "delta_forward": 16, + "delta_reverse": 18498, + "destination": 19, + "gain": 4, + "source": 72 + }, + { + "B": 5198920, + "F": 49347, + "delta_forward": 16, + "delta_reverse": 18482, + "destination": 102, + "gain": 4, + "source": 72 + }, + { + "B": 5198920, + "F": 49347, + "delta_forward": 16, + "delta_reverse": 134440, + "destination": 49, + "gain": 4, + "source": 59 + }, + { + "B": 5198920, + "F": 49347, + "delta_forward": 16, + "delta_reverse": 20970, + "destination": 17, + "gain": 4, + "source": 72 + }, + { + "B": 5198920, + "F": 49347, + "delta_forward": 14, + "delta_reverse": 138022, + "destination": 89, + "gain": 4, + "source": 71 + }, + { + "B": 5198920, + "F": 49347, + "delta_forward": 94, + "delta_reverse": 467430, + "destination": 68, + "gain": 8, + "source": 89 + }, + { + "B": 5453532, + "F": 49347, + "delta_forward": 94, + "delta_reverse": 321716, + "destination": 68, + "gain": 5, + "source": 80 + }, + { + "B": 5631746, + "F": 49347, + "delta_forward": 56, + "delta_reverse": 178214, + "destination": 68, + "gain": 38, + "source": 52 + }, + { + "B": 5642572, + "F": 49347, + "delta_forward": 8, + "delta_reverse": 10826, + "destination": 68, + "gain": 9, + "source": 0 + }, + { + "B": 5642572, + "F": 49347, + "delta_forward": 18, + "delta_reverse": 155846, + "destination": 22, + "gain": 4, + "source": 70 + }, + { + "B": 5642572, + "F": 49347, + "delta_forward": 86, + "delta_reverse": 448574, + "destination": 92, + "gain": 7, + "source": 22 + }, + { + "B": 5642572, + "F": 49347, + "delta_forward": 14, + "delta_reverse": 31778, + "destination": 75, + "gain": 4, + "source": 33 + }, + { + "B": 5642572, + "F": 49347, + "delta_forward": 16, + "delta_reverse": 18482, + "destination": 95, + "gain": 4, + "source": 72 + }, + { + "B": 5642572, + "F": 49347, + "delta_forward": 12, + "delta_reverse": 35656, + "destination": 32, + "gain": 4, + "source": 57 + }, + { + "B": 5642572, + "F": 49347, + "delta_forward": 16, + "delta_reverse": 45072, + "destination": 3, + "gain": 4, + "source": 99 + }, + { + "B": 5642572, + "F": 49347, + "delta_forward": 18, + "delta_reverse": 21552, + "destination": 56, + "gain": 4, + "source": 62 + }, + { + "B": 5642572, + "F": 49347, + "delta_forward": 14, + "delta_reverse": 167166, + "destination": 40, + "gain": 4, + "source": 71 + }, + { + "B": 5642572, + "F": 49347, + "delta_forward": 20, + "delta_reverse": 57548, + "destination": 61, + "gain": 3, + "source": 47 + }, + { + "B": 5642572, + "F": 49347, + "delta_forward": 18, + "delta_reverse": 79888, + "destination": 67, + "gain": 3, + "source": 41 + }, + { + "B": 5642572, + "F": 49347, + "delta_forward": 20, + "delta_reverse": 23986, + "destination": 79, + "gain": 3, + "source": 6 + }, + { + "B": 5642572, + "F": 49347, + "delta_forward": 96, + "delta_reverse": 411978, + "destination": 79, + "gain": 6, + "source": 76 + }, + { + "B": 5642572, + "F": 49347, + "delta_forward": 80, + "delta_reverse": 166172, + "destination": 79, + "gain": 11, + "source": 69 + }, + { + "B": 5642572, + "F": 49347, + "delta_forward": 30, + "delta_reverse": 102866, + "destination": 79, + "gain": 49, + "source": 81 + }, + { + "B": 5642572, + "F": 49347, + "delta_forward": 10, + "delta_reverse": 53630, + "destination": 79, + "gain": 10, + "source": 42 + }, + { + "B": 5642572, + "F": 49347, + "delta_forward": 8, + "delta_reverse": 24964, + "destination": 79, + "gain": 8, + "source": 57 + }, + { + "B": 5642572, + "F": 49347, + "delta_forward": 96, + "delta_reverse": 426974, + "destination": 94, + "gain": 3, + "source": 5 + }, + { + "B": 5642572, + "F": 49347, + "delta_forward": 16, + "delta_reverse": 18482, + "destination": 94, + "gain": 4, + "source": 72 + }, + { + "B": 5642572, + "F": 49347, + "delta_forward": 20, + "delta_reverse": 46832, + "destination": 94, + "gain": 3, + "source": 87 + }, + { + "B": 5642572, + "F": 49347, + "delta_forward": 14, + "delta_reverse": 30336, + "destination": 50, + "gain": 3, + "source": 98 + }, + { + "B": 5642572, + "F": 49347, + "delta_forward": 20, + "delta_reverse": 23986, + "destination": 75, + "gain": 3, + "source": 6 + }, + { + "B": 5711836, + "F": 49347, + "delta_forward": 18, + "delta_reverse": 69264, + "destination": 58, + "gain": 3, + "source": 63 + }, + { + "B": 5711836, + "F": 49347, + "delta_forward": 18, + "delta_reverse": 77636, + "destination": 60, + "gain": 3, + "source": 41 + }, + { + "B": 5711836, + "F": 49347, + "delta_forward": 20, + "delta_reverse": 49740, + "destination": 20, + "gain": 3, + "source": 47 + }, + { + "B": 5711836, + "F": 49347, + "delta_forward": 18, + "delta_reverse": 58240, + "destination": 31, + "gain": 3, + "source": 41 + }, + { + "B": 5711836, + "F": 49347, + "delta_forward": 16, + "delta_reverse": 74718, + "destination": 77, + "gain": 3, + "source": 84 + }, + { + "B": 5711836, + "F": 49347, + "delta_forward": 20, + "delta_reverse": 39562, + "destination": 50, + "gain": 3, + "source": 6 + }, + { + "B": 5759924, + "F": 49347, + "delta_forward": 20, + "delta_reverse": 48088, + "destination": 88, + "gain": 3, + "source": 47 + }, + { + "B": 5824606, + "F": 49347, + "delta_forward": 108, + "delta_reverse": 338234, + "destination": 3, + "gain": 3, + "source": 50 + }, + { + "B": 5824606, + "F": 49347, + "delta_forward": 20, + "delta_reverse": 46430, + "destination": 68, + "gain": 3, + "source": 6 + }, + { + "B": 5824606, + "F": 49347, + "delta_forward": 16, + "delta_reverse": 50928, + "destination": 5, + "gain": 2, + "source": 36 + }, + { + "B": 5824606, + "F": 49347, + "delta_forward": 20, + "delta_reverse": 22806, + "destination": 77, + "gain": 2, + "source": 62 + }, + { + "B": 5824606, + "F": 49347, + "delta_forward": 16, + "delta_reverse": 49096, + "destination": 43, + "gain": 2, + "source": 33 + }, + { + "B": 5824606, + "F": 49347, + "delta_forward": 88, + "delta_reverse": 571610, + "destination": 34, + "gain": 2, + "source": 40 + }, + { + "B": 5824606, + "F": 49347, + "delta_forward": 14, + "delta_reverse": 39046, + "destination": 18, + "gain": 2, + "source": 57 + }, + { + "B": 5824606, + "F": 49347, + "delta_forward": 18, + "delta_reverse": 52686, + "destination": 34, + "gain": 2, + "source": 59 + }, + { + "B": 5824606, + "F": 49347, + "delta_forward": 20, + "delta_reverse": 22806, + "destination": 60, + "gain": 2, + "source": 62 + }, + { + "B": 5824606, + "F": 49347, + "delta_forward": 132, + "delta_reverse": 713358, + "destination": 28, + "gain": 2, + "source": 55 + }, + { + "B": 5824606, + "F": 49347, + "delta_forward": 64, + "delta_reverse": 330058, + "destination": 28, + "gain": 22, + "source": 58 + }, + { + "B": 5824606, + "F": 49347, + "delta_forward": 98, + "delta_reverse": 844844, + "destination": 28, + "gain": 10, + "source": 61 + }, + { + "B": 5824606, + "F": 49347, + "delta_forward": 88, + "delta_reverse": 411802, + "destination": 28, + "gain": 12, + "source": 51 + }, + { + "B": 5824606, + "F": 49347, + "delta_forward": 16, + "delta_reverse": 58464, + "destination": 20, + "gain": 2, + "source": 36 + }, + { + "B": 5824606, + "F": 49347, + "delta_forward": 20, + "delta_reverse": 101916, + "destination": 28, + "gain": 2, + "source": 70 + }, + { + "B": 5824606, + "F": 49347, + "delta_forward": 16, + "delta_reverse": 226728, + "destination": 28, + "gain": 2, + "source": 71 + }, + { + "B": 5890714, + "F": 49347, + "delta_forward": 18, + "delta_reverse": 22036, + "destination": 47, + "gain": 2, + "source": 72 + }, + { + "B": 5906288, + "F": 49347, + "delta_forward": 28, + "delta_reverse": 60250, + "destination": 49, + "gain": 5, + "source": 47 + }, + { + "B": 5906288, + "F": 49347, + "delta_forward": 22, + "delta_reverse": 66332, + "destination": 87, + "gain": 2, + "source": 54 + }, + { + "B": 5906288, + "F": 49347, + "delta_forward": 8, + "delta_reverse": 20468, + "destination": 87, + "gain": 10, + "source": 33 + }, + { + "B": 5906288, + "F": 49347, + "delta_forward": 16, + "delta_reverse": 133584, + "destination": 19, + "gain": 2, + "source": 78 + }, + { + "B": 5906288, + "F": 49347, + "delta_forward": 20, + "delta_reverse": 22806, + "destination": 86, + "gain": 2, + "source": 62 + }, + { + "B": 5945182, + "F": 49347, + "delta_forward": 12, + "delta_reverse": 54468, + "destination": 75, + "gain": 2, + "source": 109 + }, + { + "B": 5945182, + "F": 49347, + "delta_forward": 22, + "delta_reverse": 66376, + "destination": 77, + "gain": 2, + "source": 54 + }, + { + "B": 6431574, + "F": 49347, + "delta_forward": 98, + "delta_reverse": 581148, + "destination": 93, + "gain": 2, + "source": 9 + }, + { + "B": 6617956, + "F": 49347, + "delta_forward": 42, + "delta_reverse": 186382, + "destination": 93, + "gain": 60, + "source": 89 + }, + { + "B": 6932878, + "F": 49347, + "delta_forward": 98, + "delta_reverse": 314922, + "destination": 93, + "gain": 14, + "source": 68 + }, + { + "B": 7410460, + "F": 49347, + "delta_forward": 146, + "delta_reverse": 477582, + "destination": 6, + "gain": 8, + "source": 93 + }, + { + "B": 7569520, + "F": 49347, + "delta_forward": 16, + "delta_reverse": 159060, + "destination": 70, + "gain": 2, + "source": 71 + }, + { + "B": 7702630, + "F": 49347, + "delta_forward": 18, + "delta_reverse": 133110, + "destination": 59, + "gain": 8, + "source": 70 + }, + { + "B": 8016030, + "F": 49347, + "delta_forward": 24, + "delta_reverse": 156700, + "destination": 68, + "gain": 2, + "source": 59 + }, + { + "B": 8016030, + "F": 49347, + "delta_forward": 16, + "delta_reverse": 66680, + "destination": 25, + "gain": 2, + "source": 36 + }, + { + "B": 8016030, + "F": 49347, + "delta_forward": 22, + "delta_reverse": 62440, + "destination": 24, + "gain": 2, + "source": 54 + }, + { + "B": 8016030, + "F": 49347, + "delta_forward": 106, + "delta_reverse": 612232, + "destination": 82, + "gain": 2, + "source": 61 + }, + { + "B": 8016030, + "F": 49347, + "delta_forward": 96, + "delta_reverse": 427224, + "destination": 82, + "gain": 2, + "source": 20 + }, + { + "B": 8016030, + "F": 49347, + "delta_forward": 130, + "delta_reverse": 501870, + "destination": 102, + "gain": 2, + "source": 68 + }, + { + "B": 8016030, + "F": 49347, + "delta_forward": 18, + "delta_reverse": 19668, + "destination": 64, + "gain": 2, + "source": 72 + }, + { + "B": 8329430, + "F": 49347, + "delta_forward": 24, + "delta_reverse": 156700, + "destination": 89, + "gain": 2, + "source": 59 + }, + { + "B": 8329430, + "F": 49347, + "delta_forward": 16, + "delta_reverse": 37438, + "destination": 25, + "gain": 1, + "source": 66 + }, + { + "B": 8329430, + "F": 49347, + "delta_forward": 110, + "delta_reverse": 444568, + "destination": 5, + "gain": 1, + "source": 74 + }, + { + "B": 8329430, + "F": 49347, + "delta_forward": 24, + "delta_reverse": 56966, + "destination": 94, + "gain": 1, + "source": 87 + }, + { + "B": 8329430, + "F": 49347, + "delta_forward": 16, + "delta_reverse": 74022, + "destination": 95, + "gain": 1, + "source": 0 + }, + { + "B": 8329430, + "F": 49347, + "delta_forward": 16, + "delta_reverse": 64262, + "destination": 83, + "gain": 1, + "source": 2 + }, + { + "B": 8329430, + "F": 49347, + "delta_forward": 16, + "delta_reverse": 58258, + "destination": 7, + "gain": 1, + "source": 0 + }, + { + "B": 8392926, + "F": 49347, + "delta_forward": 42, + "delta_reverse": 63496, + "destination": 48, + "gain": 1, + "source": 56 + }, + { + "B": 8392926, + "F": 49347, + "delta_forward": 156, + "delta_reverse": 485090, + "destination": 45, + "gain": 1, + "source": 6 + }, + { + "B": 8469752, + "F": 49347, + "delta_forward": 20, + "delta_reverse": 76826, + "destination": 80, + "gain": 1, + "source": 63 + }, + { + "B": 8526718, + "F": 49347, + "delta_forward": 24, + "delta_reverse": 56966, + "destination": 65, + "gain": 1, + "source": 87 + }, + { + "B": 8526718, + "F": 49347, + "delta_forward": 46, + "delta_reverse": 130198, + "destination": 69, + "gain": 2, + "source": 65 + }, + { + "B": 8564436, + "F": 49347, + "delta_forward": 16, + "delta_reverse": 37718, + "destination": 105, + "gain": 1, + "source": 98 + }, + { + "B": 8564436, + "F": 49347, + "delta_forward": 24, + "delta_reverse": 56966, + "destination": 3, + "gain": 1, + "source": 87 + }, + { + "B": 9534616, + "F": 49347, + "delta_forward": 156, + "delta_reverse": 485090, + "destination": 63, + "gain": 1, + "source": 6 + }, + { + "B": 9534616, + "F": 49347, + "delta_forward": 16, + "delta_reverse": 37314, + "destination": 26, + "gain": 1, + "source": 0 + }, + { + "B": 9534616, + "F": 49347, + "delta_forward": 18, + "delta_reverse": 103420, + "destination": 41, + "gain": 1, + "source": 84 + }, + { + "B": 9534616, + "F": 49347, + "delta_forward": 20, + "delta_reverse": 81212, + "destination": 36, + "gain": 6, + "source": 41 + }, + { + "B": 9534616, + "F": 49347, + "delta_forward": 18, + "delta_reverse": 86628, + "destination": 49, + "gain": 1, + "source": 84 + }, + { + "B": 9534616, + "F": 49347, + "delta_forward": 118, + "delta_reverse": 684184, + "destination": 96, + "gain": 2, + "source": 49 + }, + { + "B": 9534616, + "F": 49347, + "delta_forward": 30, + "delta_reverse": 68928, + "destination": 96, + "gain": 3, + "source": 47 + }, + { + "B": 9534616, + "F": 49347, + "delta_forward": 32, + "delta_reverse": 78442, + "destination": 38, + "gain": 1, + "source": 47 + }, + { + "B": 9534616, + "F": 49347, + "delta_forward": 18, + "delta_reverse": 45428, + "destination": 55, + "gain": 1, + "source": 46 + }, + { + "B": 9534616, + "F": 49347, + "delta_forward": 24, + "delta_reverse": 56966, + "destination": 50, + "gain": 1, + "source": 87 + }, + { + "B": 9534616, + "F": 49347, + "delta_forward": 16, + "delta_reverse": 61730, + "destination": 24, + "gain": 1, + "source": 11 + }, + { + "B": 9534616, + "F": 49347, + "delta_forward": 24, + "delta_reverse": 56966, + "destination": 67, + "gain": 1, + "source": 87 + }, + { + "B": 9534616, + "F": 49347, + "delta_forward": 18, + "delta_reverse": 45532, + "destination": 60, + "gain": 1, + "source": 46 + } + ], + "stopping_reason": "no admissible strict-gain ordered pair" +} diff --git a/research/r439-two-sided-compensation/vendor/pr915/EXPECTED.json b/research/r439-two-sided-compensation/vendor/pr915/EXPECTED.json new file mode 100644 index 0000000000..2d6335d46b --- /dev/null +++ b/research/r439-two-sided-compensation/vendor/pr915/EXPECTED.json @@ -0,0 +1,3004 @@ +{ + "baseline_sha256": "5642fd0e35a1acc11acff8d0c08350c1617e95f310d4d35ad63a651f9eeeba0b", + "boundary_columns": 661, + "boundary_words_and_directions": 4, + "candidate_sha256": "6aec2c6f91c87a7440af10cdeb90b8814501224a86de14d4033ae3ffa00899da", + "certificate_sha256": "f350a62882c1de669c63c8418a13a855ad81a1e4ad46089cbf28791b07303273", + "controls": { + "paid_neutral_pair": 2, + "rejected": [ + "missing entrance passes helper-only checking", + "missing target restoration", + "missing recoded helper injection", + "undo in forward order", + "nonzero D frame", + "temporary helper write", + "source read at frame zero", + "undercharged restoration", + "local payload overrun", + "nine-stage overrun below local cap", + "forward guard overrun", + "boolean masquerading as count", + "unrelated cleanup change", + "boolean target index" + ] + }, + "native": { + "baseline": { + "common_frame_ADDs": 24305, + "copies": 9, + "erasures": 9, + "paid_histogram": [ + [ + 1, + 1323 + ], + [ + 2, + 1342 + ], + [ + 3, + 79 + ], + [ + 4, + 44 + ], + [ + 5, + 102 + ], + [ + 6, + 11 + ], + [ + 7, + 19 + ] + ], + "rank_mass": 5129, + "records": 27234, + "staged": { + "11": { + "bridge_additions": 2664, + "controls_rejected": 24, + "formal_columns_checked": 1549, + "fresh_center_copies": 99, + "local_raw_H": [ + [ + 1, + 1323 + ], + [ + 2, + 1342 + ], + [ + 3, + 79 + ], + [ + 4, + 44 + ], + [ + 5, + 102 + ], + [ + 6, + 11 + ], + [ + 7, + 19 + ] + ], + "payload_prefix_bits": 93, + "payload_prefix_upper": "9528119495320518471870892800", + "reverse_fresh_center_copies": 45, + "signed_lift_prefix": [ + { + "bits": 16, + "cancellation_free_signed_row_l1_upper": "49347", + "reverse": false + }, + { + "bits": 21, + "cancellation_free_signed_row_l1_upper": "1113070", + "reverse": true + } + ], + "stages": [ + { + "fresh_copies": 9, + "scalar_additions": 24305, + "signed_inverse": false, + "stage": 0 + }, + { + "fresh_copies": 9, + "scalar_additions": 24305, + "signed_inverse": true, + "stage": 1 + }, + { + "fresh_copies": 9, + "scalar_additions": 24305, + "signed_inverse": false, + "stage": 2 + }, + { + "fresh_copies": 9, + "scalar_additions": 24305, + "signed_inverse": true, + "stage": 3 + }, + { + "fresh_copies": 9, + "scalar_additions": 24305, + "signed_inverse": false, + "stage": 4 + }, + { + "fresh_copies": 9, + "scalar_additions": 24305, + "signed_inverse": true, + "stage": 5 + }, + { + "fresh_copies": 9, + "scalar_additions": 24305, + "signed_inverse": false, + "stage": 6 + }, + { + "fresh_copies": 9, + "scalar_additions": 24305, + "signed_inverse": true, + "stage": 7 + }, + { + "fresh_copies": 9, + "scalar_additions": 24305, + "signed_inverse": false, + "stage": 8 + }, + { + "fresh_copies": 9, + "scalar_additions": 24305, + "signed_inverse": true, + "stage": 9 + }, + { + "fresh_copies": 9, + "scalar_additions": 24305, + "signed_inverse": false, + "stage": 10 + } + ] + }, + "5": { + "bridge_additions": 666, + "controls_rejected": 6, + "formal_columns_checked": 883, + "fresh_center_copies": 45, + "local_raw_H": [ + [ + 1, + 1323 + ], + [ + 2, + 1342 + ], + [ + 3, + 79 + ], + [ + 4, + 44 + ], + [ + 5, + 102 + ], + [ + 6, + 11 + ], + [ + 7, + 19 + ] + ], + "payload_prefix_bits": 93, + "payload_prefix_upper": "9528119495320518471870892800", + "reverse_fresh_center_copies": 18, + "signed_lift_prefix": [ + { + "bits": 16, + "cancellation_free_signed_row_l1_upper": "49347", + "reverse": false + }, + { + "bits": 21, + "cancellation_free_signed_row_l1_upper": "1113070", + "reverse": true + } + ], + "stages": [ + { + "fresh_copies": 9, + "scalar_additions": 24305, + "signed_inverse": false, + "stage": 0 + }, + { + "fresh_copies": 9, + "scalar_additions": 24305, + "signed_inverse": true, + "stage": 1 + }, + { + "fresh_copies": 9, + "scalar_additions": 24305, + "signed_inverse": false, + "stage": 2 + }, + { + "fresh_copies": 9, + "scalar_additions": 24305, + "signed_inverse": true, + "stage": 3 + }, + { + "fresh_copies": 9, + "scalar_additions": 24305, + "signed_inverse": false, + "stage": 4 + } + ] + }, + "9": { + "bridge_additions": 1998, + "controls_rejected": 18, + "formal_columns_checked": 1327, + "fresh_center_copies": 81, + "local_raw_H": [ + [ + 1, + 1323 + ], + [ + 2, + 1342 + ], + [ + 3, + 79 + ], + [ + 4, + 44 + ], + [ + 5, + 102 + ], + [ + 6, + 11 + ], + [ + 7, + 19 + ] + ], + "payload_prefix_bits": 93, + "payload_prefix_upper": "9528119495320518471870892800", + "reverse_fresh_center_copies": 36, + "signed_lift_prefix": [ + { + "bits": 16, + "cancellation_free_signed_row_l1_upper": "49347", + "reverse": false + }, + { + "bits": 21, + "cancellation_free_signed_row_l1_upper": "1113070", + "reverse": true + } + ], + "stages": [ + { + "fresh_copies": 9, + "scalar_additions": 24305, + "signed_inverse": false, + "stage": 0 + }, + { + "fresh_copies": 9, + "scalar_additions": 24305, + "signed_inverse": true, + "stage": 1 + }, + { + "fresh_copies": 9, + "scalar_additions": 24305, + "signed_inverse": false, + "stage": 2 + }, + { + "fresh_copies": 9, + "scalar_additions": 24305, + "signed_inverse": true, + "stage": 3 + }, + { + "fresh_copies": 9, + "scalar_additions": 24305, + "signed_inverse": false, + "stage": 4 + }, + { + "fresh_copies": 9, + "scalar_additions": 24305, + "signed_inverse": true, + "stage": 5 + }, + { + "fresh_copies": 9, + "scalar_additions": 24305, + "signed_inverse": false, + "stage": 6 + }, + { + "fresh_copies": 9, + "scalar_additions": 24305, + "signed_inverse": true, + "stage": 7 + }, + { + "fresh_copies": 9, + "scalar_additions": 24305, + "signed_inverse": false, + "stage": 8 + } + ] + } + } + }, + "candidate": { + "common_frame_ADDs": 13208, + "copies": 9, + "erasures": 9, + "paid_histogram": [ + [ + 1, + 1323 + ], + [ + 2, + 1342 + ], + [ + 3, + 79 + ], + [ + 4, + 44 + ], + [ + 5, + 102 + ], + [ + 6, + 11 + ], + [ + 7, + 19 + ] + ], + "rank_mass": 5129, + "records": 16137, + "staged": { + "11": { + "bridge_additions": 2664, + "controls_rejected": 24, + "formal_columns_checked": 1549, + "fresh_center_copies": 99, + "local_raw_H": [ + [ + 1, + 1323 + ], + [ + 2, + 1342 + ], + [ + 3, + 79 + ], + [ + 4, + 44 + ], + [ + 5, + 102 + ], + [ + 6, + 11 + ], + [ + 7, + 19 + ] + ], + "payload_prefix_bits": 100, + "payload_prefix_upper": "699147249763640764132165496832", + "reverse_fresh_center_copies": 45, + "signed_lift_prefix": [ + { + "bits": 16, + "cancellation_free_signed_row_l1_upper": "49347", + "reverse": false + }, + { + "bits": 24, + "cancellation_free_signed_row_l1_upper": "9534616", + "reverse": true + } + ], + "stages": [ + { + "fresh_copies": 9, + "scalar_additions": 13208, + "signed_inverse": false, + "stage": 0 + }, + { + "fresh_copies": 9, + "scalar_additions": 13208, + "signed_inverse": true, + "stage": 1 + }, + { + "fresh_copies": 9, + "scalar_additions": 13208, + "signed_inverse": false, + "stage": 2 + }, + { + "fresh_copies": 9, + "scalar_additions": 13208, + "signed_inverse": true, + "stage": 3 + }, + { + "fresh_copies": 9, + "scalar_additions": 13208, + "signed_inverse": false, + "stage": 4 + }, + { + "fresh_copies": 9, + "scalar_additions": 13208, + "signed_inverse": true, + "stage": 5 + }, + { + "fresh_copies": 9, + "scalar_additions": 13208, + "signed_inverse": false, + "stage": 6 + }, + { + "fresh_copies": 9, + "scalar_additions": 13208, + "signed_inverse": true, + "stage": 7 + }, + { + "fresh_copies": 9, + "scalar_additions": 13208, + "signed_inverse": false, + "stage": 8 + }, + { + "fresh_copies": 9, + "scalar_additions": 13208, + "signed_inverse": true, + "stage": 9 + }, + { + "fresh_copies": 9, + "scalar_additions": 13208, + "signed_inverse": false, + "stage": 10 + } + ] + }, + "5": { + "bridge_additions": 666, + "controls_rejected": 6, + "formal_columns_checked": 883, + "fresh_center_copies": 45, + "local_raw_H": [ + [ + 1, + 1323 + ], + [ + 2, + 1342 + ], + [ + 3, + 79 + ], + [ + 4, + 44 + ], + [ + 5, + 102 + ], + [ + 6, + 11 + ], + [ + 7, + 19 + ] + ], + "payload_prefix_bits": 100, + "payload_prefix_upper": "699147249763640764132165496832", + "reverse_fresh_center_copies": 18, + "signed_lift_prefix": [ + { + "bits": 16, + "cancellation_free_signed_row_l1_upper": "49347", + "reverse": false + }, + { + "bits": 24, + "cancellation_free_signed_row_l1_upper": "9534616", + "reverse": true + } + ], + "stages": [ + { + "fresh_copies": 9, + "scalar_additions": 13208, + "signed_inverse": false, + "stage": 0 + }, + { + "fresh_copies": 9, + "scalar_additions": 13208, + "signed_inverse": true, + "stage": 1 + }, + { + "fresh_copies": 9, + "scalar_additions": 13208, + "signed_inverse": false, + "stage": 2 + }, + { + "fresh_copies": 9, + "scalar_additions": 13208, + "signed_inverse": true, + "stage": 3 + }, + { + "fresh_copies": 9, + "scalar_additions": 13208, + "signed_inverse": false, + "stage": 4 + } + ] + }, + "9": { + "bridge_additions": 1998, + "controls_rejected": 18, + "formal_columns_checked": 1327, + "fresh_center_copies": 81, + "local_raw_H": [ + [ + 1, + 1323 + ], + [ + 2, + 1342 + ], + [ + 3, + 79 + ], + [ + 4, + 44 + ], + [ + 5, + 102 + ], + [ + 6, + 11 + ], + [ + 7, + 19 + ] + ], + "payload_prefix_bits": 100, + "payload_prefix_upper": "699147249763640764132165496832", + "reverse_fresh_center_copies": 36, + "signed_lift_prefix": [ + { + "bits": 16, + "cancellation_free_signed_row_l1_upper": "49347", + "reverse": false + }, + { + "bits": 24, + "cancellation_free_signed_row_l1_upper": "9534616", + "reverse": true + } + ], + "stages": [ + { + "fresh_copies": 9, + "scalar_additions": 13208, + "signed_inverse": false, + "stage": 0 + }, + { + "fresh_copies": 9, + "scalar_additions": 13208, + "signed_inverse": true, + "stage": 1 + }, + { + "fresh_copies": 9, + "scalar_additions": 13208, + "signed_inverse": false, + "stage": 2 + }, + { + "fresh_copies": 9, + "scalar_additions": 13208, + "signed_inverse": true, + "stage": 3 + }, + { + "fresh_copies": 9, + "scalar_additions": 13208, + "signed_inverse": false, + "stage": 4 + }, + { + "fresh_copies": 9, + "scalar_additions": 13208, + "signed_inverse": true, + "stage": 5 + }, + { + "fresh_copies": 9, + "scalar_additions": 13208, + "signed_inverse": false, + "stage": 6 + }, + { + "fresh_copies": 9, + "scalar_additions": 13208, + "signed_inverse": true, + "stage": 7 + }, + { + "fresh_copies": 9, + "scalar_additions": 13208, + "signed_inverse": false, + "stage": 8 + } + ] + } + } + } + }, + "nine_stage_prefix_bound": { + "baseline": { + "bits": 177, + "bound": "117742596540718658156527847560864213734191286190080000" + }, + "candidate": { + "bits": 189, + "bound": "633952218342189222305933054575935669674977721489175871488" + }, + "formula": "2^18 * F^5 * B^4", + "source_charge_bits": 192 + }, + "predecessor_files": { + "provenance/PR794-README.md": "edbec736b24b0f9e2bc95a8839e3a22bc8ca4fc7bd9c0a25dccfb0dc1fec80f4" + }, + "recipe": { + "D_adds_after": 6988, + "D_adds_before": 18085, + "entrance_adds": 306, + "helper_injections": 6376, + "literal_prefix_instructions_checked": 9643960, + "prefix_history": [ + { + "B": 1125980, + "D_adds": 17898, + "F": 49347, + "step": 1 + }, + { + "B": 1125980, + "D_adds": 17722, + "F": 49347, + "step": 2 + }, + { + "B": 1125980, + "D_adds": 17549, + "F": 49347, + "step": 3 + }, + { + "B": 1125980, + "D_adds": 17377, + "F": 49347, + "step": 4 + }, + { + "B": 1125980, + "D_adds": 17207, + "F": 49347, + "step": 5 + }, + { + "B": 1125980, + "D_adds": 17062, + "F": 49347, + "step": 6 + }, + { + "B": 1401222, + "D_adds": 16945, + "F": 49347, + "step": 7 + }, + { + "B": 1401222, + "D_adds": 16833, + "F": 49347, + "step": 8 + }, + { + "B": 1401222, + "D_adds": 16722, + "F": 49347, + "step": 9 + }, + { + "B": 1401222, + "D_adds": 16614, + "F": 49347, + "step": 10 + }, + { + "B": 1565750, + "D_adds": 16510, + "F": 49347, + "step": 11 + }, + { + "B": 1565750, + "D_adds": 16407, + "F": 49347, + "step": 12 + }, + { + "B": 1565750, + "D_adds": 16306, + "F": 49347, + "step": 13 + }, + { + "B": 1565750, + "D_adds": 16206, + "F": 49347, + "step": 14 + }, + { + "B": 1565750, + "D_adds": 16107, + "F": 49347, + "step": 15 + }, + { + "B": 2026388, + "D_adds": 16010, + "F": 49347, + "step": 16 + }, + { + "B": 2026388, + "D_adds": 15914, + "F": 49347, + "step": 17 + }, + { + "B": 2026388, + "D_adds": 15818, + "F": 49347, + "step": 18 + }, + { + "B": 2026388, + "D_adds": 15724, + "F": 49347, + "step": 19 + }, + { + "B": 2026388, + "D_adds": 15637, + "F": 49347, + "step": 20 + }, + { + "B": 2026388, + "D_adds": 15550, + "F": 49347, + "step": 21 + }, + { + "B": 2026388, + "D_adds": 15465, + "F": 49347, + "step": 22 + }, + { + "B": 2026388, + "D_adds": 15380, + "F": 49347, + "step": 23 + }, + { + "B": 2026388, + "D_adds": 15296, + "F": 49347, + "step": 24 + }, + { + "B": 2026388, + "D_adds": 15212, + "F": 49347, + "step": 25 + }, + { + "B": 2026388, + "D_adds": 15129, + "F": 49347, + "step": 26 + }, + { + "B": 2026388, + "D_adds": 15046, + "F": 49347, + "step": 27 + }, + { + "B": 2026388, + "D_adds": 14964, + "F": 49347, + "step": 28 + }, + { + "B": 2026388, + "D_adds": 14882, + "F": 49347, + "step": 29 + }, + { + "B": 2026388, + "D_adds": 14791, + "F": 49347, + "step": 30 + }, + { + "B": 2026388, + "D_adds": 14711, + "F": 49347, + "step": 31 + }, + { + "B": 2026388, + "D_adds": 14631, + "F": 49347, + "step": 32 + }, + { + "B": 2026388, + "D_adds": 14534, + "F": 49347, + "step": 33 + }, + { + "B": 2026388, + "D_adds": 14455, + "F": 49347, + "step": 34 + }, + { + "B": 2026388, + "D_adds": 14376, + "F": 49347, + "step": 35 + }, + { + "B": 2026388, + "D_adds": 14297, + "F": 49347, + "step": 36 + }, + { + "B": 2026388, + "D_adds": 14213, + "F": 49347, + "step": 37 + }, + { + "B": 2481858, + "D_adds": 14134, + "F": 49347, + "step": 38 + }, + { + "B": 2481858, + "D_adds": 14046, + "F": 49347, + "step": 39 + }, + { + "B": 2481858, + "D_adds": 13970, + "F": 49347, + "step": 40 + }, + { + "B": 2481858, + "D_adds": 13894, + "F": 49347, + "step": 41 + }, + { + "B": 2481858, + "D_adds": 13818, + "F": 49347, + "step": 42 + }, + { + "B": 2481858, + "D_adds": 13720, + "F": 49347, + "step": 43 + }, + { + "B": 2481858, + "D_adds": 13645, + "F": 49347, + "step": 44 + }, + { + "B": 2481858, + "D_adds": 13570, + "F": 49347, + "step": 45 + }, + { + "B": 2481858, + "D_adds": 13496, + "F": 49347, + "step": 46 + }, + { + "B": 2481858, + "D_adds": 13421, + "F": 49347, + "step": 47 + }, + { + "B": 2481858, + "D_adds": 13349, + "F": 49347, + "step": 48 + }, + { + "B": 2481858, + "D_adds": 13277, + "F": 49347, + "step": 49 + }, + { + "B": 2481858, + "D_adds": 13207, + "F": 49347, + "step": 50 + }, + { + "B": 2481858, + "D_adds": 13120, + "F": 49347, + "step": 51 + }, + { + "B": 2481858, + "D_adds": 13051, + "F": 49347, + "step": 52 + }, + { + "B": 2939320, + "D_adds": 12982, + "F": 49347, + "step": 53 + }, + { + "B": 3350744, + "D_adds": 12914, + "F": 49347, + "step": 54 + }, + { + "B": 3350744, + "D_adds": 12846, + "F": 49347, + "step": 55 + }, + { + "B": 3350744, + "D_adds": 12760, + "F": 49347, + "step": 56 + }, + { + "B": 3350744, + "D_adds": 12692, + "F": 49347, + "step": 57 + }, + { + "B": 3350744, + "D_adds": 12598, + "F": 49347, + "step": 58 + }, + { + "B": 3350744, + "D_adds": 12530, + "F": 49347, + "step": 59 + }, + { + "B": 3350744, + "D_adds": 12442, + "F": 49347, + "step": 60 + }, + { + "B": 3350744, + "D_adds": 12375, + "F": 49347, + "step": 61 + }, + { + "B": 3350744, + "D_adds": 12308, + "F": 49347, + "step": 62 + }, + { + "B": 3350744, + "D_adds": 12242, + "F": 49347, + "step": 63 + }, + { + "B": 3350744, + "D_adds": 12177, + "F": 49347, + "step": 64 + }, + { + "B": 3350744, + "D_adds": 12112, + "F": 49347, + "step": 65 + }, + { + "B": 3350744, + "D_adds": 12018, + "F": 49347, + "step": 66 + }, + { + "B": 3350744, + "D_adds": 11954, + "F": 49347, + "step": 67 + }, + { + "B": 3350744, + "D_adds": 11869, + "F": 49347, + "step": 68 + }, + { + "B": 3350744, + "D_adds": 11807, + "F": 49347, + "step": 69 + }, + { + "B": 3350744, + "D_adds": 11748, + "F": 49347, + "step": 70 + }, + { + "B": 3350744, + "D_adds": 11649, + "F": 49347, + "step": 71 + }, + { + "B": 3350744, + "D_adds": 11590, + "F": 49347, + "step": 72 + }, + { + "B": 3350744, + "D_adds": 11495, + "F": 49347, + "step": 73 + }, + { + "B": 3350744, + "D_adds": 11437, + "F": 49347, + "step": 74 + }, + { + "B": 3350744, + "D_adds": 11350, + "F": 49347, + "step": 75 + }, + { + "B": 3350744, + "D_adds": 11293, + "F": 49347, + "step": 76 + }, + { + "B": 3350744, + "D_adds": 11200, + "F": 49347, + "step": 77 + }, + { + "B": 3350744, + "D_adds": 11144, + "F": 49347, + "step": 78 + }, + { + "B": 3350744, + "D_adds": 11088, + "F": 49347, + "step": 79 + }, + { + "B": 3350744, + "D_adds": 11034, + "F": 49347, + "step": 80 + }, + { + "B": 3350744, + "D_adds": 10943, + "F": 49347, + "step": 81 + }, + { + "B": 3350744, + "D_adds": 10889, + "F": 49347, + "step": 82 + }, + { + "B": 3350744, + "D_adds": 10836, + "F": 49347, + "step": 83 + }, + { + "B": 3350744, + "D_adds": 10741, + "F": 49347, + "step": 84 + }, + { + "B": 3350744, + "D_adds": 10688, + "F": 49347, + "step": 85 + }, + { + "B": 3350744, + "D_adds": 10636, + "F": 49347, + "step": 86 + }, + { + "B": 3350744, + "D_adds": 10584, + "F": 49347, + "step": 87 + }, + { + "B": 3350744, + "D_adds": 10533, + "F": 49347, + "step": 88 + }, + { + "B": 3350744, + "D_adds": 10483, + "F": 49347, + "step": 89 + }, + { + "B": 3350744, + "D_adds": 10422, + "F": 49347, + "step": 90 + }, + { + "B": 3350744, + "D_adds": 10373, + "F": 49347, + "step": 91 + }, + { + "B": 3350744, + "D_adds": 10277, + "F": 49347, + "step": 92 + }, + { + "B": 3350744, + "D_adds": 10229, + "F": 49347, + "step": 93 + }, + { + "B": 3350744, + "D_adds": 10136, + "F": 49347, + "step": 94 + }, + { + "B": 3350744, + "D_adds": 10090, + "F": 49347, + "step": 95 + }, + { + "B": 3350744, + "D_adds": 10045, + "F": 49347, + "step": 96 + }, + { + "B": 3350744, + "D_adds": 10001, + "F": 49347, + "step": 97 + }, + { + "B": 3350744, + "D_adds": 9957, + "F": 49347, + "step": 98 + }, + { + "B": 3350744, + "D_adds": 9892, + "F": 49347, + "step": 99 + }, + { + "B": 3350744, + "D_adds": 9848, + "F": 49347, + "step": 100 + }, + { + "B": 3350744, + "D_adds": 9773, + "F": 49347, + "step": 101 + }, + { + "B": 3350744, + "D_adds": 9730, + "F": 49347, + "step": 102 + }, + { + "B": 3350744, + "D_adds": 9687, + "F": 49347, + "step": 103 + }, + { + "B": 3350744, + "D_adds": 9645, + "F": 49347, + "step": 104 + }, + { + "B": 3350744, + "D_adds": 9573, + "F": 49347, + "step": 105 + }, + { + "B": 3350744, + "D_adds": 9532, + "F": 49347, + "step": 106 + }, + { + "B": 3350744, + "D_adds": 9416, + "F": 49347, + "step": 107 + }, + { + "B": 3350744, + "D_adds": 9381, + "F": 49347, + "step": 108 + }, + { + "B": 3350744, + "D_adds": 9285, + "F": 49347, + "step": 109 + }, + { + "B": 3350744, + "D_adds": 9250, + "F": 49347, + "step": 110 + }, + { + "B": 3350744, + "D_adds": 9218, + "F": 49347, + "step": 111 + }, + { + "B": 3350744, + "D_adds": 9186, + "F": 49347, + "step": 112 + }, + { + "B": 3350744, + "D_adds": 9143, + "F": 49347, + "step": 113 + }, + { + "B": 3350744, + "D_adds": 9080, + "F": 49347, + "step": 114 + }, + { + "B": 3350744, + "D_adds": 9048, + "F": 49347, + "step": 115 + }, + { + "B": 3350744, + "D_adds": 9017, + "F": 49347, + "step": 116 + }, + { + "B": 3350744, + "D_adds": 8924, + "F": 49347, + "step": 117 + }, + { + "B": 3350744, + "D_adds": 8894, + "F": 49347, + "step": 118 + }, + { + "B": 3350744, + "D_adds": 8865, + "F": 49347, + "step": 119 + }, + { + "B": 3350744, + "D_adds": 8837, + "F": 49347, + "step": 120 + }, + { + "B": 3350744, + "D_adds": 8809, + "F": 49347, + "step": 121 + }, + { + "B": 3350744, + "D_adds": 8781, + "F": 49347, + "step": 122 + }, + { + "B": 3350744, + "D_adds": 8754, + "F": 49347, + "step": 123 + }, + { + "B": 3350744, + "D_adds": 8662, + "F": 49347, + "step": 124 + }, + { + "B": 3350744, + "D_adds": 8635, + "F": 49347, + "step": 125 + }, + { + "B": 3350744, + "D_adds": 8538, + "F": 49347, + "step": 126 + }, + { + "B": 3834238, + "D_adds": 8512, + "F": 49347, + "step": 127 + }, + { + "B": 3834238, + "D_adds": 8486, + "F": 49347, + "step": 128 + }, + { + "B": 3834238, + "D_adds": 8461, + "F": 49347, + "step": 129 + }, + { + "B": 3834238, + "D_adds": 8437, + "F": 49347, + "step": 130 + }, + { + "B": 3834238, + "D_adds": 8376, + "F": 49347, + "step": 131 + }, + { + "B": 3834238, + "D_adds": 8352, + "F": 49347, + "step": 132 + }, + { + "B": 3834238, + "D_adds": 8329, + "F": 49347, + "step": 133 + }, + { + "B": 3834238, + "D_adds": 8307, + "F": 49347, + "step": 134 + }, + { + "B": 3834238, + "D_adds": 8285, + "F": 49347, + "step": 135 + }, + { + "B": 3834238, + "D_adds": 8262, + "F": 49347, + "step": 136 + }, + { + "B": 3834238, + "D_adds": 8240, + "F": 49347, + "step": 137 + }, + { + "B": 3834238, + "D_adds": 8218, + "F": 49347, + "step": 138 + }, + { + "B": 3834238, + "D_adds": 8197, + "F": 49347, + "step": 139 + }, + { + "B": 3834238, + "D_adds": 8176, + "F": 49347, + "step": 140 + }, + { + "B": 3834238, + "D_adds": 8156, + "F": 49347, + "step": 141 + }, + { + "B": 3834238, + "D_adds": 8138, + "F": 49347, + "step": 142 + }, + { + "B": 3889268, + "D_adds": 8055, + "F": 49347, + "step": 143 + }, + { + "B": 3889268, + "D_adds": 8039, + "F": 49347, + "step": 144 + }, + { + "B": 3889268, + "D_adds": 8019, + "F": 49347, + "step": 145 + }, + { + "B": 3889268, + "D_adds": 8004, + "F": 49347, + "step": 146 + }, + { + "B": 3889268, + "D_adds": 7989, + "F": 49347, + "step": 147 + }, + { + "B": 3889268, + "D_adds": 7975, + "F": 49347, + "step": 148 + }, + { + "B": 3889268, + "D_adds": 7961, + "F": 49347, + "step": 149 + }, + { + "B": 3889268, + "D_adds": 7947, + "F": 49347, + "step": 150 + }, + { + "B": 3889268, + "D_adds": 7933, + "F": 49347, + "step": 151 + }, + { + "B": 3944612, + "D_adds": 7920, + "F": 49347, + "step": 152 + }, + { + "B": 3944612, + "D_adds": 7907, + "F": 49347, + "step": 153 + }, + { + "B": 3944612, + "D_adds": 7894, + "F": 49347, + "step": 154 + }, + { + "B": 3944612, + "D_adds": 7882, + "F": 49347, + "step": 155 + }, + { + "B": 3944612, + "D_adds": 7870, + "F": 49347, + "step": 156 + }, + { + "B": 3944612, + "D_adds": 7859, + "F": 49347, + "step": 157 + }, + { + "B": 3944612, + "D_adds": 7848, + "F": 49347, + "step": 158 + }, + { + "B": 4437804, + "D_adds": 7837, + "F": 49347, + "step": 159 + }, + { + "B": 4437804, + "D_adds": 7823, + "F": 49347, + "step": 160 + }, + { + "B": 4437804, + "D_adds": 7803, + "F": 49347, + "step": 161 + }, + { + "B": 4437804, + "D_adds": 7785, + "F": 49347, + "step": 162 + }, + { + "B": 4437804, + "D_adds": 7775, + "F": 49347, + "step": 163 + }, + { + "B": 4437804, + "D_adds": 7765, + "F": 49347, + "step": 164 + }, + { + "B": 4437804, + "D_adds": 7755, + "F": 49347, + "step": 165 + }, + { + "B": 4437804, + "D_adds": 7745, + "F": 49347, + "step": 166 + }, + { + "B": 4437804, + "D_adds": 7735, + "F": 49347, + "step": 167 + }, + { + "B": 4437804, + "D_adds": 7725, + "F": 49347, + "step": 168 + }, + { + "B": 4437804, + "D_adds": 7716, + "F": 49347, + "step": 169 + }, + { + "B": 4437804, + "D_adds": 7707, + "F": 49347, + "step": 170 + }, + { + "B": 4437804, + "D_adds": 7698, + "F": 49347, + "step": 171 + }, + { + "B": 4437804, + "D_adds": 7689, + "F": 49347, + "step": 172 + }, + { + "B": 5071832, + "D_adds": 7680, + "F": 49347, + "step": 173 + }, + { + "B": 5071832, + "D_adds": 7671, + "F": 49347, + "step": 174 + }, + { + "B": 5071832, + "D_adds": 7662, + "F": 49347, + "step": 175 + }, + { + "B": 5071832, + "D_adds": 7654, + "F": 49347, + "step": 176 + }, + { + "B": 5071832, + "D_adds": 7646, + "F": 49347, + "step": 177 + }, + { + "B": 5071832, + "D_adds": 7638, + "F": 49347, + "step": 178 + }, + { + "B": 5071832, + "D_adds": 7630, + "F": 49347, + "step": 179 + }, + { + "B": 5071832, + "D_adds": 7622, + "F": 49347, + "step": 180 + }, + { + "B": 5071832, + "D_adds": 7615, + "F": 49347, + "step": 181 + }, + { + "B": 5071832, + "D_adds": 7608, + "F": 49347, + "step": 182 + }, + { + "B": 5071832, + "D_adds": 7601, + "F": 49347, + "step": 183 + }, + { + "B": 5198920, + "D_adds": 7594, + "F": 49347, + "step": 184 + }, + { + "B": 5198920, + "D_adds": 7587, + "F": 49347, + "step": 185 + }, + { + "B": 5198920, + "D_adds": 7580, + "F": 49347, + "step": 186 + }, + { + "B": 5198920, + "D_adds": 7573, + "F": 49347, + "step": 187 + }, + { + "B": 5198920, + "D_adds": 7566, + "F": 49347, + "step": 188 + }, + { + "B": 5198920, + "D_adds": 7559, + "F": 49347, + "step": 189 + }, + { + "B": 5198920, + "D_adds": 7553, + "F": 49347, + "step": 190 + }, + { + "B": 5198920, + "D_adds": 7547, + "F": 49347, + "step": 191 + }, + { + "B": 5198920, + "D_adds": 7541, + "F": 49347, + "step": 192 + }, + { + "B": 5198920, + "D_adds": 7535, + "F": 49347, + "step": 193 + }, + { + "B": 5198920, + "D_adds": 7529, + "F": 49347, + "step": 194 + }, + { + "B": 5198920, + "D_adds": 7523, + "F": 49347, + "step": 195 + }, + { + "B": 5198920, + "D_adds": 7517, + "F": 49347, + "step": 196 + }, + { + "B": 5198920, + "D_adds": 7512, + "F": 49347, + "step": 197 + }, + { + "B": 5198920, + "D_adds": 7507, + "F": 49347, + "step": 198 + }, + { + "B": 5198920, + "D_adds": 7502, + "F": 49347, + "step": 199 + }, + { + "B": 5198920, + "D_adds": 7497, + "F": 49347, + "step": 200 + }, + { + "B": 5198920, + "D_adds": 7493, + "F": 49347, + "step": 201 + }, + { + "B": 5198920, + "D_adds": 7489, + "F": 49347, + "step": 202 + }, + { + "B": 5198920, + "D_adds": 7485, + "F": 49347, + "step": 203 + }, + { + "B": 5198920, + "D_adds": 7481, + "F": 49347, + "step": 204 + }, + { + "B": 5198920, + "D_adds": 7477, + "F": 49347, + "step": 205 + }, + { + "B": 5198920, + "D_adds": 7473, + "F": 49347, + "step": 206 + }, + { + "B": 5198920, + "D_adds": 7469, + "F": 49347, + "step": 207 + }, + { + "B": 5198920, + "D_adds": 7465, + "F": 49347, + "step": 208 + }, + { + "B": 5198920, + "D_adds": 7461, + "F": 49347, + "step": 209 + }, + { + "B": 5198920, + "D_adds": 7457, + "F": 49347, + "step": 210 + }, + { + "B": 5198920, + "D_adds": 7449, + "F": 49347, + "step": 211 + }, + { + "B": 5453532, + "D_adds": 7444, + "F": 49347, + "step": 212 + }, + { + "B": 5631746, + "D_adds": 7406, + "F": 49347, + "step": 213 + }, + { + "B": 5642572, + "D_adds": 7397, + "F": 49347, + "step": 214 + }, + { + "B": 5642572, + "D_adds": 7393, + "F": 49347, + "step": 215 + }, + { + "B": 5642572, + "D_adds": 7386, + "F": 49347, + "step": 216 + }, + { + "B": 5642572, + "D_adds": 7382, + "F": 49347, + "step": 217 + }, + { + "B": 5642572, + "D_adds": 7378, + "F": 49347, + "step": 218 + }, + { + "B": 5642572, + "D_adds": 7374, + "F": 49347, + "step": 219 + }, + { + "B": 5642572, + "D_adds": 7370, + "F": 49347, + "step": 220 + }, + { + "B": 5642572, + "D_adds": 7366, + "F": 49347, + "step": 221 + }, + { + "B": 5642572, + "D_adds": 7362, + "F": 49347, + "step": 222 + }, + { + "B": 5642572, + "D_adds": 7359, + "F": 49347, + "step": 223 + }, + { + "B": 5642572, + "D_adds": 7356, + "F": 49347, + "step": 224 + }, + { + "B": 5642572, + "D_adds": 7353, + "F": 49347, + "step": 225 + }, + { + "B": 5642572, + "D_adds": 7347, + "F": 49347, + "step": 226 + }, + { + "B": 5642572, + "D_adds": 7336, + "F": 49347, + "step": 227 + }, + { + "B": 5642572, + "D_adds": 7287, + "F": 49347, + "step": 228 + }, + { + "B": 5642572, + "D_adds": 7277, + "F": 49347, + "step": 229 + }, + { + "B": 5642572, + "D_adds": 7269, + "F": 49347, + "step": 230 + }, + { + "B": 5642572, + "D_adds": 7266, + "F": 49347, + "step": 231 + }, + { + "B": 5642572, + "D_adds": 7262, + "F": 49347, + "step": 232 + }, + { + "B": 5642572, + "D_adds": 7259, + "F": 49347, + "step": 233 + }, + { + "B": 5642572, + "D_adds": 7256, + "F": 49347, + "step": 234 + }, + { + "B": 5642572, + "D_adds": 7253, + "F": 49347, + "step": 235 + }, + { + "B": 5711836, + "D_adds": 7250, + "F": 49347, + "step": 236 + }, + { + "B": 5711836, + "D_adds": 7247, + "F": 49347, + "step": 237 + }, + { + "B": 5711836, + "D_adds": 7244, + "F": 49347, + "step": 238 + }, + { + "B": 5711836, + "D_adds": 7241, + "F": 49347, + "step": 239 + }, + { + "B": 5711836, + "D_adds": 7238, + "F": 49347, + "step": 240 + }, + { + "B": 5711836, + "D_adds": 7235, + "F": 49347, + "step": 241 + }, + { + "B": 5759924, + "D_adds": 7232, + "F": 49347, + "step": 242 + }, + { + "B": 5824606, + "D_adds": 7229, + "F": 49347, + "step": 243 + }, + { + "B": 5824606, + "D_adds": 7226, + "F": 49347, + "step": 244 + }, + { + "B": 5824606, + "D_adds": 7224, + "F": 49347, + "step": 245 + }, + { + "B": 5824606, + "D_adds": 7222, + "F": 49347, + "step": 246 + }, + { + "B": 5824606, + "D_adds": 7220, + "F": 49347, + "step": 247 + }, + { + "B": 5824606, + "D_adds": 7218, + "F": 49347, + "step": 248 + }, + { + "B": 5824606, + "D_adds": 7216, + "F": 49347, + "step": 249 + }, + { + "B": 5824606, + "D_adds": 7214, + "F": 49347, + "step": 250 + }, + { + "B": 5824606, + "D_adds": 7212, + "F": 49347, + "step": 251 + }, + { + "B": 5824606, + "D_adds": 7210, + "F": 49347, + "step": 252 + }, + { + "B": 5824606, + "D_adds": 7188, + "F": 49347, + "step": 253 + }, + { + "B": 5824606, + "D_adds": 7178, + "F": 49347, + "step": 254 + }, + { + "B": 5824606, + "D_adds": 7166, + "F": 49347, + "step": 255 + }, + { + "B": 5824606, + "D_adds": 7164, + "F": 49347, + "step": 256 + }, + { + "B": 5824606, + "D_adds": 7162, + "F": 49347, + "step": 257 + }, + { + "B": 5824606, + "D_adds": 7160, + "F": 49347, + "step": 258 + }, + { + "B": 5890714, + "D_adds": 7158, + "F": 49347, + "step": 259 + }, + { + "B": 5906288, + "D_adds": 7153, + "F": 49347, + "step": 260 + }, + { + "B": 5906288, + "D_adds": 7151, + "F": 49347, + "step": 261 + }, + { + "B": 5906288, + "D_adds": 7141, + "F": 49347, + "step": 262 + }, + { + "B": 5906288, + "D_adds": 7139, + "F": 49347, + "step": 263 + }, + { + "B": 5906288, + "D_adds": 7137, + "F": 49347, + "step": 264 + }, + { + "B": 5945182, + "D_adds": 7135, + "F": 49347, + "step": 265 + }, + { + "B": 5945182, + "D_adds": 7133, + "F": 49347, + "step": 266 + }, + { + "B": 6431574, + "D_adds": 7131, + "F": 49347, + "step": 267 + }, + { + "B": 6617956, + "D_adds": 7071, + "F": 49347, + "step": 268 + }, + { + "B": 6932878, + "D_adds": 7057, + "F": 49347, + "step": 269 + }, + { + "B": 7410460, + "D_adds": 7049, + "F": 49347, + "step": 270 + }, + { + "B": 7569520, + "D_adds": 7047, + "F": 49347, + "step": 271 + }, + { + "B": 7702630, + "D_adds": 7039, + "F": 49347, + "step": 272 + }, + { + "B": 8016030, + "D_adds": 7037, + "F": 49347, + "step": 273 + }, + { + "B": 8016030, + "D_adds": 7035, + "F": 49347, + "step": 274 + }, + { + "B": 8016030, + "D_adds": 7033, + "F": 49347, + "step": 275 + }, + { + "B": 8016030, + "D_adds": 7031, + "F": 49347, + "step": 276 + }, + { + "B": 8016030, + "D_adds": 7029, + "F": 49347, + "step": 277 + }, + { + "B": 8016030, + "D_adds": 7027, + "F": 49347, + "step": 278 + }, + { + "B": 8016030, + "D_adds": 7025, + "F": 49347, + "step": 279 + }, + { + "B": 8329430, + "D_adds": 7023, + "F": 49347, + "step": 280 + }, + { + "B": 8329430, + "D_adds": 7022, + "F": 49347, + "step": 281 + }, + { + "B": 8329430, + "D_adds": 7021, + "F": 49347, + "step": 282 + }, + { + "B": 8329430, + "D_adds": 7020, + "F": 49347, + "step": 283 + }, + { + "B": 8329430, + "D_adds": 7019, + "F": 49347, + "step": 284 + }, + { + "B": 8329430, + "D_adds": 7018, + "F": 49347, + "step": 285 + }, + { + "B": 8329430, + "D_adds": 7017, + "F": 49347, + "step": 286 + }, + { + "B": 8392926, + "D_adds": 7016, + "F": 49347, + "step": 287 + }, + { + "B": 8392926, + "D_adds": 7015, + "F": 49347, + "step": 288 + }, + { + "B": 8469752, + "D_adds": 7014, + "F": 49347, + "step": 289 + }, + { + "B": 8526718, + "D_adds": 7013, + "F": 49347, + "step": 290 + }, + { + "B": 8526718, + "D_adds": 7011, + "F": 49347, + "step": 291 + }, + { + "B": 8564436, + "D_adds": 7010, + "F": 49347, + "step": 292 + }, + { + "B": 8564436, + "D_adds": 7009, + "F": 49347, + "step": 293 + }, + { + "B": 9534616, + "D_adds": 7008, + "F": 49347, + "step": 294 + }, + { + "B": 9534616, + "D_adds": 7007, + "F": 49347, + "step": 295 + }, + { + "B": 9534616, + "D_adds": 7006, + "F": 49347, + "step": 296 + }, + { + "B": 9534616, + "D_adds": 7000, + "F": 49347, + "step": 297 + }, + { + "B": 9534616, + "D_adds": 6999, + "F": 49347, + "step": 298 + }, + { + "B": 9534616, + "D_adds": 6997, + "F": 49347, + "step": 299 + }, + { + "B": 9534616, + "D_adds": 6994, + "F": 49347, + "step": 300 + }, + { + "B": 9534616, + "D_adds": 6993, + "F": 49347, + "step": 301 + }, + { + "B": 9534616, + "D_adds": 6992, + "F": 49347, + "step": 302 + }, + { + "B": 9534616, + "D_adds": 6991, + "F": 49347, + "step": 303 + }, + { + "B": 9534616, + "D_adds": 6990, + "F": 49347, + "step": 304 + }, + { + "B": 9534616, + "D_adds": 6989, + "F": 49347, + "step": 305 + }, + { + "B": 9534616, + "D_adds": 6988, + "F": 49347, + "step": 306 + } + ], + "restoration_adds": 306, + "saving": 11097, + "steps": 306, + "terminal_max_gain": 0, + "terminal_pairs_checked": 12210 + }, + "source_checks": { + "baseline": { + "conclusions": { + "C_is_U_inverse": true, + "J_identity": true, + "K_equals_D": true, + "U_block_form": true + }, + "full": { + "columns": 661, + "gates": { + "A": 2075, + "B": 712, + "C": 2574, + "D": 111 + }, + "scatter_terms": 527, + "totals": [ + { + "frame": 510, + "hyperplane_of_punctured_line": [ + 0, + 1, + 1, + 0, + -1, + 0, + 0, + 1 + ], + "rank": 7, + "register": 472 + }, + { + "frame": 511, + "hyperplane_of_punctured_line": [ + 0, + 1, + -1, + 0, + -1, + 0, + 0, + -1 + ], + "rank": 7, + "register": 473 + }, + { + "frame": 512, + "hyperplane_of_punctured_line": [ + 0, + 1, + 1, + 0, + 0, + -1, + -1, + 0 + ], + "rank": 7, + "register": 474 + }, + { + "frame": 513, + "hyperplane_of_punctured_line": [ + 0, + 1, + -1, + 0, + 0, + 1, + -1, + 0 + ], + "rank": 7, + "register": 475 + }, + { + "frame": 514, + "hyperplane_of_punctured_line": [ + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ], + "rank": 7, + "register": 476 + }, + { + "frame": 515, + "hyperplane_of_punctured_line": [ + 1, + 1, + -1, + 1, + 0, + 0, + 0, + 0 + ], + "rank": 7, + "register": 477 + }, + { + "frame": 516, + "hyperplane_of_punctured_line": [ + 1, + 0, + 0, + 1, + 1, + 0, + 0, + 1 + ], + "rank": 7, + "register": 478 + }, + { + "frame": 517, + "hyperplane_of_punctured_line": [ + 0, + 0, + 1, + 1, + 0, + 0, + 1, + -1 + ], + "rank": 7, + "register": 479 + }, + { + "frame": 518, + "hyperplane_of_punctured_line": [ + 0, + 1, + 0, + -1, + 0, + -1, + 0, + -1 + ], + "rank": 7, + "register": 480 + } + ] + }, + "hypotheses": { + "H1_no_target_feeds_z": true, + "H2_D_frame0_targets_from_helpers": true, + "H3_A_z_only_scatter_targets_B_split": true, + "H4_C_literal_reverse_at_full": true, + "H5_V_identity": true + }, + "info": { + "B_target_reads_of_registers_rewritten_earlier_in_B": 111, + "B_z_operand_kinds": { + "helper<-helper": 3, + "helper<-source": 13, + "source<-helper": 108, + "source<-source": 375 + }, + "B_z_operand_kinds_by_dim": { + "dim4:helper<-source": 13, + "dim4:source<-source": 375, + "dim6:helper<-helper": 3, + "dim6:source<-helper": 108 + }, + "B_z_write_frame_dims": { + "4": 388, + "6": 111 + }, + "B_z_writes_after_a_target_read_of_the_same_register": 454, + "cleanup_gates": 2574, + "helper_writes_B": 16, + "source_writes_A": 0, + "source_writes_B": 483, + "sources_rewritten_B": 108, + "target_reads_of_targets": 0, + "z_gates_A": 2075, + "z_gates_B": 499 + }, + "labels": { + "frames": 636, + "gram_det": 1, + "labels": 111, + "lattice_rank": 8, + "punctured": 9, + "root_lines": 120 + } + }, + "candidate": { + "conclusions": { + "C_is_U_inverse": true, + "J_identity": true, + "K_equals_D": false, + "U_block_form": true + }, + "full": { + "columns": 661, + "gates": { + "A": 2075, + "B": 712, + "C": 2574, + "D": 723 + }, + "scatter_terms": 527, + "totals": [ + { + "frame": 510, + "hyperplane_of_punctured_line": [ + 0, + 1, + 1, + 0, + -1, + 0, + 0, + 1 + ], + "rank": 7, + "register": 472 + }, + { + "frame": 511, + "hyperplane_of_punctured_line": [ + 0, + 1, + -1, + 0, + -1, + 0, + 0, + -1 + ], + "rank": 7, + "register": 473 + }, + { + "frame": 512, + "hyperplane_of_punctured_line": [ + 0, + 1, + 1, + 0, + 0, + -1, + -1, + 0 + ], + "rank": 7, + "register": 474 + }, + { + "frame": 513, + "hyperplane_of_punctured_line": [ + 0, + 1, + -1, + 0, + 0, + 1, + -1, + 0 + ], + "rank": 7, + "register": 475 + }, + { + "frame": 514, + "hyperplane_of_punctured_line": [ + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1 + ], + "rank": 7, + "register": 476 + }, + { + "frame": 515, + "hyperplane_of_punctured_line": [ + 1, + 1, + -1, + 1, + 0, + 0, + 0, + 0 + ], + "rank": 7, + "register": 477 + }, + { + "frame": 516, + "hyperplane_of_punctured_line": [ + 1, + 0, + 0, + 1, + 1, + 0, + 0, + 1 + ], + "rank": 7, + "register": 478 + }, + { + "frame": 517, + "hyperplane_of_punctured_line": [ + 0, + 0, + 1, + 1, + 0, + 0, + 1, + -1 + ], + "rank": 7, + "register": 479 + }, + { + "frame": 518, + "hyperplane_of_punctured_line": [ + 0, + 1, + 0, + -1, + 0, + -1, + 0, + -1 + ], + "rank": 7, + "register": 480 + } + ] + }, + "hypotheses": { + "H1_no_target_feeds_z": true, + "H2_D_frame0_targets_from_helpers": false, + "H3_A_z_only_scatter_targets_B_split": true, + "H4_C_literal_reverse_at_full": true, + "H5_V_identity": true + }, + "info": { + "B_target_reads_of_registers_rewritten_earlier_in_B": 111, + "B_z_operand_kinds": { + "helper<-helper": 3, + "helper<-source": 13, + "source<-helper": 108, + "source<-source": 375 + }, + "B_z_operand_kinds_by_dim": { + "dim4:helper<-source": 13, + "dim4:source<-source": 375, + "dim6:helper<-helper": 3, + "dim6:source<-helper": 108 + }, + "B_z_write_frame_dims": { + "4": 388, + "6": 111 + }, + "B_z_writes_after_a_target_read_of_the_same_register": 454, + "cleanup_gates": 2574, + "helper_writes_B": 16, + "source_writes_A": 0, + "source_writes_B": 483, + "sources_rewritten_B": 108, + "target_reads_of_targets": 0, + "z_gates_A": 2075, + "z_gates_B": 499 + }, + "labels": { + "frames": 636, + "gram_det": 1, + "labels": 111, + "lattice_rank": 8, + "punctured": 9, + "root_lines": 120 + } + } + }, + "source_files": { + "research/e8-bit-carrier-skeleton/LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "research/e8-bit-carrier-skeleton/NOTICE.md": "5f4b7fcbf99f572be28b6da612ce775363908cdfc7810f7aca167be01c86e49a", + "research/e8-bit-carrier-skeleton/code/bit/checkers/columns_k.cpp": "1c344d18fcd494eeca93e259f10cafae7705780e6592f6dcb35b34752dab9bc2", + "research/e8-bit-carrier-skeleton/code/bit/checkers/json.hpp": "aaf127c04cb31c406e5b04a63f1ae89369fccde6d8fa7cdda1ed4f32dfc5de63", + "research/e8-bit-carrier-skeleton/code/bit/checkers/legality_h.cpp": "6c1ef2b24e57781d6951c172a1024fc4300e6fd392c9d6672079a7806ab663b3", + "research/e8-bit-carrier-skeleton/code/bit/export_records.py": "8a5999601f917dbb492bb9ae9a344611f18cc7cedc53dc3c76496a369e530eb3", + "research/e8-bit-carrier-skeleton/code/bit/regression/stage_cohort.py": "6c288f6f234b528c1a7c0a4adfb724e91e0fe6b18c8dffad96af3f973de1829a", + "research/e8-bit-carrier-skeleton/portable-include/bits/stdc++.h": "420094be2af295eed03a983dd66debbbe9cfb78d8252859f4498a615a0074b99", + "research/e8-bit-p111-tuned/LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "research/e8-bit-p111-tuned/NOTICE.md": "5b88eb2b7de76aa2a3288ee3c7a08d18a5eadfa82f5e7a99e207d232aed71221", + "research/e8-bit-p111-tuned/code/xcheck_p.py": "af3decc877e27c00001cf56f50c6c09566e8e101297ab34c7860aed96a06d80e", + "research/e8-bit-p111-tuned/tune/EXPECTED.json": "b9f0e5ca038abe837b0007c8fe006f366a6f02009244ac57705a8a200e2301f4", + "research/e8-bit-p111-tuned/tune/bitE8mut-p111-tuned.json.gz": "e3e301e62bc2b41dbf1ceac0acf3d35824ebeab1848c5a2142d4577b109da52f", + "research/e8-bit-p111-tuned/vendor/pr510/e8-r480-nine-stage/vendor/e8-r715-eleven-stage-whole/code/global_k.py": "6368196a393ac25bb2918880e4c4bd31ed733b762c27b6873ab391cbc0c5c3c8" + }, + "status": "PASS_R439_TARGET_COMPENSATION" +} diff --git a/research/r439-two-sided-compensation/vendor/pr915/LICENSE b/research/r439-two-sided-compensation/vendor/pr915/LICENSE new file mode 100644 index 0000000000..261eeb9e9f --- /dev/null +++ b/research/r439-two-sided-compensation/vendor/pr915/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/r439-two-sided-compensation/vendor/pr915/NOTICE.md b/research/r439-two-sided-compensation/vendor/pr915/NOTICE.md new file mode 100644 index 0000000000..bd410b07fd --- /dev/null +++ b/research/r439-two-sided-compensation/vendor/pr915/NOTICE.md @@ -0,0 +1,60 @@ +# Notice and attribution + +New code and documentation are Apache-2.0. Prepared for Gareth Davidson +(@bitplane), with substantial OpenAI Codex assistance. One AI agent performed +the work; algorithmic independence does not mean independent human review. + +The input and modified candidate derive from **DreamingOfClouds's PR589** +(`a5afc8c6169ea61ba7c51dfd3cade02cc7b13b46`), tuning **eumemic's PR555/543** +punctured E8 construction. DreamingOfClouds used Claude Opus 5.5 (Anthropic) +via Claude Code; eumemic's retained notice discloses Anthropic Claude +assistance. PR589 uses transport mechanisms from Dugongue's PR541/548 and +rohanarun's PR542. The original notices and licenses for the tuned word and +carrier skeleton are immutable source inputs. LICENSE here is copied from +the tuned-word package. The candidate changes only D. + +**commdata2338's PR794**, at +`6be7364e0245c5a1c931cb1c43b3da991b755850`, supplies the guarded target-basis +method and exact incremental positive-vector formula. Its README is retained +verbatim in `provenance/PR794-README.md`, with Git-blob/SHA256 pins in +SOURCES.json. Relative links there refer to the original PR794 package. +PR794 discloses OpenAI Codex (GPT-6 Astra) assistance in mathematics/code and +Claude Code packaging. No PR794 executable is imported here. The new result +is its application to the selected R439 matrix, the actual circuit/bill, and +independent literal bounds at every accepted step. + +Earlier basis and semantic-interface credit: + +- **Mikhail R. Gadelha**, PR686: semantic D-boundary substitution and a + restored helper pair. +- **Greer Guthrie**, PR694: simultaneous helper-basis construction. +- **Scott Woolsey Biggart**, PR713, and **Sagar Thakrar**, PR716: target-side + compensation pair constructions, with substantial OpenAI Codex assistance. +- **Dugongue**, PR476/478: reversible target-factoring precedent. +- **navinor**, PR848: the selected R439 sharing barrier under unchanged + syntactic H2. This submission states the changed contract explicitly. + +`common.py`, `test_package.py` and the native harness are adapted from this +contributor's PR904 mathematical commit +`33b9175c345bcd0f21b95d29f37cb95fffd5a134`. The native harness follows +**Sagar Thakrar's `research/r420-decoder-sharing/native.py`** validation pattern. +The new harness admits the explicitly priced reverse-bound increase, retains +all geometry/lifecycle/column checks, and runs 5/9/11 stages on both words. + +Unchanged in-tree owning code retains the full original notices: + +- **eumemic**: punctured independent checker and carrier skeleton. +- **Dylan Crow / utcorvusvolat-dotcom**, PR370, with Anthropic Claude + assistance: exporter, staging and generalized native cohort checker lineage. +- **DaysSky**, PR381, assisted with Claude: bridged-stage `columns_k.cpp`. +- **Zhihao Chen / jacklightChen**, PR386, with OpenAI Codex assistance: + portable header; also the mutable-source/common-label scalar-interface lineage. +- **DreamingOfClouds**: nine-stage accounting and the retained global template; + **Chafik Boukhalfa** and other credited predecessors: hosted compilation, + physical routes and audits. +- **Niels Lohmann and contributors**: `json.hpp`, retaining its MIT header. +- **Jacob Sussman**: the E8 unit. + +No claim is made to priority for basis factoring, the semantic-prefix contract, +or its incremental-bound method. Source pins and the exact finite contribution +are recorded separately from the inherited full multiplication assumptions. diff --git a/research/r439-two-sided-compensation/vendor/pr915/PROOF.md b/research/r439-two-sided-compensation/vendor/pr915/PROOF.md new file mode 100644 index 0000000000..2230d1e1b6 --- /dev/null +++ b/research/r439-two-sided-compensation/vendor/pr915/PROOF.md @@ -0,0 +1,130 @@ +# Restored target basis and its complete bound + +Fix the selected PR589 word and the exact sources in SOURCES.json. Let K be +the 111×439 binary matrix of the old D helper reads, with target rows 0..110 +and helper columns 0..438. Physical targets are 111..221 and helpers 222..660. +The 111 source registers are untouched throughout D. + +## F2 prefix substitution + +For d≠s, let T(d,s) be the elementary target transvection adding coordinate s +to d. It is its own inverse over F2. For a sequence T₁,…,Tₘ in chronological +order, let E=Tₘ⋯T₁ and compute R=EK by the identical sequence of row XORs. +The emitted prefix performs: + +1. T₁,…,Tₘ on the actual arbitrary target vector y; +2. all helper-to-target additions specified by R; +3. Tₘ,…,T₁ on the actual targets. + +Its output is `E⁻¹(Ey+EKs)=y+Ks`, and every source and helper stays unchanged. +The entrance cannot be omitted just because helpers are the quantities being +compensated: without it, the output would be `E⁻¹y+Ks`. The explicit control +in verify.py passes all helper columns after this omission but fails target +columns. The inverse order is necessary because successive shears overlap. + +Every emitted gate is at frame zero, and reads/writes only targets and helpers +which start there. No MOVE, COPY, private register or recursive child is added. +The state and frames at the entrance to A equal the original state and frames. +Every non-D field is verified identical, so the unchanged remainder receives +identical inputs. This proves prefix substitution into the original interface +under its inherited common-label realization assumptions. + +Literal H2 originally allowed only helper donors in D. Target transvections +therefore fail H2, and direct extraction of K from D's helper lists is invalid. +The semantic replacement is the complete frame-zero boundary map above, checked +independently on all 661 input columns. The old predicates remain unchanged +and explicitly false for the candidate. This is the same semantic substitution +framework credited to PR686 and the target-side PR713/716/794 lineage. + +## Search cost + +Suppose the current row supports of R are Sᵢ. A new target shear d←s changes +only row d to `S_d Δ S_s` and adds one entrance and one restoration gate. +Its exact gain is + +``` +|S_d| - |S_d Δ S_s| - 2. +``` + +Only strictly positive gains are accepted. The 306 accepted shears leave +6,376 helper injections. Thus D costs 306+6,376+306=6,988, against 18,085. +The other 6,220 local additions remain byte-for-byte in the original fields, +giving 13,208 native ADDs and 11,097 saved. The candidate is fully specified by +the literal recipe, not by a rank-only or optimistic operation estimate. + +All paid resources are unchanged: 439 helpers, nine copied totals of rank +seven, rank mass 5,129 and histogram +`{1:1323,2:1342,3:79,4:44,5:102,6:11,7:19}`. The native harness checks each +register's complete MOVE path and every COPY/ERASE record. At 5/9/11 stages, +unchanged bridge costs are 666/1,998/2,664 and fresh-copy counts 45/81/99. +The corresponding ADD savings are 55,485/99,873/122,067. + +## Exact positive update used by nomination + +This argument and its use as an admission guard follow PR794. Replace each +XOR by nonnegative integer addition. Let P be the positive entrance matrix +and Q the positive reverse-order restoration matrix. They generally are not +integer inverses. For incoming nonnegative target bounds a and fixed helper +bounds h, the output bound is `Q(Pa+Rh)`, where R is the current binary read +matrix, interpreted as a 0/1 integer matrix. + +Append a shear d←s, with positive matrix G=I+e_d e_sᵀ. Then P′=GP, +Q′=QG, and row d of the binary R′ is S_d Δ S_s. The new bound is +`QG(GPa+R′h)`. Using `G²=I+2e_d e_sᵀ` and expanding row d gives exactly + +``` +new_bound - old_bound + = 2 Q[:,d] ((Pa)[s] + sum(h[j] for j in S_s minus S_d)). +``` + +All factors are nonnegative. Updating Q only requires adding its column d to +column s. The builder maintains this formula for the actual forward and reverse +entry bounds. The independent verifier does not use this update to accept +steps: it reconstructs and literally executes each of the 306 complete partial +words in both orientations, including fresh-center copies and erasures. + +Within D every positive target coordinate is monotone, so its maximum occurs +at the D endpoint. The unchanged remainder never reads a target as an ADD +source; its target increments can therefore be precomputed independently of +D. The forward maximum is the larger of the unchanged source/helper maximum +and the new D target endpoint plus the fixed tail increment. In reverse order, +the unchanged reversed tail fixes D's input bound vector; D comes last. These +observations justify the exact incremental full-word admission tests. + +## Precision guards and limits + +The guard fixes F≤49,347. It sets B≤16,913,320, the smaller of the exact integer +cutoffs from + +``` +64 F^3 B^2 < 2^104, +2^18 F^5 B^4 < 2^192. +``` + +The second expression is the pinned source template's +`2^nb F^(K+1) B^K` at K=4, with nb=6(K−1)=18 bridges. The verifier binds the +expression and bridge relation to the source AST and checks that the baseline +reproduces its recorded 177-bit bound and 192-bit charge. + +Literal native replay yields F=49,347 and B=9,534,616. The local payload bound +is 699,147,249,763,640,764,132,165,496,832 (100 bits). The nine-stage bound is +633,952,218,342,189,222,305,933,054,575,935,669,674,977,721,489,175,871,488 +(189 bits). Both fit the stated existing ceilings. The reverse bound is +larger than the baseline and is charged explicitly. No candidate was rejected +by either guard during this particular nomination. + +The verified bound concerns the signed lift's finite cancellation-free +prefix estimate. It does not establish unchanged unrounded invoice coefficients, +all other charged allocations, a full hosted reconstruction, or a new exponent. +The other assumptions of the selected construction remain those recorded in +its maintainer review. This prefix estimate alone does not justify a complete +machine implementation or the analytic multiplication bound. + +## Completed domain + +All 12,210 ordered pairs are scored at each of 307 iterations, including the +terminal iteration: 3,748,470 scores. Seed 10 fixes tie priority. The declared +1,000-step cap is not reached. The final matrix has maximum next-shear net gain +zero, verified independently on all pairs. This certifies termination for the +specified one-step improvement rule. Zero-gain detours, non-greedy histories, +simultaneous row/column changes and global circuit optimality are outside scope. diff --git a/research/r439-two-sided-compensation/vendor/pr915/README.md b/research/r439-two-sided-compensation/vendor/pr915/README.md new file mode 100644 index 0000000000..4259b0ceab --- /dev/null +++ b/research/r439-two-sided-compensation/vendor/pr915/README.md @@ -0,0 +1,144 @@ +# Selected R439 compensation through a restored target basis + +**Finite bit-circuit construction; no new κ.** Applying the target-basis +method of PR713/716/794 to the selected PR589 word saves **11,097 additions**: +the full local word falls from **24,305 to 13,208 ADDs**. All target +preparation, helper reads and target restoration are paid. Helpers, copies, +frame paths and paid recursive ranks stay unchanged. + +The positive reverse bound increases. The candidate needs **100 local payload +bits** under the inherited 104-bit ceiling. The source nine-stage expression +`2^18 F^5 B^4` needs **189 bits**, within the existing **192-bit prefix charge**. +A full changed-word hosted invoice and supplier integration are separate work. + +| Quantity | Selected PR589 | Candidate | +|---|---:|---:| +| D target preparation / restoration | 0 / 0 | 306 / 306 | +| D helper injections | 18,085 | 6,376 | +| Complete D ADDs | **18,085** | **6,988** | +| Other local ADDs | 6,220 | 6,220 | +| Complete native ADDs | **24,305** | **13,208** | +| Exported records | 27,234 | 16,137 | +| Forward positive bound F | 49,347 | 49,347 | +| Reverse positive bound B | 1,113,070 | 9,534,616 | +| Local payload bits | 93 | 100 | +| Nine-stage prefix bits / charge | 177 / 192 | 189 / 192 | +| Helpers / retained copies / paid rank mass | 439 / 9 / 5,129 | 439 / 9 / 5,129 | + +## Required interface change + +Only the frame-zero D prefix changes. For the original binary compensation +matrix K, the new D applies an invertible target basis E, adds helpers along +`R = E K`, and undoes E in literal reverse order. Thus + +```text +E^-1 (E y + R s) = y + K s. +``` + +This holds for arbitrary target inputs y and arbitrary helper dirt s. D never +writes a source or helper. Every non-D field is identical to PR589. + +**The original syntactic H2 and its direct K extractor reject this word.** +Their false results are retained in the receipt; the source checker is +unchanged. The replacement contract is a legal frame-zero D with complete +operator `(x,y,s) -> (x,y+Ks,s)`. The proof of prefix substitution is in +[PROOF.md](PROOF.md), following the semantic D-boundary work of PR686 and +the target-side constructions of PR713/716/794. The original H1/H3/H4/H5, +all other interface conclusions, complete geometry, frame legality and full +arbitrary-input endpoint pass. Maintainer acceptance and source binding of +this semantic contract are required for integration. + +The identity is over F2. The signed integer lifts have newly computed +cancellation-free bounds; no equality of the forward integer matrices is +asserted. The existing common-label, mutable-source and realization assumptions +remain inherited. + +## Reproduce + +Use Python 3.12+, a C++17 compiler and Boost headers: + +```sh +python3 -I -B research/r439-target-compensation/verify.py +python3 -I -B research/r439-target-compensation/test_package.py -v +``` + +Expected main marker: + +```text +PASS_R439_TARGET_COMPENSATION: D=18085->6988 ADDs=24305->13208 steps=306 nine_bits=189; semantic D; no new kappa +``` + +`CXX` selects the compiler; `BOOST_INCLUDE` selects a directory containing +`boost/` if it is outside `/usr/include`. No Python packages, Git metadata or +network are needed. `--output NEW_DIRECTORY` retains logs, regenerated data +and fresh native binaries; `--receipt NEW_JSON` writes the full deterministic +receipt. Both refuse existing paths. Without these options, outputs are +temporary and nothing is written to the package. `--source-root` supports a +relocated minimal closure of the 14 in-tree inputs in [SOURCES.json](SOURCES.json). +The pinned PR794 proof is retained verbatim under `provenance/`. + +The verifier repeats the nomination, compares every decoded candidate field, +reconstructs the recipe using independent set-valued rows, and literally +replays the complete positive word in **both directions for all 306 accepted +steps** (9,643,960 instructions). It checks **661 separate Boolean input +columns** on baseline/candidate D in both directions. All full source checks +then run, with exactly the two expected syntactic rejections recorded. + +Unchanged native legality and 5/9/11-stage checkers accept both complete words +on **883 / 1,327 / 1,549 columns** per word. All **96 omitted-bridge controls** +reject. Fourteen local controls cover missing entrance/restoration, wrong undo +order, missing helper injection, frame/operand/receipt faults, unrelated edits +and precision overruns. A missing entire entrance passes helper-only checking +and fails arbitrary-target checking. A cancelling target pair is accepted +semantically and charged two ADDs. Eight package tests cover source corruption, +typed JSON, recompression and output preservation. Executed portability checks +are recorded in [VALIDATION.md](VALIDATION.md). + +The nine-stage prefix expression is bound to the pinned source AST, bridge +exponent and PR589 baseline receipt. Its new bound is +`633952218342189222305933054575935669674977721489175871488` (189 bits). +This check does not reconstruct the hosted parent or its complete finite invoice. + +## Bounded search and prior work + +OS seed **10** selected the bit track and the compensation candidate among +three tasks. The [local claim](CLAIM.json) records the domain, stopped searches +and overlap review. Each iteration scores all 12,210 ordered target pairs, +charging two basis gates for a row change. Seed 10 fixes tie order. The search +accepts the highest-gain pair satisfying exact forward and reverse guards; +it stops at no eligible gain or 1,000 accepted steps. + +This run stops after **306 steps and 3,748,470 pair scores**, with **218,204 +positive scores across the successive matrices**. No prefix guard rejected a +nominee in this run. Independent enumeration of all 12,210 final pairs gives +maximum additional gain **zero**. This is a local stopping certificate for +one additional paid row shear. Neutral detours, multi-step improvements, +helper-basis changes and globally optimal circuits are outside the search. + +**commdata2338's PR794** supplies the guarded target-basis method and exact +incremental bound argument, on historical R420. **Scott Woolsey Biggart's +PR713** and **Sagar Thakrar's PR716** give earlier target-pair constructions; +**Mikhail R. Gadelha's PR686** and **Greer Guthrie's PR694** supply the semantic +D-boundary/helper-basis lineage. This contribution applies that mechanism to +the selected punctured R439 matrix, supplies the 11,097-ADD reduction and +replays all accepted-step bounds independently. It claims no priority for +basis factoring or the semantic contract. + +PR848 explains why R439 sharing is blocked by the unchanged H2 syntax; this +uses the explicitly stated semantic replacement. PR904 changes A/B windows +and leaves D unchanged. No combined candidate with PR904 or any other circuit +PR is certified. The selected #799 κ stays `1661634653669567/10^18`. + +Base: `f567884aeb8851b6e794af1184119a3bfbe1e631`. +Word: **DreamingOfClouds's PR589 tuning of eumemic's PR555**, +`a5afc8c6169ea61ba7c51dfd3cade02cc7b13b46`. +Integration requires acceptance of the semantic D boundary and a full updated +hosted reconstruction and invoice. The selected construction's other assumptions +are recorded in the [maintainer review](../../docs/research/community-frontier799-review.md). +These finite checks do not prove that the construction compiles correctly for +every input size or establish the analytic reduction used by the multiplication +theorem. The selected construction is unchanged; no runtime improvement is measured. + +Prepared for **Gareth Davidson (@bitplane), with substantial OpenAI Codex +assistance**. One AI agent performed the work; no independent human review +is claimed. Apache-2.0. See [NOTICE.md](NOTICE.md). diff --git a/research/r439-two-sided-compensation/vendor/pr915/SOURCES.json b/research/r439-two-sided-compensation/vendor/pr915/SOURCES.json new file mode 100644 index 0000000000..94aa9ddb16 --- /dev/null +++ b/research/r439-two-sided-compensation/vendor/pr915/SOURCES.json @@ -0,0 +1,38 @@ +{ + "base_commit": "f567884aeb8851b6e794af1184119a3bfbe1e631", + "files": { + "research/e8-bit-carrier-skeleton/LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "research/e8-bit-carrier-skeleton/NOTICE.md": "5f4b7fcbf99f572be28b6da612ce775363908cdfc7810f7aca167be01c86e49a", + "research/e8-bit-carrier-skeleton/code/bit/checkers/columns_k.cpp": "1c344d18fcd494eeca93e259f10cafae7705780e6592f6dcb35b34752dab9bc2", + "research/e8-bit-carrier-skeleton/code/bit/checkers/json.hpp": "aaf127c04cb31c406e5b04a63f1ae89369fccde6d8fa7cdda1ed4f32dfc5de63", + "research/e8-bit-carrier-skeleton/code/bit/checkers/legality_h.cpp": "6c1ef2b24e57781d6951c172a1024fc4300e6fd392c9d6672079a7806ab663b3", + "research/e8-bit-carrier-skeleton/code/bit/export_records.py": "8a5999601f917dbb492bb9ae9a344611f18cc7cedc53dc3c76496a369e530eb3", + "research/e8-bit-carrier-skeleton/code/bit/regression/stage_cohort.py": "6c288f6f234b528c1a7c0a4adfb724e91e0fe6b18c8dffad96af3f973de1829a", + "research/e8-bit-carrier-skeleton/portable-include/bits/stdc++.h": "420094be2af295eed03a983dd66debbbe9cfb78d8252859f4498a615a0074b99", + "research/e8-bit-p111-tuned/LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "research/e8-bit-p111-tuned/NOTICE.md": "5b88eb2b7de76aa2a3288ee3c7a08d18a5eadfa82f5e7a99e207d232aed71221", + "research/e8-bit-p111-tuned/code/xcheck_p.py": "af3decc877e27c00001cf56f50c6c09566e8e101297ab34c7860aed96a06d80e", + "research/e8-bit-p111-tuned/tune/EXPECTED.json": "b9f0e5ca038abe837b0007c8fe006f366a6f02009244ac57705a8a200e2301f4", + "research/e8-bit-p111-tuned/tune/bitE8mut-p111-tuned.json.gz": "e3e301e62bc2b41dbf1ceac0acf3d35824ebeab1848c5a2142d4577b109da52f", + "research/e8-bit-p111-tuned/vendor/pr510/e8-r480-nine-stage/vendor/e8-r715-eleven-stage-whole/code/global_k.py": "6368196a393ac25bb2918880e4c4bd31ed733b762c27b6873ab391cbc0c5c3c8" + }, + "harness_adaptation": { + "head": "33b9175c345bcd0f21b95d29f37cb95fffd5a134", + "notice": "Common I/O, package controls and native harness adapted from previous contribution; native harness ultimately follows Sagar Thakrar r420-decoder-sharing/native.py.", + "pr": 904, + "source": "research/r439-four-wire-prefix/" + }, + "local_files": { + "provenance/PR794-README.md": "edbec736b24b0f9e2bc95a8839e3a22bc8ca4fc7bd9c0a25dccfb0dc1fec80f4" + }, + "predecessor": { + "author": "commdata2338", + "git_blob": "d81df58d1dc42dab099acf6aa4151c42778c804b", + "head": "6be7364e0245c5a1c931cb1c43b3da991b755850", + "original_path": "research/r420-target-compensation/README.md", + "pr": 794, + "use": "guarded target-basis construction and incremental prefix argument; no executable imported" + }, + "selected_word_commit": "a5afc8c6169ea61ba7c51dfd3cade02cc7b13b46", + "selected_word_pr": 589 +} diff --git a/research/r439-two-sided-compensation/vendor/pr915/candidate.json.gz b/research/r439-two-sided-compensation/vendor/pr915/candidate.json.gz new file mode 100644 index 0000000000..7f1f188f51 Binary files /dev/null and b/research/r439-two-sided-compensation/vendor/pr915/candidate.json.gz differ diff --git a/research/r439-two-sided-compensation/verify.py b/research/r439-two-sided-compensation/verify.py new file mode 100644 index 0000000000..26c284072e --- /dev/null +++ b/research/r439-two-sided-compensation/verify.py @@ -0,0 +1,448 @@ +#!/usr/bin/env python3 +"""Independent set/matrix replay and unchanged native checks of the two-sided word. + +Prepared for Gareth Davidson (@bitplane), with OpenAI Codex assistance. Apache-2.0. +""" +import argparse +import ast +import copy +from pathlib import Path +import random +import runpy +import subprocess +import sys +import tempfile + +C = runpy.run_path(str(Path(__file__).resolve().with_name("common.py"))) +need = C["need"] + + +def same(a, b, message): + need(C["canonical"](a) == C["canonical"](b), message) + + +def guards(forward, backward): + need(64 * forward ** 3 * backward ** 2 < 1 << 104, "local payload guard") + need((1 << 18) * forward ** 5 * backward ** 4 < 1 << 192, "nine-stage guard") + + +def d_atoms(word): + v, n = word["v"], 2 * word["v"] + word["R"] + result = [] + for frame, d, sources in word["D"]: + need(type(frame) is int and frame == 0, "D frame zero") + need(type(d) is int and v <= d < n, "D may not write sources") + need(sources and len(set(sources)) == len(sources), "D nonempty distinct donors") + need(all(type(s) is int and v <= s < n and s != d for s in sources), "D legal donor") + need(d < 2 * v or all(s >= 2 * v for s in sources), "D helper may not read target") + result.extend((d, s) for s in sources) + return result + + +def stream(word): + """Literal ADD/COPY/ERASE instructions, independent of builder macro evaluation.""" + v, temp = word["v"], 2 * word["v"] + word["R"] + instructions = [] + for section in ("D", "A"): + for _, d, sources in word[section]: + instructions.extend((1, d, s) for s in sources) + for j, center in enumerate(word["ret"]): + instructions.append((2, temp, center)) + for target, coefficients in enumerate(word["scatter"]): + if j in coefficients: + instructions.append((1, v + target, temp)) + instructions.append((3, temp, center)) + for section in ("B", "C"): + for _, d, sources in word[section]: + instructions.extend((1, d, s) for s in sources) + return instructions + + +def positive(instructions, size, reverse=False): + values, largest = [1] * size, 1 + for kind, d, s in (reversed(instructions) if reverse else instructions): + if reverse and kind != 1: + kind = 5 - kind + if kind == 1: + values[d] += values[s] + elif kind == 2: + values[d] = values[s] + else: + values[d] = 0 + largest = max(largest, values[d]) + return largest + + +def bill(word): + literal = stream(word) + size = 2 * word["v"] + word["R"] + 1 + forward, backward = positive(literal, size), positive(literal, size, True) + return dict(D_adds=len(d_atoms(word)), native_ADDs=sum(k == 1 for k, _, _ in literal), + F=forward, B=backward, payload_bits=(64 * forward ** 3 * backward ** 2).bit_length(), + nine_stage_prefix_bits=((1 << 18) * forward ** 5 * backward ** 4).bit_length()) + + +def check_bill(word, certificate): + for key, value in bill(word).items(): + same(value, certificate[key], "literal bill: " + key) + + +def boundary_columns(word, reverse=False): + """One byte-valued replay for each of the 661 separate input columns.""" + n = 2 * word["v"] + word["R"] + operations = d_atoms(word) + if reverse: + operations.reverse() + output = [] + for column in range(n): + values = bytearray(n) + values[column] = 1 + for d, s in operations: + values[d] ^= values[s] + output.append(bytes(values)) + return output + + +def outside_d(original, candidate): + same({k: v for k, v in original.items() if k != "D"}, + {k: v for k, v in candidate.items() if k != "D"}, "non-D field changed") + + +def original_rows(original): + v = original["v"] + rows = [set() for _ in range(v)] + for frame, d, sources in original["D"]: + need(frame == 0 and v <= d < 2 * v and all(s >= 2 * v for s in sources), "old D shape") + for s in sources: + rows[d - v].symmetric_difference_update({s - 2 * v}) + return rows + + +def frozen_parent(original, parent): + """Derive E and EK from the pinned target recipe, without accepting search claims.""" + certificate = C["load"](C["HERE"] / "vendor/pr915/CERTIFICATE.json") + same(C["digest"](parent), certificate["candidate_sha256"], "parent digest") + outside_d(original, parent) + v = original["v"] + rows, e_rows, target = original_rows(original), [{i} for i in range(v)], [] + for step in certificate["steps"]: + d, s = step["destination"], step["source"] + need(type(d) is int and type(s) is int and 0 <= d < v and 0 <= s < v and d != s, + "parent target shear") + rows[d].symmetric_difference_update(rows[s]) + e_rows[d].symmetric_difference_update(e_rows[s]) + target.append([0, v + d, [v + s]]) + middle = [[0, v + i, [2 * v + j for j in sorted(row)]] for i, row in enumerate(rows)] + same(target + middle + target[::-1], parent["D"], "frozen parent reconstruction") + check_bill(parent, certificate) + need(len(target) == 306, "parent target count") + return rows, e_rows, target + + +def helper_pairs(certificate, count): + pairs, used = [], set() + for step in certificate["steps"]: + a, b = step["a"], step["b"] + need(type(a) is int and type(b) is int, "noninteger helper index") + need(0 <= a < count and 0 <= b < count and a != b, "helper pair range") + need(a not in used and b not in used, "overlapping helper pair") + pairs.append((a, b)) + used.update((a, b)) + return pairs + + +def reconstruct(parent, rows, target, pairs): + v = parent["v"] + transformed = [set(row) for row in rows] + for a, b in pairs: + for row in transformed: + if a in row: + row.symmetric_difference_update({b}) + helpers = [[0, 2 * v + a, [2 * v + b]] for a, b in pairs] + middle = [[0, v + i, [2 * v + j for j in sorted(row)]] for i, row in enumerate(transformed)] + result = copy.deepcopy(parent) + result["D"] = helpers + target + middle + target[::-1] + helpers[::-1] + return result, transformed + + +def recipe_check(original, parent, candidate, certificate): + need(certificate["format"] == "r439-two-sided/1" and type(certificate["seed"]) is int + and certificate["seed"] == 5, "certificate format/seed") + for label, word in (("baseline", original), ("parent", parent), ("candidate", candidate)): + same(C["digest"](word), certificate[label + "_sha256"], label + " digest") + outside_d(original, candidate) + rows, e_rows, target = frozen_parent(original, parent) + v, helpers = original["v"], original["R"] + expected_pairs = helper_pairs(certificate, helpers) + # Set cardinalities, not the builder's packed column XOR/popcount implementation. + columns = [{i for i in range(v) if j in rows[i]} for j in range(helpers)] + rng, census, choices = random.Random(5), [], [] + for a in range(helpers): + for b in range(helpers): + if a == b: + continue + gain = len(columns[b]) - len(columns[b].symmetric_difference(columns[a])) - 2 + tie = rng.getrandbits(64) + census.append([a, b, gain, tie]) + if gain > 0: + choices.append((-gain, tie, a, b)) + same(C["digest"](census), certificate["census_sha256"], "all pair scores and ties") + same(len(census), certificate["pair_scores"], "pair census size") + same(len(choices), certificate["positive_pairs"], "positive pair count") + same(max(-p[0] for p in choices), certificate["max_pair_gain"], "maximum pair gain") + accepted, used, history, rejected, skipped, instructions_checked = [], set(), [], [], 0, 0 + for neg_gain, tie, a, b in sorted(choices): + if a in used or b in used: + skipped += 1 + continue + trial, supports = reconstruct(parent, rows, target, accepted + [(a, b)]) + charges = bill(trial) + forward, backward = charges["F"], charges["B"] + instructions_checked += 2 * len(stream(trial)) + try: + guards(forward, backward) + except ValueError: + rejected.append(dict(a=a, b=b, gain=-neg_gain, F=forward, B=backward)) + continue + accepted.append((a, b)) + used.update((a, b)) + history.append(dict(a=a, b=b, gain=-neg_gain, F=forward, B=backward, + middle_weight=sum(map(len, supports)))) + same(accepted, expected_pairs, "guarded greedy pairs") + same(history, certificate["steps"], "literal prefix history") + same(rejected, certificate["guard_rejections"], "guard rejection history") + same(skipped, certificate["overlap_skips"], "overlap count") + reconstructed, supports = reconstruct(parent, rows, target, accepted) + same(reconstructed, candidate, "entire candidate recipe") + check_bill(candidate, certificate) + need(len(accepted) == certificate["helper_pairs"] == 192, "accepted pair count") + need(certificate["target_shears"] == len(target), "fixed target count") + need(sum(map(len, supports)) == certificate["middle_weight"] == 4764, "middle matrix weight") + saving = sum(step["gain"] for step in history) + need(saving == certificate["saved_beyond_parent"] == 1228, "fully paid savings") + need(certificate["D_adds"] == 2 * len(target) + 2 * len(accepted) + sum(map(len, supports)) == 5760, + "all preparation and restoration charged") + return dict(pair_scores=len(census), positive_pairs=len(choices), max_pair_gain=max(-p[0] for p in choices), + overlap_skips=skipped, guard_rejections=len(rejected), helper_pairs=len(accepted), + target_shears=len(target), middle_weight=sum(map(len, supports)), + saved_beyond_parent=saving, literal_prefix_instructions_checked=instructions_checked), e_rows, supports + + +def matrix_check(original, e_rows, pairs, middle): + """Every coefficient by K + (E-I)K + K(H-I) + (E-I)K(H-I).""" + v, helpers = original["v"], original["R"] + k_rows = original_rows(original) + k = [[int(j in k_rows[i]) for j in range(helpers)] for i in range(v)] + a_rows = [row.symmetric_difference({i}) for i, row in enumerate(e_rows)] + predecessor = {b: a for a, b in pairs} + mixed, coefficients, helper_only_weight = [set() for _ in range(v)], 0, 0 + for i in range(v): + for j in range(helpers): + base = k[i][j] + left = sum(k[t][j] for t in a_rows[i]) % 2 + right = k[i][predecessor[j]] if j in predecessor else 0 + cross = sum(k[t][predecessor[j]] for t in a_rows[i]) % 2 if j in predecessor else 0 + need(((base + left + right + cross) % 2) == int(j in middle[i]), "four-term matrix coefficient") + if cross: + mixed[i].add(j) + helper_only_weight += (base + right) % 2 + coefficients += 1 + need(sum(map(len, mixed)) == 7031, "nonzero mixed-term support") + return dict(coefficients_checked=coefficients, mixed_term_nonzeros=sum(map(len, mixed)), + helper_only_middle_weight_for_same_pairs=helper_only_weight, + helper_only_D_cost_for_same_pairs=helper_only_weight + 2 * len(pairs)), mixed + + +def source_checks(root, words): + owner = C["module"]("pinned_r439", Path(root) / C["CHECKER"]) + receipts = {} + for name, word in words.items(): + _, labels, full, hypotheses, conclusions, info = owner.check(word) + wanted_h = {key: True for key in hypotheses} + wanted_c = {key: True for key in conclusions} + if name != "baseline": + wanted_h["H2_D_frame0_targets_from_helpers"] = False + wanted_c["K_equals_D"] = False + same(hypotheses, wanted_h, "unexpected source interface predicates") + same(conclusions, wanted_c, "unexpected source conclusion predicates") + receipts[name] = dict(labels=labels, full=full, hypotheses=hypotheses, conclusions=conclusions, info=info) + return receipts + + +def nine_stage_bound(root, native): + path = ("research/e8-bit-p111-tuned/vendor/pr510/e8-r480-nine-stage/" + "vendor/e8-r715-eleven-stage-whole/code/global_k.py") + syntax = ast.parse((Path(root) / path).read_text()) + formulas = [node.value for node in ast.walk(syntax) if isinstance(node, ast.Assign) + and any(isinstance(t, ast.Name) and t.id == "prefix" for t in node.targets)] + expected = ast.parse("(1 << nb) * cf ** (K + 1) * cb ** K", mode="eval").body + need(len(formulas) == 1 and ast.dump(formulas[0]) == ast.dump(expected), "source prefix formula") + bridge = ast.parse("nb == 6 * (K - 1)", mode="eval").body + need(any(isinstance(node, ast.Compare) and ast.dump(node) == ast.dump(bridge) + for node in ast.walk(syntax)), "source bridge exponent") + admitted = C["load"](Path(root) / "research/e8-bit-p111-tuned/tune/EXPECTED.json")["nine"]["bit"] + need(admitted["charged_prefix_bits"] == 192, "source nine-stage charge") + output = {"formula": "2^18 * F^5 * B^4", "source_charge_bits": 192} + for name in ("baseline", "parent", "candidate"): + bounds = native[name]["staged"]["9"]["signed_lift_prefix"] + forward, backward = [int(x["cancellation_free_signed_row_l1_upper"]) for x in bounds] + value = (1 << 18) * forward ** 5 * backward ** 4 + need(value < 1 << 192, "nine-stage invoice bound") + output[name] = {"bound": str(value), "bits": value.bit_length()} + need(output["baseline"]["bits"] == admitted["prefix_bits"] == 177, "source baseline prefix") + need(output["parent"]["bits"] == 189 and output["candidate"]["bits"] == 192, "changed prefix charges") + return output + + +def controls(original, parent, candidate, certificate, baseline_columns, mixed, middle): + rejected = [] + + def reject(name, action, message): + try: + action() + except ValueError as error: + need(message in str(error), "unexpected control failure: " + name + ": " + str(error)) + rejected.append(name) + else: + raise ValueError("control accepted: " + name) + + def boundary(word): + need(boundary_columns(word) == baseline_columns, "D boundary mismatch") + + h, m, v = certificate["helper_pairs"], certificate["target_shears"], original["v"] + changed = copy.deepcopy(candidate) + del changed["D"][h:h + m] + columns = boundary_columns(changed) + need(columns[2 * v:] == baseline_columns[2 * v:], "missing-target-entrance control premise") + need(columns[v:2 * v] != baseline_columns[v:2 * v], "arbitrary target inputs are necessary") + reject("missing target preparation passes helper-only columns", lambda: boundary(changed), "D boundary") + changed = copy.deepcopy(candidate) + del changed["D"][:h] + columns = boundary_columns(changed) + need(columns[:2 * v] == baseline_columns[:2 * v], "missing-helper-preparation control premise") + reject("missing helper preparation passes clean-helper inputs", lambda: boundary(changed), "D boundary") + changed = copy.deepcopy(candidate) + changed["D"].pop() + reject("missing helper restoration", lambda: boundary(changed), "D boundary") + changed = copy.deepcopy(candidate) + changed["D"].pop(-h - 1) + reject("missing target restoration", lambda: boundary(changed), "D boundary") + changed = copy.deepcopy(candidate) + for i, row in enumerate(middle): + changed["D"][h + m + i][2] = [2 * v + j for j in sorted(row.symmetric_difference(mixed[i]))] + reject("omitted mixed term", lambda: boundary(changed), "D boundary") + changed = copy.deepcopy(candidate) + changed["D"][h + m:h + m + v] = copy.deepcopy(parent["D"][m:m + v]) + reject("stale one-sided middle matrix", lambda: boundary(changed), "D boundary") + changed = copy.deepcopy(candidate) + for i, (_, _, row) in enumerate(parent["D"][m:m + v]): + support = set(row) + for a, b in helper_pairs(certificate, original["R"]): + if 2 * v + b in support: + support.symmetric_difference_update({2 * v + a}) + changed["D"][h + m + i][2] = sorted(support) + reject("wrong direction of helper-column change", lambda: boundary(changed), "D boundary") + changed = copy.deepcopy(candidate) + changed["D"][-h - m:-h] = copy.deepcopy(parent["D"][:m]) + reject("target restoration in forward order", lambda: boundary(changed), "D boundary") + changed = copy.deepcopy(candidate) + changed["D"][0][0] = 1 + reject("nonzero D frame", lambda: d_atoms(changed), "D frame") + changed = copy.deepcopy(candidate) + changed["D"][0][1] = 0 + reject("D writes source", lambda: d_atoms(changed), "may not write sources") + changed = copy.deepcopy(candidate) + changed["D"][0][2] = [0] + reject("D reads source", lambda: d_atoms(changed), "D legal donor") + changed = copy.deepcopy(candidate) + changed["D"][0][2] = [v] + reject("helper reads target", lambda: d_atoms(changed), "may not read target") + wrong = copy.deepcopy(certificate) + wrong["D_adds"] -= h + reject("unpaid helper restoration", lambda: check_bill(candidate, wrong), "literal bill: D_adds") + wrong = copy.deepcopy(certificate) + wrong["F"] = 49347 + reject("inherited parent forward bound", lambda: check_bill(candidate, wrong), "literal bill: F") + reject("local payload ceiling equality", lambda: guards(1, 1 << 49), "local payload") + reject("nine-stage overrun below local cap", lambda: guards(71907, 14000000), "nine-stage") + wrong = copy.deepcopy(certificate) + wrong["steps"][1]["a"] = wrong["steps"][0]["a"] + reject("overlapping helper pairs", lambda: helper_pairs(wrong, original["R"]), "overlapping") + wrong = copy.deepcopy(certificate) + wrong["steps"][0]["a"] = True + reject("boolean helper index", lambda: helper_pairs(wrong, original["R"]), "noninteger") + changed = copy.deepcopy(candidate) + changed["C"].pop() + reject("unrelated cleanup change", lambda: outside_d(original, changed), "non-D") + neutral = copy.deepcopy(candidate) + neutral["D"][:0] = [[0, 2 * v, [2 * v + 1]], [0, 2 * v, [2 * v + 1]]] + need(boundary_columns(neutral) == baseline_columns, "neutral helper pair endpoint") + need(len(d_atoms(neutral)) == len(d_atoms(candidate)) + 2, "neutral pair must be paid") + return {"rejected": rejected, "paid_neutral_helper_pair": 2} + + +def run(root, output): + root, output = Path(root).resolve(), Path(output).resolve() + manifest = C["pins"](root) + output.mkdir(parents=True, exist_ok=False) + original = C["load"](root / C["WORD"]) + parent = C["load"](C["HERE"] / "vendor/pr915/candidate.json.gz") + candidate = C["load"](C["HERE"] / "candidate.json.gz") + certificate = C["load"](C["HERE"] / "CERTIFICATE.json") + same(C["digest"](parent), manifest["parent"]["canonical_word_sha256"], "manifest parent digest") + print("reproduce complete seed-5 pair census and guarded greedy pass", flush=True) + generated = output / "regenerated" + subprocess.run([sys.executable, "-I", "-B", C["HERE"] / "build.py", "--source-root", root, + "--output", generated], check=True) + same(C["load"](generated / "CERTIFICATE.json"), certificate, "certificate regeneration") + same(C["load"](generated / "candidate.json.gz"), candidate, "candidate regeneration") + print("independent set-valued search replay and literal prefix bounds", flush=True) + recipe, e_rows, middle = recipe_check(original, parent, candidate, certificate) + pairs = helper_pairs(certificate, original["R"]) + matrix, mixed = matrix_check(original, e_rows, pairs, middle) + print("48,729 four-term coefficients; 661 separate columns, three words, both D directions", flush=True) + baseline_columns = boundary_columns(original) + words = {"baseline": original, "parent": parent, "candidate": candidate} + bills = {name: bill(word) for name, word in words.items()} + for word in words.values(): + for reverse in (False, True): + need(boundary_columns(word, reverse) == baseline_columns, "arbitrary-input D boundary") + source = source_checks(root, words) + negative = controls(original, parent, candidate, certificate, baseline_columns, mixed, middle) + print("unchanged native legality and 5/9/11-stage checks for all three complete words", flush=True) + native = C["module"]("r439_native", C["HERE"] / "native.py").run( + root, root / C["WORD"], C["HERE"] / "vendor/pr915/candidate.json.gz", + C["HERE"] / "candidate.json.gz", output / "native") + for name in words: + need(bills[name]["native_ADDs"] == native[name]["common_frame_ADDs"], "native/literal cost") + bounds = native[name]["staged"]["9"]["signed_lift_prefix"] + same([bills[name]["F"], bills[name]["B"]], + [int(x["cancellation_free_signed_row_l1_upper"]) for x in bounds], "native/literal bounds") + return {"status": "PASS_R439_TWO_SIDED_COMPENSATION", "source_files": manifest["files"], + "predecessor_files": manifest["local_files"], "recipe": recipe, "matrix": matrix, + "boundary_columns": 661, "boundary_words_and_directions": 6, "bills": bills, + "baseline_sha256": C["digest"](original), "parent_sha256": C["digest"](parent), + "candidate_sha256": C["digest"](candidate), "certificate_sha256": C["digest"](certificate), + "source_checks": source, "controls": negative, "native": native, + "nine_stage_prefix_bound": nine_stage_bound(root, native)} + + +if __name__ == "__main__": + parser = argparse.ArgumentParser(description=__doc__) + parser.add_argument("--source-root", type=Path, default=C["ROOT"]) + parser.add_argument("--output", type=Path) + parser.add_argument("--receipt", type=Path) + parser.add_argument("--expected", type=Path, default=C["HERE"] / "EXPECTED.json") + args = parser.parse_args() + if args.output: + need(not args.output.exists(), "output already exists") + if args.receipt: + need(not args.receipt.exists(), "receipt already exists") + expected = C["load"](args.expected) + with tempfile.TemporaryDirectory(prefix="r439-two-sided-") as temp: + report = run(args.source_root, args.output or Path(temp) / "run") + same(report, expected, "receipt differs from EXPECTED.json") + if args.receipt: + C["write"](args.receipt, report) + print("PASS_R439_TWO_SIDED_COMPENSATION: ADDs 24,305 -> 13,208 -> 11,980; " + "192 helper pairs; nine-stage prefix 192 bits; semantic D; no new kappa")