ash_model.paths.shortest_s_path

ash_model.paths.shortest_s_path(h, s, hyperedge_a, hyperedge_b=None, start=None, end=None, cutoff=None)[source]

Return all shortest simple, s-overlap-valid paths between two hyperedges.

If hyperedge_b is None, this returns the shortest paths from A to all others.

Parameters:
  • h (ASH) – ASH hypergraph instance.

  • s (int) – Minimum overlap size.

  • hyperedge_a (str) – Starting hyperedge ID.

  • hyperedge_b (str | None) – Ending hyperedge ID (optional).

  • start (int | None) – Start time bound (inclusive).

  • end (int | None) – End time bound (inclusive).

  • cutoff (int | None) – Maximum path length.

Returns:

List of shortest paths, each as list of IDs.

Return type:

List[List[str]]