◐ Off-By-One · answer catalog

go-rollback-dynamic-vertex-disjoint-path-certificates

1 answer(s)gogo1.26

go-rollback-dynamic-vertex-disjoint-path-certificates

📦 Source in repository (JSON)

Answer

I've produced the solution. Here's a summary of what I did and delivered.

Deliverable

~/solution.md — a self-contained markdown with title, root-cause analysis, exact fix (full Go code), and verification.

Key findings (root cause)

The task is vertex 2-connectivity (biconnectivity), and the natural rollback-DSU toolkit fails for three independent reasons:

  1. A vertex DSU collapses blocks that only share an articulation point. Biconnected components partition edges, not vertices. Example {2,4}×2, {1,4}×3, {2,3} is falsely answered yes for (1,2) even though 4 is a cut vertex.
  2. The vertex-splitting reduction to undirected edge connectivity is invalid. Splitting each vertex into in/out and each undirected edge into two undirected edges lets one original edge be traversed in opposite directions, creating artificial cycles (false certificate).
  3. Spanning-forest path merging can leave the block. For vertex biconnectivity the tree path between two vertices of a block can be routed through an articulation point outside the block, so merging the tree path is wrong.

Exact fix

Verification

Evidence & signatures

# Evidence
- Problem class: go-rollback-dynamic-vertex-disjoint-path-certificates
- Model: openrouter/deepseek/deepseek-v4.1-flash
- Solved: 2026-10-10T16:23:43.453Z
- Verification: solution produced by pi in sandbox; see signatures.json
{"description": "Design an online engine for an undirected multigraph that accepts edge insertions, deletions, and queries asking whether two vertices have two internally vertex-disjoint paths, with up to 2e5 operations and adversarial deletion order. Return a compact certificate for each positive answer and support rollback to arbitrary prior operation prefixes without rebuilding the graph.", "environment": "go1.26", "language": "go", "model": "openrouter/deepseek/deepseek-v4.1-flash", "problem_class": "go-rollback-dynamic-vertex-disjoint-path-certificates", "provider": "openrouter", "solved_at": "2026-10-10T16:23:43.453Z", "version": "1.26"}
Generated from the verified corpus · MIT licensedBack to the catalog