Stuck on Kruskal's Algorithm Proof Using Induction The 2019 Stack Overflow Developer Survey Results Are In Announcing the arrival of Valued Associate #679: Cesar Manara Planned maintenance scheduled April 17/18, 2019 at 00:00UTC (8:00pm US/Eastern)How do I write this proof more formally?questions about this proof of Prim/Kruskal Algorithmreverse greedy algorithmWhat's an efficient algorithm for walking to a minimum spanning tree?Modifying Kruskal's algorithm for Maximum Spanning TreeThe output of Kruskal's algorithm is a spanning treeThe output spanning tree of Kruskal's algorithm is a minimum spanning treeUse kruskal's algorithm to show that if G is a connected graph, then any subgraph that contains no circuits is part of some spanning tree for G.Proof on minimal spanning treeHow to understand the tree with shortest path(Dijkstra algorithm)?

How are presidential pardons supposed to be used?

how can a perfect fourth interval be considered either consonant or dissonant?

What do you call a plan that's an alternative plan in case your initial plan fails?

University's motivation for having tenure-track positions

Can smartphones with the same camera sensor have different image quality?

Why use ultrasound for medical imaging?

system call string length limit

Did the new image of black hole confirm the general theory of relativity?

Why does the Event Horizon Telescope (EHT) not include telescopes from Africa, Asia or Australia?

Is there a writing software that you can sort scenes like slides in PowerPoint?

How does ice melt when immersed in water

Grover's algorithm - DES circuit as oracle?

Typeface like Times New Roman but with "tied" percent sign

A pet rabbit called Belle

Can a 1st-level character have an ability score above 18?

Is it ethical to upload a automatically generated paper to a non peer-reviewed site as part of a larger research?

Can the DM override racial traits?

Mortgage adviser recommends a longer term than necessary combined with overpayments

Sort list of array linked objects by keys and values

Is this wall load bearing? Blueprints and photos attached

Change bounding box of math glyphs in LuaTeX

How is simplicity better than precision and clarity in prose?

Is it ok to offer lower paid work as a trial period before negotiating for a full-time job?

Why can't wing-mounted spoilers be used to steepen approaches?



Stuck on Kruskal's Algorithm Proof Using Induction



The 2019 Stack Overflow Developer Survey Results Are In
Announcing the arrival of Valued Associate #679: Cesar Manara
Planned maintenance scheduled April 17/18, 2019 at 00:00UTC (8:00pm US/Eastern)How do I write this proof more formally?questions about this proof of Prim/Kruskal Algorithmreverse greedy algorithmWhat's an efficient algorithm for walking to a minimum spanning tree?Modifying Kruskal's algorithm for Maximum Spanning TreeThe output of Kruskal's algorithm is a spanning treeThe output spanning tree of Kruskal's algorithm is a minimum spanning treeUse kruskal's algorithm to show that if G is a connected graph, then any subgraph that contains no circuits is part of some spanning tree for G.Proof on minimal spanning treeHow to understand the tree with shortest path(Dijkstra algorithm)?










0












$begingroup$


So I want to understand how induction proves that Kruskal's Algorithm is correct in terms of giving us a minimum spanning tree. I understand why the algorithm gives us a spanning tree, but I don't understand how it gives us a minimum.



So I was reading my lecture notes from class, and it tries to explain it using induction on the algorithm stage number. So the proof is as follows:



Let F$_i$ be the set of edges chosen at stage i of the algorithm. Let P$_i$ be the proposition: "There is some minimum spanning tree that contains F$_i$." Clearly any minimum spanning tree contains F$_0$ which is just the empty set of edges, so P$_0$ is true. Now suppose that P$_i$ is true. Then there is a minimum spanning tree T that contains F$_i$. Let e be the edge considered next by the Algorithm. If e is in T, then F$_i$ $cup$ e $in$ T, so P$_i+1$ is true. Now assume that e is not in T. Then F$_i$ $cup$ e contains a cycle with e in it.



So P$_i+1$ cannot be true in this case since it's impossible to form a new tree that contains this cycle, so I don't see how induction holds. Can some please explain this to me so that it makes sense?



