Check a word given a generator matrix G












1












$begingroup$



Take the binary code C with generator matrix:
$$ left( begin{array}{ccccc|cccc}
1 & 0 & 0 & 0 & 0 & 1 & 1 & 1 & 0 \
0 & 1 & 0 & 0 & 0 & 0 & 1 & 1 & 1 \
0 & 0 & 1 & 0 & 0 & 1 & 0 & 1 & 1 \
0 & 0 & 0 & 1 & 0 & 1 & 1 & 0 & 1 \
0 & 0 & 0 & 0 & 1 & 1 & 1 & 1 & 1 \
end{array} right) $$
And use it to correct the word that has at most one error: $011000011$.




Notice that this matrix is of the form $(I_5 | P)$, we obtain the parity matrix by transposition: $(P^T|I_{9-5})=(P^T|I_{4})$, this gives us the following parity matrix:
$$ left( begin{array}{ccccc|cccc}
1 & 0 & 1 & 1 & 1 & 1 & 0 & 0 & 0 \
1 & 1 & 0 & 1 & 1 & 0 & 1 & 0 & 0 \
1 & 1 & 1 & 0 & 1 & 0 & 0 & 1 & 0 \
0 & 1 & 1 & 1 & 1 & 0 & 0 & 0 & 1 \
end{array} right) $$

We obtain the four equations which each codeword must satisfy, where $m_i$ denotes the message bits and $r_i$ denotes the parity bit:
$$m_1 + m_3 +m_4+m_5 + r_1 = 0$$
$$m_1 + m_2 +m_4+m_5 + r_2 = 0$$
$$m_1 + m_2 +m_3+m_5 + r_3 = 0$$
$$m_2 + m_3 +m_4+m_5 + r_4 = 0$$
We will use these equations to check the word: $011000011= m_1 m_2 m_3 m_4 m_5 r_1 r_2 r_3 r_4$,
$$0 + 1 +0+0 + 0 not equiv 0$$
$$0 + 1 +0+0 + 0 not equiv 0$$
$$0 + 1 +1+0 + 1 not equiv 0$$
$$1 + 1 +0+0 + 1 not equiv 0$$



Here I ran into a problem because I do not gain any information from these equations as I cannot pinpoint the error. I've checked it several times but can't seem to find the error in my reasoning or how to proceed.










share|cite|improve this question











$endgroup$








  • 2




    $begingroup$
    Just set $m_5$ to be $1$.
    $endgroup$
    – Berci
    Jan 10 at 14:07










  • $begingroup$
    Because it appears in every equation? so it must be the error?
    $endgroup$
    – Wesley Strik
    Jan 10 at 14:08






  • 2




    $begingroup$
    Yes, and because every equation is false originally.
    $endgroup$
    – Berci
    Jan 10 at 14:10
















1












$begingroup$



Take the binary code C with generator matrix:
$$ left( begin{array}{ccccc|cccc}
1 & 0 & 0 & 0 & 0 & 1 & 1 & 1 & 0 \
0 & 1 & 0 & 0 & 0 & 0 & 1 & 1 & 1 \
0 & 0 & 1 & 0 & 0 & 1 & 0 & 1 & 1 \
0 & 0 & 0 & 1 & 0 & 1 & 1 & 0 & 1 \
0 & 0 & 0 & 0 & 1 & 1 & 1 & 1 & 1 \
end{array} right) $$
And use it to correct the word that has at most one error: $011000011$.




Notice that this matrix is of the form $(I_5 | P)$, we obtain the parity matrix by transposition: $(P^T|I_{9-5})=(P^T|I_{4})$, this gives us the following parity matrix:
$$ left( begin{array}{ccccc|cccc}
1 & 0 & 1 & 1 & 1 & 1 & 0 & 0 & 0 \
1 & 1 & 0 & 1 & 1 & 0 & 1 & 0 & 0 \
1 & 1 & 1 & 0 & 1 & 0 & 0 & 1 & 0 \
0 & 1 & 1 & 1 & 1 & 0 & 0 & 0 & 1 \
end{array} right) $$

We obtain the four equations which each codeword must satisfy, where $m_i$ denotes the message bits and $r_i$ denotes the parity bit:
$$m_1 + m_3 +m_4+m_5 + r_1 = 0$$
$$m_1 + m_2 +m_4+m_5 + r_2 = 0$$
$$m_1 + m_2 +m_3+m_5 + r_3 = 0$$
$$m_2 + m_3 +m_4+m_5 + r_4 = 0$$
We will use these equations to check the word: $011000011= m_1 m_2 m_3 m_4 m_5 r_1 r_2 r_3 r_4$,
$$0 + 1 +0+0 + 0 not equiv 0$$
$$0 + 1 +0+0 + 0 not equiv 0$$
$$0 + 1 +1+0 + 1 not equiv 0$$
$$1 + 1 +0+0 + 1 not equiv 0$$



Here I ran into a problem because I do not gain any information from these equations as I cannot pinpoint the error. I've checked it several times but can't seem to find the error in my reasoning or how to proceed.










