Je ne sais pas si votre intention est de permettre que les bords non orientés dans E et les arcs dans A soient parallèles ou non, mais cela n'a pas d'importance à la fin. Dans cette réponse, nous supposons que vous ne permettez pas aux arêtes et aux arcs d'être parallèles.
Considérons un cas particulier où pour chaque arc dans A , A contient également l'arc dans la direction opposée. Dans ce cas, nous pouvons ignorer l'orientation des arcs et les considérer comme non orientés. Nous appelons les bords en E bords noirs et les bords en A bords rouges .
Même sous ces deux restrictions, le problème est NP-complet par une réduction de Max-2SAT. Soit φ une formule 2CNF dans n variables avec m clauses. Construisez un graphe G avec 3 n sommets comme suit. G a 2 n bords noirs: et pour i = 1,…, n . G a bords rouges. Tout d'abord, connectez et pourx1,…,xnv1,…,vn,x1,…,xn,x¯1,…,x¯n(vi,xi)(vi,x¯i)5(n2)−mvivji ≠ j par un bord rouge. Ensuite, pour chaque variable distincte et , considérons quatre paires de littéraux . Reliez les littéraux et par un bord rouge si et seulement si la clause n'apparaît pas dans φ .xixj(l,l′)=(xi,xj),(xi,x¯j),(x¯i,xj),(x¯i,x¯j)ll′(l¯∨l¯′)
Il est clair que nous n'avons qu'à considérer les correspondances maximales dans les bords noirs afin de minimiser le nombre de bords rouges après la contraction. Il est également clair que toute correspondance maximale M dans les bords noirs est constituée de n bords reliant à pour i = 1,…, n . Identifiez cette correspondance maximale M avec l'affectation de vérité . Il est facile de vérifier qu’après avoir contracté M et supprimé les bords parallèles, le graphique a exactement bords rouges, où kvili∈{xi,x¯i}{l1,…,ln}4(n2)−kest le nombre de clauses satisfaites par cette affectation de vérité. Par conséquent, minimiser le nombre de bords rouges après avoir contracté une correspondance en bords noirs équivaut à maximiser le nombre de clauses satisfaites.