Thank you in advance.










share|cite|improve this question









$endgroup$











  • $begingroup$
    You have to prove that there is a minimum spanning tree containing the edges chosen so far. You haven't chosen a cycle yet.
    $endgroup$
    – saulspatz
    Mar 31 at 14:26















0












$begingroup$


So I want to understand how induction proves that Kruskal's Algorithm is correct in terms of giving us a minimum spanning tree. I understand why the algorithm gives us a spanning tree, but I don't understand how it gives us a minimum.



So I was reading my lecture notes from class, and it tries to explain it using induction on the algorithm stage number. So the proof is as follows:



Let F$_i$ be the set of edges chosen at stage i of the algorithm. Let P$_i$ be the proposition: "There is some minimum spanning tree that contains F$_i$." Clearly any minimum spanning tree contains F$_0$ which is just the empty set of edges, so P$_0$ is true. Now suppose that P$_i$ is true. Then there is a minimum spanning tree T that contains F$_i$. Let e be the edge considered next by the Algorithm. If e is in T, then F$_i$ $cup$ e $in$ T, so P$_i+1$ is true. Now assume that e is not in T. Then F$_i$ $cup$ e contains a cycle with e in it.



So P$_i+1$ cannot be true in this case since it's impossible to form a new tree that contains this cycle, so I don't see how induction holds. Can some please explain this to me so that it makes sense?



Thank you in advance.










share|cite|improve this question









$endgroup$











  • $begingroup$
    You have to prove that there is a minimum spanning tree containing the edges chosen so far. You haven't chosen a cycle yet.
    $endgroup$
    – saulspatz
    Mar 31 at 14:26













0












0








0





$begingroup$


So I want to understand how induction proves that Kruskal's Algorithm is correct in terms of giving us a minimum spanning tree. I understand why the algorithm gives us a spanning tree, but I don't understand how it gives us a minimum.



So I was reading my lecture notes from class, and it tries to explain it using induction on the algorithm stage number. So the proof is as follows:



Let F$_i$ be the set of edges chosen at stage i of the algorithm. Let P$_i$ be the proposition: "There is some minimum spanning tree that contains F$_i$." Clearly any minimum spanning tree contains F$_0$ which is just the empty set of edges, so P$_0$ is true. Now suppose that P$_i$ is true. Then there is a minimum spanning tree T that contains F$_i$. Let e be the edge considered next by the Algorithm. If e is in T, then F$_i$ $cup$ e $in$ T, so P$_i+1$ is true. Now assume that e is not in T. Then F$_i$ $cup$ e contains a cycle with e in it.



So P$_i+1$ cannot be true in this case since it's impossible to form a new tree that contains this cycle, so I don't see how induction holds. Can some please explain this to me so that it makes sense?



Thank you in advance.










share|cite|improve this question









$endgroup$




So I want to understand how induction proves that Kruskal's Algorithm is correct in terms of giving us a minimum spanning tree. I understand why the algorithm gives us a spanning tree, but I don't understand how it gives us a minimum.



So I was reading my lecture notes from class, and it tries to explain it using induction on the algorithm stage number. So the proof is as follows:



Let F$_i$ be the set of edges chosen at stage i of the algorithm. Let P$_i$ be the proposition: "There is some minimum spanning tree that contains F$_i$." Clearly any minimum spanning tree contains F$_0$ which is just the empty set of edges, so P$_0$ is true. Now suppose that P$_i$ is true. Then there is a minimum spanning tree T that contains F$_i$. Let e be the edge considered next by the Algorithm. If e is in T, then F$_i$ $cup$ e $in$ T, so P$_i+1$ is true. Now assume that e is not in T. Then F$_i$ $cup$ e contains a cycle with e in it.



So P$_i+1$ cannot be true in this case since it's impossible to form a new tree that contains this cycle, so I don't see how induction holds. Can some please explain this to me so that it makes sense?



Thank you in advance.







combinatorics graph-theory algorithms






share|cite|improve this question













share|cite|improve this question











share|cite|improve this question




share|cite|improve this question










asked Mar 31 at 13:15









TimTim

795




