the inverse of a sum of two symmetric for schur completion?












1












$begingroup$


I have a up-triangulate Jacobi matrix J which can be blocked like :



$J = begin{bmatrix}A & B\ 0 & Cend{bmatrix} $



both A and C are up-triangulate, we can get Hessian matrix H by:



$H = J'J =begin{bmatrix}A' & 0\B'&C'end{bmatrix} begin{bmatrix}A & B\ 0 & Cend{bmatrix} = begin{bmatrix}A'A & A'B\B'A & B'B+C'Cend{bmatrix} $



by schur completion, I want to margin $B'B+C'C$, the equation is:



$ A'A - A'B(B'B+C'C)^{-1}B'A $



I know $C^{-1}$ is easy computed because it's a up-triangulate matrix, but unfortunately the add ruin this equation.



I have found that
$ X(X^{-1}+Y^{-1})Y = (X^{-1}+Y^{-1})^{-1} $ only when both X and Y are invertible, which B'B dose not meet



so any one have some brilliant idea to compute this equation easily?










share|cite|improve this question











$endgroup$












  • $begingroup$
    I understand most of your question, but I don't understand this: "by schur completion, I want to margin $B'B+C'C$". What are you trying to say here? What do you mean by "margin"?
    $endgroup$
    – Omnomnomnom
    Jan 7 at 2:03










  • $begingroup$
    @Omnomnomnom thank you for your attention , basically margin means remove some target variable in optimization problem , you can refer it from g2o paper cct.lsu.edu/~kzhang/papers/g2o.pdf , equ(25)
    $endgroup$
    – Mr.Guo
    Jan 7 at 2:10










  • $begingroup$
    If $B$ (or $B^TB$) has low rank you can update the cholesky decomposition $C^TC$
    $endgroup$
    – LinAlg
    Jan 7 at 2:12












  • $begingroup$
    @LinAlg yes B'B is not full rank , could you give me some more information about "update the cholesky decomposition" ?
    $endgroup$
    – Mr.Guo
    Jan 7 at 2:15










  • $begingroup$
    @LinAlg thank you for your hint, I think cholesky decomposition update should be work
    $endgroup$
    – Mr.Guo
    Jan 7 at 2:24
















1












$begingroup$


I have a up-triangulate Jacobi matrix J which can be blocked like :



$J = begin{bmatrix}A & B\ 0 & Cend{bmatrix} $



both A and C are up-triangulate, we can get Hessian matrix H by:



$H = J'J =begin{bmatrix}A' & 0\B'&C'end{bmatrix} begin{bmatrix}A & B\ 0 & Cend{bmatrix} = begin{bmatrix}A'A & A'B\B'A & B'B+C'Cend{bmatrix} $



by schur completion, I want to margin $B'B+C'C$, the equation is:



$ A'A - A'B(B'B+C'C)^{-1}B'A $



I know $C^{-1}$ is easy computed because it's a up-triangulate matrix, but unfortunately the add ruin this equation.



I have found that
$ X(X^{-1}+Y^{-1})Y = (X^{-1}+Y^{-1})^{-1} $ only when both X and Y are invertible, which B'B dose not meet



so any one have some brilliant idea to compute this equation easily?










share|cite|improve this question











$endgroup$












  • $begingroup$
    I understand most of your question, but I don't understand this: "by schur completion, I want to margin $B'B+C'C$". What are you trying to say here? What do you mean by "margin"?
    $endgroup$
    – Omnomnomnom
    Jan 7 at 2:03










  • $begingroup$
    @Omnomnomnom thank you for your attention , basically margin means remove some target variable in optimization problem , you can refer it from g2o paper cct.lsu.edu/~kzhang/papers/g2o.pdf , equ(25)
    $endgroup$
    – Mr.Guo
    Jan 7 at 2:10










  • $begingroup$
    If $B$ (or $B^TB$) has low rank you can update the cholesky decomposition $C^TC$
    $endgroup$
    – LinAlg
    Jan 7 at 2:12












  • $begingroup$
    @LinAlg yes B'B is not full rank , could you give me some more information about "update the cholesky decomposition" ?
    $endgroup$
    – Mr.Guo
    Jan 7 at 2:15










  • $begingroup$
    @LinAlg thank you for your hint, I think cholesky decomposition update should be work
    $endgroup$
    – Mr.Guo
    Jan 7 at 2:24














1












1








1





$begingroup$


I have a up-triangulate Jacobi matrix J which can be blocked like :



