Le problème que vous avez décrit est l'accessibilité DAG entièrement dynamique (également appelée fermeture transitive entièrement dynamique sur les DAG). On l'appelle entièrement dynamique car les gens étudient également les versions où seules les suppressions sont possibles (alors cela s'appelle l'accessibilité décrémentielle), et où seules les insertions sont possibles (appelées l'accessibilité incrémentielle).
Il existe quelques compromis entre l'heure de mise à jour et l'heure de la requête. Soit le nombre d'arêtes et n le nombre de sommets. Pour les DAG, Demetrescu et Italiano (FOCS'00) ont donné une structure de données randomisée qui prend en charge les mises à jour (insertions ou suppressions de bords) en O ( n 1,58 ) et les requêtes d'accessibilité en O ( n 0,58 ) (les insertions / suppressions de nœuds sont également prises en charge , en temps O (1)); ce résultat a été étendu par Sankowski (FOCS'04) pour travailler sur des graphiques orientés généraux. Aussi pour les DAG, Roditty (SODA'03) a montré que vous pouvez maintenir la matrice de fermeture transitive dans le temps total O ( m n + I · n 2 + D ), oùmnn1,58n0,58m n + I⋅ n2+ D est le nombre d'insertions, D le nombre de suppressions et bien sûr le temps de requête est O ( 1 ).jeré1
Pour les graphiques orientés généraux, les heures suivantes (mise à jour, requête) sont connues: (O ( ), O (1)) (Demetrescu et Italiano FOCS'00 (amorti), Sankowski FOCS'04 (pire cas)), ( O ( m √n2 ),O( √m n--√ )) (Roditty, Zwick FOCS'02), (O (m+nlogn), O (n)) (Roditty, Zwick STOC'04), (O (n 1,58 ), O (n 0,58 )) et (O (n 1.495 ), O (n 1.495 )) par Sankowski (FOCS'04).O ( n--√journal m + nnnn1,58n0,58n1,495n1,495
L'obtention d'un temps de requête polylogarithmique, sans augmenter trop le temps de mise à jour est un problème majeur, même pour les DAG.