diff --git a/research/pr4585-geometry-soundness-check/.gitattributes b/research/pr4585-geometry-soundness-check/.gitattributes new file mode 100644 index 0000000000..75679931bc --- /dev/null +++ b/research/pr4585-geometry-soundness-check/.gitattributes @@ -0,0 +1 @@ +PR4585-CERTIFICATE.json -text diff --git a/research/pr4585-geometry-soundness-check/PR4585-CERTIFICATE.json b/research/pr4585-geometry-soundness-check/PR4585-CERTIFICATE.json new file mode 100644 index 0000000000..7442462722 --- /dev/null +++ b/research/pr4585-geometry-soundness-check/PR4585-CERTIFICATE.json @@ -0,0 +1,180 @@ +{ + "base_commit": "f626db5c3a3d781d8f7695038776c621651f75e1", + "contact_graph_counts": { + "2": 32, + "3": 96 + }, + "controls": { + "ablations": { + "use_bridges": [ + [ + 2, + 1 + ] + ], + "use_information": [ + [ + 2, + 1 + ] + ] + }, + "changed_boundary_positive": { + "better": [ + 2, + 2, + 2 + ], + "old": [ + 2, + 1, + 1, + 1, + 1 + ] + }, + "decreasing_contact_rejected": true, + "rank_mass_mismatch_rejected": true, + "tiny_actual_paths": [ + 106, + 15, + 2868 + ], + "tiny_endpoint_words": 84 + }, + "new_kappa_claimed": false, + "schema_version": 1, + "scope": "All finite three-field scalar shear words, fixed monotone boundaries, forward windows", + "status": "PASS_RECEIVER_CONTACT_FLOOR", + "window_count": 128, + "windows": [ + {"admissible_edges":[{"dimensions":[0],"roles":[0,1]},{"dimensions":[0],"roles":[0,2]},{"dimensions":[0],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[-1,1],"contacts_bases":[[],[]],"ends_bases":[[],[30,224],[]],"field_partitions":[[[]],[[2]],[[]]],"incumbent_partition":[2],"index":10554,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[2]],"required_dimension_sets":[[[0]],[[0]],[[0]]],"roles":[162,172,513],"starts_bases":[[],[],[]]}, + {"admissible_edges":[{"dimensions":[0],"roles":[0,1]},{"dimensions":[0],"roles":[0,2]},{"dimensions":[0],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[1,1],"contacts_bases":[[],[]],"ends_bases":[[30,224],[],[]],"field_partitions":[[[2]],[[]],[[]]],"incumbent_partition":[2],"index":10555,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[2]],"required_dimension_sets":[[[0]],[[0]],[[0]]],"roles":[172,196,513],"starts_bases":[[],[],[]]}, + {"admissible_edges":[{"dimensions":[0,1],"roles":[0,1]},{"dimensions":[1],"roles":[0,2]},{"dimensions":[1],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[1,-1],"contacts_bases":[[30],[30]],"ends_bases":[[30,416],[30],[30]],"field_partitions":[[[1,1]],[[1]],[[]]],"incumbent_partition":[1,1,1],"index":10557,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[1,1,1]],"required_dimension_sets":[[[1]],[[1]],[[1]]],"roles":[140,144,502],"starts_bases":[[],[],[30]]}, + {"admissible_edges":[{"dimensions":[0,1],"roles":[0,1]},{"dimensions":[1],"roles":[0,2]},{"dimensions":[1],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[-1,1],"contacts_bases":[[30],[30]],"ends_bases":[[30],[30],[30]],"field_partitions":[[[1]],[[1]],[[]]],"incumbent_partition":[1,1],"index":10558,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[1,1]],"required_dimension_sets":[[[1]],[[1]],[[1]]],"roles":[144,187,502],"starts_bases":[[],[],[30]]}, + {"admissible_edges":[{"dimensions":[0,1],"roles":[0,1]},{"dimensions":[1],"roles":[0,2]},{"dimensions":[1],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[1,1],"contacts_bases":[[51],[51]],"ends_bases":[[51],[51,388],[51]],"field_partitions":[[[1]],[[1,1]],[[]]],"incumbent_partition":[1,1,1],"index":10560,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[1,1,1]],"required_dimension_sets":[[[1]],[[1]],[[1]]],"roles":[168,150,548],"starts_bases":[[],[],[51]]}, + {"admissible_edges":[{"dimensions":[0,1],"roles":[0,1]},{"dimensions":[1],"roles":[0,2]},{"dimensions":[1],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[1,-1],"contacts_bases":[[51],[51]],"ends_bases":[[51,388],[51],[51]],"field_partitions":[[[1,1]],[[1]],[[]]],"incumbent_partition":[1,1,1],"index":10561,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[1,1,1]],"required_dimension_sets":[[[1]],[[1]],[[1]]],"roles":[150,115,548],"starts_bases":[[],[],[51]]}, + {"admissible_edges":[{"dimensions":[0,1],"roles":[0,1]},{"dimensions":[1],"roles":[0,2]},{"dimensions":[1],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[1,-1],"contacts_bases":[[51],[51]],"ends_bases":[[51,196],[51],[51]],"field_partitions":[[[1,1]],[[1]],[[]]],"incumbent_partition":[1,1,1],"index":10563,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[1,1,1]],"required_dimension_sets":[[[1]],[[1]],[[1]]],"roles":[131,117,560],"starts_bases":[[],[],[51]]}, + {"admissible_edges":[{"dimensions":[1],"roles":[0,1]},{"dimensions":[1],"roles":[0,2]},{"dimensions":[1],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[-1,-1],"contacts_bases":[[51],[51]],"ends_bases":[[51],[51],[51]],"field_partitions":[[[1]],[[]],[[]]],"incumbent_partition":[1],"index":10564,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[1]],"required_dimension_sets":[[[1]],[[1]],[[1]]],"roles":[117,584,560],"starts_bases":[[],[51],[51]]}, + {"admissible_edges":[{"dimensions":[0,1],"roles":[0,1]},{"dimensions":[0,1],"roles":[0,2]},{"dimensions":[0,1],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[-1,-1],"contacts_bases":[[],[]],"ends_bases":[[30],[30,491],[30,38,459]],"field_partitions":[[[1]],[[1,1],[2]],[[2,1],[3]]],"incumbent_partition":[3,2,1],"index":10575,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[2,1,1,1,1],[2,2,1,1],[3,1,1,1],[3,2,1]],"required_dimension_sets":[[[0,1]],[[0,1]],[[0,1]]],"roles":[205,170,452],"starts_bases":[[],[],[]]}, + {"admissible_edges":[{"dimensions":[0,1],"roles":[0,1]},{"dimensions":[1],"roles":[0,2]},{"dimensions":[1],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[-1,-1],"contacts_bases":[[30],[30]],"ends_bases":[[30],[30],[11,21,448]],"field_partitions":[[[1]],[[1]],[[2]]],"incumbent_partition":[2,1,1],"index":10577,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[2,1,1]],"required_dimension_sets":[[[1]],[[1]],[[1]]],"roles":[118,194,453],"starts_bases":[[],[],[30]]}, + {"admissible_edges":[{"dimensions":[0,1],"roles":[0,1]},{"dimensions":[0,1],"roles":[0,2]},{"dimensions":[0,1],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[-1,-1],"contacts_bases":[[],[]],"ends_bases":[[51],[22,37],[21,38,448]],"field_partitions":[[[1]],[[1,1],[2]],[[2,1],[3]]],"incumbent_partition":[3,2,1],"index":10579,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[2,1,1,1,1],[2,2,1,1],[3,1,1,1],[3,2,1]],"required_dimension_sets":[[[0,1]],[[0,1]],[[0,1]]],"roles":[120,207,454],"starts_bases":[[],[],[]]}, + {"admissible_edges":[{"dimensions":[0,1],"roles":[0,1]},{"dimensions":[1],"roles":[0,2]},{"dimensions":[1],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[-1,-1],"contacts_bases":[[51],[51]],"ends_bases":[[51],[51],[11,51,469]],"field_partitions":[[[1]],[[1]],[[2]]],"incumbent_partition":[2,1,1],"index":10581,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[2,1,1]],"required_dimension_sets":[[[1]],[[1]],[[1]]],"roles":[192,179,455],"starts_bases":[[],[],[51]]}, + {"admissible_edges":[{"dimensions":[0],"roles":[0,1]},{"dimensions":[0,1],"roles":[0,2]},{"dimensions":[0],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[-1,-1],"contacts_bases":[[],[]],"ends_bases":[[30,321],[],[30,140,289]],"field_partitions":[[[1,1],[2]],[[]],[[2,1],[3]]],"incumbent_partition":[3,2],"index":10607,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[2,1,1,1],[2,2,1],[3,1,1],[3,2]],"required_dimension_sets":[[[0,1]],[[0]],[[0,1]]],"roles":[145,135,583],"starts_bases":[[],[],[]]}, + {"admissible_edges":[{"dimensions":[1,2,3,4,5],"roles":[0,1]},{"dimensions":[1],"roles":[0,2]},{"dimensions":[1],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[-1,1],"contacts_bases":[[51],[51]],"ends_bases":[[7,51,82,136,264],[7,51,82,136,264],[51,67,392]],"field_partitions":[[[2,2],[3,1],[4]],[[2,2],[3,1],[4]],[[2]]],"incumbent_partition":[4,4,2],"index":10788,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[2,2,2,2,2],[3,2,2,2,1],[3,3,2,1,1],[4,2,2,2],[4,3,2,1],[4,4,2]],"required_dimension_sets":[[[1,2,3,4,5]],[[1,2,3,4,5]],[[1]]],"roles":[622,624,548],"starts_bases":[[51],[51],[51]]}, + {"admissible_edges":[{"dimensions":[1,2,3,4,5],"roles":[0,1]},{"dimensions":[4,5],"roles":[0,2]},{"dimensions":[4,5],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[-1,-1],"contacts_bases":[[7,51,82,136,264],[7,51,82,136,264]],"ends_bases":[[7,51,82,136,264],[7,51,82,136,264],[7,51,82,136,264]],"field_partitions":[[[3,1],[4]],[[3,1],[4]],[[1]]],"incumbent_partition":[4,4,1],"index":10791,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[3,3,1,1,1],[4,3,1,1],[4,4,1]],"required_dimension_sets":[[[4,5]],[[4,5]],[[4,5]]],"roles":[622,623,401],"starts_bases":[[51],[51],[51,85,136,264]]}, + {"admissible_edges":[{"dimensions":[1,2,3,4,5],"roles":[0,1]},{"dimensions":[5],"roles":[0,2]},{"dimensions":[5],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[-1,1],"contacts_bases":[[7,51,82,136,264],[7,51,82,136,264]],"ends_bases":[[7,51,82,136,264],[7,51,82,136,264],[7,16,35,66,136,264]],"field_partitions":[[[4]],[[4]],[[1]]],"incumbent_partition":[4,4,1],"index":10792,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[4,4,1]],"required_dimension_sets":[[[5]],[[5]],[[5]]],"roles":[623,624,401],"starts_bases":[[51],[51],[7,51,82,136,264]]}, + {"admissible_edges":[{"dimensions":[5],"roles":[0,1]},{"dimensions":[5],"roles":[0,2]},{"dimensions":[5],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[1,-1],"contacts_bases":[[7,51,82,136,264],[7,51,82,136,264]],"ends_bases":[[7,51,82,136,264],[7,51,82,136,264],[7,51,82,136,264]],"field_partitions":[[[]],[[]],[[1]]],"incumbent_partition":[1],"index":10795,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[1]],"required_dimension_sets":[[[5]],[[5]],[[5]]],"roles":[622,623,403],"starts_bases":[[7,51,82,136,264],[7,51,82,136,264],[51,85,136,264]]}, + {"admissible_edges":[{"dimensions":[5],"roles":[0,1]},{"dimensions":[5],"roles":[0,2]},{"dimensions":[5],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[-1,-1],"contacts_bases":[[7,51,82,136,264],[7,51,82,136,264]],"ends_bases":[[7,51,82,136,264],[7,51,82,136,264],[1,6,50,82,136,264]],"field_partitions":[[[]],[[4]],[[1]]],"incumbent_partition":[4,1],"index":10796,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[4,1]],"required_dimension_sets":[[[5]],[[5]],[[5]]],"roles":[623,625,403],"starts_bases":[[7,51,82,136,264],[51],[7,51,82,136,264]]}, + {"admissible_edges":[{"dimensions":[5],"roles":[0,1]},{"dimensions":[5],"roles":[0,2]},{"dimensions":[5],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[1,-1],"contacts_bases":[[7,51,82,136,264],[7,51,82,136,264]],"ends_bases":[[7,19,32,65,136,264],[7,51,82,136,264],[7,51,82,136,264]],"field_partitions":[[[1]],[[]],[[]]],"incumbent_partition":[1],"index":10798,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[1]],"required_dimension_sets":[[[5]],[[5]],[[5]]],"roles":[622,624,626],"starts_bases":[[7,51,82,136,264],[7,51,82,136,264],[7,51,82,136,264]]}, + {"admissible_edges":[{"dimensions":[5],"roles":[0,1]},{"dimensions":[5],"roles":[0,2]},{"dimensions":[5],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[-1,-1],"contacts_bases":[[7,51,82,136,264],[7,51,82,136,264]],"ends_bases":[[7,51,82,136,264],[7,51,82,136,264],[2,5,49,80,136,264]],"field_partitions":[[[]],[[]],[[1]]],"incumbent_partition":[1],"index":10799,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[1]],"required_dimension_sets":[[[5]],[[5]],[[5]]],"roles":[624,625,626],"starts_bases":[[7,51,82,136,264],[7,51,82,136,264],[7,51,82,136,264]]}, + {"admissible_edges":[{"dimensions":[5],"roles":[0,1]},{"dimensions":[5],"roles":[0,2]},{"dimensions":[5],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[-1,1],"contacts_bases":[[7,51,82,136,264],[7,51,82,136,264]],"ends_bases":[[7,10,51,82,130,258],[7,9,51,82,129,257],[7,51,82,136,264]],"field_partitions":[[[1]],[[1]],[[]]],"incumbent_partition":[1,1],"index":10801,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[1,1]],"required_dimension_sets":[[[5]],[[5]],[[5]]],"roles":[623,624,627],"starts_bases":[[7,51,82,136,264],[7,51,82,136,264],[7,51,82,136,264]]}, + {"admissible_edges":[{"dimensions":[5],"roles":[0,1]},{"dimensions":[5],"roles":[0,2]},{"dimensions":[5],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[1,-1],"contacts_bases":[[7,51,82,136,264],[7,51,82,136,264]],"ends_bases":[[7,9,51,82,129,257],[7,24,43,74,136,264],[7,27,40,73,136,264]],"field_partitions":[[[1]],[[1]],[[1]]],"incumbent_partition":[1,1,1],"index":10802,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[1,1,1]],"required_dimension_sets":[[[5]],[[5]],[[5]]],"roles":[624,625,627],"starts_bases":[[7,51,82,136,264],[7,51,82,136,264],[7,51,82,136,264]]}, + {"admissible_edges":[{"dimensions":[3],"roles":[0,2]},{"dimensions":[4],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[1,-1],"contacts_bases":[[51,81,414],[26,41,75,388]],"ends_bases":[[51,81,414],[26,41,75,388],[26,41,75,388]],"field_partitions":[[[1]],[[]],[[1,1]]],"incumbent_partition":[1,1,1],"index":11073,"mandatory_bridges":[[0,2],[1,2]],"phase":"B","relaxed_partitions":[[1,1,1]],"required_dimension_sets":[[[3],[3]],[[4],[4]],[[3,4],[3],[4]]],"roles":[283,277,281],"starts_bases":[[51,81],[26,41,75,388],[51,463]]}, + {"admissible_edges":[{"dimensions":[3],"roles":[0,2]},{"dimensions":[4],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[1,-1],"contacts_bases":[[26,41,388],[26,41,75,388]],"ends_bases":[[26,41,388],[26,41,75,388],[26,41,75,388]],"field_partitions":[[[1]],[[]],[[1,1]]],"incumbent_partition":[1,1,1],"index":11076,"mandatory_bridges":[[0,2],[1,2]],"phase":"B","relaxed_partitions":[[1,1,1]],"required_dimension_sets":[[[3],[3]],[[4],[4]],[[3,4],[3],[4]]],"roles":[100,273,12],"starts_bases":[[51,388],[26,41,75,388],[26,41]]}, + {"admissible_edges":[{"dimensions":[3],"roles":[0,2]},{"dimensions":[4],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[1,-1],"contacts_bases":[[51,81,388],[26,41,75,388]],"ends_bases":[[3,48,81,388],[26,41,75,388],[26,41,75,388]],"field_partitions":[[[1,1]],[[]],[[1,1]]],"incumbent_partition":[1,1,1,1],"index":11078,"mandatory_bridges":[[0,2],[1,2]],"phase":"B","relaxed_partitions":[[1,1,1,1]],"required_dimension_sets":[[[3],[3]],[[4],[4]],[[3,4],[3],[4]]],"roles":[56,282,285],"starts_bases":[[51,388],[26,41,75,388],[51,81]]}, + {"admissible_edges":[{"dimensions":[3],"roles":[0,2]},{"dimensions":[4],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[1,-1],"contacts_bases":[[26,41,463],[26,41,75,388]],"ends_bases":[[26,41,72,391],[26,41,75,388],[26,41,75,388]],"field_partitions":[[[1,1]],[[]],[[1,1]]],"incumbent_partition":[1,1,1,1],"index":11081,"mandatory_bridges":[[0,2],[1,2]],"phase":"B","relaxed_partitions":[[1,1,1,1]],"required_dimension_sets":[[[3],[3]],[[4],[4]],[[3,4],[3],[4]]],"roles":[287,275,31],"starts_bases":[[51,463],[26,41,75,388],[26,41]]}, + {"admissible_edges":[{"dimensions":[3],"roles":[0,2]},{"dimensions":[4],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[1,-1],"contacts_bases":[[51,145,273],[51,85,145,273]],"ends_bases":[[51,145,273],[51,85,145,273],[51,85,145,273]],"field_partitions":[[[1]],[[]],[[1,1]]],"incumbent_partition":[1,1,1],"index":11099,"mandatory_bridges":[[0,2],[1,2]],"phase":"B","relaxed_partitions":[[1,1,1]],"required_dimension_sets":[[[3],[3]],[[4],[4]],[[3,4],[3],[4]]],"roles":[299,293,297],"starts_bases":[[51,273],[51,85,145,273],[51,145]]}, + {"admissible_edges":[{"dimensions":[3],"roles":[0,2]},{"dimensions":[4],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[1,-1],"contacts_bases":[[51,196,324],[51,85,145,273]],"ends_bases":[[51,196,324],[51,85,145,273],[51,85,145,273]],"field_partitions":[[[1]],[[]],[[1,1]]],"incumbent_partition":[1,1,1],"index":11102,"mandatory_bridges":[[0,2],[1,2]],"phase":"B","relaxed_partitions":[[1,1,1]],"required_dimension_sets":[[[3],[3]],[[4],[4]],[[3,4],[3],[4]]],"roles":[54,289,101],"starts_bases":[[51,196],[51,85,145,273],[51,324]]}, + {"admissible_edges":[{"dimensions":[3],"roles":[0,2]},{"dimensions":[4],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[1,-1],"contacts_bases":[[51,196,273],[51,85,145,273]],"ends_bases":[[51,76,136,273],[51,85,145,273],[51,85,145,273]],"field_partitions":[[[1,1]],[[]],[[1,1]]],"incumbent_partition":[1,1,1,1],"index":11104,"mandatory_bridges":[[0,2],[1,2]],"phase":"B","relaxed_partitions":[[1,1,1,1]],"required_dimension_sets":[[[3],[3]],[[4],[4]],[[3,4],[3],[4]]],"roles":[102,298,301],"starts_bases":[[51,196],[51,85,145,273],[51,273]]}, + {"admissible_edges":[{"dimensions":[3],"roles":[0,2]},{"dimensions":[4],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[1,-1],"contacts_bases":[[51,145,324],[51,85,145,273]],"ends_bases":[[51,76,145,264],[51,85,145,273],[51,85,145,273]],"field_partitions":[[[1,1]],[[]],[[1,1]]],"incumbent_partition":[1,1,1,1],"index":11107,"mandatory_bridges":[[0,2],[1,2]],"phase":"B","relaxed_partitions":[[1,1,1,1]],"required_dimension_sets":[[[3],[3]],[[4],[4]],[[3,4],[3],[4]]],"roles":[303,291,55],"starts_bases":[[51,145],[51,85,145,273],[51,324]]}, + {"admissible_edges":[{"dimensions":[3],"roles":[0,2]},{"dimensions":[4],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[1,-1],"contacts_bases":[[30,44,385],[30,44,74,385]],"ends_bases":[[30,44,385],[30,44,74,385],[30,44,74,385]],"field_partitions":[[[1]],[[]],[[1,1]]],"incumbent_partition":[1,1,1],"index":11127,"mandatory_bridges":[[0,2],[1,2]],"phase":"B","relaxed_partitions":[[1,1,1]],"required_dimension_sets":[[[3],[3]],[[4],[4]],[[3,4],[3],[4]]],"roles":[315,309,313],"starts_bases":[[30,385],[30,44,74,385],[30,44]]}, + {"admissible_edges":[{"dimensions":[3],"roles":[0,2]},{"dimensions":[4],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[1,-1],"contacts_bases":[[30,74,429],[30,44,74,385]],"ends_bases":[[30,74,429],[30,44,74,385],[30,44,74,385]],"field_partitions":[[[1]],[[]],[[1,1]]],"incumbent_partition":[1,1,1],"index":11130,"mandatory_bridges":[[0,2],[1,2]],"phase":"B","relaxed_partitions":[[1,1,1]],"required_dimension_sets":[[[3],[3]],[[4],[4]],[[3,4],[3],[4]]],"roles":[48,305,98],"starts_bases":[[30,74],[30,44,74,385],[30,487]]}, + {"admissible_edges":[{"dimensions":[3],"roles":[0,2]},{"dimensions":[4],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[1,-1],"contacts_bases":[[30,74,385],[30,44,74,385]],"ends_bases":[[30,74,385],[30,44,74,385],[1,30,44,74,384]],"field_partitions":[[[]],[[]],[[1,1,1]]],"incumbent_partition":[1,1,1],"index":11132,"mandatory_bridges":[[0,2],[1,2]],"phase":"B","relaxed_partitions":[[1,1,1]],"required_dimension_sets":[[[3],[3]],[[4],[4]],[[3,4],[3],[4]]],"roles":[32,314,317],"starts_bases":[[30,74,385],[30,44,74,385],[30,385]]}, + {"admissible_edges":[{"dimensions":[3],"roles":[0,2]},{"dimensions":[4],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[1,-1],"contacts_bases":[[30,44,459],[30,44,74,385]],"ends_bases":[[30,44,76,391],[30,44,74,385],[30,44,74,385]],"field_partitions":[[[1,1]],[[]],[[1,1]]],"incumbent_partition":[1,1,1,1],"index":11135,"mandatory_bridges":[[0,2],[1,2]],"phase":"B","relaxed_partitions":[[1,1,1,1]],"required_dimension_sets":[[[3],[3]],[[4],[4]],[[3,4],[3],[4]]],"roles":[319,307,85],"starts_bases":[[30,44],[30,44,74,385],[30,487]]}, + {"admissible_edges":[{"dimensions":[3],"roles":[0,2]},{"dimensions":[4],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[1,-1],"contacts_bases":[[30,193,321],[30,75,138,266]],"ends_bases":[[30,193,321],[30,75,138,266],[30,75,138,266]],"field_partitions":[[[1]],[[]],[[1,1]]],"incumbent_partition":[1,1,1],"index":11154,"mandatory_bridges":[[0,2],[1,2]],"phase":"B","relaxed_partitions":[[1,1,1]],"required_dimension_sets":[[[3],[3]],[[4],[4]],[[3,4],[3],[4]]],"roles":[331,325,329],"starts_bases":[[30,193],[30,75,138,266],[30,321]]}, + {"admissible_edges":[{"dimensions":[3],"roles":[0,2]},{"dimensions":[4],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[1,-1],"contacts_bases":[[30,138,266],[30,75,138,266]],"ends_bases":[[30,138,266],[30,75,138,266],[30,75,138,266]],"field_partitions":[[[1]],[[]],[[1,1]]],"incumbent_partition":[1,1,1],"index":11157,"mandatory_bridges":[[0,2],[1,2]],"phase":"B","relaxed_partitions":[[1,1,1]],"required_dimension_sets":[[[3],[3]],[[4],[4]],[[3,4],[3],[4]]],"roles":[34,321,49],"starts_bases":[[30,266],[30,75,138,266],[30,138]]}, + {"admissible_edges":[{"dimensions":[3],"roles":[0,2]},{"dimensions":[4],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[1,-1],"contacts_bases":[[30,193,266],[30,75,138,266]],"ends_bases":[[30,193,266],[30,75,138,266],[1,30,74,138,266]],"field_partitions":[[[]],[[]],[[1,1,1]]],"incumbent_partition":[1,1,1],"index":11159,"mandatory_bridges":[[0,2],[1,2]],"phase":"B","relaxed_partitions":[[1,1,1]],"required_dimension_sets":[[[3],[3]],[[4],[4]],[[3,4],[3],[4]]],"roles":[50,330,333],"starts_bases":[[30,193,266],[30,75,138,266],[30,193]]}, + {"admissible_edges":[{"dimensions":[3],"roles":[0,2]},{"dimensions":[4],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[1,-1],"contacts_bases":[[30,138,321],[30,75,138,266]],"ends_bases":[[30,97,138,288],[30,75,138,266],[30,75,138,266]],"field_partitions":[[[1,1]],[[]],[[1,1]]],"incumbent_partition":[1,1,1,1],"index":11162,"mandatory_bridges":[[0,2],[1,2]],"phase":"B","relaxed_partitions":[[1,1,1,1]],"required_dimension_sets":[[[3],[3]],[[4],[4]],[[3,4],[3],[4]]],"roles":[335,323,33],"starts_bases":[[30,321],[30,75,138,266],[30,138]]}, + {"admissible_edges":[{"dimensions":[3],"roles":[0,2]},{"dimensions":[4],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[1,-1],"contacts_bases":[[30,70,429],[13,19,70,416]],"ends_bases":[[30,70,429],[13,19,70,416],[13,19,70,416]],"field_partitions":[[[1]],[[]],[[1,1]]],"incumbent_partition":[1,1,1],"index":11180,"mandatory_bridges":[[0,2],[1,2]],"phase":"B","relaxed_partitions":[[1,1,1]],"required_dimension_sets":[[[3],[3]],[[4],[4]],[[3,4],[3],[4]]],"roles":[347,341,345],"starts_bases":[[30,70],[13,19,70,416],[30,491]]}, + {"admissible_edges":[{"dimensions":[3],"roles":[0,2]},{"dimensions":[4],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[1,-1],"contacts_bases":[[13,19,416],[13,19,70,416]],"ends_bases":[[13,19,416],[13,19,70,416],[13,19,70,161,257]],"field_partitions":[[[1]],[[]],[[1,1,1]]],"incumbent_partition":[1,1,1,1],"index":11183,"mandatory_bridges":[[0,2],[1,2]],"phase":"B","relaxed_partitions":[[1,1,1,1]],"required_dimension_sets":[[[3],[3]],[[4],[4]],[[3,4],[3],[4]]],"roles":[82,337,6],"starts_bases":[[30,416],[13,19,70,416],[13,19]]}, + {"admissible_edges":[{"dimensions":[3],"roles":[0,2]},{"dimensions":[4],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[1,-1],"contacts_bases":[[30,70,416],[13,19,70,416]],"ends_bases":[[30,70,416],[13,19,70,416],[13,19,70,416]],"field_partitions":[[[]],[[]],[[1,1]]],"incumbent_partition":[1,1],"index":11185,"mandatory_bridges":[[0,2],[1,2]],"phase":"B","relaxed_partitions":[[1,1]],"required_dimension_sets":[[[3],[3]],[[4],[4]],[[3,4],[3],[4]]],"roles":[75,346,349],"starts_bases":[[30,70,416],[13,19,70,416],[30,70]]}, + {"admissible_edges":[{"dimensions":[3],"roles":[0,2]},{"dimensions":[4],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[1,-1],"contacts_bases":[[13,19,486],[13,19,70,416]],"ends_bases":[[13,19,486],[13,19,70,416],[13,19,70,161,257]],"field_partitions":[[[]],[[]],[[1,1,1]]],"incumbent_partition":[1,1,1],"index":11188,"mandatory_bridges":[[0,2],[1,2]],"phase":"B","relaxed_partitions":[[1,1,1]],"required_dimension_sets":[[[3],[3]],[[4],[4]],[[3,4],[3],[4]]],"roles":[351,339,1],"starts_bases":[[13,19,486],[13,19,70,416],[13,19]]}, + {"admissible_edges":[{"dimensions":[3],"roles":[0,2]},{"dimensions":[4],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[1,-1],"contacts_bases":[[30,134,262],[30,102,134,262]],"ends_bases":[[30,134,262],[30,102,134,262],[30,102,134,262]],"field_partitions":[[[1]],[[]],[[1,1]]],"incumbent_partition":[1,1,1],"index":11205,"mandatory_bridges":[[0,2],[1,2]],"phase":"B","relaxed_partitions":[[1,1,1]],"required_dimension_sets":[[[3],[3]],[[4],[4]],[[3,4],[3],[4]]],"roles":[363,357,361],"starts_bases":[[30,262],[30,102,134,262],[30,134]]}, + {"admissible_edges":[{"dimensions":[3],"roles":[0,2]},{"dimensions":[4],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[1,-1],"contacts_bases":[[30,224,352],[30,102,134,262]],"ends_bases":[[30,224,352],[30,102,134,262],[30,102,134,262]],"field_partitions":[[[1]],[[]],[[1,1]]],"incumbent_partition":[1,1,1],"index":11208,"mandatory_bridges":[[0,2],[1,2]],"phase":"B","relaxed_partitions":[[1,1,1]],"required_dimension_sets":[[[3],[3]],[[4],[4]],[[3,4],[3],[4]]],"roles":[73,353,83],"starts_bases":[[30,224],[30,102,134,262],[30,352]]}, + {"admissible_edges":[{"dimensions":[3],"roles":[0,2]},{"dimensions":[4],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[1,-1],"contacts_bases":[[30,224,262],[30,102,134,262]],"ends_bases":[[30,224,262],[30,102,134,262],[30,102,134,262]],"field_partitions":[[[]],[[]],[[1,1]]],"incumbent_partition":[1,1],"index":11210,"mandatory_bridges":[[0,2],[1,2]],"phase":"B","relaxed_partitions":[[1,1]],"required_dimension_sets":[[[3],[3]],[[4],[4]],[[3,4],[3],[4]]],"roles":[84,362,365],"starts_bases":[[30,224,262],[30,102,134,262],[30,262]]}, + {"admissible_edges":[{"dimensions":[3],"roles":[0,2]},{"dimensions":[4],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[1,-1],"contacts_bases":[[30,134,352],[30,102,134,262]],"ends_bases":[[30,134,352],[30,102,134,262],[30,102,134,262]],"field_partitions":[[[]],[[]],[[1,1]]],"incumbent_partition":[1,1],"index":11213,"mandatory_bridges":[[0,2],[1,2]],"phase":"B","relaxed_partitions":[[1,1]],"required_dimension_sets":[[[3],[3]],[[4],[4]],[[3,4],[3],[4]]],"roles":[367,355,74],"starts_bases":[[30,134,352],[30,102,134,262],[30,352]]}, + {"admissible_edges":[{"dimensions":[3],"roles":[0,2]},{"dimensions":[4],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[1,-1],"contacts_bases":[[22,37,392],[22,37,67,392]],"ends_bases":[[22,37,392],[22,37,67,392],[22,37,67,392]],"field_partitions":[[[1]],[[]],[[1,1]]],"incumbent_partition":[1,1,1],"index":11231,"mandatory_bridges":[[0,2],[1,2]],"phase":"B","relaxed_partitions":[[1,1,1]],"required_dimension_sets":[[[3],[3]],[[4],[4]],[[3,4],[3],[4]]],"roles":[379,373,377],"starts_bases":[[51,392],[22,37,67,392],[22,37]]}, + {"admissible_edges":[{"dimensions":[3],"roles":[0,2]},{"dimensions":[4],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[1,-1],"contacts_bases":[[51,67,414],[22,37,67,392]],"ends_bases":[[51,67,414],[22,37,67,392],[22,37,67,392]],"field_partitions":[[[1]],[[]],[[1,1]]],"incumbent_partition":[1,1,1],"index":11234,"mandatory_bridges":[[0,2],[1,2]],"phase":"B","relaxed_partitions":[[1,1,1]],"required_dimension_sets":[[[3],[3]],[[4],[4]],[[3,4],[3],[4]]],"roles":[67,369,80],"starts_bases":[[51,67],[22,37,67,392],[51,477]]}, + {"admissible_edges":[{"dimensions":[3],"roles":[0,2]},{"dimensions":[4],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[1,-1],"contacts_bases":[[51,67,392],[22,37,67,392]],"ends_bases":[[51,67,392],[22,37,67,392],[22,37,67,392]],"field_partitions":[[[]],[[]],[[1,1]]],"incumbent_partition":[1,1],"index":11236,"mandatory_bridges":[[0,2],[1,2]],"phase":"B","relaxed_partitions":[[1,1]],"required_dimension_sets":[[[3],[3]],[[4],[4]],[[3,4],[3],[4]]],"roles":[3,378,381],"starts_bases":[[51,67,392],[22,37,67,392],[51,392]]}, + {"admissible_edges":[{"dimensions":[3],"roles":[0,2]},{"dimensions":[4],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[1,-1],"contacts_bases":[[22,37,459],[22,37,67,392]],"ends_bases":[[22,37,459],[22,37,67,392],[22,37,67,392]],"field_partitions":[[[]],[[]],[[1,1]]],"incumbent_partition":[1,1],"index":11239,"mandatory_bridges":[[0,2],[1,2]],"phase":"B","relaxed_partitions":[[1,1]],"required_dimension_sets":[[[3],[3]],[[4],[4]],[[3,4],[3],[4]]],"roles":[383,371,88],"starts_bases":[[22,37,459],[22,37,67,392],[51,477]]}, + {"admissible_edges":[{"dimensions":[3],"roles":[0,2]},{"dimensions":[4],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[1,-1],"contacts_bases":[[51,200,328],[51,75,131,259]],"ends_bases":[[51,200,328],[51,75,131,259],[51,75,131,259]],"field_partitions":[[[1]],[[]],[[1,1]]],"incumbent_partition":[1,1,1],"index":11260,"mandatory_bridges":[[0,2],[1,2]],"phase":"B","relaxed_partitions":[[1,1,1]],"required_dimension_sets":[[[3],[3]],[[4],[4]],[[3,4],[3],[4]]],"roles":[395,389,393],"starts_bases":[[51,200],[51,75,131,259],[51,328]]}, + {"admissible_edges":[{"dimensions":[3],"roles":[0,2]},{"dimensions":[4],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[1,-1],"contacts_bases":[[51,131,259],[51,75,131,259]],"ends_bases":[[51,131,259],[51,75,131,259],[51,75,131,259]],"field_partitions":[[[1]],[[]],[[1,1]]],"incumbent_partition":[1,1,1],"index":11263,"mandatory_bridges":[[0,2],[1,2]],"phase":"B","relaxed_partitions":[[1,1,1]],"required_dimension_sets":[[[3],[3]],[[4],[4]],[[3,4],[3],[4]]],"roles":[5,385,68],"starts_bases":[[51,259],[51,75,131,259],[51,131]]}, + {"admissible_edges":[{"dimensions":[3],"roles":[0,2]},{"dimensions":[4],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[1,-1],"contacts_bases":[[51,200,259],[51,75,131,259]],"ends_bases":[[51,200,259],[51,75,131,259],[51,75,131,259]],"field_partitions":[[[]],[[]],[[1,1]]],"incumbent_partition":[1,1],"index":11265,"mandatory_bridges":[[0,2],[1,2]],"phase":"B","relaxed_partitions":[[1,1]],"required_dimension_sets":[[[3],[3]],[[4],[4]],[[3,4],[3],[4]]],"roles":[69,394,397],"starts_bases":[[51,200,259],[51,75,131,259],[51,200]]}, + {"admissible_edges":[{"dimensions":[3],"roles":[0,2]},{"dimensions":[4],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[1,-1],"contacts_bases":[[51,131,328],[51,75,131,259]],"ends_bases":[[51,131,328],[51,75,131,259],[51,75,131,259]],"field_partitions":[[[]],[[]],[[1,1]]],"incumbent_partition":[1,1],"index":11268,"mandatory_bridges":[[0,2],[1,2]],"phase":"B","relaxed_partitions":[[1,1]],"required_dimension_sets":[[[3],[3]],[[4],[4]],[[3,4],[3],[4]]],"roles":[399,387,4],"starts_bases":[[51,131,328],[51,75,131,259],[51,131]]}, + {"admissible_edges":[{"dimensions":[0,1,2,3,4],"roles":[0,1]},{"dimensions":[4],"roles":[0,2]},{"dimensions":[4],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[-1,-1],"contacts_bases":[[30,45,192,320],[30,45,192,320]],"ends_bases":[[30,45,192,320],[30,45,192,320],[30,45,192,320]],"field_partitions":[[[4]],[[4]],[[]]],"incumbent_partition":[4,4],"index":11472,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[4,4]],"required_dimension_sets":[[[4]],[[4]],[[4]]],"roles":[586,587,349],"starts_bases":[[],[],[30,45,192,320]]}, + {"admissible_edges":[{"dimensions":[0,1,2,3,4],"roles":[0,1]},{"dimensions":[4],"roles":[0,2]},{"dimensions":[4],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[-1,1],"contacts_bases":[[30,45,192,320],[30,45,192,320]],"ends_bases":[[30,45,192,320],[30,45,192,320],[30,45,74,138,266]],"field_partitions":[[[4]],[[4]],[[1]]],"incumbent_partition":[4,4,1],"index":11473,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[4,4,1]],"required_dimension_sets":[[[4]],[[4]],[[4]]],"roles":[587,588,349],"starts_bases":[[],[],[30,45,192,320]]}, + {"admissible_edges":[{"dimensions":[4],"roles":[0,1]},{"dimensions":[4],"roles":[0,2]},{"dimensions":[4],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[1,-1],"contacts_bases":[[30,45,192,320],[30,45,192,320]],"ends_bases":[[30,45,192,320],[30,45,192,320],[30,45,192,320]],"field_partitions":[[[]],[[]],[[]]],"incumbent_partition":[],"index":11475,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[]],"required_dimension_sets":[[[4]],[[4]],[[4]]],"roles":[586,587,243],"starts_bases":[[30,45,192,320],[30,45,192,320],[30,45,192,320]]}, + {"admissible_edges":[{"dimensions":[4],"roles":[0,1]},{"dimensions":[4],"roles":[0,2]},{"dimensions":[4],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[-1,-1],"contacts_bases":[[30,45,192,320],[30,45,192,320]],"ends_bases":[[30,45,192,320],[30,45,192,320],[13,19,32,192,320]],"field_partitions":[[[]],[[4]],[[1]]],"incumbent_partition":[4,1],"index":11476,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[4,1]],"required_dimension_sets":[[[4]],[[4]],[[4]]],"roles":[587,589,243],"starts_bases":[[30,45,192,320],[],[30,45,192,320]]}, + {"admissible_edges":[{"dimensions":[4],"roles":[0,1]},{"dimensions":[4],"roles":[0,2]},{"dimensions":[4],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[1,-1],"contacts_bases":[[30,45,192,320],[30,45,192,320]],"ends_bases":[[30,45,79,143,271],[30,45,192,320],[30,45,192,320]],"field_partitions":[[[1]],[[]],[[]]],"incumbent_partition":[1],"index":11478,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[1]],"required_dimension_sets":[[[4]],[[4]],[[4]]],"roles":[586,588,365],"starts_bases":[[30,45,192,320],[30,45,192,320],[30,45,192,320]]}, + {"admissible_edges":[{"dimensions":[4],"roles":[0,1]},{"dimensions":[4],"roles":[0,2]},{"dimensions":[4],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[-1,-1],"contacts_bases":[[30,45,192,320],[30,45,192,320]],"ends_bases":[[30,45,192,320],[30,45,192,320],[8,22,37,192,320]],"field_partitions":[[[]],[[]],[[1]]],"incumbent_partition":[1],"index":11479,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[1]],"required_dimension_sets":[[[4]],[[4]],[[4]]],"roles":[588,589,365],"starts_bases":[[30,45,192,320],[30,45,192,320],[30,45,192,320]]}, + {"admissible_edges":[{"dimensions":[4],"roles":[0,1]},{"dimensions":[4],"roles":[0,2]},{"dimensions":[4],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[-1,1],"contacts_bases":[[30,45,192,320],[30,45,192,320]],"ends_bases":[[4,26,41,192,320],[1,30,44,192,320],[30,45,192,320]],"field_partitions":[[[1]],[[1]],[[]]],"incumbent_partition":[1,1],"index":11481,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[1,1]],"required_dimension_sets":[[[4]],[[4]],[[4]]],"roles":[587,588,361],"starts_bases":[[30,45,192,320],[30,45,192,320],[30,45,192,320]]}, + {"admissible_edges":[{"dimensions":[4],"roles":[0,1]},{"dimensions":[4],"roles":[0,2]},{"dimensions":[4],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[1,-1],"contacts_bases":[[30,45,192,320],[30,45,192,320]],"ends_bases":[[1,30,44,192,320],[30,45,70,134,262],[30,45,67,131,259]],"field_partitions":[[[1]],[[1]],[[1]]],"incumbent_partition":[1,1,1],"index":11482,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[1,1,1]],"required_dimension_sets":[[[4]],[[4]],[[4]]],"roles":[588,589,361],"starts_bases":[[30,45,192,320],[30,45,192,320],[30,45,192,320]]}, + {"admissible_edges":[{"dimensions":[0,1,2,3,4,5],"roles":[0,1]},{"dimensions":[5],"roles":[0,2]},{"dimensions":[5],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[-1,-1],"contacts_bases":[[2,5,40,80,409],[2,5,40,80,409]],"ends_bases":[[2,5,40,80,409],[2,5,40,80,409],[2,5,40,80,409]],"field_partitions":[[[5]],[[5]],[[]]],"incumbent_partition":[5,5],"index":11495,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[5,5]],"required_dimension_sets":[[[5]],[[5]],[[5]]],"roles":[590,591,558],"starts_bases":[[],[],[2,5,40,80,409]]}, + {"admissible_edges":[{"dimensions":[0,1,2,3,4,5],"roles":[0,1]},{"dimensions":[5],"roles":[0,2]},{"dimensions":[5],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[-1,1],"contacts_bases":[[2,5,40,80,409],[2,5,40,80,409]],"ends_bases":[[2,5,40,80,409],[2,5,40,80,409],[2,5,40,80,145,264]],"field_partitions":[[[5]],[[5]],[[1]]],"incumbent_partition":[5,5,1],"index":11496,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[5,5,1]],"required_dimension_sets":[[[5]],[[5]],[[5]]],"roles":[591,592,558],"starts_bases":[[],[],[2,5,40,80,409]]}, + {"admissible_edges":[{"dimensions":[5],"roles":[0,1]},{"dimensions":[5],"roles":[0,2]},{"dimensions":[5],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[1,-1],"contacts_bases":[[2,5,40,80,409],[2,5,40,80,409]],"ends_bases":[[2,5,40,80,409],[2,5,40,80,409],[2,5,40,80,409]],"field_partitions":[[[]],[[]],[[]]],"incumbent_partition":[],"index":11499,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[]],"required_dimension_sets":[[[5]],[[5]],[[5]]],"roles":[590,591,559],"starts_bases":[[2,5,40,80,409],[2,5,40,80,409],[2,5,40,80,409]]}, + {"admissible_edges":[{"dimensions":[5],"roles":[0,1]},{"dimensions":[5],"roles":[0,2]},{"dimensions":[5],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[-1,-1],"contacts_bases":[[2,5,40,80,409],[2,5,40,80,409]],"ends_bases":[[2,5,40,80,409],[2,5,40,80,409],[2,5,8,32,80,401]],"field_partitions":[[[]],[[5]],[[1]]],"incumbent_partition":[5,1],"index":11500,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[5,1]],"required_dimension_sets":[[[5]],[[5]],[[5]]],"roles":[591,593,559],"starts_bases":[[2,5,40,80,409],[],[2,5,40,80,409]]}, + {"admissible_edges":[{"dimensions":[5],"roles":[0,1]},{"dimensions":[5],"roles":[0,2]},{"dimensions":[5],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[1,-1],"contacts_bases":[[2,5,40,80,409],[2,5,40,80,409]],"ends_bases":[[2,5,24,40,72,385],[2,5,40,80,409],[2,5,40,80,409]],"field_partitions":[[[1]],[[]],[[]]],"incumbent_partition":[1],"index":11503,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[1]],"required_dimension_sets":[[[5]],[[5]],[[5]]],"roles":[590,592,544],"starts_bases":[[2,5,40,80,409],[2,5,40,80,409],[2,5,40,80,409]]}, + {"admissible_edges":[{"dimensions":[5],"roles":[0,1]},{"dimensions":[5],"roles":[0,2]},{"dimensions":[5],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[-1,-1],"contacts_bases":[[2,5,40,80,409],[2,5,40,80,409]],"ends_bases":[[2,5,40,80,409],[2,5,40,80,409],[2,5,40,80,129,280]],"field_partitions":[[[]],[[]],[[1]]],"incumbent_partition":[1],"index":11504,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[1]],"required_dimension_sets":[[[5]],[[5]],[[5]]],"roles":[592,593,544],"starts_bases":[[2,5,40,80,409],[2,5,40,80,409],[2,5,40,80,409]]}, + {"admissible_edges":[{"dimensions":[5],"roles":[0,1]},{"dimensions":[5],"roles":[0,2]},{"dimensions":[5],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[-1,1],"contacts_bases":[[2,5,40,80,409],[2,5,40,80,409]],"ends_bases":[[1,2,4,40,80,408],[2,5,40,80,136,273],[2,5,40,80,409]],"field_partitions":[[[1]],[[1]],[[1]]],"incumbent_partition":[1,1,1],"index":11506,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[1,1,1]],"required_dimension_sets":[[[5]],[[5]],[[5]]],"roles":[591,592,405],"starts_bases":[[2,5,40,80,409],[2,5,40,80,409],[2,5,40,80]]}, + {"admissible_edges":[{"dimensions":[5],"roles":[0,1]},{"dimensions":[5],"roles":[0,2]},{"dimensions":[5],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[1,-1],"contacts_bases":[[2,5,40,80,409],[2,5,40,80,409]],"ends_bases":[[2,5,40,80,136,273],[2,5,17,40,65,392],[2,5,40,80,152,257]],"field_partitions":[[[1]],[[1]],[[1]]],"incumbent_partition":[1,1,1],"index":11507,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[1,1,1]],"required_dimension_sets":[[[5]],[[5]],[[5]]],"roles":[592,593,405],"starts_bases":[[2,5,40,80,409],[2,5,40,80,409],[2,5,40,80,409]]}, + {"admissible_edges":[{"dimensions":[0,1,2,3,4],"roles":[0,1]},{"dimensions":[4],"roles":[0,2]},{"dimensions":[4],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[-1,1],"contacts_bases":[[7,42,75,144],[7,42,75,144]],"ends_bases":[[7,42,75,144],[7,42,75,144],[1,6,42,74,144,272]],"field_partitions":[[[4]],[[4]],[[2]]],"incumbent_partition":[4,4,2],"index":11524,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[4,4,2]],"required_dimension_sets":[[[4]],[[4]],[[4]]],"roles":[595,596,410],"starts_bases":[[],[],[7,42,75,144]]}, + {"admissible_edges":[{"dimensions":[4],"roles":[0,1]},{"dimensions":[4],"roles":[0,2]},{"dimensions":[4],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[1,-1],"contacts_bases":[[7,42,75,144],[7,42,75,144]],"ends_bases":[[7,42,75,144],[7,42,75,144],[7,42,75,144]],"field_partitions":[[[]],[[]],[[]]],"incumbent_partition":[],"index":11526,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[]],"required_dimension_sets":[[[4]],[[4]],[[4]]],"roles":[594,595,417],"starts_bases":[[7,42,75,144],[7,42,75,144],[7,42,75,144]]}, + {"admissible_edges":[{"dimensions":[4],"roles":[0,1]},{"dimensions":[4],"roles":[0,2]},{"dimensions":[4],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[-1,-1],"contacts_bases":[[7,42,75,144],[7,42,75,144]],"ends_bases":[[7,42,75,144],[7,42,75,144],[7,8,34,67,144,272]],"field_partitions":[[[]],[[4]],[[2]]],"incumbent_partition":[4,2],"index":11527,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[4,2]],"required_dimension_sets":[[[4]],[[4]],[[4]]],"roles":[595,597,417],"starts_bases":[[7,42,75,144],[],[7,42,75,144]]}, + {"admissible_edges":[{"dimensions":[4],"roles":[0,1]},{"dimensions":[4],"roles":[0,2]},{"dimensions":[4],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[1,-1],"contacts_bases":[[7,42,75,144],[7,42,75,144]],"ends_bases":[[7,26,42,75,138,266],[7,42,75,144],[7,42,75,144]],"field_partitions":[[[2]],[[]],[[]]],"incumbent_partition":[2],"index":11529,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[2]],"required_dimension_sets":[[[4]],[[4]],[[4]]],"roles":[594,596,419],"starts_bases":[[7,42,75,144],[7,42,75,144],[7,42,75,144]]}, + {"admissible_edges":[{"dimensions":[4],"roles":[0,1]},{"dimensions":[4],"roles":[0,2]},{"dimensions":[4],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[-1,-1],"contacts_bases":[[7,42,75,144],[7,42,75,144]],"ends_bases":[[7,42,75,144],[7,42,75,144],[7,19,42,75,131,259]],"field_partitions":[[[]],[[]],[[2]]],"incumbent_partition":[2],"index":11530,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[2]],"required_dimension_sets":[[[4]],[[4]],[[4]]],"roles":[596,597,419],"starts_bases":[[7,42,75,144],[7,42,75,144],[7,42,75,144]]}, + {"admissible_edges":[{"dimensions":[4,5],"roles":[0,1]},{"dimensions":[4],"roles":[0,2]},{"dimensions":[4],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[-1,1],"contacts_bases":[[7,42,75,144],[7,42,75,144]],"ends_bases":[[3,4,41,72,144,272],[7,24,42,75,136,264],[7,42,75,144]],"field_partitions":[[[1,1],[2]],[[1,1],[2]],[[]]],"incumbent_partition":[2,2],"index":11532,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[1,1,1,1],[2,1,1],[2,2]],"required_dimension_sets":[[[4,5]],[[4,5]],[[4]]],"roles":[595,596,421],"starts_bases":[[7,42,75,144],[7,42,75,144],[7,42,75,144]]}, + {"admissible_edges":[{"dimensions":[4,5],"roles":[0,1]},{"dimensions":[4,5],"roles":[0,2]},{"dimensions":[4,5],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[1,-1],"contacts_bases":[[7,42,75,144],[7,42,75,144]],"ends_bases":[[7,24,42,75,136,264],[7,17,42,75,129,257],[7,10,32,65,144,272]],"field_partitions":[[[1,1],[2]],[[1,1],[2]],[[1,1],[2]]],"incumbent_partition":[2,2,2],"index":11533,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[1,1,1,1,1,1],[2,1,1,1,1],[2,2,1,1],[2,2,2]],"required_dimension_sets":[[[4,5]],[[4,5]],[[4,5]]],"roles":[596,597,421],"starts_bases":[[7,42,75,144],[7,42,75,144],[7,42,75,144]]}, + {"admissible_edges":[{"dimensions":[1,2,3,4,5],"roles":[0,1]},{"dimensions":[5],"roles":[0,2]},{"dimensions":[5],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[-1,-1],"contacts_bases":[[25,42,75,132,260],[25,42,75,132,260]],"ends_bases":[[25,42,75,132,260],[25,42,75,132,260],[25,42,75,132,260]],"field_partitions":[[[4]],[[4]],[[]]],"incumbent_partition":[4,4],"index":11551,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[4,4]],"required_dimension_sets":[[[5]],[[5]],[[5]]],"roles":[598,599,1],"starts_bases":[[51],[51],[25,42,75,132,260]]}, + {"admissible_edges":[{"dimensions":[1,2,3,4,5],"roles":[0,1]},{"dimensions":[5],"roles":[0,2]},{"dimensions":[5],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[-1,1],"contacts_bases":[[25,42,75,132,260],[25,42,75,132,260]],"ends_bases":[[25,42,75,132,260],[25,42,75,132,260],[9,16,35,66,132,260]],"field_partitions":[[[4]],[[4]],[[1]]],"incumbent_partition":[4,4,1],"index":11552,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[4,4,1]],"required_dimension_sets":[[[5]],[[5]],[[5]]],"roles":[599,600,1],"starts_bases":[[51],[51],[25,42,75,132,260]]}, + {"admissible_edges":[{"dimensions":[1,2,3,4],"roles":[0,1]},{"dimensions":[4],"roles":[0,2]},{"dimensions":[4],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[-1,-1],"contacts_bases":[[17,34,68,391],[17,34,68,391]],"ends_bases":[[17,34,68,391],[17,34,68,391],[17,34,68,391]],"field_partitions":[[[3]],[[3]],[[]]],"incumbent_partition":[3,3],"index":11575,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[3,3]],"required_dimension_sets":[[[4]],[[4]],[[4]]],"roles":[602,603,426],"starts_bases":[[51],[51],[17,34,68,391]]}, + {"admissible_edges":[{"dimensions":[1,2,3,4],"roles":[0,1]},{"dimensions":[4],"roles":[0,2]},{"dimensions":[4],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[-1,1],"contacts_bases":[[17,34,68,391],[17,34,68,391]],"ends_bases":[[17,34,68,391],[17,34,68,391],[6,8,17,34,66,385]],"field_partitions":[[[3]],[[3]],[[2]]],"incumbent_partition":[3,3,2],"index":11576,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[3,3,2]],"required_dimension_sets":[[[4]],[[4]],[[4]]],"roles":[603,604,426],"starts_bases":[[51],[51],[17,34,68,391]]}, + {"admissible_edges":[{"dimensions":[1,2,3,4,5],"roles":[0,1]},{"dimensions":[5],"roles":[0,2]},{"dimensions":[5],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[-1,-1],"contacts_bases":[[30,42,76,129,257],[30,42,76,129,257]],"ends_bases":[[30,42,76,129,257],[30,42,76,129,257],[30,42,76,129,257]],"field_partitions":[[[4]],[[4]],[[]]],"incumbent_partition":[4,4],"index":11596,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[4,4]],"required_dimension_sets":[[[5]],[[5]],[[5]]],"roles":[606,607,545],"starts_bases":[[30],[30],[30,42,76,129,257]]}, + {"admissible_edges":[{"dimensions":[1,2,3,4,5],"roles":[0,1]},{"dimensions":[5],"roles":[0,2]},{"dimensions":[5],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[-1,1],"contacts_bases":[[30,42,76,129,257],[30,42,76,129,257]],"ends_bases":[[30,42,76,129,257],[30,42,76,129,257],[14,16,36,66,129,257]],"field_partitions":[[[4]],[[4]],[[1]]],"incumbent_partition":[4,4,1],"index":11597,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[4,4,1]],"required_dimension_sets":[[[5]],[[5]],[[5]]],"roles":[607,608,545],"starts_bases":[[30],[30],[30,42,76,129,257]]}, + {"admissible_edges":[{"dimensions":[0,1,2,3,4],"roles":[0,1]},{"dimensions":[4],"roles":[0,2]},{"dimensions":[4],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[-1,-1],"contacts_bases":[[10,20,65,423],[10,20,65,423]],"ends_bases":[[10,20,65,423],[10,20,65,423],[10,20,65,423]],"field_partitions":[[[4]],[[4]],[[]]],"incumbent_partition":[4,4],"index":11623,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[4,4]],"required_dimension_sets":[[[4]],[[4]],[[4]]],"roles":[610,611,250],"starts_bases":[[],[],[10,20,65,423]]}, + {"admissible_edges":[{"dimensions":[0,1,2,3,4],"roles":[0,1]},{"dimensions":[4],"roles":[0,2]},{"dimensions":[4],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[-1,1],"contacts_bases":[[10,20,65,423],[10,20,65,423]],"ends_bases":[[10,20,65,423],[10,20,65,423],[3,9,20,32,65,388]],"field_partitions":[[[4]],[[4]],[[2]]],"incumbent_partition":[4,4,2],"index":11624,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[4,4,2]],"required_dimension_sets":[[[4]],[[4]],[[4]]],"roles":[611,612,250],"starts_bases":[[],[],[10,20,65,423]]}, + {"admissible_edges":[{"dimensions":[1,2,3,4,5],"roles":[0,1]},{"dimensions":[5],"roles":[0,2]},{"dimensions":[5],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[-1,-1],"contacts_bases":[[7,25,75,160,288],[7,25,75,160,288]],"ends_bases":[[7,25,75,160,288],[7,25,75,160,288],[7,25,75,160,288]],"field_partitions":[[[4]],[[4]],[[]]],"incumbent_partition":[4,4],"index":11647,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[4,4]],"required_dimension_sets":[[[5]],[[5]],[[5]]],"roles":[614,615,524],"starts_bases":[[30],[30],[7,25,75,160,288]]}, + {"admissible_edges":[{"dimensions":[1,2,3,4,5],"roles":[0,1]},{"dimensions":[5],"roles":[0,2]},{"dimensions":[5],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[-1,1],"contacts_bases":[[7,25,75,160,288],[7,25,75,160,288]],"ends_bases":[[7,25,75,160,288],[7,25,75,160,288],[7,9,16,66,160,288]],"field_partitions":[[[4]],[[4]],[[1]]],"incumbent_partition":[4,4,1],"index":11648,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[4,4,1]],"required_dimension_sets":[[[5]],[[5]],[[5]]],"roles":[615,616,524],"starts_bases":[[30],[30],[7,25,75,160,288]]}, + {"admissible_edges":[{"dimensions":[5],"roles":[0,1]},{"dimensions":[5],"roles":[0,2]},{"dimensions":[5],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[1,-1],"contacts_bases":[[7,25,75,160,288],[7,25,75,160,288]],"ends_bases":[[7,25,75,160,288],[7,25,75,160,288],[7,25,75,160,288]],"field_partitions":[[[]],[[]],[[]]],"incumbent_partition":[],"index":11651,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[]],"required_dimension_sets":[[[5]],[[5]],[[5]]],"roles":[614,615,557],"starts_bases":[[7,25,75,160,288],[7,25,75,160,288],[7,25,75,160,288]]}, + {"admissible_edges":[{"dimensions":[5],"roles":[0,1]},{"dimensions":[5],"roles":[0,2]},{"dimensions":[5],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[-1,-1],"contacts_bases":[[7,25,75,160,288],[7,25,75,160,288]],"ends_bases":[[7,25,75,160,288],[7,25,75,160,288],[7,25,41,75,137,265]],"field_partitions":[[[]],[[4]],[[1]]],"incumbent_partition":[4,1],"index":11652,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[4,1]],"required_dimension_sets":[[[5]],[[5]],[[5]]],"roles":[615,617,557],"starts_bases":[[7,25,75,160,288],[30],[7,25,75,160,288]]}, + {"admissible_edges":[{"dimensions":[5],"roles":[0,1]},{"dimensions":[5],"roles":[0,2]},{"dimensions":[5],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[1,-1],"contacts_bases":[[7,25,75,160,288],[7,25,75,160,288]],"ends_bases":[[7,8,17,67,160,288],[7,25,75,160,288],[7,25,75,160,288]],"field_partitions":[[[1]],[[]],[[]]],"incumbent_partition":[1],"index":11654,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[1]],"required_dimension_sets":[[[5]],[[5]],[[5]]],"roles":[614,616,536],"starts_bases":[[7,25,75,160,288],[7,25,75,160,288],[7,25,75,160,288]]}, + {"admissible_edges":[{"dimensions":[5],"roles":[0,1]},{"dimensions":[5],"roles":[0,2]},{"dimensions":[5],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[-1,-1],"contacts_bases":[[7,25,75,160,288],[7,25,75,160,288]],"ends_bases":[[7,25,75,160,288],[7,25,75,160,288],[7,25,40,75,136,264]],"field_partitions":[[[]],[[]],[[1]]],"incumbent_partition":[1],"index":11655,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[1]],"required_dimension_sets":[[[5]],[[5]],[[5]]],"roles":[616,617,536],"starts_bases":[[7,25,75,160,288],[7,25,75,160,288],[7,25,75,160,288]]}, + {"admissible_edges":[{"dimensions":[5],"roles":[0,1]},{"dimensions":[5],"roles":[0,2]},{"dimensions":[5],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[-1,1],"contacts_bases":[[7,25,75,160,288],[7,25,75,160,288]],"ends_bases":[[7,25,34,75,130,258],[7,25,35,75,131,259],[7,25,75,160,288]],"field_partitions":[[[1]],[[1]],[[1]]],"incumbent_partition":[1,1,1],"index":11657,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[1,1,1]],"required_dimension_sets":[[[5]],[[5]],[[5]]],"roles":[615,616,442],"starts_bases":[[7,25,75,160,288],[7,25,75,160,288],[25,75,160,288]]}, + {"admissible_edges":[{"dimensions":[5],"roles":[0,1]},{"dimensions":[5],"roles":[0,2]},{"dimensions":[5],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[1,-1],"contacts_bases":[[7,25,75,160,288],[7,25,75,160,288]],"ends_bases":[[7,25,35,75,131,259],[3,4,25,72,160,288],[2,5,25,73,160,288]],"field_partitions":[[[1]],[[1]],[[1]]],"incumbent_partition":[1,1,1],"index":11658,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[1,1,1]],"required_dimension_sets":[[[5]],[[5]],[[5]]],"roles":[616,617,442],"starts_bases":[[7,25,75,160,288],[7,25,75,160,288],[7,25,75,160,288]]}, + {"admissible_edges":[{"dimensions":[0,1,2,3,4,5],"roles":[0,1]},{"dimensions":[5],"roles":[0,2]},{"dimensions":[5],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[-1,-1],"contacts_bases":[[1,6,24,96,426],[1,6,24,96,426]],"ends_bases":[[1,6,24,96,426],[1,6,24,96,426],[1,6,24,96,426]],"field_partitions":[[[5]],[[5]],[[]]],"incumbent_partition":[5,5],"index":11672,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[5,5]],"required_dimension_sets":[[[5]],[[5]],[[5]]],"roles":[618,619,333],"starts_bases":[[],[],[1,6,24,96,426]]}, + {"admissible_edges":[{"dimensions":[0,1,2,3,4,5],"roles":[0,1]},{"dimensions":[5],"roles":[0,2]},{"dimensions":[5],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[-1,1],"contacts_bases":[[1,6,24,96,426],[1,6,24,96,426]],"ends_bases":[[1,6,24,96,426],[1,6,24,96,426],[1,6,24,34,66,392]],"field_partitions":[[[5]],[[5]],[[1]]],"incumbent_partition":[5,5,1],"index":11673,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[5,5,1]],"required_dimension_sets":[[[5]],[[5]],[[5]]],"roles":[619,620,333],"starts_bases":[[],[],[1,6,24,96,426]]}, + {"admissible_edges":[{"dimensions":[5],"roles":[0,1]},{"dimensions":[5],"roles":[0,2]},{"dimensions":[5],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[1,-1],"contacts_bases":[[1,6,24,96,426],[1,6,24,96,426]],"ends_bases":[[1,6,24,96,426],[1,6,24,96,426],[1,6,24,96,426]],"field_partitions":[[[]],[[]],[[]]],"incumbent_partition":[],"index":11675,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[]],"required_dimension_sets":[[[5]],[[5]],[[5]]],"roles":[618,619,317],"starts_bases":[[1,6,24,96,426],[1,6,24,96,426],[1,6,24,96,426]]}, + {"admissible_edges":[{"dimensions":[5],"roles":[0,1]},{"dimensions":[5],"roles":[0,2]},{"dimensions":[5],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[1,-1],"contacts_bases":[[1,6,24,96,426],[1,6,24,96,426]],"ends_bases":[[1,6,24,96,130,296],[1,6,24,96,426],[1,6,24,96,426]],"field_partitions":[[[1]],[[]],[[1]]],"incumbent_partition":[1,1],"index":11679,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[1,1]],"required_dimension_sets":[[[5]],[[5]],[[5]]],"roles":[618,620,257],"starts_bases":[[1,6,24,96,426],[1,6,24,96,426],[6,24,96,427]]}, + {"admissible_edges":[{"dimensions":[5],"roles":[0,1]},{"dimensions":[5],"roles":[0,2]},{"dimensions":[5],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[-1,-1],"contacts_bases":[[1,6,24,96,426],[1,6,24,96,426]],"ends_bases":[[1,6,24,96,426],[1,6,24,96,426],[1,2,4,24,96,424]],"field_partitions":[[[]],[[]],[[1]]],"incumbent_partition":[1],"index":11680,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[1]],"required_dimension_sets":[[[5]],[[5]],[[5]]],"roles":[620,621,257],"starts_bases":[[1,6,24,96,426],[1,6,24,96,426],[1,6,24,96,426]]}, + {"admissible_edges":[{"dimensions":[5],"roles":[0,1]},{"dimensions":[5],"roles":[0,2]},{"dimensions":[5],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[-1,1],"contacts_bases":[[1,6,24,96,426],[1,6,24,96,426]],"ends_bases":[[1,6,24,96,168,258],[1,6,8,16,96,418],[1,6,24,96,426]],"field_partitions":[[[1]],[[1]],[[1]]],"incumbent_partition":[1,1,1],"index":11682,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[1,1,1]],"required_dimension_sets":[[[5]],[[5]],[[5]]],"roles":[619,620,245],"starts_bases":[[1,6,24,96,426],[1,6,24,96,426],[6,24,96,427]]}, + {"admissible_edges":[{"dimensions":[5],"roles":[0,1]},{"dimensions":[5],"roles":[0,2]},{"dimensions":[5],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[1,-1],"contacts_bases":[[1,6,24,96,426],[1,6,24,96,426]],"ends_bases":[[1,6,8,16,96,418],[1,6,24,96,136,290],[1,6,24,40,72,386]],"field_partitions":[[[1]],[[1]],[[1]]],"incumbent_partition":[1,1,1],"index":11683,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[1,1,1]],"required_dimension_sets":[[[5]],[[5]],[[5]]],"roles":[620,621,245],"starts_bases":[[1,6,24,96,426],[1,6,24,96,426],[1,6,24,96,426]]}, + {"admissible_edges":[{"dimensions":[1,2,3,4],"roles":[0,1]},{"dimensions":[4],"roles":[0,2]},{"dimensions":[4],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[-1,-1],"contacts_bases":[[3,48,72,413],[3,48,72,413]],"ends_bases":[[3,48,72,413],[3,48,72,413],[3,48,72,413]],"field_partitions":[[[3]],[[3]],[[]]],"incumbent_partition":[3,3],"index":11705,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[3,3]],"required_dimension_sets":[[[4]],[[4]],[[4]]],"roles":[628,629,241],"starts_bases":[[51],[51],[3,48,72,413]]}, + {"admissible_edges":[{"dimensions":[1,2,3,4],"roles":[0,1]},{"dimensions":[4],"roles":[0,2]},{"dimensions":[4],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[-1,1],"contacts_bases":[[3,48,72,413],[3,48,72,413]],"ends_bases":[[3,48,72,413],[3,48,72,413],[3,4,9,48,65,400]],"field_partitions":[[[3]],[[3]],[[2]]],"incumbent_partition":[3,3,2],"index":11706,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[3,3,2]],"required_dimension_sets":[[[4]],[[4]],[[4]]],"roles":[629,630,241],"starts_bases":[[51],[51],[3,48,72,413]]}, + {"admissible_edges":[{"dimensions":[4],"roles":[0,1]},{"dimensions":[4],"roles":[0,2]},{"dimensions":[4],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[1,-1],"contacts_bases":[[3,48,72,413],[3,48,72,413]],"ends_bases":[[3,48,72,413],[3,48,72,413],[3,48,72,413]],"field_partitions":[[[]],[[]],[[]]],"incumbent_partition":[],"index":11708,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[]],"required_dimension_sets":[[[4]],[[4]],[[4]]],"roles":[628,629,234],"starts_bases":[[3,48,72,413],[3,48,72,413],[3,48,72,413]]}, + {"admissible_edges":[{"dimensions":[4],"roles":[0,1]},{"dimensions":[4],"roles":[0,2]},{"dimensions":[4],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[-1,-1],"contacts_bases":[[3,48,72,413],[3,48,72,413]],"ends_bases":[[3,48,72,413],[3,48,72,413],[3,4,48,72,144,265]],"field_partitions":[[[]],[[3]],[[2]]],"incumbent_partition":[3,2],"index":11709,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[3,2]],"required_dimension_sets":[[[4]],[[4]],[[4]]],"roles":[629,631,234],"starts_bases":[[3,48,72,413],[51],[3,48,72,413]]}, + {"admissible_edges":[{"dimensions":[4],"roles":[0,1]},{"dimensions":[4],"roles":[0,2]},{"dimensions":[4],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[1,-1],"contacts_bases":[[3,48,72,413],[3,48,72,413]],"ends_bases":[[3,4,48,72,129,280],[3,48,72,413],[3,48,72,413]],"field_partitions":[[[2]],[[]],[[]]],"incumbent_partition":[2],"index":11711,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[2]],"required_dimension_sets":[[[4]],[[4]],[[4]]],"roles":[628,630,229],"starts_bases":[[3,48,72,413],[3,48,72,413],[3,48,72,413]]}, + {"admissible_edges":[{"dimensions":[4],"roles":[0,1]},{"dimensions":[4],"roles":[0,2]},{"dimensions":[4],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[-1,-1],"contacts_bases":[[3,48,72,413],[3,48,72,413]],"ends_bases":[[3,48,72,413],[3,48,72,413],[3,4,24,40,72,385]],"field_partitions":[[[]],[[]],[[2]]],"incumbent_partition":[2],"index":11712,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[2]],"required_dimension_sets":[[[4]],[[4]],[[4]]],"roles":[630,631,229],"starts_bases":[[3,48,72,413],[3,48,72,413],[3,48,72,413]]}, + {"admissible_edges":[{"dimensions":[4,5],"roles":[0,1]},{"dimensions":[4],"roles":[0,2]},{"dimensions":[4],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[-1,1],"contacts_bases":[[3,48,72,413],[3,48,72,413]],"ends_bases":[[3,4,48,72,152,257],[3,4,16,32,72,393],[3,48,72,413]],"field_partitions":[[[1,1],[2]],[[1,1],[2]],[[]]],"incumbent_partition":[2,2],"index":11714,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[1,1,1,1],[2,1,1],[2,2]],"required_dimension_sets":[[[4,5]],[[4,5]],[[4]]],"roles":[629,630,227],"starts_bases":[[3,48,72,413],[3,48,72,413],[3,48,72,413]]}, + {"admissible_edges":[{"dimensions":[4,5],"roles":[0,1]},{"dimensions":[4,5],"roles":[0,2]},{"dimensions":[4,5],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[1,-1],"contacts_bases":[[3,48,72,413],[3,48,72,413]],"ends_bases":[[3,4,16,32,72,393],[3,4,48,72,137,272],[1,2,4,48,72,408]],"field_partitions":[[[1,1],[2]],[[1,1],[2]],[[1,1],[2]]],"incumbent_partition":[2,2,2],"index":11715,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[1,1,1,1,1,1],[2,1,1,1,1],[2,2,1,1],[2,2,2]],"required_dimension_sets":[[[4,5]],[[4,5]],[[4,5]]],"roles":[630,631,227],"starts_bases":[[3,48,72,413],[3,48,72,413],[3,48,72,413]]}, + {"admissible_edges":[{"dimensions":[4],"roles":[0,1]},{"dimensions":[4],"roles":[0,2]},{"dimensions":[4],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[1,-1],"contacts_bases":[[9,36,66,407],[9,36,66,407]],"ends_bases":[[9,36,66,407],[9,36,66,407],[9,36,66,407]],"field_partitions":[[[]],[[]],[[]]],"incumbent_partition":[],"index":11735,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[]],"required_dimension_sets":[[[4]],[[4]],[[4]]],"roles":[49,83,225],"starts_bases":[[9,36,66,407],[9,36,66,407],[9,36,66,407]]}, + {"admissible_edges":[{"dimensions":[4],"roles":[0,1]},{"dimensions":[4],"roles":[0,2]},{"dimensions":[4],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[1,-1],"contacts_bases":[[9,36,66,407],[9,36,66,407]],"ends_bases":[[3,9,16,36,65,388],[9,36,66,407],[9,36,66,407]],"field_partitions":[[[2]],[[]],[[]]],"incumbent_partition":[2],"index":11739,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[2]],"required_dimension_sets":[[[4]],[[4]],[[4]]],"roles":[49,98,281],"starts_bases":[[9,36,66,407],[9,36,66,407],[9,36,66,407]]}, + {"admissible_edges":[{"dimensions":[4],"roles":[0,1]},{"dimensions":[4],"roles":[0,2]},{"dimensions":[4],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[-1,-1],"contacts_bases":[[9,36,66,407],[9,36,66,407]],"ends_bases":[[9,36,66,407],[9,36,66,407],[9,36,66,131,276]],"field_partitions":[[[]],[[]],[[1]]],"incumbent_partition":[1],"index":11740,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[1]],"required_dimension_sets":[[[4]],[[4]],[[4]]],"roles":[98,101,281],"starts_bases":[[9,36,66,407],[9,36,66,407],[9,36,66,407]]}, + {"admissible_edges":[{"dimensions":[4,5],"roles":[0,1]},{"dimensions":[4],"roles":[0,2]},{"dimensions":[4],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[-1,1],"contacts_bases":[[9,36,66,407],[9,36,66,407]],"ends_bases":[[4,9,16,32,66,387],[9,16,36,66,129,262],[9,36,66,407]],"field_partitions":[[[1,1],[2]],[[1,1],[2]],[[]]],"incumbent_partition":[2,2],"index":11742,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[1,1,1,1],[2,1,1],[2,2]],"required_dimension_sets":[[[4,5]],[[4,5]],[[4]]],"roles":[83,98,393],"starts_bases":[[9,36,66,407],[9,36,66,407],[9,36,66,407]]}, + {"admissible_edges":[{"dimensions":[4],"roles":[0,1]},{"dimensions":[4],"roles":[0,2]},{"dimensions":[4],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[1,-1],"contacts_bases":[[9,36,66,407],[9,36,66,407]],"ends_bases":[[9,16,36,66,129,262],[1,8,36,66,406],[9,36,66,148,259]],"field_partitions":[[[2]],[[1]],[[1]]],"incumbent_partition":[2,1,1],"index":11743,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[2,1,1]],"required_dimension_sets":[[[4]],[[4]],[[4]]],"roles":[98,101,393],"starts_bases":[[9,36,66,407],[9,36,66,407],[9,36,66,407]]}, + {"admissible_edges":[{"dimensions":[4],"roles":[0,1]},{"dimensions":[4],"roles":[0,2]},{"dimensions":[4],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[1,-1],"contacts_bases":[[45,85,130,258],[45,85,130,258]],"ends_bases":[[45,85,130,258],[45,85,130,258],[45,85,130,258]],"field_partitions":[[[]],[[]],[[]]],"incumbent_partition":[],"index":11763,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[]],"required_dimension_sets":[[[4]],[[4]],[[4]]],"roles":[68,80,377],"starts_bases":[[45,85,130,258],[45,85,130,258],[45,85,130,258]]}, + {"admissible_edges":[{"dimensions":[4],"roles":[0,1]},{"dimensions":[4],"roles":[0,2]},{"dimensions":[4],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[1,-1],"contacts_bases":[[45,85,130,258],[45,85,130,258]],"ends_bases":[[3,25,45,76,129,257],[45,85,130,258],[45,85,130,258]],"field_partitions":[[[2]],[[]],[[]]],"incumbent_partition":[2],"index":11767,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[2]],"required_dimension_sets":[[[4]],[[4]],[[4]]],"roles":[68,88,381],"starts_bases":[[45,85,130,258],[45,85,130,258],[45,85,130,258]]}, + {"admissible_edges":[{"dimensions":[4],"roles":[0,1]},{"dimensions":[4],"roles":[0,2]},{"dimensions":[4],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[-1,-1],"contacts_bases":[[45,85,130,258],[45,85,130,258]],"ends_bases":[[45,85,130,258],[45,85,130,258],[1,44,84,130,258]],"field_partitions":[[[]],[[]],[[1]]],"incumbent_partition":[1],"index":11768,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[1]],"required_dimension_sets":[[[4]],[[4]],[[4]]],"roles":[88,31,381],"starts_bases":[[45,85,130,258],[45,85,130,258],[45,85,130,258]]}, + {"admissible_edges":[{"dimensions":[4,5],"roles":[0,1]},{"dimensions":[4],"roles":[0,2]},{"dimensions":[4],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[-1,1],"contacts_bases":[[45,85,130,258],[45,85,130,258]],"ends_bases":[[4,25,41,72,130,258],[10,19,39,70,130,258],[45,85,130,258]],"field_partitions":[[[1,1],[2]],[[1,1],[2]],[[]]],"incumbent_partition":[2,2],"index":11770,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[1,1,1,1],[2,1,1],[2,2]],"required_dimension_sets":[[[4,5]],[[4,5]],[[4]]],"roles":[80,88,345],"starts_bases":[[45,85,130,258],[45,85,130,258],[45,85,130,258]]}, + {"admissible_edges":[{"dimensions":[4],"roles":[0,1]},{"dimensions":[4],"roles":[0,2]},{"dimensions":[4],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[1,-1],"contacts_bases":[[45,85,130,258],[45,85,130,258]],"ends_bases":[[10,19,39,70,130,258],[8,37,85,130,258],[31,45,74,130,258]],"field_partitions":[[[2]],[[1]],[[1]]],"incumbent_partition":[2,1,1],"index":11771,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[2,1,1]],"required_dimension_sets":[[[4]],[[4]],[[4]]],"roles":[88,31,345],"starts_bases":[[45,85,130,258],[45,85,130,258],[45,85,130,258]]}, + {"admissible_edges":[{"dimensions":[4],"roles":[0,1]},{"dimensions":[4],"roles":[0,2]},{"dimensions":[4],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[1,-1],"contacts_bases":[[12,18,33,455],[12,18,33,455]],"ends_bases":[[12,18,33,455],[12,18,33,455],[12,18,33,455]],"field_partitions":[[[]],[[]],[[]]],"incumbent_partition":[],"index":11791,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[]],"required_dimension_sets":[[[4]],[[4]],[[4]]],"roles":[33,55,329],"starts_bases":[[12,18,33,455],[12,18,33,455],[12,18,33,455]]}, + {"admissible_edges":[{"dimensions":[4],"roles":[0,1]},{"dimensions":[4],"roles":[0,2]},{"dimensions":[4],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[1,-1],"contacts_bases":[[12,18,33,455],[12,18,33,455]],"ends_bases":[[3,12,17,33,64,388],[12,18,33,455],[12,18,33,455]],"field_partitions":[[[2]],[[]],[[]]],"incumbent_partition":[2],"index":11795,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[2]],"required_dimension_sets":[[[4]],[[4]],[[4]]],"roles":[33,74,297],"starts_bases":[[12,18,33,455],[12,18,33,455],[12,18,33,455]]}, + {"admissible_edges":[{"dimensions":[4],"roles":[0,1]},{"dimensions":[4],"roles":[0,2]},{"dimensions":[4],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[-1,-1],"contacts_bases":[[12,18,33,455],[12,18,33,455]],"ends_bases":[[12,18,33,455],[12,18,33,455],[12,18,33,64,132,259]],"field_partitions":[[[]],[[]],[[2]]],"incumbent_partition":[2],"index":11796,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[2]],"required_dimension_sets":[[[4]],[[4]],[[4]]],"roles":[74,85,297],"starts_bases":[[12,18,33,455],[12,18,33,455],[12,18,33,455]]}, + {"admissible_edges":[{"dimensions":[4],"roles":[0,1]},{"dimensions":[4],"roles":[0,2]},{"dimensions":[4],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[-1,1],"contacts_bases":[[12,18,33,455],[12,18,33,455]],"ends_bases":[[4,8,18,33,64,387],[12,18,33,70,385],[12,18,33,455]],"field_partitions":[[[2]],[[1]],[[]]],"incumbent_partition":[2,1],"index":11798,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[2,1]],"required_dimension_sets":[[[4]],[[4]],[[4]]],"roles":[55,74,313],"starts_bases":[[12,18,33,455],[12,18,33,455],[12,18,33,455]]}, + {"admissible_edges":[{"dimensions":[4],"roles":[0,1]},{"dimensions":[4],"roles":[0,2]},{"dimensions":[4],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[1,-1],"contacts_bases":[[12,18,33,455],[12,18,33,455]],"ends_bases":[[12,18,33,70,385],[12,18,33,193,262],[12,18,33,64,131,260]],"field_partitions":[[[1]],[[1]],[[2]]],"incumbent_partition":[2,1,1],"index":11799,"mandatory_bridges":[],"phase":"B","relaxed_partitions":[[2,1,1]],"required_dimension_sets":[[[4]],[[4]],[[4]]],"roles":[74,85,313],"starts_bases":[[12,18,33,455],[12,18,33,455],[12,18,33,455]]}, + {"admissible_edges":[{"dimensions":[9],"roles":[0,1]},{"dimensions":[9],"roles":[0,2]},{"dimensions":[8,9],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[1,-1],"contacts_bases":[[1,2,4,8,16,32,64,128,256],[1,2,4,8,16,32,64,128,256]],"ends_bases":[[1,2,4,8,16,32,64,128,256],[1,2,4,8,16,32,64,128,256],[1,2,4,8,16,32,64,128,256]],"field_partitions":[[[]],[[2,1],[3]],[[2,1],[3]]],"incumbent_partition":[3,3],"index":12491,"mandatory_bridges":[],"phase":"cleanup_tail","relaxed_partitions":[[2,2,1,1],[3,2,1],[3,3]],"required_dimension_sets":[[[9]],[[8,9]],[[8,9]]],"roles":[408,567,105],"starts_bases":[[1,2,4,8,16,32,64,128,256],[1,6,50,82,136,264],[8,22,34,68,129,257]]}, + {"admissible_edges":[{"dimensions":[9],"roles":[0,1]},{"dimensions":[9],"roles":[0,2]},{"dimensions":[8,9],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[-1,-1],"contacts_bases":[[1,2,4,8,16,32,64,128,256],[1,2,4,8,16,32,64,128,256]],"ends_bases":[[1,2,4,8,16,32,64,128,256],[1,2,4,8,16,32,64,128,256],[1,2,4,8,16,32,64,128,256]],"field_partitions":[[[]],[[2,1],[3]],[[2,1],[3]]],"incumbent_partition":[3,3],"index":12494,"mandatory_bridges":[],"phase":"cleanup_tail","relaxed_partitions":[[2,2,1,1],[3,2,1],[3,3]],"required_dimension_sets":[[[9]],[[8,9]],[[8,9]]],"roles":[412,569,414],"starts_bases":[[1,2,4,8,16,32,64,128,256],[3,4,48,72,144,265],[10,20,32,65,132,259]]}, + {"admissible_edges":[{"dimensions":[9],"roles":[0,1]},{"dimensions":[9],"roles":[0,2]},{"dimensions":[8,9],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[1,-1],"contacts_bases":[[1,2,4,8,16,32,64,128,256],[1,2,4,8,16,32,64,128,256]],"ends_bases":[[1,2,4,8,16,32,64,128,256],[1,2,4,8,16,32,64,128,256],[1,2,4,8,16,32,64,128,256]],"field_partitions":[[[]],[[2,1],[3]],[[2,1],[3]]],"incumbent_partition":[3,3],"index":12497,"mandatory_bridges":[],"phase":"cleanup_tail","relaxed_partitions":[[2,2,1,1],[3,2,1],[3,3]],"required_dimension_sets":[[[9]],[[8,9]],[[8,9]]],"roles":[424,575,44],"starts_bases":[[1,2,4,8,16,32,64,128,256],[7,27,40,73,136,264],[2,8,20,32,65,389]]}, + {"admissible_edges":[{"dimensions":[9],"roles":[0,1]},{"dimensions":[9],"roles":[0,2]},{"dimensions":[8,9],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[-1,-1],"contacts_bases":[[1,2,4,8,16,32,64,128,256],[1,2,4,8,16,32,64,128,256]],"ends_bases":[[1,2,4,8,16,32,64,128,256],[1,2,4,8,16,32,64,128,256],[1,2,4,8,16,32,64,128,256]],"field_partitions":[[[]],[[2,1],[3]],[[2,1],[3]]],"incumbent_partition":[3,3],"index":12500,"mandatory_bridges":[],"phase":"cleanup_tail","relaxed_partitions":[[2,2,1,1],[3,2,1],[3,3]],"required_dimension_sets":[[[9]],[[8,9]],[[8,9]]],"roles":[428,577,430],"starts_bases":[[1,2,4,8,16,32,64,128,256],[1,2,4,48,72,408],[5,27,42,73,129,257]]}, + {"admissible_edges":[{"dimensions":[9],"roles":[0,1]},{"dimensions":[9],"roles":[0,2]},{"dimensions":[9],"roles":[1,2]}],"all_concave_prices_certified":true,"coefficients":[-1,1],"contacts_bases":[[1,2,4,8,16,32,64,128,256],[1,2,4,8,16,32,64,128,256]],"ends_bases":[[1,2,4,8,16,32,64,128,256],[1,2,4,8,16,32,64,128,256],[1,2,4,8,16,32,64,128,256]],"field_partitions":[[[]],[[1]],[[]]],"incumbent_partition":[1],"index":12655,"mandatory_bridges":[],"phase":"cleanup_tail","relaxed_partitions":[[1]],"required_dimension_sets":[[[9]],[[9]],[[9]]],"roles":[40,18,226],"starts_bases":[[1,2,4,8,16,32,64,128,256],[1,4,10,16,34,64,128,256],[1,2,4,8,16,32,64,128,256]]} + ] +} diff --git a/research/pr4585-geometry-soundness-check/README.md b/research/pr4585-geometry-soundness-check/README.md new file mode 100644 index 0000000000..863c54ca68 --- /dev/null +++ b/research/pr4585-geometry-soundness-check/README.md @@ -0,0 +1,50 @@ +# Soundness check of #4585's coarsened partitions against exact geometry + +**Task:** independent-moment (independent source-bound coverage). **Base:** canonical main `f626db5c`. **No new κ.** + +mihir-s-05's #4585 (head `025f37fe`) proves that no finite shear word improves any of the 128 #4470 receiver windows. It uses two necessary conditions: mandatory source contacts and admissible-contact-graph bridges. It coarsens each field's path at those contacts into a finite list of `relaxed_partitions`, and proves a capped-rank (majorization) floor over them. For the floor to cover every word, each **actually realisable** word profile must be listed or must **refine** (split into) a listed partition. Concavity then gives `cost(word) ≥ cost(listed partition) ≥ cost(incumbent)`. + +#4585's lists are coarser than, and in 33 windows differ from, the identical profile sets of #4567, #4581, #4582 and #4587: +- smaller in 21 windows; +- larger in 11; +- incomparable in 1. + +So this package checks the needed property directly against **exact geometry**. #4585's `CERTIFICATE.json` is vendored (blob `74424627`, SHA256-pinned). + +## Method + +- **Windows.** The 128 windows come from main's #4470 constructor, via `windows_lib.py`, which is my #4567 extraction and census code. +- **Exact profiles.** Every unit-shear word of length ≤ 5 with the window's endpoint is enumerated. For each word, an exact search over actual nested subspaces of `F₂⁹`, with joint incidence enforced across all gates, yields every exactly realisable profile. +- **Refinement.** Each realisable profile must be listed by #4585 or refine a listed partition (exact multiset bin-packing). +- **Incumbent.** The incumbent must be listed and must dominate every listed partition in capped rank sums (equal mass, `Σ min(r,k)` for `k ≤ 9`). + +## Results + +**All checks pass in all 128 windows.** +- **Profiles.** There are 235 exactly realisable profiles at length ≤ 5. **151 are listed and 84 refine a listed partition, with 0 violations.** +- **Incumbent.** It is realisable, listed and capped-rank dominant in every window. + +**Length 6 (recorded run, about 20 min, not in the registered verifier because of runtime).** There are 239 realisable profiles, 151 listed and 88 refining, with 0 violations. + +**A tightness observation.** For each window, the realisable set is contained in the relaxed set of #4567/#4581/#4582/#4587, because the relaxation contains every actual path. At length 6 the total, 239, equals those certificates' 239 window/profile pairs. So **every relaxed profile is realised exactly by some actual word of length ≤ 6**: the relaxation is tight for these 128 windows. + +So #4585's coarsened lists are consistent with exact geometry where they differ from the relaxed sets of the other certificates. Its smaller lists still cover every realised profile by refinement. + +## Verify + +```text +python3 -B research/pr4585-geometry-soundness-check/verify.py +``` + +This runs in about 75 s with the standard library only. + +## Limitations + +- **Lengths.** Lengths above 5 are not enumerated. The all-length statement is #4585's written proof; this corroborates its key soundness property on every realisable short word. +- **Coefficients.** Unit coefficients only, as in #4585's windows. Nonunit words are covered by #4567's ceilings, not here. + +## Open next questions + +- None new. #4567's nonadjacent and retiming extensions lie outside #4585's scope. + +Credit: mihir-s-05 (#4585), Cinna Davis (#4470); the exact-geometry search is from my #4567. Prepared by Ryanson Jonathan with substantial Claude Code (Claude Opus 5.5) assistance. diff --git a/research/pr4585-geometry-soundness-check/SOURCES.json b/research/pr4585-geometry-soundness-check/SOURCES.json new file mode 100644 index 0000000000..6ed9bb7733 --- /dev/null +++ b/research/pr4585-geometry-soundness-check/SOURCES.json @@ -0,0 +1,60 @@ +{ + "schema_version": 1, + "base_commit": "f626db5c3a3d781d8f7695038776c621651f75e1", + "files": [ + { + "path": "certificates/selected-result.json", + "usage": "provenance", + "git_blob": "ed33caef5c5827693e9572d252a66f99cbb73d40", + "sha256": "5732707cc1e460b090b53f2463162749ad860de878a18f7408938671d295a9d9" + }, + { + "path": "docs/research/agent-task-catalog.json", + "usage": "provenance", + "git_blob": "64bfc5af6709ed9811171e0a2108f05e1219cb65", + "sha256": "352a6184713b8843d96fd2c2071eb7aeaa655906b7c51d45ad444912666c8a96" + }, + { + "path": "research/kappa-rebuild/complex/full-identity-certificates/THREE-base-FULL-IDENTITY-CANONICAL.json.gz", + "usage": "input", + "git_blob": "4a8c4ed26e53a72362d571c972e65aff546be784", + "sha256": "6418ec3da24d548a57f5c3fe5b9062c26c9478e638504a61c387f5cfb5f4ed61" + }, + { + "path": "research/kappa-rebuild/complex/full-identity-certificates/THREE-base-FULL-IDENTITY-NATIVE.json.gz", + "usage": "input", + "git_blob": "b46d44c6ee624968dd57be928b0c15d9d45f3b2c", + "sha256": "c54b0a3e129d28e6dbf74fa731fc3bb70fe3c6705f07256750fbecddcc842d39" + }, + { + "path": "research/fresh-helper-boundary/native.py", + "usage": "input", + "git_blob": "1b36f6cb5f205c33bf48811e0b1b3621c55e8154", + "sha256": "9b55a2d3c3972148fae9d112e745d9244968166bd89bd900c938f429fc76ab29" + }, + { + "path": "research/fresh-helper-boundary/CHANGES.json", + "usage": "input", + "git_blob": "45744fedd0e28967aa72586048b8bc0c72f419a9", + "sha256": "cde73b8ff5b3c0d06e69e2293b991b24fd14a16dd4ccab7ff6b3439074a94624" + }, + { + "path": "research/missing-join-frame/PATCH.json", + "usage": "input", + "git_blob": "f96d295d40014d4dd503f58eb3cdabcbb4b8e101", + "sha256": "9ab5328245ff02c9d0be21d39bcc375f50bc5d7909e9f7b9a3a9a6f812f5bd6e" + }, + { + "path": "research/joint-helper-lattice/PATCH.json", + "usage": "input", + "git_blob": "51304a6601061ed4e698f910b09135ef109555e3", + "sha256": "296d0e8c58cc70febe042c681ef30d6bb469818c0835fbcaac8aa8d330f5b727" + }, + { + "path": "research/joint-helper-lattice/native_joint.py", + "usage": "input", + "git_blob": "0315f80e2fdef5e0eef13e3e9b8f72066238164d", + "sha256": "50869b1bcad7493e6b4cb2a4cd5d2fd9a193a5921100483fa2c3f2c999ddfd46" + } + ] +} diff --git a/research/pr4585-geometry-soundness-check/TASK.json b/research/pr4585-geometry-soundness-check/TASK.json new file mode 100644 index 0000000000..968d5f7b35 --- /dev/null +++ b/research/pr4585-geometry-soundness-check/TASK.json @@ -0,0 +1,100 @@ +{ + "schema_version": 1, + "task_id": "independent-moment", + "priority_revision": 7, + "base_commit": "f626db5c3a3d781d8f7695038776c621651f75e1", + "original_card": { + "id": "independent-moment", + "question": "Does a new paid-profile or mixture-ceiling claim have independent source-bound coverage of its actual changed ledger?", + "starting_points": [ + "docs/research/research-family-status.md", + "certificates/selected-result.json", + "research/staged544-mixed-fourth-entry/README.md", + "research/staged-fourth-mixture-ceiling/README.md", + "research/r437-two-window-carrier/README.md" + ], + "methods": [ + "Independently reconstruct one changed paid ledger or pooled dual with exact source and model binding.", + "Check a genuinely uncovered moment implication with a different enclosure method and semantic controls." + ], + "acceptance_gate": "Demonstrate independence, source binding, positive cases and semantic failure controls. Name the existing checks and the missing coverage. More digits or another equivalent evaluation of an unchanged root is not by itself new verification coverage.", + "first_step": { + "command": [ + "python3", + "-B", + "scripts/research_baseline.py" + ], + "expected": "PASS_RESEARCH_BASELINE_BINDINGS_ONLY", + "inspect": "Choose one uncovered implication in #4088 literal mixed fill, #4091 pooled dual/model binding or #4067 changed frame/host bill. #4091 pins an earlier #4088 head: validate word, capacity and stock equivalence before applying that ceiling to the later fill.", + "scope": "Source-binding orientation only; no scientific replay, theorem acceptance or supplier admission. Budget any heavy replay separately." + }, + "first_experiment": "Independently reconstruct one changed ledger or pooled certificate with a positive case and a semantic failure control. Compare exact sources and name what existing checks miss. Keep this separate from supplier-boundary-audit (ordinary/outer dispatch) and uniform-transfer-audit (all-size proof). Stop after the chosen implication; more digits of an unchanged root are not additional mechanism coverage.", + "bottleneck_link": "Independent pricing prevents unsupported frontier claims and can reveal genuine accounting slack.", + "allowed_variations": [ + "Reconstruct either a source ledger or a numeric enclosure with a different method." + ], + "scope_change_triggers": [ + "Importing the primary function and calling its output independent verification.", + "Calling an aggregate histogram or source archive an independently accepted physical supplier." + ], + "overlap_terms": [ + "independent moment", + "rank histogram", + "exact enclosure", + "2979", + "rank7 joint endframes", + "paired extraction", + "joint lowering", + "4088", + "4091", + "4067", + "staged544-mixed-fourth-entry", + "staged-fourth-mixture-ceiling", + "r437-two-window-carrier" + ], + "existing_checks": [ + { + "scope": "PR #4088: mixed local/owner/phase ledger and moment reported.", + "evidence": "research/staged544-mixed-fourth-entry/README.md", + "remaining": "Independent binding of changed construction to paid histogram, distinct from full admission.", + "status": "author-checked", + "source_commit": "72d7efc181edb21806a878f174847c96dd410ab0", + "selected_record_sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" + }, + { + "scope": "PR #4091: sharp pooled ceiling proposed for fixed THREE/FOUR words and inventory.", + "evidence": "research/staged-fourth-mixture-ceiling/README.md", + "remaining": "Validate dual, exhaustive pattern scope and exact source equivalence before applying to newer fills.", + "status": "author-checked", + "source_commit": "a29bdd8f56cd18b805917775cdec09ff935eddc4", + "selected_record_sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" + }, + { + "scope": "PR #4067: paid (2,2) to (1,3) exchange and fixed OQ4 host reported.", + "evidence": "research/r437-two-window-carrier/README.md", + "remaining": "Independent full cost delta; remaining caller/precision/stock obligations are separate.", + "status": "author-checked", + "source_commit": "a95f11c52e3ca1e4c5171b3c20d8f4b0815aee2e", + "selected_record_sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" + } + ] + }, + "scope_status": "unchanged", + "actual_scope": "Does a new paid-profile or mixture-ceiling claim have independent source-bound coverage of its actual changed ledger?", + "scope_change_reason": null, + "bottleneck_link": "Independent soundness check of the fourth all-length receiver-window floor certificate, against exact geometry.", + "budget_minutes": 30, + "stop_rule": "Stop at word length 5.", + "outcome": "completed", + "evidence": "All 128 windows: 235 exactly realisable profiles (length <= 5, exact nested-subspace search), 151 listed and 84 refining a #4585 partition, 0 violations; incumbent listed and capped-rank dominant everywhere.", + "author": "Ryanson Jonathan, with Claude Code (Claude Opus 5.5) assistance", + "ai_assistance": "Substantial Claude Code (Claude Opus 5.5) assistance; no independent human review.", + "open_questions": [ + { + "question": "None new.", + "why_it_matters": "#4567's extensions are outside #4585's scope.", + "first_step": "n/a", + "blocked_by": "None." + } + ] +} diff --git a/research/pr4585-geometry-soundness-check/VERIFY.json b/research/pr4585-geometry-soundness-check/VERIFY.json new file mode 100644 index 0000000000..494e1a1b2f --- /dev/null +++ b/research/pr4585-geometry-soundness-check/VERIFY.json @@ -0,0 +1,28 @@ +{ + "schema_version": 1, + "status": "ready", + "python": "3.12", + "requirements": [], + "inputs": [ + "certificates/selected-result.json", + "docs/research/agent-task-catalog.json", + "research/fresh-helper-boundary/CHANGES.json", + "research/fresh-helper-boundary/native.py", + "research/joint-helper-lattice/PATCH.json", + "research/joint-helper-lattice/native_joint.py", + "research/kappa-rebuild/complex/full-identity-certificates/THREE-base-FULL-IDENTITY-CANONICAL.json.gz", + "research/kappa-rebuild/complex/full-identity-certificates/THREE-base-FULL-IDENTITY-NATIVE.json.gz", + "research/missing-join-frame/PATCH.json" + ], + "commands": [ + { + "argv": [ + "{python}", + "-B", + "{package}/verify.py" + ], + "timeout_seconds": 600, + "checks": "Exact-geometry profiles of all words of length <= 5 in 128 #4470 windows are listed in or refine #4585's partitions; incumbent listed and dominant; binding to vendored certificate (sha256)." + } + ] +} diff --git a/research/pr4585-geometry-soundness-check/verify.py b/research/pr4585-geometry-soundness-check/verify.py new file mode 100644 index 0000000000..6b388d7d5b --- /dev/null +++ b/research/pr4585-geometry-soundness-check/verify.py @@ -0,0 +1,135 @@ +#!/usr/bin/env python3 +"""Independent soundness check of PR #4585 (mihir-s-05): receiver-window floors via mandatory contacts and bridges. + +#4585 (head 025f37fe; CERTIFICATE.json vendored, blob 74424627, sha256-pinned) lists per window a set of coarsened +"relaxed_partitions" and proves that every finite scalar-shear word costs at least the incumbent. Its argument needs +every actually realisable word profile to be listed or to refine (split into) a listed partition; concavity then +carries the floor. #4585's sets differ from the identical sets of #4567/#4581/#4582/#4587 in 33 windows, so this is +checked directly against exact geometry: + + * the 128 windows are extracted from main's #4470 constructor by windows_lib.py (my #4567 code); + * every word of length <= 5 with the window endpoint is enumerated (unit shears), and an exact search over actual + nested subspaces of F_2^9 (joint incidence enforced across all gates) yields every exactly realisable profile; + * each realisable profile must be listed or refine a listed partition (exact multiset bin-packing); + * the incumbent must be listed and dominate every listed partition in capped rank sums (equal mass, + sum min(r, k) for k <= 9), the certificate #4585 uses for every concave price. +Ryanson Jonathan with Claude Code (Claude Opus 5.5) assistance. Apache-2.0. +""" +from functools import lru_cache +import hashlib +import json +from pathlib import Path +import sys + +HERE = Path(__file__).resolve().parent +CERT = HERE / "PR4585-CERTIFICATE.json" +CERT_SHA256 = "bb5c60a41074ea26d09f263755426b7db4a80b369de5daa64fa63be2d3fd66f7" +MAX_LEN = 5 + + +def need(condition, message): + if not condition: + raise AssertionError(message) + + +def part(h): + return tuple(sorted((r for r, n in enumerate(h) for _ in range(n)), reverse=True)) + + +def refines(R, C): + R, C = tuple(sorted(R, reverse=True)), tuple(sorted(C, reverse=True)) + if sum(R) != sum(C): + return False + + @lru_cache(None) + def go(rest, caps): + if not rest: + return all(c == 0 for c in caps) + x, tail, seen = rest[0], rest[1:], set() + for i, cap in enumerate(caps): + if cap >= x and cap not in seen: + seen.add(cap) + nc = list(caps) + nc[i] -= x + if go(tail, tuple(sorted(nc, reverse=True))): + return True + return False + + return go(R, C) + + +def main(): + ns = {"__name__": "windows_lib", "__file__": str(HERE / "windows_lib.py")} + exec(compile((HERE / "windows_lib.py").read_bytes(), str(HERE / "windows_lib.py"), "exec"), ns) + raw = CERT.read_bytes() + need(hashlib.sha256(raw).hexdigest() == CERT_SHA256, "vendored #4585 CERTIFICATE.json") + listed = {w["index"]: set(tuple(sorted(p, reverse=True)) for p in w["relaxed_partitions"]) + for w in json.loads(raw)["windows"]} + c, program = ns["construct"]() + wins = ns["extract_windows"](c, program) + need(len(wins) == 128 and set(listed) == {w["index"] for w in wins}, "same 128 windows") + + def geo_profiles(starts, ends, word): + cur, upper = list(ends), [None] * len(word) + for k in range(len(word) - 1, -1, -1): + i, j, _ = word[k] + f = cur[i] & cur[j] + upper[k] = f + cur[i] = cur[j] = f + out = set() + + def rec(k, state, hist): + if k == len(word): + h = list(hist) + for r in range(3): + if not state[r] <= ends[r]: + return + g = ns["dim"](ends[r]) - ns["dim"](state[r]) + if g: + h[g] += 1 + out.add(part(tuple(h))) + return + i, j, _ = word[k] + L, U = ns["ssum"](state[i], state[j]), upper[k] + for dd in range(ns["dim"](L), ns["dim"](U) + 1): + for F in ns["subspaces_between"](L, U, dd): + h, st = list(hist), list(state) + for r in (i, j): + g = ns["dim"](F) - ns["dim"](st[r]) + if g: + h[g] += 1 + st[r] = F + rec(k + 1, tuple(st), tuple(h)) + + rec(0, tuple(starts), (0,) * 10) + return out + + def capped(p, k): + return sum(min(r, k) for r in p) + + stats = {"windows": 0, "realisable_profiles": 0, "listed": 0, "refining_a_listed_partition": 0} + for w in wins: + lst = listed[w["index"]] + old = part(ns["actual_profile"](w["starts"], w["ends"], w["frames"])) + need(old in lst, f"incumbent listed, window {w['index']}") + need(all(sum(old) == sum(p) and all(capped(old, k) <= capped(p, k) for k in range(1, 10)) for p in lst), + f"incumbent dominates, window {w['index']}") + ms, _ = ns["matches"](*w["coefficients"], MAX_LEN) + realisable = set() + for word in ms: + realisable |= geo_profiles(w["starts"], w["ends"], word) + need(old in realisable, "incumbent realisable") + for R in realisable: + stats["realisable_profiles"] += 1 + if R in lst: + stats["listed"] += 1 + else: + need(any(refines(R, C) for C in lst), f"profile {R} refines a listed partition, window {w['index']}") + stats["refining_a_listed_partition"] += 1 + stats["windows"] += 1 + print(json.dumps({"status": "PASS_PR4585_GEOMETRY_SOUNDNESS", "max_word_length": MAX_LEN, **stats, + "new_kappa_claimed": False}, indent=1)) + + +if __name__ == "__main__": + sys.exit(main()) diff --git a/research/pr4585-geometry-soundness-check/windows_lib.py b/research/pr4585-geometry-soundness-check/windows_lib.py new file mode 100644 index 0000000000..b01b8f4ef5 --- /dev/null +++ b/research/pr4585-geometry-soundness-check/windows_lib.py @@ -0,0 +1,556 @@ +"""Receiver-window machinery from my #4567 (window extraction from the #4470 constructor, endpoint census, exact +nested-subspace search). Ryanson Jonathan with Claude Code (Claude Opus 5.5) assistance. Apache-2.0.""" +from collections import Counter, defaultdict +from fractions import Fraction as Fr +from functools import lru_cache +import hashlib +import json +from pathlib import Path +import subprocess +import sys +import tempfile + +HERE = Path(__file__).resolve().parent +ROOT = HERE.parents[1] +C = Fr(60403, 20000000) +GATES = tuple((i, j, s) for i in range(3) for j in range(3) if i != j for s in (-1, 1)) +IDENTITY = (1, 0, 0, 0, 1, 0, 0, 0, 1) + + +def need(condition, message): + if not condition: + raise AssertionError(message) + + +# ---------------------------------------------------------------- integer endpoint census +def act(m, g): + i, j, s = g + out = list(m) + for k in range(3): + out[3 * i + k] += s * m[3 * j + k] + return tuple(out) + + +def target(ca, cb): + return act(act(IDENTITY, (0, 2, ca)), (1, 2, cb)) + + +def words_of_length(n): + layer = [(IDENTITY, ())] + for _ in range(n): + layer = [(act(m, g), w + (g,)) for m, w in layer for g in GATES] + return layer + + +@lru_cache(None) +def matches(ca, cb, max_len): + T = target(ca, cb) + found, visited = [], 0 + for n in range(min(max_len, 4) + 1): + layer = words_of_length(n) + visited += len(layer) + found += [w for m, w in layer if m == T] + if max_len >= 5: + # Meet in the middle: word = p + q with M(q) M(p) = T, i.e. M(p) = M(q)^-1 T. + pre = {n: defaultdict(list) for n in (2, 3)} + for n in (2, 3): + for m, w in words_of_length(n): + pre[n][m].append(w) + for n in range(5, max_len + 1): + lp, lq = (2, 3) if n == 5 else (3, 3) + for _, q in words_of_length(lq): + # M(q) = E_qk ... E_q1, so M(q)^-1 T = E_q1^-1 ... E_qk^-1 T: apply inverses from the last gate. + inv = T + for (i, j, s) in reversed(q): + inv = act(inv, (i, j, -s)) + for p in pre[lp].get(inv, ()): + found.append(p + q) + visited += 12 ** n + return tuple(found), visited + + +# ---------------------------------------------------------------- binary frames +@lru_cache(None) +def span(basis): + vals = {0} + for v in basis: + vals |= {x ^ v for x in vals} + return frozenset(vals) + + +def dim(sp): + return len(sp).bit_length() - 1 + + +@lru_cache(None) +def ssum(a, b): + basis = [] + for v in list(a) + list(b): + for bv in basis: + v = min(v, v ^ bv) + if v: + basis.append(v) + return span(tuple(sorted(basis))) + + +def relaxed(starts, ends, word): + if not all(a <= b for a, b in zip(starts, ends)): + return set() + cur, lower = list(starts), [] + for i, j, _ in word: + f = ssum(cur[i], cur[j]) + lower.append(f) + cur[i] = cur[j] = f + cur, upper = list(ends), [None] * len(word) + for k in range(len(word) - 1, -1, -1): + i, j, _ = word[k] + f = cur[i] & cur[j] + upper[k] = f + cur[i] = cur[j] = f + if not all(a <= b for a, b in zip(lower, upper)): + return set() + bounds = [(dim(a), dim(b)) for a, b in zip(lower, upper)] + s0, e0 = tuple(dim(x) for x in starts), tuple(dim(x) for x in ends) + out = set() + + def visit(k, state, hist): + if k == len(word): + h = list(hist) + for a, b in zip(state, e0): + if b > a: + h[b - a] += 1 + need(sum(r * n for r, n in enumerate(h)) == sum(e0) - sum(s0), "rank mass") + out.add(tuple(h)) + return + i, j, _ = word[k] + lo, hi = bounds[k] + for dd in range(max(lo, state[i], state[j]), min(hi, e0[i], e0[j]) + 1): + h, st = list(hist), list(state) + for r in (i, j): + if dd > st[r]: + h[dd - st[r]] += 1 + st[r] = dd + visit(k + 1, tuple(st), tuple(h)) + + visit(0, s0, (0,) * 10) + return out + + +# ---------------------------------------------------------------- certified rank prices r^(1-C) +def ln_bounds(y, terms=80): + y = Fr(y) + e = 0 + while y >= 2: + y /= 2 + e += 1 + + def core(v): + z = (v - 1) / (v + 1) + s, p = Fr(0), z + for k in range(terms): + s += 2 * p / (2 * k + 1) + p *= z * z + return s, s + 2 * p / ((2 * terms + 1) * (1 - z * z)) + + a, b = core(y) + c, d = core(Fr(2)) + return a + e * c, b + e * d + + +def prices(): + out = {1: (Fr(1), Fr(1))} + for r in range(2, 10): + lo, hi = ln_bounds(r) + xs = (C * lo, C * hi) + + def expm(x, terms=30): # exp(-x) for 0 < x < 1/100: alternating series bounds + t, s = Fr(1), Fr(1) + for n in range(1, terms): + t *= -x / n + s += t + return s - abs(t * x / terms), s + abs(t * x / terms) + + out[r] = (r * expm(xs[1])[0], r * expm(xs[0])[1]) + return out + + +PRICE = prices() + + +def gain_upper(old, new): + """Upper bound on cost(old) - cost(new) with certified prices; exact 0 for identical profiles.""" + if old == new: + return Fr(0) + tot = Fr(0) + for r in range(1, 10): + n = old[r] - new[r] + if n: + tot += n * (PRICE[r][1] if n > 0 else PRICE[r][0]) + return tot + + +# ---------------------------------------------------------------- windows from the canonical constructor +def construct(): + with tempfile.TemporaryDirectory(prefix="ext-ceiling-cache-") as cache: + code = ("import json,sys;sys.path.insert(0,sys.argv[1]);import native_joint;" + "c,p,b,o,n=native_joint.construct();print(json.dumps({'c':c,'p':p['forward']}))") + run = subprocess.run([sys.executable, "-I", "-B", "-X", "pycache_prefix=" + cache, "-c", code, + str(ROOT / "research/joint-helper-lattice")], capture_output=True, check=True, timeout=120) + data = json.loads(run.stdout) + return data["c"], data["p"] + + +def extract_windows(c, program): + word = [e for e in program if e[0] != "climb"] + frames = c["frames"] + state = list(c["start"]) + phase, out = None, [] + + def roles(e): + g = e[1] + return g[1:3] if g[0] in ("add", "copy") else g[1:2] + + for pos, e in enumerate(word): + if e[0] == "phase": + phase = e[1] + if phase in ("B", "cleanup_tail") and pos + 1 < len(word): + f = word[pos + 1] + if e[0] == f[0] == "scalar" and e[1][0] == f[1][0] == "add" and all(r[0] == "L" for r in roles(e) + roles(f)): + a, x, b, y = e[1][1][1], e[1][2][1], f[1][1][1], f[1][2][1] + ca, cb = Fr(*e[1][3:]), Fr(*f[1][3:]) + if x == y and len({a, b, x}) == 3 and ca in (-1, 1) and cb in (-1, 1): + owners = (a, b, x) + starts = [span(tuple(frames[state[r]])) for r in owners] + ends = [] + for r in owners: + t = c["final"][r] + for later in word[pos + 2:]: + if later[0] == "scalar" and ["L", r] in roles(later): + t = later[2] + break + if later[0] == "warp" and later[1] == ["L", r]: + t = later[3] + break + ends.append(span(tuple(frames[t]))) + actual = [span(tuple(frames[e[2]])), span(tuple(frames[f[2]]))] + out.append({"index": pos, "phase": phase, "roles": list(owners), "coefficients": [int(ca), int(cb)], + "starts": starts, "ends": ends, "frames": actual}) + if e[0] == "scalar": + for r in roles(e): + if r[0] == "L": + state[r[1]] = e[2] + elif e[0] == "warp": + state[e[1][1]] = e[4] + return out + + +def actual_profile(starts, ends, frames): + word = ((0, 2, 0), (1, 2, 0)) + st, h = list(starts), [0] * 10 + for (i, j, _), f in zip(word, frames): + for r in (i, j): + need(st[r] <= f, "actual frame monotone") + if dim(f) > dim(st[r]): + h[dim(f) - dim(st[r])] += 1 + st[r] = f + for a, b in zip(st, ends): + need(a <= b, "actual exit monotone") + if dim(b) > dim(a): + h[dim(b) - dim(a)] += 1 + return tuple(h) + + +def extract_nonadjacent(c, program): + """Pairs a += ca x ... b += cb x (unit ca, cb) in phases B/cleanup_tail separated by >= 1 operation, none of which + touches a, b or x (so the pair can be rewritten in place). Starts are taken at the first shear, exits after the second.""" + word = [e for e in program if e[0] != "climb"] + frames = c["frames"] + + def roles(e): + g = e[1] + return g[1:3] if g[0] in ("add", "copy") else g[1:2] + + def touches(e, fields): + if e[0] == "scalar": + return any(r[0] == "L" and r[1] in fields for r in roles(e)) + return e[0] == "warp" and e[1][0] == "L" and e[1][1] in fields + + state, phase, states = list(c["start"]), None, [] + for e in word: + if e[0] == "phase": + phase = e[1] + states.append((phase, list(state))) + if e[0] == "scalar": + for r in roles(e): + if r[0] == "L": + state[r[1]] = e[2] + elif e[0] == "warp": + state[e[1][1]] = e[4] + out = [] + for pos, e in enumerate(word): + ph, st = states[pos] + if ph not in ("B", "cleanup_tail") or e[0] != "scalar" or e[1][0] != "add" or not all(r[0] == "L" for r in roles(e)): + continue + a, x, ca = e[1][1][1], e[1][2][1], Fr(*e[1][3:]) + if ca not in (-1, 1): + continue + for q in range(pos + 1, len(word)): + f = word[q] + if f[0] == "phase": + break + if (f[0] == "scalar" and f[1][0] == "add" and all(r[0] == "L" for r in roles(f)) and f[1][2][1] == x + and f[1][1][1] not in (a, x) and Fr(*f[1][3:]) in (-1, 1) and q > pos + 1): + b = f[1][1][1] + if not any(touches(word[k], {a, b, x}) for k in range(pos + 1, q)): + owners = (a, b, x) + ends = [] + for r in owners: + t = c["final"][r] + for later in word[q + 1:]: + if later[0] == "scalar" and ["L", r] in roles(later): + t = later[2] + break + if later[0] == "warp" and later[1] == ["L", r]: + t = later[3] + break + ends.append(span(tuple(frames[t]))) + out.append({"index": pos, "partner": q, "coefficients": [int(ca), int(Fr(*f[1][3:]))], + "starts": [span(tuple(frames[st[r]])) for r in owners], "ends": ends, + "frames": [span(tuple(frames[e[2]])), span(tuple(frames[f[2]]))]}) + if touches(f, {a, x}): + break + return out + + +def subspaces_between(L, U, k): + """Every subspace F with L <= F <= U and dim F = k.""" + if not L <= U or not dim(L) <= k <= dim(U): + return [] + found, seen, stack = set(), {L}, [L] + while stack: + cur = stack.pop() + if dim(cur) == k: + found.add(cur) + continue + for vec in U: + if vec not in cur: + nxt = ssum(cur, span((vec,))) + if nxt not in seen: + seen.add(nxt) + stack.append(nxt) + return list(found) + + +def geometric_best_gain(starts, ends, old, word): + """Exact search over actual nested subspaces (joint incidence enforced) for one word; None if infeasible.""" + cur, upper = list(ends), [None] * len(word) + for k in range(len(word) - 1, -1, -1): + i, j, _ = word[k] + f = cur[i] & cur[j] + upper[k] = f + cur[i] = cur[j] = f + best = [None] + + def rec(k, state, hist): + if k == len(word): + h = list(hist) + for r in range(3): + if not state[r] <= ends[r]: + return + g = dim(ends[r]) - dim(state[r]) + if g: + h[g] += 1 + gain = gain_upper(old, tuple(h)) + if best[0] is None or gain > best[0]: + best[0] = gain + return + i, j, _ = word[k] + L, U = ssum(state[i], state[j]), upper[k] + for dd in range(dim(L), dim(U) + 1): + for F in subspaces_between(L, U, dd): + h, st = list(hist), list(state) + for r in (i, j): + g = dim(F) - dim(st[r]) + if g: + h[g] += 1 + st[r] = F + rec(k + 1, tuple(st), tuple(h)) + + rec(0, tuple(starts), (0,) * 10) + return best[0] + + +def single_contact_retiming(c, program): + """For every two-operand scalar contact in the whole word (all phases), compare the incumbent contact dimension with + every admissible dimension between the operands' current-frame sum and their next-contact (exit) intersection. + Any dimension in that range is realisable by a nested subspace, so this is exact for single-contact retiming.""" + word = [e for e in program if e[0] != "climb"] + frames = c["frames"] + + def roles(e): + g = e[1] + return g[1:3] if g[0] in ("add", "copy") else g[1:2] + + exit_after, cur = [None] * len(word), {} + for k in range(len(word) - 1, -1, -1): + e = word[k] + exit_after[k] = dict(cur) + if e[0] == "scalar": + for r in roles(e): + if r[0] == "L": + cur[r[1]] = e[2] + elif e[0] == "warp" and e[1][0] == "L": + cur[e[1][1]] = e[3] + + def cost(h): + return sum(n * PRICE[r][1] for r, n in enumerate(h) if n and r) + + state, phase, tally = list(c["start"]), None, Counter() + for k, e in enumerate(word): + if e[0] == "phase": + phase = e[1] + if e[0] == "scalar" and len(roles(e)) == 2 and all(r[0] == "L" for r in roles(e)): + i, j = roles(e)[0][1], roles(e)[1][1] + Si, Sj = span(tuple(frames[state[i]])), span(tuple(frames[state[j]])) + Ei = span(tuple(frames[exit_after[k].get(i, c["final"][i])])) + Ej = span(tuple(frames[exit_after[k].get(j, c["final"][j])])) + F0 = span(tuple(frames[e[2]])) + L, U = ssum(Si, Sj), Ei & Ej + need(L <= F0 <= U, "incumbent contact inside its bounds") + + def prof(dd): + h = [0] * 10 + for lo_, hi_ in ((dim(Si), dd), (dd, dim(Ei)), (dim(Sj), dd), (dd, dim(Ej))): + if hi_ > lo_: + h[hi_ - lo_] += 1 + return tuple(h) + + incumbent = cost(prof(dim(F0))) + need(all(cost(prof(dd)) >= incumbent for dd in range(dim(L), dim(U) + 1)), f"single-contact optimum at {k}") + tally[phase] += 1 + if e[0] == "scalar": + for r in roles(e): + if r[0] == "L": + state[r[1]] = e[2] + elif e[0] == "warp": + state[e[1][1]] = e[4] + return dict(tally) + + +def two_contact_retiming(c, program): + """Joint retiming of two consecutive contacts k1 < k2 of one field r (other operands p at k1, q at k2, p != q): + F1 >= S_r + S_p, F1 <= E_p, F1 <= F2, F2 >= F1 + S_q, F2 <= E_r & E_q. First a dimension relaxation; where it is + positive, an exact search over actual nested subspaces. Returns tallies; any exact gain fails the check.""" + word = [e for e in program if e[0] != "climb"] + frames = c["frames"] + + def roles(e): + g = e[1] + return g[1:3] if g[0] in ("add", "copy") else g[1:2] + + def fr(i): + return span(tuple(frames[i])) + + def is2(e): + return e[0] == "scalar" and len(roles(e)) == 2 and all(r[0] == "L" for r in roles(e)) + + state, before = list(c["start"]), [] + for e in word: + before.append(list(state)) + if e[0] == "scalar": + for r in roles(e): + if r[0] == "L": + state[r[1]] = e[2] + elif e[0] == "warp": + state[e[1][1]] = e[4] + nexttouch, cur = [None] * len(word), {} + for k in range(len(word) - 1, -1, -1): + e = word[k] + nexttouch[k] = dict(cur) + if e[0] == "scalar": + for r in roles(e): + if r[0] == "L": + cur[r[1]] = k + elif e[0] == "warp" and e[1][0] == "L": + cur[e[1][1]] = k + + def exit_frame(field, k): + t = nexttouch[k].get(field) + if t is None: + return fr(c["final"][field]) + return fr(word[t][2]) if word[t][0] == "scalar" else fr(word[t][3]) + + def cost(h): + return sum(n * PRICE[r][1] for r, n in enumerate(h) if n and r) + + tally = Counter() + for k1, e1 in enumerate(word): + if not is2(e1): + continue + f1 = [r[1] for r in roles(e1)] + for r in f1: + k2 = nexttouch[k1].get(r) + if k2 is None or not is2(word[k2]): + continue + p = [x for x in f1 if x != r][0] + q = [x[1] for x in roles(word[k2]) if x[1] != r][0] + if q == p: + continue + Sr, Sp, Sq = fr(before[k1][r]), fr(before[k1][p]), fr(before[k2][q]) + Ep, Er, Eq = exit_frame(p, k1), exit_frame(r, k2), exit_frame(q, k2) + + def prof(d1, d2): + h = [0] * 10 + for lo_, hi_ in ((dim(Sr), d1), (d1, d2), (d2, dim(Er)), (dim(Sp), d1), (d1, dim(Ep)), (dim(Sq), d2), (d2, dim(Eq))): + if hi_ > lo_: + h[hi_ - lo_] += 1 + return tuple(h) + + base = cost(prof(dim(fr(e1[2])), dim(fr(word[k2][2])))) + L1, U2 = ssum(Sr, Sp), Er & Eq + U1 = Ep & U2 + need(L1 <= U1, "incumbent bounds consistent") + relaxed_best = min(cost(prof(d1, d2)) for d1 in range(dim(L1), dim(U1) + 1) + for d2 in range(max(d1, dim(ssum(L1, Sq))), dim(U2) + 1)) + if relaxed_best >= base: + tally["zero_by_relaxation"] += 1 + continue + exact = None + for d1 in range(dim(L1), dim(U1) + 1): + for F1 in subspaces_between(L1, U1, d1): + L2 = ssum(F1, Sq) + for d2 in range(dim(L2), dim(U2) + 1): + if subspaces_between(L2, U2, d2): + cc = cost(prof(d1, d2)) + exact = cc if exact is None or cc < exact else exact + need(exact is None or exact >= base, f"two-contact retiming gain at {k1},{k2}") + tally["zero_by_exact_geometry"] += 1 + return dict(tally) + + +def matches_alphabet(ca, cb, coefs, max_len): + """All words of length <= max_len over shears y_i += c y_j (c in coefs) with the window endpoint (meet in middle).""" + gates = tuple((i, j, c) for i in range(3) for j in range(3) if i != j for c in coefs) + + def layer(n): + out = [(IDENTITY, ())] + for _ in range(n): + out = [(act(m, g), w + (g,)) for m, w in out for g in gates] + return out + + half = max_len // 2 + pre = defaultdict(list) + for n in range(half + 1): + for m, w in layer(n): + pre[n, m].append(w) + T, found = target(ca, cb), [] + for total in range(max_len + 1): + lp = min(half, total) + lq = total - lp + for _, q in layer(lq): + inv = T + for (i, j, c) in reversed(q): + inv = act(inv, (i, j, -c)) + found += [p + q for p in pre.get((lp, inv), ())] + return found +