795











  • $begingroup$
    You have to prove that there is a minimum spanning tree containing the edges chosen so far. You haven't chosen a cycle yet.
    $endgroup$
    – saulspatz
    Mar 31 at 14:26
















  • $begingroup$
    You have to prove that there is a minimum spanning tree containing the edges chosen so far. You haven't chosen a cycle yet.
    $endgroup$
    – saulspatz
    Mar 31 at 14:26















$begingroup$
You have to prove that there is a minimum spanning tree containing the edges chosen so far. You haven't chosen a cycle yet.
$endgroup$
– saulspatz
Mar 31 at 14:26




$begingroup$
You have to prove that there is a minimum spanning tree containing the edges chosen so far. You haven't chosen a cycle yet.
$endgroup$
– saulspatz
Mar 31 at 14:26










1 Answer
1






active

oldest

votes


















0












$begingroup$

We have to prove that that there is some minimum spanning tree containing the edges chosen so far. The easy case is when $e$ is in $T,$ and we have to deal with the case when $e$ is not in $T.$ $Tcupe$ contains a cycle $C,$ and obviously $e$ is one of the edges of $C.$ No edge $e'$ of $C$ can have greater weight than that of $e,$ for then we could delete $e'$ and obtain a spanning tree of lesser weight than $T.$ $e$ cannot have been the last edge of $C$ to be chosen, for the algorithm never creates a cycle. Therefore, some edge $e'$ of $C$ was chosen after $e,$ and we must have $w(e)=w(e').$ Deleting $e'$ gives a spanning tree $T'$ of the same weight as $T,$ containing all edges chosen so far.






share|cite|improve this answer