$J = begin{bmatrix}A & B\ 0 & Cend{bmatrix} $



both A and C are up-triangulate, we can get Hessian matrix H by:



$H = J'J =begin{bmatrix}A' & 0\B'&C'end{bmatrix} begin{bmatrix}A & B\ 0 & Cend{bmatrix} = begin{bmatrix}A'A & A'B\B'A & B'B+C'Cend{bmatrix} $



by schur completion, I want to margin $B'B+C'C$, the equation is:



$ A'A - A'B(B'B+C'C)^{-1}B'A $



I know $C^{-1}$ is easy computed because it's a up-triangulate matrix, but unfortunately the add ruin this equation.



I have found that
$ X(X^{-1}+Y^{-1})Y = (X^{-1}+Y^{-1})^{-1} $ only when both X and Y are invertible, which B'B dose not meet



so any one have some brilliant idea to compute this equation easily?










share|cite|improve this question











$endgroup$




I have a up-triangulate Jacobi matrix J which can be blocked like :



$J = begin{bmatrix}A & B\ 0 & Cend{bmatrix} $



both A and C are up-triangulate, we can get Hessian matrix H by:



$H = J'J =begin{bmatrix}A' & 0\B'&C'end{bmatrix} begin{bmatrix}A & B\ 0 & Cend{bmatrix} = begin{bmatrix}A'A & A'B\B'A & B'B+C'Cend{bmatrix} $



by schur completion, I want to margin $B'B+C'C$, the equation is:



$ A'A - A'B(B'B+C'C)^{-1}B'A $



I know $C^{-1}$ is easy computed because it's a up-triangulate matrix, but unfortunately the add ruin this equation.



I have found that
$ X(X^{-1}+Y^{-1})Y = (X^{-1}+Y^{-1})^{-1} $ only when both X and Y are invertible, which B'B dose not meet



so any one have some brilliant idea to compute this equation easily?







linear-algebra matrices inverse matrix-decomposition schur-complement






share|cite|improve this question















share|cite|improve this question













share|cite|improve this question




share|cite|improve this question








edited Jan 7 at 2:05







Mr.Guo

















asked Jan 7 at 1:56









Mr.GuoMr.Guo

307




307












  • $begingroup$
    I understand most of your question, but I don't understand this: "by schur completion, I want to margin $B'B+C'C$". What are you trying to say here? What do you mean by "margin"?
    $endgroup$
    – Omnomnomnom
    Jan 7 at 2:03










  • $begingroup$
    @Omnomnomnom thank you for your attention , basically margin means remove some target variable in optimization problem , you can refer it from g2o paper cct.lsu.edu/~kzhang/papers/g2o.pdf , equ(25)
    $endgroup$
    – Mr.Guo
    Jan 7 at 2:10










  • $begingroup$
    If $B$ (or $B^TB$) has low rank you can update the cholesky decomposition $C^TC$
    $endgroup$
    – LinAlg
    Jan 7 at 2:12












  • $begingroup$
    @LinAlg yes B'B is not full rank , could you give me some more information about "update the cholesky decomposition" ?
    $endgroup$
    – Mr.Guo
    Jan 7 at 2:15










  • $begingroup$
    @LinAlg thank you for your hint, I think cholesky decomposition update should be work
    $endgroup$
    – Mr.Guo
    Jan 7 at 2:24


















  • $begingroup$
    I understand most of your question, but I don't understand this: "by schur completion, I want to margin $B'B+C'C$". What are you trying to say here? What do you mean by "margin"?
    $endgroup$
    – Omnomnomnom
    Jan 7 at 2:03










  • $begingroup$
    @Omnomnomnom thank you for your attention , basically margin means remove some target variable in optimization problem , you can refer it from g2o paper cct.lsu.edu/~kzhang/papers/g2o.pdf , equ(25)
    $endgroup$
    – Mr.Guo
    Jan 7 at 2:10










  • $begingroup$
    If $B$ (or $B^TB$) has low rank you can update the cholesky decomposition $C^TC$
    $endgroup$
    – LinAlg
    Jan 7 at 2:12












  • $begingroup$
    @LinAlg yes B'B is not full rank , could you give me some more information about "update the cholesky decomposition" ?
    $endgroup$
    – Mr.Guo
    Jan 7 at 2:15










  • $begingroup$
    @LinAlg thank you for your hint, I think cholesky decomposition update should be work
    $endgroup$
    – Mr.Guo
    Jan 7 at 2:24
















