Sea un gráfico conectado no direccionado (finito simple) con al menos dos vértices. Deje ST significa árbol de expansión y MST significa árbol de expansión mínima. Permítanme definir primero algunos términos menos comunes.G
- Una arista es el ciclo más pesado único si es la arista más pesada única en algún ciclo.
- Un borde no es más pesado en un ciclo si nunca es un borde más pesado en ningún ciclo.
- Un borde es de corte único más claro si es el borde más claro único para cruzar algún corte.
- Un borde no es más claro si nunca es un borde más claro para cruzar un corte.
- Dos ST son adyacentes si cada ST tiene exactamente un borde que no está en el otro ST.
- Un MST es un MST aislado si no es adyacente a otro MST (cuando ambos MST se consideran ST).
¿Cuándo hay más de un árbol de expansión mínimo?
Para responder la pregunta de OP, aquí hay cinco caracterizaciones de que tiene más de un MSTG .
- Hay dos MST adyacentes.
- No hay MST aislado.
- Hay un ST que es tan ligero o más ligero que todos los ST adyacentes y que es tan ligero como un ST adyacente.
- Hay un borde que no es ni el más pesado del ciclo ni el más pesado.
- Hay un borde que no es ni el más exclusivo de corte ni el más ligero.
La novedad de esta respuesta son principalmente las dos últimas caracterizaciones. La segunda de la última caracterización puede considerarse como el próximo paso del enfoque del PO . Las primeras tres caracterizaciones juntas pueden considerarse como una versión ligeramente mejorada de la respuesta de dtt .
Es más fácil pensar en el término opuesto, si tiene un MST único. La siguiente es la versión opuesta y equivalente de las caracterizaciones anteriores.G
¿Cuándo es único el árbol de expansión mínimo?
Teorema: las siguientes propiedades de son equivalentes.G
- Singularidad de MST : hay un MST único.
- No hay MST adyacentes : no hay MST adyacentes.
- Un MST aislado : hay un MST aislado.
- Un ST mínimo local : hay un ST que es más ligero que todos los ST adyacentes.
- Borde de ciclo extremo : cada borde es más pesado de ciclo único o no más pesado de ciclo.
- Borde de corte extremo : cada borde es de corte único más ligero o sin corte más ligero
Aquí viene mi prueba.
"Uniqueness of MST" => "Sin MST adyacente": obvio.
"No hay MST adyacentes" => "Un MST aislado": obvio.
"One isolated MST" => "Un mínimo local ST": un MST aislado es más ligero que todos los ST adyacentes.
"Un mínimo local ST" => "Borde de ciclo extremo": Sea un ST que sea más ligero que todos los ST adyacentes.m
- Cada borde en debe ser no más pesado. Aquí está la prueba. Sea l una ventaja en m . Si l no pertenece a cualquier ciclo, hemos terminado. Ahora supongamos l pertenece a un ciclo c . Si eliminamos l de m , m se dividirá en dos árboles, que se llamarán m 1 y m 2 . Como un ciclo que conecta m 1 y m 2 con l , c debe tener otro borde que conecte m 1 y mmlmllclmmm1m2m1m2lcm1 . Nombra ese borde l ' . Deje que m ' sea la unión de m 1 , m 2 y l ' , que debe ser un árbol de expansión de G también. Desde m y m ' son adyacentes, m es más ligero que m ' . Eso significa que l es más ligero que l ′ . Entonces yo no es más pesado.m2l′m′m1m2l′Gmm′mm′ll′l
- Cada borde que no esté en debe ser el único de ciclo más pesado. Aquí está la prueba. Sea h ' un borde que no esté en m . Si sumamos h ′ a m , crearemos un ciclo c . Sea h una ventaja en c que no sea h ' . Considere el árbol de expansión m ' hecho de m con h reemplazado por h ' . Desde m y m ' son adyacentes, m es más ligero que m ' . Eso significa,mh′mh′mchch′m′mhh′mm′mm′hh′h′ch′
"Mínimo local ST" => "Borde de corte extremo": la prueba se deja como ejercicio.
meem must contain it. If edge e is unique-cycle-heaviest, m cannot contain it. (These two propositions can be proved by the standard reasoning about MST using cycle and edge exchange, similarly to what have been done just above). Hence m is exactly the set of non-cycle-heaviest edges.
"Extreme cut edge" => "Uniqueness of MST": Proof is left as an exercise.
The above chains of implications proves the theorem.
Once again, the novelty of this answers is mostly the "extreme cycle edge" property and the "extreme cut edge" property, which uses the concepts, non-cycle-heaviest and non-cut-lightest. I have not seen those concepts elsewhere, although they are quite natural.
Here are two related interesting observations.
- For any edge e, e is non-cycle-heaviest ⇔ e is unique-cut-lightest ⇔ e is in every MST
- For any edge e, e is unique-cycle-heaviest ⇔ e is non-cut-lightest ⇔ e is not in any MST
Two sufficient but not necessary conditions for unique MST
the uniqueness of the heaviest edge in every cycle implies the "extreme cycle edge" property. So it is a sufficient condition. A counterexample to its being necessary condition is the graph with weights ab→1,bc→1,cd→1,da→2,ac→2.
the uniqueness of the lightest edge in every cut-set implies the "extreme cut edge" property. So it is a sufficient. A counterexample to its being necessary condition is a triangle with weights 1,1,2.