Пусть G = (V, E)
будет графом.
Определение
где w(<u,v>)
– это вес <u,v>
.
Лемма 1
Пусть G
— граф, v
— вершина G
, а e
— ребро G
, инцидентное v
. Если w(e) = C(v)
, то e
принадлежит некоторому MST из G
.
Это правда, что если значение C(v)
изменится, когда стоимость e
уменьшится на 10
, то стоимость MST улучшится, если стоимость e
уменьшится на 10
по лемме 1.
Первая половина нормально. Давайте посмотрим на вторую часть.
Если нет, это означает, что prim найдет тот же MST, и стоимость останется прежней.
Общее объяснение
Вышеупомянутая цитата ложно подразумевает, что обратная лемма 1 верна (e
принадлежит некоторой MST G
, затем w(e) = C(v)
), поскольку утверждается, что если мы уменьшим стоимость e
на 10
и w(e) != C(v)
тогда стоимость MST сохраняется, что означает, что e
не принадлежит ни одному MST из G
.
Короткое объяснение: контрпример
Давайте G = ({1, 2, 3, 4}, {<1, 2>, <1, 3>, <2, 4>, <3, 4>, <1, 4>})
с весовой функцией w(<1, 2>) = 1, w(<1, 3>) = 3, w(<2, 4>) = 3, w(<3, 4>) = 1, w(<1, 4>) = 12
и e = <1, 4>
.
После уменьшения стоимости e
мы знаем, что C(1) = C(4) = 1 != w(e)
. Предлагаемый алгоритм утверждает, что: prim найдет тот же MST, а стоимость останется прежней.
Проверим, уменьшается ли стоимость MST G при уменьшении стоимости e
на 10
:
стоимость MST до уменьшения стоимости e
на 10
: 5
стоимость MST после уменьшения стоимости e
на 10
: 4
Поскольку происходит снижение стоимости MST, то такое утверждение (приведенное) является ложным и предложенный алгоритм не работает.
Примечание. Алгоритм неверен независимо от того, какой алгоритм MST используется, поскольку контрдоказательство опирается только на свойства MST.
person
Eloy Pérez Torres
schedule
07.10.2020