Suppose that you have a weighted graph $G$ on $n$ vertices with integer weights, and let $W_{MST}(G)$ be the weight of the minimum spanning tree of $G$. This is the same algorithm only using plain-number mapping for simplicity (at the cost of having integer weights, but you can fix that too if you really want). The general intuition is to create an MST, and then discourage the algorithm from using these particular edges by adding a small $\varepsilon$ weight that would change the weight by a negligible amount (at most $(n-1)\cdot \varepsilon$, that is, the number of edges in a tree times $\varepsilon$).
- Let $k$ be the any power of $10$ strictly bigger than $n$, for example, $k = 10^{1+\lfloor\log_{10}n\rfloor}$.
- Construct graph $G'$ by multiplying all the weights by $k$.
- Calculate one particular tree $T = \operatorname{MST}(G')$.
- Observe that the weight of $W(T) = k \cdot W_{MST}(G)$.
- Form graph $G''$ from $G'$ by adding $1$ to the weight of every edge of $T$.
- Observe that $W_{MST}(G') \leq W_{MST}(G'') < W_{MST}(G') + n$, because the tree has at most $n-1$ edges, and to each we added at most $1$.
- In particular, due to $n-1 < k$, we have that $$\left\lfloor \frac{W_{MST}(G'')}{k} \right\rfloor = \frac{W_{MST}(G'')}{k} = W_{MST}(G).$$
- Observe that any MST of both $G'$ and $G''$ map directly to MSTs of $G$.
- Observe that if the MST in $G''$ and MST in $G'$ use the same edges (in particular they map to the same MST in $G$), then $$W_{MST}(G'') = W_{MST}(G') + n-1.$$
- As using an edge outside of $T$ is cheaper in $G''$, the above equality is satisfied if and only if there is only one MST in $G$.
- In other words, $W_{MST}(G'') \neq W_{MST}(G') + n-1$ implies that you have at least two MSTs in $G$ (one is $T$, and the other one is the MST from $G''$).
I hope this helps $\ddot\smile$
Yes, it is true in general. Note that even though MSTs are non-unique, they are not that non-unique: the only non-uniqueness comes from ties between edges of equal weight. If all edge weights are unique, the MST is also unique.
In particular, from your proof, it follows that if all edge weights are unique, the MST is also minimally connecting.
But suppose you have a general weighted graph $G'$, with possibly non-unique edge weights, and $T$ is one of its MSTs. We can break ties on the edges by adding some very small $\epsilon_i$ to the weight of the $i^{\text{th}}$ edge (taking every $\epsilon_i$ to be much smaller than any actual difference between the cost of any two spanning trees), creating a new graph $G'$ with a unique MST. We can make sure that ties are broken in favor of the edges in $T$ (giving them smaller $\epsilon_i$'s than any edges not in $T$), so that $T$ is also the unique MST of $G'$.
Since $T$ is the unique MST of $G'$, it will be the MST found by Kruskal's algorithm in $G'$, and therefore it is minimally connecting for $G'$ by your definition.
But if we now wipe away all the $\epsilon_i$'s, $T$ should also be minimally connecting for $G$, because $\epsilon_i$'s were much less significant than any actual difference between edge weights. (If some path in $T$ had used an edge of too-high cost in $G$, that edge would have been equally problematic in $G'$.)
Since $T$ was an arbitrary MST, we conclude that all MSTs are minimally connecting.
We can also observe than in a graph with unique edge weights, looking for a minimally connecting tree is forced to find the tree found by Kruskal's algorithm, because we only use an edge of weight $w$ once we've connected all we can by edges of weight $<w$. So in $G'$, MSTs and minimally connecting trees are equivalent, and therefore the same thing is true in $G$. (Start with a minimally connecting tree $T$ in $G$, break ties so that it's minimally connecting in $G'$, conclude that it's an MST in $G'$, and therefore that it's an MST in $G$.)
Best Answer
The weights of the edges need not be their lengths. In the TSP they are just costs - perhaps the salesman needs to take air fare into account.
Counterexample: suppose the cities are at the vertices of an equilateral triangle together with one city at the center. Then suppose the cost of traveling from the center to each of the three vertices is $0$ (or some small number if you like) while the cost of traveling along an edge is $1$. Then the MST is the graph consisting of the three spokes from the center.
The cheapest way for the salesman to visit all the cities is to go back and forth to the center. If she must travel in a cycle, use two edges of the triangle and two spokes. Neither of these is built from the spanning tree using your algorithm.