$begingroup$
I understand most of your question, but I don't understand this: "by schur completion, I want to margin $B'B+C'C$". What are you trying to say here? What do you mean by "margin"?
$endgroup$
– Omnomnomnom
Jan 7 at 2:03




$begingroup$
I understand most of your question, but I don't understand this: "by schur completion, I want to margin $B'B+C'C$". What are you trying to say here? What do you mean by "margin"?
$endgroup$
– Omnomnomnom
Jan 7 at 2:03












$begingroup$
@Omnomnomnom thank you for your attention , basically margin means remove some target variable in optimization problem , you can refer it from g2o paper cct.lsu.edu/~kzhang/papers/g2o.pdf , equ(25)
$endgroup$
– Mr.Guo
Jan 7 at 2:10




$begingroup$
@Omnomnomnom thank you for your attention , basically margin means remove some target variable in optimization problem , you can refer it from g2o paper cct.lsu.edu/~kzhang/papers/g2o.pdf , equ(25)
$endgroup$
– Mr.Guo
Jan 7 at 2:10












$begingroup$
If $B$ (or $B^TB$) has low rank you can update the cholesky decomposition $C^TC$
$endgroup$
– LinAlg
Jan 7 at 2:12






$begingroup$
If $B$ (or $B^TB$) has low rank you can update the cholesky decomposition $C^TC$
$endgroup$
– LinAlg
Jan 7 at 2:12














$begingroup$
@LinAlg yes B'B is not full rank , could you give me some more information about "update the cholesky decomposition" ?
$endgroup$
– Mr.Guo
Jan 7 at 2:15




$begingroup$
@LinAlg yes B'B is not full rank , could you give me some more information about "update the cholesky decomposition" ?
$endgroup$
– Mr.Guo
Jan 7 at 2:15












$begingroup$
@LinAlg thank you for your hint, I think cholesky decomposition update should be work
$endgroup$
– Mr.Guo
Jan 7 at 2:24




$begingroup$
@LinAlg thank you for your hint, I think cholesky decomposition update should be work
$endgroup$
– Mr.Guo
Jan 7 at 2:24










2 Answers
2






active

oldest

votes


















1












$begingroup$

To compute $X:=(B^TB+C^TC)^{-1}B^TA$, you never actually compute $(B^TB+C^TC)^{-1}$, but instead you solve $(B^TB+C^TC)X=B^TA$. Since $C$ is upper triangular, you can see $C^T$ as the Cholesky factor of $C^TC$. You can update the Cholesky factor $C^T$ to account for the low rank update $B^TB$ (via repeated rank-1 updates). That will give you a new Cholesky factor $L$ such that $LL^T = B^TB+C^TC$. Then all you need to do is solve $LL^TX = B^TA$, which is relatively easy.






share|cite|improve this answer









$endgroup$













  • $begingroup$
    cholesky factor update is a good idea, I'm using eigen , but I didn't find the rank one update for C, it only have interface for C'C which need mutiply first, so I think @Omnomnomnom 's idea is more fitting for me :) , I have listed the detail below
    $endgroup$
    – Mr.Guo
    Jan 7 at 3:50










  • $begingroup$
    @Mr.Guo what do you mean by "I didn't find the rank one update for C, it only have interface for C'C which need mutiply first"?
    $endgroup$
    – LinAlg
    Jan 7 at 4:42










  • $begingroup$
    I mean Eigen have no good interface for up-triangulate matrix rank-one update :)
    $endgroup$
    – Mr.Guo
    Jan 7 at 9:32










  • $begingroup$
    @Mr.Guo I think $C$ is of the LLT type with the UpLo flag set to upper, and that you can use this procedure.
    $endgroup$
    – LinAlg
    Jan 7 at 13:11





















1












$begingroup$

hi @Omnomnomnom you have given me a better hint to solve this problem , I'd like to list it here
I have checked your equation it's correct except one little mistaken, it should be:



$ (C'C+B'B)^{-1} = (C'C)^{-1} - (C'C)^{-1}B'(I+B(C'C)^{-1}B')^{-1}B(C'C)^{-1} $



I think it's a good solution because B is (small rows * big cols) matrix, we can get