share|cite|improve this question











$endgroup$








  • 2




    $begingroup$
    Just set $m_5$ to be $1$.
    $endgroup$
    – Berci
    Jan 10 at 14:07










  • $begingroup$
    Because it appears in every equation? so it must be the error?
    $endgroup$
    – Wesley Strik
    Jan 10 at 14:08






  • 2




    $begingroup$
    Yes, and because every equation is false originally.
    $endgroup$
    – Berci
    Jan 10 at 14:10














1












1








1





$begingroup$



Take the binary code C with generator matrix:
$$ left( begin{array}{ccccc|cccc}
1 & 0 & 0 & 0 & 0 & 1 & 1 & 1 & 0 \
0 & 1 & 0 & 0 & 0 & 0 & 1 & 1 & 1 \
0 & 0 & 1 & 0 & 0 & 1 & 0 & 1 & 1 \
0 & 0 & 0 & 1 & 0 & 1 & 1 & 0 & 1 \
0 & 0 & 0 & 0 & 1 & 1 & 1 & 1 & 1 \
end{array} right) $$
And use it to correct the word that has at most one error: $011000011$.




Notice that this matrix is of the form $(I_5 | P)$, we obtain the parity matrix by transposition: $(P^T|I_{9-5})=(P^T|I_{4})$, this gives us the following parity matrix:
$$ left( begin{array}{ccccc|cccc}
1 & 0 & 1 & 1 & 1 & 1 & 0 & 0 & 0 \
1 & 1 & 0 & 1 & 1 & 0 & 1 & 0 & 0 \
1 & 1 & 1 & 0 & 1 & 0 & 0 & 1 & 0 \
0 & 1 & 1 & 1 & 1 & 0 & 0 & 0 & 1 \
end{array} right) $$

We obtain the four equations which each codeword must satisfy, where $m_i$ denotes the message bits and $r_i$ denotes the parity bit:
$$m_1 + m_3 +m_4+m_5 + r_1 = 0$$
$$m_1 + m_2 +m_4+m_5 + r_2 = 0$$
$$m_1 + m_2 +m_3+m_5 + r_3 = 0$$
$$m_2 + m_3 +m_4+m_5 + r_4 = 0$$
We will use these equations to check the word: $011000011= m_1 m_2 m_3 m_4 m_5 r_1 r_2 r_3 r_4$,
$$0 + 1 +0+0 + 0 not equiv 0$$
$$0 + 1 +0+0 + 0 not equiv 0$$
$$0 + 1 +1+0 + 1 not equiv 0$$
$$1 + 1 +0+0 + 1 not equiv 0$$



Here I ran into a problem because I do not gain any information from these equations as I cannot pinpoint the error. I've checked it several times but can't seem to find the error in my reasoning or how to proceed.










share|cite|improve this question











$endgroup$





Take the binary code C with generator matrix:
$$ left( begin{array}{ccccc|cccc}
1 & 0 & 0 & 0 & 0 & 1 & 1 & 1 & 0 \
0 & 1 & 0 & 0 & 0 & 0 & 1 & 1 & 1 \
0 & 0 & 1 & 0 & 0 & 1 & 0 & 1 & 1 \
0 & 0 & 0 & 1 & 0 & 1 & 1 & 0 & 1 \
0 & 0 & 0 & 0 & 1 & 1 & 1 & 1 & 1 \
end{array} right) $$
And use it to correct the word that has at most one error: $011000011$.




Notice that this matrix is of the form $(I_5 | P)$, we obtain the parity matrix by transposition: $(P^T|I_{9-5})=(P^T|I_{4})$, this gives us the following parity matrix:
$$ left( begin{array}{ccccc|cccc}
1 & 0 & 1 & 1 & 1 & 1 & 0 & 0 & 0 \
1 & 1 & 0 & 1 & 1 & 0 & 1 & 0 & 0 \
1 & 1 & 1 & 0 & 1 & 0 & 0 & 1 & 0 \
0 & 1 & 1 & 1 & 1 & 0 & 0 & 0 & 1 \
end{array} right) $$

We obtain the four equations which each codeword must satisfy, where $m_i$ denotes the message bits and $r_i$ denotes the parity bit:
$$m_1 + m_3 +m_4+m_5 + r_1 = 0$$
$$m_1 + m_2 +m_4+m_5 + r_2 = 0$$
$$m_1 + m_2 +m_3+m_5 + r_3 = 0$$
$$m_2 + m_3 +m_4+m_5 + r_4 = 0$$
We will use these equations to check the word: $011000011= m_1 m_2 m_3 m_4 m_5 r_1 r_2 r_3 r_4$,
$$0 + 1 +0+0 + 0 not equiv 0$$
$$0 + 1 +0+0 + 0 not equiv 0$$
$$0 + 1 +1+0 + 1 not equiv 0$$
$$1 + 1 +0+0 + 1 not equiv 0$$



Here I ran into a problem because I do not gain any information from these equations as I cannot pinpoint the error. I've checked it several times but can't seem to find the error in my reasoning or how to proceed.