$endgroup$













    Your Answer








    StackExchange.ready(function()
    var channelOptions =
    tags: "".split(" "),
    id: "69"
    ;
    initTagRenderer("".split(" "), "".split(" "), channelOptions);

    StackExchange.using("externalEditor", function()
    // Have to fire editor after snippets, if snippets enabled
    if (StackExchange.settings.snippets.snippetsEnabled)
    StackExchange.using("snippets", function()
    createEditor();
    );

    else
    createEditor();

    );

    function createEditor()
    StackExchange.prepareEditor(
    heartbeatType: 'answer',
    autoActivateHeartbeat: false,
    convertImagesToLinks: true,
    noModals: true,
    showLowRepImageUploadWarning: true,
    reputationToPostImages: 10,
    bindNavPrevention: true,
    postfix: "",
    imageUploader:
    brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
    contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
    allowUrls: true
    ,
    noCode: true, onDemand: true,
    discardSelector: ".discard-answer"
    ,immediatelyShowMarkdownHelp:true
    );



    );













    draft saved

    draft discarded


















    StackExchange.ready(
    function ()
    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmath.stackexchange.com%2fquestions%2f3169378%2fstuck-on-kruskals-algorithm-proof-using-induction%23new-answer', 'question_page');

    );

    Post as a guest















    Required, but never shown

























    1 Answer
    1






    active

    oldest

    votes








    1 Answer
    1






    active

    oldest

    votes









    active

    oldest

    votes






    active

    oldest

    votes









    0












    $begingroup$

    We have to prove that that there is some minimum spanning tree containing the edges chosen so far. The easy case is when $e$ is in $T,$ and we have to deal with the case when $e$ is not in $T.$ $Tcupe$ contains a cycle $C,$ and obviously $e$ is one of the edges of $C.$ No edge $e'$ of $C$ can have greater weight than that of $e,$ for then we could delete $e'$ and obtain a spanning tree of lesser weight than $T.$ $e$ cannot have been the last edge of $C$ to be chosen, for the algorithm never creates a cycle. Therefore, some edge $e'$ of $C$ was chosen after $e,$ and we must have $w(e)=w(e').$ Deleting $e'$ gives a spanning tree $T'$ of the same weight as $T,$ containing all edges chosen so far.






    share|cite|improve this answer









    $endgroup$

















      0












      $begingroup$

      We have to prove that that there is some minimum spanning tree containing the edges chosen so far. The easy case is when $e$ is in $T,$ and we have to deal with the case when $e$ is not in $T.$ $Tcupe$ contains a cycle $C,$ and obviously $e$ is one of the edges of $C.$ No edge $e'$ of $C$ can have greater weight than that of $e,$ for then we could delete $e'$ and obtain a spanning tree of lesser weight than $T.$ $e$ cannot have been the last edge of $C$ to be chosen, for the algorithm never creates a cycle. Therefore, some edge $e'$ of $C$ was chosen after $e,$ and we must have $w(e)=w(e').$ Deleting $e'$ gives a spanning tree $T'$ of the same weight as $T,$ containing all edges chosen so far.






      share|cite|improve this answer









      $endgroup$















        0












        0








        0





        $begingroup$

        We have to prove that that there is some minimum spanning tree containing the edges chosen so far. The easy case is when $e$ is in $T,$ and we have to deal with the case when $e$ is not in $T.$ $Tcupe$ contains a cycle $C,$ and obviously $e$ is one of the edges of $C.$ No edge $e'$ of $C$ can have greater weight than that of $e,$ for then we could delete $e'$ and obtain a spanning tree of lesser weight than $T.$ $e$ cannot have been the last edge of $C$ to be chosen, for the algorithm never creates a cycle. Therefore, some edge $e'$ of $C$ was chosen after $e,$ and we must have $w(e)=w(e').$ Deleting $e'$ gives a spanning tree $T'$ of the same weight as $T,$ containing all edges chosen so far.






        share|cite|improve this answer









        $endgroup$



        We have to prove that that there is some minimum spanning tree containing the edges chosen so far. The easy case is when $e$ is in $T,$ and we have to deal with the case when $e$ is not in $T.$ $Tcupe$ contains a cycle $C,$ and obviously $e$ is one of the edges of $C.$ No edge $e'$ of $C$ can have greater weight than that of $e,$ for then we could delete $e'$ and obtain a spanning tree of lesser weight than $T.$ $e$ cannot have been the last edge of $C$ to be chosen, for the algorithm never creates a cycle. Therefore, some edge $e'$ of $C$ was chosen after $e,$ and we must have $w(e)=w(e').$ Deleting $e'$ gives a spanning tree $T'$ of the same weight as $T,$ containing all edges chosen so far.







        share|cite|improve this answer












        share|cite|improve this answer



        share|cite|improve this answer










        answered Mar 31 at 14:53









        saulspatzsaulspatz

        17.3k31435




        17.3k31435



























            draft saved

            draft discarded
















































            Thanks for contributing an answer to Mathematics Stack Exchange!


            • Please be sure to answer the question. Provide details and share your research!

            But avoid


            • Asking for help, clarification, or responding to other answers.

            • Making statements based on opinion; back them up with references or personal experience.

            Use MathJax to format equations. MathJax reference.


            To learn more, see our tips on writing great answers.




            draft saved


            draft discarded














            StackExchange.ready(
            function ()
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmath.stackexchange.com%2fquestions%2f3169378%2fstuck-on-kruskals-algorithm-proof-using-induction%23new-answer', 'question_page');

            );

            Post as a guest















            Required, but never shown





















































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown

































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown







            Popular posts from this blog

            Boston (Lincolnshire) Stedsbyld | Berne yn Boston | NavigaasjemenuBoston Borough CouncilBoston, Lincolnshire

            Trouble understanding the speech of overseas colleaguesHow can I better understand manager or clients with strong accents?Adding more movement and speech at the fundamental level to a highly-sedentary job?Difficulty in understanding Manager's accent(language and communication)How to adjust yourself where your colleagues are not understanding to you?Understanding manager's expectationsForeigner and colleagues using slangHaving difficulty understanding meetingsHow do you breathe when giving a speech?Trouble Waking Up for Emergencies (On-Call)Problems with colleaguesColleagues feeling insecure when I do my work

            Ballerup Komuun Stääden an saarpen | Futnuuten | Luke uk diar | Nawigatsjuunwww.ballerup.dkwww.statistikbanken.dk: Tabelle BEF44 (Folketal pr. 1. januar fordelt på byer)Commonskategorii: Ballerup Komuun55° 44′ N, 12° 22′ O