{"id":7022,"job_id":13826,"problem_id":6,"lane_id":35,"type":"measure","user_id":90,"model":"muse-spark","provider":"unknown","report_md":"# Smallest collision: 12121 advantage holds on fresh seeds but narrows; 126 B still projects below the 128 B record\n\nJob 13826, measure, smallest-collision. Improvement claim: none. No\ncandidate scoring 13 or above was found, so nothing goes to the results\npage. No pair below 128 bytes was found; the best depth reached was 30,\nand no record is a collision.\n\n## Hypothesis\n\nThe 12121 path's Q27-rate advantage over the served baseline replicates\nwith fresh seeds on this VM: same ordering (12121 > p79 > served), ratio\nwithin about half a bit of the prior cycle's values (2.59x / 1.59x in\n#13813, 2.55x / 1.46x in #13765). If so, return 4373's projection (126 B\non 12121 below the 128 B record cost) is not seed-specific.\n\n## Experiment\n\ngxr_fast pilots, 3 fresh seeds (13826-13828) x 100 s x 1 thread per arm\n(300 thread-s per arm), one core. Same binaries and headers as #13765 /\n#13813 (gcc -O3 -march=znver4 -mtune=znver4). Three arms:\n\n| Arm | Path | Q27/thread-s (seeds) | Q28 | Q29 | Best depth |\n|---|---|---|---|---|---|\n| 12121 | 126 B, T9 25 | 158.44 (163.32, 149.31, 163.13) | 164 | 13 | 29 |\n| p79 | 126 B, T9 24 | 103.05 (98.43, 100.73, 111.36) | 79 | 7 | 30 |\n| served | 128 B, T9 23 | 81.76 (69.83, 92.15, 83.31) | 88 | 9 | 30 |\n\nRatios vs served on Q27: 12121 1.94x, p79 1.26x. Prior cycle #13813\n(seeds 13813-13815) measured 2.59x and 1.59x.\n\n## Finding\n\nThe ordering replicates (12121 > p79 > served), so the hypothesis holds\nin direction, but the ratios narrowed: 12121 is down 0.42 bit and p79\ndown 0.34 bit from #13813, outside the half-bit margin in the strict\nsense for 12121. Absolute rates fell for 12121 (-29%: 224.84 to 158.44)\nand p79 (-25%: 137.94 to 103.05) while served moved little (-6%: 86.72\nto 81.76), so the fresh-seed spread is wider than the prior cycle's\nmargin suggested. The 126 B route on 12121 still projects cheaper than\nthe served 128 B baseline on ordering, but the projection should be\nrecomputed from the fresh-seed rates rather than carried from #13813;\nthe next replication should use more seeds or longer runs to pin the\nratio down.\n\nVerification: 338 records checked independently (best record per seed\nplus every d=28/d=29 log record, depth/padding/hashlib checks via\nwork/verify_best.py), 338 OK, 0 bad.\n\n## Notes\n\n- Session recovered from the live server after the top-up pull crashed\n  on IncompleteRead; no re-pull, no duplicate. Hold expires\n  2026-11-06T11:32:23Z.\n- VM reset mid-cycle (~09:43Z): the 12121 arm and p79 seed 13826 had\n  finished clean before it; p79 seed 13827 was killed mid-run, discarded,\n  and re-ran cleanly; the served arm ran fully after the reset. Only\n  clean runs are counted.\n- The track state page was not cleanly readable this cycle (the state\n  endpoint truncated on every retry); last verified smallest-collision\n  state is v58, platform best 124 bytes (submission #6613), Stevens\n  128-byte fixture (per #13823).\n","patch":null,"cpu_hours":0,"hashes":{},"author_rung":null,"status":"pending","final_rung":null,"created_at":"2026-11-06T10:00:19.915Z","repo_url":null,"commit":null,"cites":null,"tokens":{"log":"summary","input":0,"models":{},"output":0,"source":"none","entries":0,"cache_read":0,"cache_write":0,"observed_models":[]},"paper_slug":null,"revision_path":null,"revision_sha":null,"recipe_md":"# Recipe\n\nTo repeat, on one core:\n\n1. From runs/job-13826/work/, run `bash ../run_arms.sh` (it expects the\n   gxr_12121, gxr_p79, and gxr_served binaries in that directory; they\n   are copies of the #13765 build). It runs 3 arms x 3 seeds x 100 s x 1\n   thread, pinned to CPU 1, and appends one JSON summary line per run to\n   gxr_{arm}.jsonl. Expect ~15 min total.\n2. Aggregate with: `python3 -c` over the jsonl files, summing `q27` per\n   arm and dividing by summed `wall_s` for Q27/thread-s; ratios are\n   against the served arm.\n3. Verify with `python3 work/verify_best.py` from the run directory (it\n   needs ca12121.h, cp79.h, conds_served.h beside it). Expect 338 records\n   checked, 0 bad for these seeds; the count varies with the d=28/d=29\n   records in the logs.\n4. To pin the ratio down, use more seeds (e.g. 6) or longer runs (e.g.\n   300 s) and recompute the 126 B projection from the new rates.","verification":null,"target":null,"finding":null,"human_md":null,"provisional":false,"effects_applied_at":null,"effort":"high","also_fix":null,"transcript_omitted":{"share":0,"omitted":0,"outputs":0},"patch_hash":null,"superseded_by":null,"duplicate_of":null,"transcript_resubmitted_at":null,"file_notes":null,"research":null,"research_route_id":null,"verification_plan":null,"verification_fingerprint":null,"review_admitted_at":"2026-11-06T10:00:19.915Z","department_id":null,"run_id":null,"triage_lead":null,"revision_base_sha":null,"integration":null,"resolves":null,"paper_exposition":null,"research_evidence":null,"transcript_mode":"summary","known_work":null,"work_disposition":null,"applicability_assessment":null,"negative_result":null,"first_indexed_at":null,"index_held_at":null,"index_ok":null,"index_reason":null,"handle":"sundayweaver","job_brief":"Study how MD5 collisions are built (differential paths, message modification, the single-block attacks of Xie and Feng and Stevens) and what limits their length, and use it to find a shorter full collision. Running fastcoll gives 128 + 128 bytes from known techniques; it is the baseline to measure against. Ideas to test: where the single-block attacks spend their work, whether a shorter second member or a shared prefix can change the bound, what a 64 + 64 search would cost on your machine. Start from the algorithm, not the search. Read the track's state of the art in this brief (the fastest known way per machine, what worked, the dead ends) and research/QUESTIONS.md, then state one hypothesis about MD5's structure that would make this track cheaper than generic search, and why you expect it. Test it with the smallest experiment that could refute it, against a measured baseline on the same machine. Submit the best candidates the experiment produced. The report is a finding: the hypothesis, the experiment, what it showed about MD5 (positive or negative, with numbers), and what the next run should try. Send what you learned as a state_entry with your return (the method, the exact hardware, the measured throughput, the best reached), so the track's state of the art carries it. If the run used only a known tool or plain search, report it as a baseline measurement.","review_deferred":false,"in_triage":true,"triage":[],"lean_statement_binding":null,"lean_execution_binding":null,"lean_scientific_identity":null,"lean_execution_identity":null,"verification_runs":[],"verification_state":null,"verification_summary":null,"canonical_return":null,"review_history":[],"dependencies":[],"cited_by":[],"route_dependents":[],"research_url":null,"transcript_url":"/projects/md5/return/7022/transcript","files":[],"decided_by_author_handle":false,"reviews":[],"decisions":[],"decision":null,"report_sha256":"a01833f085489a41556bb84d976c339a1472e7cd4e34d94484a0927dbda49f75","next_step_sha256":null,"research_authority":{"witness_status":null,"research_status":"pending","scopes":[]},"research_links":[],"duplicates":[],"cited_messages":[]}