$D = (C'C)^{-1}$



$E = BDB'$



$F = (I+E)^{-1}$



D,E,F are all easy computed, so the result is :



$ (C'C+B'B)^{-1} = D - DB'FBD $



and finally,



$ result = A'A-A'B(B'B+C'C)^{-1}B'A = A'(I-B(B'B+C'C)^{-1}B')A = A'(I-BDB' + BDB'FBDB')A = A'(I-E+EFE)A$






share|cite|improve this answer











$endgroup$













    Your Answer





    StackExchange.ifUsing("editor", function () {
    return StackExchange.using("mathjaxEditing", function () {
    StackExchange.MarkdownEditor.creationCallbacks.add(function (editor, postfix) {
    StackExchange.mathjaxEditing.prepareWmdForMathJax(editor, postfix, [["$", "$"], ["\\(","\\)"]]);
    });
    });
    }, "mathjax-editing");

    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%2f3064585%2fthe-inverse-of-a-sum-of-two-symmetric-for-schur-completion%23new-answer', 'question_page');
    }
    );

    Post as a guest















    Required, but never shown

























    2 Answers
    2






    active

    oldest

    votes








    2 Answers
    2






    active

    oldest

    votes









    active

    oldest

    votes






    active

    oldest

    votes









    1












    $begingroup$

    To compute $X:=(B^TB+C^TC)^{-1}B^TA$, you never actually compute $(B^TB+C^TC)^{-1}$, but instead you solve $(B^TB+C^TC)X=B^TA$. Since $C$ is upper triangular, you can see $C^T$ as the Cholesky factor of $C^TC$. You can update the Cholesky factor $C^T$ to account for the low rank update $B^TB$ (via repeated rank-1 updates). That will give you a new Cholesky factor $L$ such that $LL^T = B^TB+C^TC$. Then all you need to do is solve $LL^TX = B^TA$, which is relatively easy.






    share|cite|improve this answer









    $endgroup$













    • $begingroup$
      cholesky factor update is a good idea, I'm using eigen , but I didn't find the rank one update for C, it only have interface for C'C which need mutiply first, so I think @Omnomnomnom 's idea is more fitting for me :) , I have listed the detail below
      $endgroup$
      – Mr.Guo
      Jan 7 at 3:50










    • $begingroup$
      @Mr.Guo what do you mean by "I didn't find the rank one update for C, it only have interface for C'C which need mutiply first"?
      $endgroup$
      – LinAlg
      Jan 7 at 4:42










    • $begingroup$
      I mean Eigen have no good interface for up-triangulate matrix rank-one update :)
      $endgroup$
      – Mr.Guo
      Jan 7 at 9:32










    • $begingroup$
      @Mr.Guo I think $C$ is of the LLT type with the UpLo flag set to upper, and that you can use this procedure.
      $endgroup$
      – LinAlg
      Jan 7 at 13:11


















    1












    $begingroup$

    To compute $X:=(B^TB+C^TC)^{-1}B^TA$, you never actually compute $(B^TB+C^TC)^{-1}$, but instead you solve $(B^TB+C^TC)X=B^TA$. Since $C$ is upper triangular, you can see $C^T$ as the Cholesky factor of $C^TC$. You can update the Cholesky factor $C^T$ to account for the low rank update $B^TB$ (via repeated rank-1 updates). That will give you a new Cholesky factor $L$ such that $LL^T = B^TB+C^TC$. Then all you need to do is solve $LL^TX = B^TA$, which is relatively easy.






    share|cite|improve this answer









    $endgroup$













    • $begingroup$
      cholesky factor update is a good idea, I'm using eigen , but I didn't find the rank one update for C, it only have interface for C'C which need mutiply first, so I think @Omnomnomnom 's idea is more fitting for me :) , I have listed the detail below
      $endgroup$
      – Mr.Guo
      Jan 7 at 3:50










    • $begingroup$
      @Mr.Guo what do you mean by "I didn't find the rank one update for C, it only have interface for C'C which need mutiply first"?
      $endgroup$
      – LinAlg
      Jan 7 at 4:42










    • $begingroup$
      I mean Eigen have no good interface for up-triangulate matrix rank-one update :)
      $endgroup$
      – Mr.Guo
      Jan 7 at 9:32










    • $begingroup$
      @Mr.Guo I think $C$ is of the LLT type with the UpLo flag set to upper, and that you can use this procedure.
      $endgroup$
      – LinAlg
      Jan 7 at 13:11
















    1












    1








    1





    $begingroup$

    To compute $X:=(B^TB+C^TC)^{-1}B^TA$, you never actually compute $(B^TB+C^TC)^{-1}$, but instead you solve $(B^TB+C^TC)X=B^TA$. Since $C$ is upper triangular, you can see $C^T$ as the Cholesky factor of $C^TC$. You can update the Cholesky factor $C^T$ to account for the low rank update $B^TB$ (via repeated rank-1 updates). That will give you a new Cholesky factor $L$ such that $LL^T = B^TB+C^TC$. Then all you need to do is solve $LL^TX = B^TA$, which is relatively easy.






    share|cite|improve this answer









    $endgroup$



    To compute $X:=(B^TB+C^TC)^{-1}B^TA$, you never actually compute $(B^TB+C^TC)^{-1}$, but instead you solve $(B^TB+C^TC)X=B^TA$. Since $C$ is upper triangular, you can see $C^T$ as the Cholesky factor of $C^TC$. You can update the Cholesky factor $C^T$ to account for the low rank update $B^TB$ (via repeated rank-1 updates). That will give you a new Cholesky factor $L$ such that $LL^T = B^TB+C^TC$. Then all you need to do is solve $LL^TX = B^TA$, which is relatively easy.







    share|cite|improve this answer












    share|cite|improve this answer



    share|cite|improve this answer










    answered Jan 7 at 2:58









    LinAlgLinAlg

    9,4991521




    9,4991521












    • $begingroup$
      cholesky factor update is a good idea, I'm using eigen , but I didn't find the rank one update for C, it only have interface for C'C which need mutiply first, so I think @Omnomnomnom 's idea is more fitting for me :) , I have listed the detail below
      $endgroup$
      – Mr.Guo
      Jan 7 at 3:50










    • $begingroup$
      @Mr.Guo what do you mean by "I didn't find the rank one update for C, it only have interface for C'C which need mutiply first"?
      $endgroup$
      – LinAlg
      Jan 7 at 4:42










    • $begingroup$
      I mean Eigen have no good interface for up-triangulate matrix rank-one update :)
      $endgroup$
      – Mr.Guo
      Jan 7 at 9:32










    • $begingroup$
      @Mr.Guo I think $C$ is of the LLT type with the UpLo flag set to upper, and that you can use this procedure.
      $endgroup$
      – LinAlg
      Jan 7 at 13:11




















    • $begingroup$
      cholesky factor update is a good idea, I'm using eigen , but I didn't find the rank one update for C, it only have interface for C'C which need mutiply first, so I think @Omnomnomnom 's idea is more fitting for me :) , I have listed the detail below
      $endgroup$
      – Mr.Guo
      Jan 7 at 3:50










    • $begingroup$
      @Mr.Guo what do you mean by "I didn't find the rank one update for C, it only have interface for C'C which need mutiply first"?
      $endgroup$
      – LinAlg
      Jan 7 at 4:42










    • $begingroup$
      I mean Eigen have no good interface for up-triangulate matrix rank-one update :)
      $endgroup$
      – Mr.Guo
      Jan 7 at 9:32










    • $begingroup$
      @Mr.Guo I think $C$ is of the LLT type with the UpLo flag set to upper, and that you can use this procedure.
      $endgroup$
      – LinAlg
      Jan 7 at 13:11


















    $begingroup$
    cholesky factor update is a good idea, I'm using eigen , but I didn't find the rank one update for C, it only have interface for C'C which need mutiply first, so I think @Omnomnomnom 's idea is more fitting for me :) , I have listed the detail below
    $endgroup$
    – Mr.Guo
    Jan 7 at 3:50




    $begingroup$
    cholesky factor update is a good idea, I'm using eigen , but I didn't find the rank one update for C, it only have interface for C'C which need mutiply first, so I think @Omnomnomnom 's idea is more fitting for me :) , I have listed the detail below
    $endgroup$
    – Mr.Guo
    Jan 7 at 3:50












    $begingroup$
    @Mr.Guo what do you mean by "I didn't find the rank one update for C, it only have interface for C'C which need mutiply first"?
    $endgroup$
    – LinAlg
    Jan 7 at 4:42




    $begingroup$
    @Mr.Guo what do you mean by "I didn't find the rank one update for C, it only have interface for C'C which need mutiply first"?
    $endgroup$
    – LinAlg
    Jan 7 at 4:42












    $begingroup$
    I mean Eigen have no good interface for up-triangulate matrix rank-one update :)
    $endgroup$
    – Mr.Guo
    Jan 7 at 9:32




    $begingroup$
    I mean Eigen have no good interface for up-triangulate matrix rank-one update :)
    $endgroup$
    – Mr.Guo
    Jan 7 at 9:32












    $begingroup$
    @Mr.Guo I think $C$ is of the LLT type with the UpLo flag set to upper, and that you can use this procedure.
    $endgroup$
    – LinAlg
    Jan 7 at 13:11






    $begingroup$
    @Mr.Guo I think $C$ is of the LLT type with the UpLo flag set to upper, and that you can use this procedure.
    $endgroup$
    – LinAlg
    Jan 7 at 13:11













    1












    $begingroup$

    hi @Omnomnomnom you have given me a better hint to solve this problem , I'd like to list it here
    I have checked your equation it's correct except one little mistaken, it should be:



    $ (C'C+B'B)^{-1} = (C'C)^{-1} - (C'C)^{-1}B'(I+B(C'C)^{-1}B')^{-1}B(C'C)^{-1} $



    I think it's a good solution because B is (small rows * big cols) matrix, we can get



    $D = (C'C)^{-1}$



    $E = BDB'$



    $F = (I+E)^{-1}$



    D,E,F are all easy computed, so the result is :



    $ (C'C+B'B)^{-1} = D - DB'FBD $



    and finally,



    $ result = A'A-A'B(B'B+C'C)^{-1}B'A = A'(I-B(B'B+C'C)^{-1}B')A = A'(I-BDB' + BDB'FBDB')A = A'(I-E+EFE)A$






    share|cite|improve this answer











    $endgroup$


















      1












      $begingroup$

      hi @Omnomnomnom you have given me a better hint to solve this problem , I'd like to list it here
      I have checked your equation it's correct except one little mistaken, it should be:



      $ (C'C+B'B)^{-1} = (C'C)^{-1} - (C'C)^{-1}B'(I+B(C'C)^{-1}B')^{-1}B(C'C)^{-1} $



      I think it's a good solution because B is (small rows * big cols) matrix, we can get



      $D = (C'C)^{-1}$



      $E = BDB'$



      $F = (I+E)^{-1}$



      D,E,F are all easy computed, so the result is :



      $ (C'C+B'B)^{-1} = D - DB'FBD $



      and finally,



      $ result = A'A-A'B(B'B+C'C)^{-1}B'A = A'(I-B(B'B+C'C)^{-1}B')A = A'(I-BDB' + BDB'FBDB')A = A'(I-E+EFE)A$






      share|cite|improve this answer











      $endgroup$
















        1












        1








        1





        $begingroup$

        hi @Omnomnomnom you have given me a better hint to solve this problem , I'd like to list it here
        I have checked your equation it's correct except one little mistaken, it should be:



        $ (C'C+B'B)^{-1} = (C'C)^{-1} - (C'C)^{-1}B'(I+B(C'C)^{-1}B')^{-1}B(C'C)^{-1} $



        I think it's a good solution because B is (small rows * big cols) matrix, we can get



        $D = (C'C)^{-1}$



        $E = BDB'$



        $F = (I+E)^{-1}$



        D,E,F are all easy computed, so the result is :



        $ (C'C+B'B)^{-1} = D - DB'FBD $



        and finally,



        $ result = A'A-A'B(B'B+C'C)^{-1}B'A = A'(I-B(B'B+C'C)^{-1}B')A = A'(I-BDB' + BDB'FBDB')A = A'(I-E+EFE)A$






        share|cite|improve this answer











        $endgroup$



        hi @Omnomnomnom you have given me a better hint to solve this problem , I'd like to list it here
        I have checked your equation it's correct except one little mistaken, it should be:



        $ (C'C+B'B)^{-1} = (C'C)^{-1} - (C'C)^{-1}B'(I+B(C'C)^{-1}B')^{-1}B(C'C)^{-1} $



        I think it's a good solution because B is (small rows * big cols) matrix, we can get



        $D = (C'C)^{-1}$



        $E = BDB'$



        $F = (I+E)^{-1}$



        D,E,F are all easy computed, so the result is :



        $ (C'C+B'B)^{-1} = D - DB'FBD $



        and finally,



        $ result = A'A-A'B(B'B+C'C)^{-1}B'A = A'(I-B(B'B+C'C)^{-1}B')A = A'(I-BDB' + BDB'FBDB')A = A'(I-E+EFE)A$







        share|cite|improve this answer














        share|cite|improve this answer



        share|cite|improve this answer








        edited Jan 7 at 4:11

























        answered Jan 7 at 3:46









        Mr.GuoMr.Guo

        307




        307






























            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%2f3064585%2fthe-inverse-of-a-sum-of-two-symmetric-for-schur-completion%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

            Questions related to Moebius Transform of Characteristic Function of the Primes

            List of scandals in India

            Can not write log (Is /dev/pts mounted?) - openpty in Ubuntu-on-Windows?