linear-algebra matrices coding-theory






share|cite|improve this question















share|cite|improve this question













share|cite|improve this question




share|cite|improve this question








edited Jan 10 at 13:52







Wesley Strik

















asked Jan 10 at 13:45









Wesley StrikWesley Strik

1,665423




1,665423








  • 2




    $begingroup$
    Just set $m_5$ to be $1$.
    $endgroup$
    – Berci
    Jan 10 at 14:07










  • $begingroup$
    Because it appears in every equation? so it must be the error?
    $endgroup$
    – Wesley Strik
    Jan 10 at 14:08






  • 2




    $begingroup$
    Yes, and because every equation is false originally.
    $endgroup$
    – Berci
    Jan 10 at 14:10














  • 2




    $begingroup$
    Just set $m_5$ to be $1$.
    $endgroup$
    – Berci
    Jan 10 at 14:07










  • $begingroup$
    Because it appears in every equation? so it must be the error?
    $endgroup$
    – Wesley Strik
    Jan 10 at 14:08






  • 2




    $begingroup$
    Yes, and because every equation is false originally.
    $endgroup$
    – Berci
    Jan 10 at 14:10








2




2




$begingroup$
Just set $m_5$ to be $1$.
$endgroup$
– Berci
Jan 10 at 14:07




$begingroup$
Just set $m_5$ to be $1$.
$endgroup$
– Berci
Jan 10 at 14:07












$begingroup$
Because it appears in every equation? so it must be the error?
$endgroup$
– Wesley Strik
Jan 10 at 14:08




$begingroup$
Because it appears in every equation? so it must be the error?
$endgroup$
– Wesley Strik
Jan 10 at 14:08




2




2




$begingroup$
Yes, and because every equation is false originally.
$endgroup$
– Berci
Jan 10 at 14:10




$begingroup$
Yes, and because every equation is false originally.
$endgroup$
– Berci
Jan 10 at 14:10










1 Answer
1






active

oldest

votes


















1












$begingroup$

For such a simple code, the simple way to proceed is the following:



You have 32 code words. You can calculate them and check the weight of each word: if each weight is at least three, the code being linear, this implies that each pair of two different code words has a Hamming distance of at least three.



Then, for correcting the word $y = 011000011$: simply calculate its Hamming distance from each code word. You should find one at distance zero or one.



To correct from the syndrome ($H,y$): by considering all the error positions, you can establish a correspondence (a table) between error positions and the syndrome.






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%2f3068656%2fcheck-a-word-given-a-generator-matrix-g%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









    1












    $begingroup$

    For such a simple code, the simple way to proceed is the following:



    You have 32 code words. You can calculate them and check the weight of each word: if each weight is at least three, the code being linear, this implies that each pair of two different code words has a Hamming distance of at least three.



    Then, for correcting the word $y = 011000011$: simply calculate its Hamming distance from each code word. You should find one at distance zero or one.



    To correct from the syndrome ($H,y$): by considering all the error positions, you can establish a correspondence (a table) between error positions and the syndrome.






    share|cite|improve this answer











    $endgroup$


















      1












      $begingroup$

      For such a simple code, the simple way to proceed is the following:



      You have 32 code words. You can calculate them and check the weight of each word: if each weight is at least three, the code being linear, this implies that each pair of two different code words has a Hamming distance of at least three.



      Then, for correcting the word $y = 011000011$: simply calculate its Hamming distance from each code word. You should find one at distance zero or one.



      To correct from the syndrome ($H,y$): by considering all the error positions, you can establish a correspondence (a table) between error positions and the syndrome.






      share|cite|improve this answer











      $endgroup$
















        1












        1








        1





        $begingroup$

        For such a simple code, the simple way to proceed is the following:



        You have 32 code words. You can calculate them and check the weight of each word: if each weight is at least three, the code being linear, this implies that each pair of two different code words has a Hamming distance of at least three.



        Then, for correcting the word $y = 011000011$: simply calculate its Hamming distance from each code word. You should find one at distance zero or one.



        To correct from the syndrome ($H,y$): by considering all the error positions, you can establish a correspondence (a table) between error positions and the syndrome.






        share|cite|improve this answer











        $endgroup$



        For such a simple code, the simple way to proceed is the following:



        You have 32 code words. You can calculate them and check the weight of each word: if each weight is at least three, the code being linear, this implies that each pair of two different code words has a Hamming distance of at least three.



        Then, for correcting the word $y = 011000011$: simply calculate its Hamming distance from each code word. You should find one at distance zero or one.



        To correct from the syndrome ($H,y$): by considering all the error positions, you can establish a correspondence (a table) between error positions and the syndrome.







        share|cite|improve this answer














        share|cite|improve this answer



        share|cite|improve this answer








        edited Jan 10 at 14:07

























        answered Jan 10 at 13:59









        DamienDamien

        60714




        60714






























            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%2f3068656%2fcheck-a-word-given-a-generator-matrix-g%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

            Mario Kart Wii

            The Binding of Isaac: Rebirth/Afterbirth

            What does “Dominus providebit” mean?