Documentation

Complexity.Algorithms.WordRAM.Dijkstra.LogLinear

Dijkstra's Algorithm with a Binary Heap in O((m + 1) (⌊log₂ n⌋ + 1)) Time #

This file instantiates the black-box outer Dijkstra algorithm (Cslib.Algorithms.WordRAM.Dijkstra.dijkstraCode_exec and Cslib.Algorithms.WordRAM.Dijkstra.dijkstra_of_pq_spec) with the standalone word-RAM binary min-heap package (Cslib.Algorithms.WordRAM.PriorityQueue.BinaryHeap.pkg) to obtain Cslib.Algorithms.WordRAM.Dijkstra.LogLinearSpec and Cslib.Algorithms.WordRAM.Dijkstra.LogLinearStatement with zero priority-queue code coupled to Dijkstra's algorithm.

Main definitions #

Main results #

References #

@[reducible, inline]

Structured exact-basis Dijkstra program instantiated with the standalone binary min-heap.

Instances For

    Correctness and running time of structured Dijkstra with a binary heap.

    Dijkstra's algorithm with a binary heap in O((m + 1) (⌊log₂ n⌋ + 1)) time. The compiled program meets Cslib.Algorithms.WordRAM.Dijkstra.LogLinearSpec with K = 230.

    Log-linear main theorem. Some word-RAM program over the exact basis computes all shortest-path distances from the source of a weighted directed graph with n vertices and m edges, given by adjacency lists, within O((m + 1) (⌊log₂ n⌋ + 1)) instructions.