La question suivante est liée à l'optimalité de l' algorithme de programmation dynamique Bellman-Ford - plus court (voir cet article pour une connexion). En outre, une réponse positive impliquerait que la taille minimale d'un programme de branchement non déterministe monotone pour le problème STCONN est .
Soit un DAG (graphe acyclique dirigé) avec un nœud source et un nœud cible . A - coupe est un ensemble d'arêtes, dont la suppression détruit toutes - chemins de longueur ; nous supposons qu'il existe des chemins dans . Notez que les chemins - courts n'ont pas besoin d' être détruits.
Question: Est - ce que doit avoir au moins (environ) coupes disjointes ?
S'il n'y a pas de - chemins plus courts que , la réponse est OUI, car nous avons le fait min-max connu suivant (un double du théorème de Menger ) attribué à Robacker . Une coupe - est une coupe pour (détruit tous chemins - ).t k k = 1 s t
Réalité: dans tout graphique dirigé, le nombre maximal de coupes - disjointes sur les bords est égal à la longueur minimale d'un chemin - . t s t
Notez que cela vaut même si le graphique n'est pas acyclique.
Preuve: Trivialement, le minimum est au moins le maximum, car chaque chemin - coupe chaque coupe - dans un bord. Pour voir l'égalité, soit la longueur du chemin le plus court de à . Soit , pour , et soit l'ensemble des arêtes quittant . Il est clair que les ensembles sont disjoints, car les ensembles sont. Il reste donc à montrer que chaque est un -t s t d ( u ) s u U r = { u : d ( u ) = r } r = 1 , … , d ( t ) E r U r E r U r E r s t s t p = ( u 1 , u 2 , … , u m )Couper. Pour le montrer, prenez un chemin - arbitraire avec et . Puisque , la séquence des distances doit atteindre la valeur en commençant à et en augmentant la valeur d'au plus à chaque étape. Si une valeur est diminuée, alors nous devons atteindre la valeur cette dernière. Donc, il doit y avoir un où un saut de à se produit, signifiant le bordu m = t d ( u i + 1 ) ≤ d ( u i ) + 1 d ( u 1 ) , … , d ( u m ) d ( u m ) = d ( t ) d ( u 1 ) = d ( s ) = 0 1 d (d ( u i ) j d ( u j ) = r d ( u j + 1 ) = r + 1 ( u j , u j + 1 ) E r appartient à , comme souhaité. QED
Mais que se passe-t-il s'il existe également des chemins plus courts (que )? Un indice / référence?
JT Robacker, Min-Max Theorems on Shortest Chains and Disjoint Cuts of a Network, Research Memorandum RM-1660, The RAND Corporation, Santa Monica, Californie, [12 janvier] 1956.
EDIT (un jour plus tard): Via une courte et très belle argumentation, David Eppstein répondu à la question ci - dessus d' origine négative : la complète DAG (un tournoi transitif ) ne peut pas avoir plus de quatre disjoints -cuts! En fait, il prouve le fait structurel intéressant suivant , pour about . Une coupe est pure si elle ne contient pas d'arêtes incidentes à ou à . k k √ st
Chaque pure dans contient un chemin de longueur . T n k
Cela implique en particulier que tous les deux coupures pures doivent se croiser! Mais il y a peut-être encore beaucoup de coupes pures qui ne se chevauchent pas «trop». D'où une question détendue (les conséquences pour STCONN seraient les mêmes ):k
Question 2: Si chaque coupe pure a des bords , le graphique doit-il avoir environ des bords ? ≥ M Ω ( k ⋅ M )
Le lien avec la complexité de STCONN vient du résultat d'Erdős et Gallai qu'il faut supprimer tous les bords ( sauf de (non dirigé) afin de détruire tous les chemins de longueur . K m k
EDIT 2: J'ai maintenant posé la question 2 à mathoverflow .