Ordenamiento topológico

Definición

Dado un grafo dirigido con vértices, un ordenamiento topológico es una permutación lineal de sus nodos:

tal que para toda arista dirigida , el nodo origen aparece estrictamente antes que el nodo destino en la secuencia; es decir:

Si se dibujan todos los vértices en una línea horizontal siguiendo este orden, todas las aristas apuntan hacia adelante (de izquierda a derecha), sin aristas de retroceso.

Teorema fundamental de equivalencia

Teorema de Existencia

Un grafo dirigido tiene un ordenamiento topológico si y solo si es una gráfica dirigida acíclica (DAG).

Demostración:

  1. (Si tiene orden topológico, entonces es DAG):

    • Demostración por contradicción: Supongamos que tiene un orden topológico y que al mismo tiempo contiene un ciclo dirigido .
    • Sea el nodo del ciclo que tiene el índice mínimo en el orden topológico.
    • Sea el nodo inmediatamente anterior a en el ciclo . Por tanto, .
    • Como tenía el índice mínimo en , se cumple que .
    • Pero como y la secuencia es un orden topológico, por definición debe cumplirse , lo cual es una contradicción.
    • Por tanto, no puede contener ciclos dirigidos.
  2. (Si es DAG, entonces tiene orden topológico):

    • Demostración constructiva por inducción en :
      • Caso base (): Un único nodo es trivialmente un orden topológico.
      • Paso inductivo (): Por el lema de la fuente, tiene al menos un nodo con .
      • Al eliminar de , la subgráfica sigue siendo un DAG (eliminar nodos no crea ciclos) con nodos.
      • Por hipótesis de inducción, tiene un orden topológico.
      • Colocamos a en la primera posición y a continuación la secuencia de . Como no tenía aristas de entrada, ninguna arista de apunta hacia atrás a , produciendo un orden topológico válido para todo .
flowchart LR
  v1((v1)) --> v2((v2))
  v1 --> v3((v3))
  v2 --> v4((v4))
  v3 --> v4
  v4 --> v5((v5))

Orden lineal: (todas las dependencias van de izquierda a derecha).

Propiedades adicionales

  • Un DAG puede tener múltiples órdenes topológicos válidos distintos (por ejemplo, cualquier orden entre tareas independientes es admisible).
  • Un orden topológico es único si y solo si el DAG contiene un camino hamiltoniano dirigido (un camino que visita todos los vértices).

Relaciones

Procedencia