Patent Publication Number: US-10763896-B2

Title: Construction method for (n,n(n-1),n-1) permutation group code based on coset partition and codebook generator thereof

Description:
FIELD OF THE INVENTION 
     The invention relates to a technical field of channel coding in communication transmission, and more particularly to a construction method for a (n,n(n−1),n−1) permutation group code based on coset partition and a codebook generator thereof. 
     BACKGROUND OF THE INVENTION 
     Multiple interferences comprising multipath fading, permanent narrow-band noise, broadband impulse noise and colored background noises may coexist in a power line channel, which is uncommon for wireless and wired channels. Therefore, information transmission reliability is hard to be guaranteed by applying existing technology of wireless and wired communications directly to power line carrier communication channels, and it is necessary to propose a solution of error-correcting codes with higher reliability to interferences of multiple forms and multiple frequencies in power line carrier communication. Besides, error-correcting codes with higher reliability are still needed for wider wireless transmission environment with interferences of multiple forms and multiple frequencies. 
     In 2000, Vinck introduced permutation codes into power line carrier communication, and a corresponding dissertation “‘Coded modulation for power line communications’, AEU int. J. Electron. Commun., vol. 54, no. 1, pp: 45-49, 2000” discloses a power line carrier coded modulation method combining permutation code and M-dimension FSK modulation, where time diversity and frequency diversity are introduced simultaneously at a transmitter terminal according to redundancy of permutation codes to increase capability of resisting fading and interferences of multiple frequencies, and a receiving signal is detected by a constant envelope demodulation algorithm at a receiver terminal to form a simple non-coherent demodulation method. It should be noted that Vinck came to a conclusion that permutation codes have an error-correcting capability of d−1 rather than └(d−1)/2┘ through analyzing a permutation code with code length of 4. However, Vinck failed to provide an effective construction method for permutation codes. At present, permutation codes with an error-correcting capability of d−1 develop slowly and are not applied in practice for design methods for algebraic structures of permutation codes are rare and more particularly, the problem of their executable circuits has not been effectively solved yet. 
     SUMMARY OF THE INVENTION 
     In view of the above-mentioned problems, it is an objective of the invention to provide a construction method of (n,n(n−1),n−1) permutation group code based on coset partition and a codebook generator thereof. More specifically, there is provided an algebraic structural design method and a codebook enumerator for permutation codes with a code length of n, a minimum distance of n−1, a cardinality of n(n−1) and an error-correcting capability of d−1=n−2. For multiple interferences comprising multipath fading, permanent narrow-band noise, broadband impulse noise and colored background noises may coexist in a power line channel, the invention provides a design method for an error-correcting code capable of resisting the mixed interferences. Besides, the permutation group code of the invention features a strong anti-interference capability for multi-frequency interferences in wireless communication and malicious frequency interferences from a human being, and is capable of protecting transmitted signals under the circumstance with low requirement for data rate and coexisted deep fading and various mixed frequency interferences. To achieve the above objective, according to one embodiment of the invention, there is provided a construction method of the (n,n(n−1),n−1) permutation group codes based on coset partition, wherein a construction of this permutation code with a code length of n, a minimum distance of n−1 and a code size of n(n−1) is expressed by P n ={{p βα } β=1   n } α=1   n-1 =C n O n ={{C n o 1 }, {C n o 2 }, . . . , {C n o n-1 }}={{c β ∘o α } β=1   n } α=1   n-1 , P n =C n O n  represents that C n  is a coset of the subgroup O n  and O n  is also a coset of the subgroup C n , P n ={{C n o 1 }, {C n o 2 }, . . . , {C n o n-1 }} represents dividing P n  into n−1 cosets by the subgroup C n , each coset {C n o α } forms an orbit or an cyclic Latin square (C-LS) of a permutation o α , P n ={{p βα } β=1   n } α=1   n-1 ={{c β ∘o α } β=1   n } α=1   n-1  represents a permutation code and each codeword P βα  is generated by composition operation of a permutation c β  of the subgroup C n  and a permutation o α  of the subgroup O n , α=1, 2, . . . n−1, and β=1, 2, . . . n. 
     According to another embodiment of the invention, there is provided a generator of the (n,n(n−1),n−1) permutation group code based on coset partition, comprising an orbit leader array generator, a flash memory and a cyclic-bidirectional-shift register group, wherein 
     the orbit leader array generator is operable for performing an operation of O n ={αo 1 } α=1   n-1 (mod n) to generate n−1 orbit leader permutations; 
     the flash memory is operable for storing output results of the orbit leader array generator and the cyclic-bidirectional-shift register group; and 
     the cyclic-bidirectional-shift register group is operable for performing the operation of (l 1 ) n-1  or (r n ) n-1  acting on a permutation by calculating an orbit {(l 1 ) n-1 o α } or {(r n ) n-1 o α )} of an orbit leader permutation o α , and a code set {(l 1 ) n-1 O n } or {(r n ) n-1 O n }, where α=1, 2, . . . , n−1. 
     The (n,n(n−1),n−1) permutation group code based on coset partition of the invention is an algebraic-structured code, the orbit leader permutation codewords of the code set can be obtained simply by adder and (mod n) calculator instead of complex composition operations, and the whole code set can be realized by a group of cyclic shift registers. As a non-binary error-correcting code, the permutation code has an error-correcting capability of d−1, two times that of non-binary error-correcting codes in prior art. Demodulation can be realized simply by a noncoherent constant envelop detecting technology at a receiver terminal combining permutation code with MFSK modulation technology, and signal transmission reliability can be guaranteed for communication channels with deep fading and mixed frequency noises. 
    
    
     
       BRIEF DESCRIPTION OF THE ACCOMPANYING DRAWINGS 
         FIG. 1  is an overall block diagram of a generator for a (n,n(n−1),n−1) permutation group code of the invention; 
         FIG. 2  is a schematic diagram of an orbit leader array generator of the invention; 
         FIG. 3  is a schematic diagram of a flash memory of the invention; and 
         FIG. 4  is a schematic diagram of a cyclic-bidirectional-shift register group of the invention. 
     
    
    
     SPECIFIC EMBODIMENTS OF THE INVENTION 
     For clear understanding of the objectives, features and advantages of the invention, detailed description of the invention will be given below in conjunction with accompanying drawings and specific embodiments. It should be noted that the embodiments are only meant to explain the invention, and not to limit the scope of the invention. 
     Basic Principles 
     Basic principles of a (n,n(n−1),n−1) permutation group code based on coset partition of the invention are given below. 
     Code symbols can take values in two finite fields, namely, Z n   0 ={0, 1, . . . , n−1} represents a finite field of order n containing element 0, and Z n   1 ={1, 2, . . . , n}represents a finite positive integer field of order n containing no element 0, and is also a cyclic group of order n. 
     Calling a set formed by all n! permutations of n elements in Z n   0  or Z n   1  a symmetric group S n ={π 1 , . . . , π k , . . . , π n! }, an element of S n  can be represented by a permutation π k =[a 1  . . . a i  . . . a n ], elements of a permutation by a 1  . . . a i  . . . a n ∈Z n   0  or a 1  . . . a i  . . . a n ∈Z n   1 , degree (dimension) of a permutation is |π k |=n, and cardinality (order) of the symmetric group is |S n |=n!. Let π 0 =e=[a 1 a 2  . . . a n ]=[01 . . . n−1] or π 0 =e=[a 1 a 2  . . . a n ]=[12 . . . n] represent an identity element of the symmetric group S n , where [a 1 a 2  . . . a n ] represent a permutation in S n , and (a 1 a 2  . . . a n ) represents a permutation operator. 
     A group H is a cyclic permutation group if H can be generated by a single element, i.e., there is an element x∈H such that H={x i |i∈Z n   1 , x, x i ∈S n }. We shall write H=&lt;x&gt; and say that H is generated by x or x is a generator of H. 
     Let γ=(γ 2 ) be a cyclic permutation group of n permutation operators, its generator is γ 2 =(a 2 a 3  . . . a n a 1 ), and its cardinality is |γ|=n. If making the operator set γ=(γ 2 ) act on a permutation π=[a 1  . . . a i  . . . a n ], we get {γπ}={{γ 2 , γ 3 , . . . , γ n , γ 1 }[a 1  . . . a i  . . . a n ]}={&lt;γ 2 &gt;π}={{γ 2 , γ 2   2 , . . . , γ n , γ 1 }[a 1  . . . a i  . . . a n ]}, then {γπ} is regarded as an orbit containing permutation π under the action of cyclic permutation group γ and element number of the orbit {γπ} is |{γπ}|=n. 
     Basic structure of the (n,n(n−1),n−1) permutation group code based on coset partition is provided by the following two Theorems and a Lemma without a proof. 
     Lemma 1 [construction of C n ]: C n ={c 1 , c 2 , . . . , c n }=&lt;c 2 &gt; is a subgroup of S n  and also a cyclic permutation group with minimum distance d C     n   =n and cardinality |C n |=n if and only if (i) C n ={γπ}={ γ 2   [a 1 a 2  . . . a n ]}; (ii) its subscript is specified to keep consistent with the value of the first element of each permutation in C n , i.e., c 1 =γ 1 π=c 2   n =γ 2   n π=(a 2 a 3  . . . a n a 1 ) n [a 1 a 2  . . . a n ]=[a 1 a 2 , . . . a n ], c 2 =γ 2 π=[a 2 a 3  . . . a n a 1 ], c 3 =γ 3 π=c 2   2 =γ 2   2 π=(a 2 a 3  . . . a n a 1 ) 2 [a 1 a 2  . . . a n ]=[a 3 a 4  . . . a n a 1 a 2 ], . . . , c n =γ n π=c 2   n-1 =γ 2   n-1 π=(a 2 a 3  . . . a n a 1 ) n-1 [a 1 a 2  . . . a n ]=[a n a 1 a 2  . . . a n-1 ]. 
     Theorem 2 [construction of O n ]: Let O n  be a (n−1)×n permutation array or a set formed by n−1 permutations, and construct O n ={o α } α=1   n-1 ={α·o 1 } α=1   n-1 , where o 1 =[12 . . . n] is an identity permutation, and α=1, 2, . . . , n−1 is the row index of permutation array O n , also as an index of the number of permutations in the set O n . If and only if i) n is a prime; ii) for all α=1, 2, . . . , n−1, we have (α·n)(mod n)=n; then the set O n  is a subgroup of S n , all elements of the nth column in the array O n  are n, and the minimum distance of O n  is d O     n   =n−1 and its cardinality is |O n |=n−1. 
     Theorem 3 [constructing a permutation group code P n  by C n  and O n ]: For any prime n, let P n ={p 11 , . . . , p βα , . . . , p n(n−1) } be a nontrivial subgroup of S n , we use the composition of C n  and O n  to construct P n , i.e., P n ={{p βα } β=1   n } α=1   n-1 =C n O n ={{c β ∘o α } β=1   n } α=1   n-1 , where c β ∘o α  denotes a composition operation between a permutation c β ∈C n  and a permutation o α ∈O n . If C n ∩O n =e=[12 . . . n], then P n  is a permutation group code with the minimum Hamming distance d P     n   =n−1 and cardinality |P n |=n(n−1) in which C n  is a left coset of O n  and O n  is a right coset of C n . 
     Example 1 
     Let n=5, and C 5  is obtained by Lemma 1 as follows: 
     
       
         
           
             
               C 
               5 
             
             = 
             
               
                 { 
                 
                   
                     
                       
                         
                           c 
                           1 
                         
                         , 
                       
                     
                   
                   
                     
                       
                         
                           c 
                           2 
                         
                         , 
                       
                     
                   
                   
                     
                       
                         
                           c 
                           3 
                         
                         , 
                       
                     
                   
                   
                     
                       
                         
                           c 
                           4 
                         
                         , 
                       
                     
                   
                   
                     
                       
                         c 
                         5 
                       
                     
                   
                 
                 } 
               
               = 
               
                 
                   〈 
                   
                     c 
                     2 
                   
                   〉 
                 
                 = 
                 
                   
                     { 
                     
                       
                         
                           
                             
                               c 
                               2 
                               5 
                             
                             , 
                           
                         
                       
                       
                         
                           
                             
                               c 
                               2 
                               1 
                             
                             , 
                           
                         
                       
                       
                         
                           
                             
                               c 
                               2 
                               2 
                             
                             , 
                           
                         
                       
                       
                         
                           
                             
                               c 
                               2 
                               3 
                             
                             , 
                           
                         
                       
                       
                         
                           
                             c 
                             2 
                             4 
                           
                         
                       
                     
                     } 
                   
                   = 
                   
                     
                       〈 
                       
                         
                           γ 
                           2 
                         
                         ⁢ 
                         π 
                       
                       〉 
                     
                     = 
                     
                       
                         { 
                         
                           
                             
                               
                                 
                                   
                                     γ 
                                     2 
                                     5 
                                   
                                   ⁢ 
                                   π 
                                 
                                 , 
                               
                             
                           
                           
                             
                               
                                 
                                   
                                     γ 
                                     2 
                                     1 
                                   
                                   ⁢ 
                                   π 
                                 
                                 , 
                               
                             
                           
                           
                             
                               
                                 
                                   
                                     γ 
                                     2 
                                     2 
                                   
                                   ⁢ 
                                   π 
                                 
                                 , 
                               
                             
                           
                           
                             
                               
                                 
                                   
                                     γ 
                                     2 
                                     3 
                                   
                                   ⁢ 
                                   π 
                                 
                                 , 
                               
                             
                           
                           
                             
                               
                                 
                                   γ 
                                   2 
                                   4 
                                 
                                 ⁢ 
                                 π 
                               
                             
                           
                         
                         } 
                       
                       = 
                       
                         
                           { 
                           
                             
                               
                                 
                                   
                                     
                                       
                                         ( 
                                         
                                           
                                             a 
                                             2 
                                           
                                           ⁢ 
                                           
                                             a 
                                             3 
                                           
                                           ⁢ 
                                           
                                             a 
                                             4 
                                           
                                           ⁢ 
                                           
                                             a 
                                             5 
                                           
                                           ⁢ 
                                           
                                             a 
                                             1 
                                           
                                         
                                         ) 
                                       
                                       5 
                                     
                                     ⁡ 
                                     
                                       [ 
                                       
                                         
                                           a 
                                           1 
                                         
                                         ⁢ 
                                         
                                           a 
                                           2 
                                         
                                         ⁢ 
                                         
                                           a 
                                           3 
                                         
                                         ⁢ 
                                         
                                           a 
                                           4 
                                         
                                         ⁢ 
                                         
                                           a 
                                           5 
                                         
                                       
                                       ] 
                                     
                                   
                                   , 
                                 
                               
                             
                             
                               
                                 
                                   
                                     
                                       ( 
                                       
                                         
                                           a 
                                           2 
                                         
                                         ⁢ 
                                         
                                           a 
                                           3 
                                         
                                         ⁢ 
                                         
                                           a 
                                           4 
                                         
                                         ⁢ 
                                         
                                           a 
                                           5 
                                         
                                         ⁢ 
                                         
                                           a 
                                           1 
                                         
                                       
                                       ) 
                                     
                                     ⁡ 
                                     
                                       [ 
                                       
                                         
                                           a 
                                           1 
                                         
                                         ⁢ 
                                         
                                           a 
                                           2 
                                         
                                         ⁢ 
                                         
                                           a 
                                           3 
                                         
                                         ⁢ 
                                         
                                           a 
                                           4 
                                         
                                         ⁢ 
                                         
                                           a 
                                           5 
                                         
                                       
                                       ] 
                                     
                                   
                                   , 
                                 
                               
                             
                             
                               
                                 
                                   
                                     
                                       
                                         ( 
                                         
                                           
                                             a 
                                             2 
                                           
                                           ⁢ 
                                           
                                             a 
                                             3 
                                           
                                           ⁢ 
                                           
                                             a 
                                             4 
                                           
                                           ⁢ 
                                           
                                             a 
                                             5 
                                           
                                           ⁢ 
                                           
                                             a 
                                             1 
                                           
                                         
                                         ) 
                                       
                                       2 
                                     
                                     ⁡ 
                                     
                                       [ 
                                       
                                         
                                           a 
                                           1 
                                         
                                         ⁢ 
                                         
                                           a 
                                           2 
                                         
                                         ⁢ 
                                         
                                           a 
                                           3 
                                         
                                         ⁢ 
                                         
                                           a 
                                           4 
                                         
                                         ⁢ 
                                         
                                           a 
                                           5 
                                         
                                       
                                       ] 
                                     
                                   
                                   , 
                                 
                               
                             
                             
                               
                                 
                                   
                                     
                                       
                                         ( 
                                         
                                           
                                             a 
                                             2 
                                           
                                           ⁢ 
                                           
                                             a 
                                             3 
                                           
                                           ⁢ 
                                           
                                             a 
                                             4 
                                           
                                           ⁢ 
                                           
                                             a 
                                             5 
                                           
                                           ⁢ 
                                           
                                             a 
                                             1 
                                           
                                         
                                         ) 
                                       
                                       3 
                                     
                                     ⁡ 
                                     
                                       [ 
                                       
                                         
                                           a 
                                           1 
                                         
                                         ⁢ 
                                         
                                           a 
                                           2 
                                         
                                         ⁢ 
                                         
                                           a 
                                           3 
                                         
                                         ⁢ 
                                         
                                           a 
                                           4 
                                         
                                         ⁢ 
                                         
                                           a 
                                           45 
                                         
                                       
                                       ] 
                                     
                                   
                                   , 
                                 
                               
                             
                             
                               
                                 
                                   
                                     
                                       ( 
                                       
                                         
                                           a 
                                           2 
                                         
                                         ⁢ 
                                         
                                           a 
                                           3 
                                         
                                         ⁢ 
                                         
                                           a 
                                           4 
                                         
                                         ⁢ 
                                         
                                           a 
                                           5 
                                         
                                         ⁢ 
                                         
                                           a 
                                           1 
                                         
                                       
                                       ) 
                                     
                                     4 
                                   
                                   ⁡ 
                                   
                                     [ 
                                     
                                       
                                         a 
                                         1 
                                       
                                       ⁢ 
                                       
                                         a 
                                         2 
                                       
                                       ⁢ 
                                       
                                         a 
                                         3 
                                       
                                       ⁢ 
                                       
                                         a 
                                         4 
                                       
                                       ⁢ 
                                       
                                         a 
                                         5 
                                       
                                     
                                     ] 
                                   
                                 
                               
                             
                           
                           } 
                         
                         = 
                         
                           
                             { 
                             
                               
                                 
                                   
                                     
                                       
                                         a 
                                         1 
                                       
                                       ⁢ 
                                       
                                         a 
                                         2 
                                       
                                       ⁢ 
                                       
                                         a 
                                         3 
                                       
                                       ⁢ 
                                       
                                         a 
                                         4 
                                       
                                       ⁢ 
                                       
                                         a 
                                         5 
                                       
                                     
                                     , 
                                   
                                 
                               
                               
                                 
                                   
                                     
                                       
                                         a 
                                         2 
                                       
                                       ⁢ 
                                       
                                         a 
                                         3 
                                       
                                       ⁢ 
                                       
                                         a 
                                         4 
                                       
                                       ⁢ 
                                       
                                         a 
                                         5 
                                       
                                       ⁢ 
                                       
                                         a 
                                         1 
                                       
                                     
                                     , 
                                   
                                 
                               
                               
                                 
                                   
                                     
                                       
                                         a 
                                         3 
                                       
                                       ⁢ 
                                       
                                         a 
                                         4 
                                       
                                       ⁢ 
                                       
                                         a 
                                         5 
                                       
                                       ⁢ 
                                       
                                         a 
                                         1 
                                       
                                       ⁢ 
                                       
                                         a 
                                         2 
                                       
                                     
                                     , 
                                   
                                 
                               
                               
                                 
                                   
                                     
                                       
                                         a 
                                         4 
                                       
                                       ⁢ 
                                       
                                         a 
                                         5 
                                       
                                       ⁢ 
                                       
                                         a 
                                         1 
                                       
                                       ⁢ 
                                       
                                         a 
                                         2 
                                       
                                       ⁢ 
                                       
                                         a 
                                         3 
                                       
                                     
                                     , 
                                   
                                 
                               
                               
                                 
                                   
                                     
                                       a 
                                       5 
                                     
                                     ⁢ 
                                     
                                       a 
                                       1 
                                     
                                     ⁢ 
                                     
                                       a 
                                       2 
                                     
                                     ⁢ 
                                     
                                       a 
                                       3 
                                     
                                     ⁢ 
                                     
                                       a 
                                       4 
                                     
                                   
                                 
                               
                             
                             } 
                           
                           = 
                           
                             { 
                             
                               
                                 
                                   
                                     12345 
                                     , 
                                   
                                 
                               
                               
                                 
                                   
                                     23451 
                                     , 
                                   
                                 
                               
                               
                                 
                                   
                                     34512 
                                     , 
                                   
                                 
                               
                               
                                 
                                   
                                     45123 
                                     , 
                                   
                                 
                               
                               
                                 
                                   51234 
                                 
                               
                             
                             } 
                           
                         
                       
                     
                   
                 
               
             
           
         
       
     
     O 5  in a form of permutation array is obtained by Theorem 2 as follows: 
     
       
         
           
             
               O 
               5 
             
             = 
             
               
                 [ 
                 
                   
                     
                       
                         o 
                         1 
                       
                     
                   
                   
                     
                       
                         o 
                         2 
                       
                     
                   
                   
                     
                       
                         o 
                         3 
                       
                     
                   
                   
                     
                       
                         o 
                         4 
                       
                     
                   
                 
                 ] 
               
               = 
               
                 
                   [ 
                   
                     
                       
                         
                           1 
                           ⁢ 
                           
                             o 
                             1 
                           
                         
                       
                     
                     
                       
                         
                           1 
                           ⁢ 
                           
                             o 
                             2 
                           
                         
                       
                     
                     
                       
                         
                           3 
                           ⁢ 
                           
                             o 
                             1 
                           
                         
                       
                     
                     
                       
                         
                           4 
                           ⁢ 
                           
                             o 
                             1 
                           
                         
                       
                     
                   
                   ] 
                 
                 = 
                 
                   
                     
                       [ 
                       
                         
                           
                             
                               1 
                               · 
                               1 
                             
                           
                           
                             
                               1 
                               · 
                               2 
                             
                           
                           
                             
                               1 
                               · 
                               3 
                             
                           
                           
                             
                               1 
                               · 
                               4 
                             
                           
                           
                             
                               1 
                               · 
                               5 
                             
                           
                         
                         
                           
                             
                               2 
                               · 
                               1 
                             
                           
                           
                             
                               2 
                               · 
                               2 
                             
                           
                           
                             
                               2 
                               · 
                               3 
                             
                           
                           
                             
                               2 
                               · 
                               4 
                             
                           
                           
                             
                               2 
                               · 
                               5 
                             
                           
                         
                         
                           
                             
                               3 
                               · 
                               1 
                             
                           
                           
                             
                               3 
                               · 
                               2 
                             
                           
                           
                             
                               3 
                               · 
                               3 
                             
                           
                           
                             
                               3 
                               · 
                               4 
                             
                           
                           
                             
                               3 
                               · 
                               5 
                             
                           
                         
                         
                           
                             
                               4 
                               · 
                               1 
                             
                           
                           
                             
                               4 
                               · 
                               2 
                             
                           
                           
                             
                               4 
                               · 
                               3 
                             
                           
                           
                             
                               4 
                               · 
                               4 
                             
                           
                           
                             
                               4 
                               · 
                               5 
                             
                           
                         
                       
                       ] 
                     
                     ⁢ 
                     
                       ( 
                       
                         mod 
                         ⁢ 
                         
                             
                         
                         ⁢ 
                         5 
                       
                       ) 
                     
                   
                   = 
                   
                     
                       
                         [ 
                         
                           
                             
                               1 
                             
                             
                               2 
                             
                             
                               3 
                             
                             
                               4 
                             
                             
                               5 
                             
                           
                           
                             
                               2 
                             
                             
                               4 
                             
                             
                               6 
                             
                             
                               8 
                             
                             
                               10 
                             
                           
                           
                             
                               3 
                             
                             
                               6 
                             
                             
                               9 
                             
                             
                               12 
                             
                             
                               15 
                             
                           
                           
                             
                               4 
                             
                             
                               8 
                             
                             
                               12 
                             
                             
                               16 
                             
                             
                               20 
                             
                           
                         
                         ] 
                       
                       ⁢ 
                       
                         ( 
                         
                           mod 
                           ⁢ 
                           
                               
                           
                           ⁢ 
                           5 
                         
                         ) 
                       
                     
                     = 
                     
                       [ 
                       
                         
                           
                             1 
                           
                           
                             2 
                           
                           
                             3 
                           
                           
                             4 
                           
                           
                             5 
                           
                         
                         
                           
                             2 
                           
                           
                             4 
                           
                           
                             1 
                           
                           
                             3 
                           
                           
                             5 
                           
                         
                         
                           
                             3 
                           
                           
                             1 
                           
                           
                             4 
                           
                           
                             2 
                           
                           
                             5 
                           
                         
                         
                           
                             4 
                           
                           
                             3 
                           
                           
                             2 
                           
                           
                             1 
                           
                           
                             5 
                           
                         
                       
                       ] 
                     
                   
                 
               
             
           
         
       
     
     So that O 5  in a form of set is obtained as follows: 
     
       
         
           
             
               O 
               5 
             
             = 
             
               
                 { 
                 
                   
                     
                       
                         o 
                         1 
                       
                     
                   
                   
                     
                       
                         o 
                         2 
                       
                     
                   
                   
                     
                       
                         o 
                         3 
                       
                     
                   
                   
                     
                       
                         o 
                         4 
                       
                     
                   
                 
                 } 
               
               = 
               
                 
                   { 
                   
                     
                       
                         
                           
                             
                               a 
                               1 
                             
                             ⁢ 
                             
                               a 
                               2 
                             
                             ⁢ 
                             
                               a 
                               3 
                             
                             ⁢ 
                             
                               a 
                               4 
                             
                             ⁢ 
                             
                               a 
                               5 
                             
                           
                           , 
                         
                       
                     
                     
                       
                         
                           
                             
                               a 
                               2 
                             
                             ⁢ 
                             
                               a 
                               4 
                             
                             ⁢ 
                             
                               a 
                               1 
                             
                             ⁢ 
                             
                               a 
                               3 
                             
                             ⁢ 
                             
                               a 
                               5 
                             
                           
                           , 
                         
                       
                     
                     
                       
                         
                           
                             
                               a 
                               3 
                             
                             ⁢ 
                             
                               a 
                               1 
                             
                             ⁢ 
                             
                               a 
                               4 
                             
                             ⁢ 
                             
                               a 
                               2 
                             
                             ⁢ 
                             
                               a 
                               5 
                             
                           
                           , 
                         
                       
                     
                     
                       
                         
                           
                             a 
                             4 
                           
                           ⁢ 
                           
                             a 
                             3 
                           
                           ⁢ 
                           
                             a 
                             2 
                           
                           ⁢ 
                           
                             a 
                             1 
                           
                           ⁢ 
                           
                             a 
                             5 
                           
                         
                       
                     
                   
                   } 
                 
                 = 
                 
                   
                     { 
                     
                       
                         
                           
                             12345 
                             , 
                           
                         
                       
                       
                         
                           
                             24135 
                             , 
                           
                         
                       
                       
                         
                           
                             31425 
                             , 
                           
                         
                       
                       
                         
                           43215 
                         
                       
                     
                     } 
                   
                   . 
                 
               
             
           
         
       
     
     Let c 1 =o 1 =e=[12345], and P 5  is obtained by Theorem 3 as follows: 
     
       
         
           
             
               P 
               5 
             
             = 
             
               
                 
                   { 
                   
                     
                       { 
                       
                         p 
                         βα 
                       
                       } 
                     
                     
                       β 
                       = 
                       1 
                     
                     5 
                   
                   } 
                 
                 
                   α 
                   - 
                   1 
                 
                 4 
               
               = 
               
                 
                   { 
                   
                     
                       { 
                       
                         
                           C 
                           5 
                         
                         ⁢ 
                         
                           o 
                           1 
                         
                       
                       ) 
                     
                     , 
                     
                       { 
                       
                         
                           C 
                           5 
                         
                         ⁢ 
                         
                           o 
                           2 
                         
                       
                       } 
                     
                     , 
                     
                       { 
                       
                         
                           C 
                           5 
                         
                         ⁢ 
                         
                           o 
                           3 
                         
                       
                       } 
                     
                     , 
                     
                       { 
                       
                         
                           C 
                           5 
                         
                         ⁢ 
                         
                           o 
                           4 
                         
                       
                       } 
                     
                   
                   } 
                 
                 = 
                 
                   
                     
                       { 
                       
                         
                           { 
                           
                             
                               c 
                               β 
                             
                             ∘ 
                             
                               o 
                               α 
                             
                           
                           } 
                         
                         
                           β 
                           = 
                           1 
                         
                         5 
                       
                       } 
                     
                     
                       α 
                       = 
                       1 
                     
                     4 
                   
                   = 
                   
                     
                       { 
                       
                         
                           
                             
                               
                                 
                                   c 
                                   1 
                                 
                                 ∘ 
                                 
                                   o 
                                   1 
                                 
                               
                               , 
                             
                           
                           
                             
                               
                                 
                                   c 
                                   1 
                                 
                                 ∘ 
                                 
                                   o 
                                   2 
                                 
                               
                               , 
                             
                           
                           
                             
                               
                                 
                                   c 
                                   1 
                                 
                                 ∘ 
                                 
                                   o 
                                   3 
                                 
                               
                               , 
                             
                           
                           
                             
                               
                                 
                                   c 
                                   1 
                                 
                                 ∘ 
                                 
                                   o 
                                   4 
                                 
                               
                               , 
                             
                           
                         
                         
                           
                             
                               
                                 
                                   c 
                                   2 
                                 
                                 ∘ 
                                 
                                   o 
                                   1 
                                 
                               
                               , 
                             
                           
                           
                             
                               
                                 
                                   c 
                                   2 
                                 
                                 ∘ 
                                 
                                   o 
                                   2 
                                 
                               
                               , 
                             
                           
                           
                             
                               
                                 
                                   c 
                                   2 
                                 
                                 ∘ 
                                 
                                   o 
                                   3 
                                 
                               
                               , 
                             
                           
                           
                             
                               
                                 
                                   c 
                                   2 
                                 
                                 ∘ 
                                 
                                   o 
                                   4 
                                 
                               
                               , 
                             
                           
                         
                         
                           
                             
                               
                                 
                                   c 
                                   3 
                                 
                                 ∘ 
                                 
                                   o 
                                   1 
                                 
                               
                               , 
                             
                           
                           
                             
                               
                                 
                                   c 
                                   3 
                                 
                                 ∘ 
                                 
                                   o 
                                   2 
                                 
                               
                               , 
                             
                           
                           
                             
                               
                                 
                                   c 
                                   3 
                                 
                                 ∘ 
                                 
                                   o 
                                   3 
                                 
                               
                               , 
                             
                           
                           
                             
                               
                                 
                                   c 
                                   3 
                                 
                                 ∘ 
                                 
                                   o 
                                   4 
                                 
                               
                               , 
                             
                           
                         
                         
                           
                             
                               
                                 
                                   c 
                                   4 
                                 
                                 ∘ 
                                 
                                   o 
                                   1 
                                 
                               
                               , 
                             
                           
                           
                             
                               
                                 
                                   c 
                                   4 
                                 
                                 ∘ 
                                 
                                   o 
                                   2 
                                 
                               
                               , 
                             
                           
                           
                             
                               
                                 
                                   c 
                                   4 
                                 
                                 ∘ 
                                 
                                   o 
                                   3 
                                 
                               
                               , 
                             
                           
                           
                             
                               
                                 
                                   c 
                                   4 
                                 
                                 ∘ 
                                 
                                   o 
                                   4 
                                 
                               
                               , 
                             
                           
                         
                         
                           
                             
                               
                                 
                                   c 
                                   5 
                                 
                                 ∘ 
                                 
                                   o 
                                   1 
                                 
                               
                               , 
                             
                           
                           
                             
                               
                                 
                                   c 
                                   5 
                                 
                                 ∘ 
                                 
                                   o 
                                   2 
                                 
                               
                               , 
                             
                           
                           
                             
                               
                                 
                                   c 
                                   5 
                                 
                                 ∘ 
                                 
                                   o 
                                   3 
                                 
                               
                               , 
                             
                           
                           
                             
                               
                                 
                                   c 
                                   5 
                                 
                                 ∘ 
                                 
                                   o 
                                   4 
                                 
                               
                               , 
                             
                           
                         
                       
                       } 
                     
                     = 
                     
                       
                         { 
                         
                           
                             
                               
                                 
                                   
                                     a 
                                     1 
                                   
                                   ⁢ 
                                   
                                     a 
                                     2 
                                   
                                   ⁢ 
                                   
                                     a 
                                     3 
                                   
                                   ⁢ 
                                   
                                     a 
                                     4 
                                   
                                   ⁢ 
                                   
                                     a 
                                     5 
                                   
                                 
                                 , 
                               
                             
                             
                               
                                 
                                   
                                     a 
                                     2 
                                   
                                   ⁢ 
                                   
                                     a 
                                     4 
                                   
                                   ⁢ 
                                   
                                     a 
                                     1 
                                   
                                   ⁢ 
                                   
                                     a 
                                     3 
                                   
                                   ⁢ 
                                   
                                     a 
                                     5 
                                   
                                 
                                 , 
                               
                             
                             
                               
                                 
                                   
                                     a 
                                     3 
                                   
                                   ⁢ 
                                   
                                     a 
                                     1 
                                   
                                   ⁢ 
                                   
                                     a 
                                     4 
                                   
                                   ⁢ 
                                   
                                     a 
                                     2 
                                   
                                   ⁢ 
                                   
                                     a 
                                     5 
                                   
                                 
                                 , 
                               
                             
                             
                               
                                 
                                   
                                     a 
                                     4 
                                   
                                   ⁢ 
                                   
                                     a 
                                     3 
                                   
                                   ⁢ 
                                   
                                     a 
                                     2 
                                   
                                   ⁢ 
                                   
                                     a 
                                     1 
                                   
                                   ⁢ 
                                   
                                     a 
                                     5 
                                   
                                 
                                 , 
                               
                             
                           
                           
                             
                               
                                 
                                   
                                     a 
                                     2 
                                   
                                   ⁢ 
                                   
                                     a 
                                     3 
                                   
                                   ⁢ 
                                   
                                     a 
                                     4 
                                   
                                   ⁢ 
                                   
                                     a 
                                     5 
                                   
                                   ⁢ 
                                   
                                     a 
                                     1 
                                   
                                 
                                 , 
                               
                             
                             
                               
                                 
                                   
                                     a 
                                     3 
                                   
                                   ⁢ 
                                   
                                     a 
                                     4 
                                   
                                   ⁢ 
                                   
                                     a 
                                     2 
                                   
                                   ⁢ 
                                   
                                     a 
                                     4 
                                   
                                   ⁢ 
                                   
                                     a 
                                     1 
                                   
                                 
                                 , 
                               
                             
                             
                               
                                 
                                   
                                     a 
                                     4 
                                   
                                   ⁢ 
                                   
                                     a 
                                     2 
                                   
                                   ⁢ 
                                   
                                     a 
                                     5 
                                   
                                   ⁢ 
                                   
                                     a 
                                     3 
                                   
                                   ⁢ 
                                   
                                     a 
                                     1 
                                   
                                 
                                 , 
                               
                             
                             
                               
                                 
                                   
                                     a 
                                     5 
                                   
                                   ⁢ 
                                   
                                     a 
                                     4 
                                   
                                   ⁢ 
                                   
                                     a 
                                     3 
                                   
                                   ⁢ 
                                   
                                     a 
                                     2 
                                   
                                   ⁢ 
                                   
                                     a 
                                     1 
                                   
                                 
                                 , 
                               
                             
                           
                           
                             
                               
                                 
                                   
                                     a 
                                     3 
                                   
                                   ⁢ 
                                   
                                     a 
                                     4 
                                   
                                   ⁢ 
                                   
                                     a 
                                     5 
                                   
                                   ⁢ 
                                   
                                     a 
                                     1 
                                   
                                   ⁢ 
                                   
                                     a 
                                     2 
                                   
                                 
                                 , 
                               
                             
                             
                               
                                 
                                   
                                     a 
                                     4 
                                   
                                   ⁢ 
                                   
                                     a 
                                     1 
                                   
                                   ⁢ 
                                   
                                     a 
                                     3 
                                   
                                   ⁢ 
                                   
                                     a 
                                     5 
                                   
                                   ⁢ 
                                   
                                     a 
                                     2 
                                   
                                 
                                 , 
                               
                             
                             
                               
                                 
                                   
                                     a 
                                     5 
                                   
                                   ⁢ 
                                   
                                     a 
                                     3 
                                   
                                   ⁢ 
                                   
                                     a 
                                     1 
                                   
                                   ⁢ 
                                   
                                     a 
                                     4 
                                   
                                   ⁢ 
                                   
                                     a 
                                     2 
                                   
                                 
                                 , 
                               
                             
                             
                               
                                 
                                   
                                     a 
                                     1 
                                   
                                   ⁢ 
                                   
                                     a 
                                     5 
                                   
                                   ⁢ 
                                   
                                     a 
                                     4 
                                   
                                   ⁢ 
                                   
                                     a 
                                     3 
                                   
                                   ⁢ 
                                   
                                     a 
                                     2 
                                   
                                 
                                 , 
                               
                             
                           
                           
                             
                               
                                 
                                   
                                     a 
                                     4 
                                   
                                   ⁢ 
                                   
                                     a 
                                     5 
                                   
                                   ⁢ 
                                   
                                     a 
                                     1 
                                   
                                   ⁢ 
                                   
                                     a 
                                     2 
                                   
                                   ⁢ 
                                   
                                     a 
                                     3 
                                   
                                 
                                 , 
                               
                             
                             
                               
                                 
                                   
                                     a 
                                     5 
                                   
                                   ⁢ 
                                   
                                     a 
                                     2 
                                   
                                   ⁢ 
                                   
                                     a 
                                     4 
                                   
                                   ⁢ 
                                   
                                     a 
                                     1 
                                   
                                   ⁢ 
                                   
                                     a 
                                     3 
                                   
                                 
                                 , 
                               
                             
                             
                               
                                 
                                   
                                     a 
                                     1 
                                   
                                   ⁢ 
                                   
                                     a 
                                     4 
                                   
                                   ⁢ 
                                   
                                     a 
                                     2 
                                   
                                   ⁢ 
                                   
                                     a 
                                     5 
                                   
                                   ⁢ 
                                   
                                     a 
                                     3 
                                   
                                 
                                 , 
                               
                             
                             
                               
                                 
                                   
                                     a 
                                     2 
                                   
                                   ⁢ 
                                   
                                     a 
                                     1 
                                   
                                   ⁢ 
                                   
                                     a 
                                     5 
                                   
                                   ⁢ 
                                   
                                     a 
                                     4 
                                   
                                   ⁢ 
                                   
                                     a 
                                     3 
                                   
                                 
                                 , 
                               
                             
                           
                           
                             
                               
                                 
                                   
                                     a 
                                     5 
                                   
                                   ⁢ 
                                   
                                     a 
                                     1 
                                   
                                   ⁢ 
                                   
                                     a 
                                     2 
                                   
                                   ⁢ 
                                   
                                     a 
                                     3 
                                   
                                   ⁢ 
                                   
                                     a 
                                     4 
                                   
                                 
                                 , 
                               
                             
                             
                               
                                 
                                   
                                     a 
                                     1 
                                   
                                   ⁢ 
                                   
                                     a 
                                     3 
                                   
                                   ⁢ 
                                   
                                     a 
                                     5 
                                   
                                   ⁢ 
                                   
                                     a 
                                     2 
                                   
                                   ⁢ 
                                   
                                     a 
                                     4 
                                   
                                 
                                 , 
                               
                             
                             
                               
                                 
                                   
                                     a 
                                     2 
                                   
                                   ⁢ 
                                   
                                     a 
                                     5 
                                   
                                   ⁢ 
                                   
                                     a 
                                     3 
                                   
                                   ⁢ 
                                   
                                     a 
                                     1 
                                   
                                   ⁢ 
                                   
                                     a 
                                     4 
                                   
                                 
                                 , 
                               
                             
                             
                               
                                 
                                   a 
                                   3 
                                 
                                 ⁢ 
                                 
                                   a 
                                   2 
                                 
                                 ⁢ 
                                 
                                   a 
                                   1 
                                 
                                 ⁢ 
                                 
                                   a 
                                   5 
                                 
                                 ⁢ 
                                 
                                   a 
                                   4 
                                 
                               
                             
                           
                         
                         } 
                       
                       = 
                       
                         { 
                         
                           
                             
                               
                                 12345 
                                 , 
                               
                             
                             
                               
                                 24135 
                                 , 
                               
                             
                             
                               
                                 31425 
                                 , 
                               
                             
                             
                               
                                 43215 
                                 , 
                               
                             
                           
                           
                             
                               
                                 23451 
                                 , 
                               
                             
                             
                               
                                 35241 
                                 , 
                               
                             
                             
                               
                                 42531 
                                 , 
                               
                             
                             
                               
                                 54321 
                                 , 
                               
                             
                           
                           
                             
                               
                                 34512 
                                 , 
                               
                             
                             
                               
                                 41352 
                                 , 
                               
                             
                             
                               
                                 53142 
                                 , 
                               
                             
                             
                               
                                 15432 
                                 , 
                               
                             
                           
                           
                             
                               
                                 45123 
                                 , 
                               
                             
                             
                               
                                 52413 
                                 , 
                               
                             
                             
                               
                                 14253 
                                 , 
                               
                             
                             
                               
                                 21543 
                                 , 
                               
                             
                           
                           
                             
                               
                                 51234 
                                 , 
                               
                             
                             
                               
                                 13524 
                                 , 
                               
                             
                             
                               
                                 25314 
                                 , 
                               
                             
                             
                               32154 
                             
                           
                         
                         } 
                       
                     
                   
                 
               
             
           
         
       
     
     Example 1 illustrates P 5  is a permutation group code with a code length of 5, a minimum distance of 4, a code set size of 20 and an error-correcting capability of 3, and it can be seen that P 5  is formed by four orbits {C 5 o 1 }, {C 5 o 2 }, {C 5 o 3 }, {C 5 o 4 }. 
     Technical Solution 
     It is formed by two parts. The first part covers a construction method for a (n,n(n−1),n−1) permutation group code based on coset partition, and the second part covers a generator of this permutation group code thereof. 
     Part 1: a construction method for a (n,n(n−1),n−1) permutation group code based on coset partition. 
     In terms of Lemma 1 and Theorems 2 and 3, in the construction method for a (n,n(n−1),n−1) permutation group code based on coset partition, all codewords in the code set are calculated by P n ={{p βα } β=1   n } α=1   n-1 =C n O n ={{C n o 1 }, (C n o 2 ), . . . , {C n o n-1 }}={{c β ∘o α } α=1   n-1 } β=1   n , where P n  is a non-trivial subgroup of a symmetric group S n , with a size of |P n |=n(n−1) and a minimum distance of d |P     n     | , =n−1, C n ={c 1 , . . . , c β , . . . , c n }= c 2    is a subgroup of P n  and also a cyclic group with a size of |C n =n and a minimum distance of d |C     n     | =n, β=1, 2, . . . , n, O n ={o 1 , . . . , o α , . . . , o n-1 } is another subgroup of P n  different from C n  and also called as an orbit leader array of the (n,n(n−1),n−1) permutation group code, with a size of |O n |=n−1 and a minimum distance of d |O     n     | =n−1, α=1, 2, . . . , n−1, and intersection of C n  and O n  is an identity permutation (C n ∩O n =e). The code set P n  is divided into n−1 cosets by the subgroup C n  (P n ={C n o 1 , C n o 2 , . . . , C n o n-1 }), each coset {C n o α } forms an orbit or an cyclic Latin square (C-LS) of a permutation o α . 
     Each codeword of the code set is calculated by p βα =c β ∘o α  representing a composition operation between a permutation c β ∈C n  and a permutation o α ∈O n , which is unfavorable for hardware realization, and therefore a circuit executable permutation operation function should be constructed. Since C n  is a cyclic group, it is possible to substitute cyclic shift operation of a permutation for the action of C n , so that composition operation of two permutations are equivalently transferred to cyclic shift operation of being able to be performed by basic unit circuit namely cyclic shift register. Therefore, operation function and composite operation function are defined first as follows. 
     Construction of Operation Function 
     Let T be a set of all operation functions available acting on a permutation, construct a right-shift operation function set T right ={r 2 , r 3 , . . . , r n-1 , r n }⊂T, where each element r i ∈T right  is a function r i :S n →S n  defined by r i π=r i [a 1  . . . a i  . . . a n ]=[a i a 1  . . . a i−1 a i+1 , . . . a n ]∈S n , and r i ∈T right  is called as a partial cyclic right-shift operation function of a permutation. Especially for i=n, we have r n π=r n [a 1 a 2  . . . a n ]=[a n a 1 a 2  . . . a n-1 ]∈S n  and r n  is called as a cyclic-right-shift operation function of a permutation. Similarly, construct a left-shift operation function set T left ={l 1 , l 2 , . . . , l n-1 }⊂T, where each element l j ∈T left  is a function l j :S n →S n  defined by l j π=l j [a 1  . . . a j  . . . a n ]=[a 1  . . . a j−1 a j+1  . . . a n a j ]∈S n , and l j ∈T left  is called as a partial cyclic left-shift operation function of a permutation. Especially for j=1, we have l 1 π=l 1 [a 1 a 2  . . . a n ]=[a 2 a 3  . . . a n-1 a n a 1 ]∈S n  and l 1  is called as a cyclic-left-shift operation function of a permutation. 
     Construction of Cyclic Shift Composite Operation Function 
     Arrange part or all operation functions of the set T left  or T right  in a string or consecutive multiplication of powers of different functions, so that the operation function string or the product of function powers forms a composite operation function represented as ƒ CF (u,Λ), where u is the number of operation functions in the composite operation function ƒ CF (u,Λ), and Λ is an arranging rule of the operation functions, which is: some a function is repeatedly used for λ−1 times, and as λ=n, a left cycle composite operation function is constructed as 
                   f     CF   -   1       ⁡     (       n   -   1     ,   Λ     )       =           l   1     ⁢     l   1     ⁢           ⁢   …   ⁢           ⁢     l   1         ︸     n   -   1         =       (     l   1     )       n   -   1           ,         
and a right cycle composite operation function is constructed as
 
                 f     CF   -   r       ⁡     (       n   -   1     ,   Λ     )       =           r   n     ⁢     r   n     ⁢           ⁢   …   ⁢           ⁢     r   n         ︸     n   -   1         =         (     r   n     )       n   -   1       .             
Performing the two composite operation functions on a permutation π=[a 1 a 2  . . . a n ] respectively, two sets of n permutations are obtained as {(l 1 ) n-1 π} {π, l 1 π, l 1   2 π, . . . , l 1   n-1 π} and {(r n ) n-1 π} {π, r n π, r n   2 π, . . . , r n   n-1 π}. {(l 1 ) n-1 π} and {(r n ) n-1 π} are two orbits of the permutation π as the orbit {C n π}, we have {C n π}={(l 1 ) n-1 π}={(r n ) n-1 π}, namely, three orbits obtained by the three different operations form equivalence class but corresponding C-LSs are not equal each other because of different arrangement of permutations in these orbits.
 
     As a result, the cyclic group C n  of the code set P n ={C n O n } can be replaced by the left cycle composite operation function (l 1 ) n-1  or the right cycle composite operation function (r n ) n-1 , each orbit {C n o α } is obtained by {C n o α }={(r n ) n-1 o α }={(l 1 ) n-1 o α }, the expression enumerating all codewords is, P n =C n O n ={(r n ) n-1 O n }={{(r n ) n-1 o 1 }, {(r n ) n-1 o 2 }, . . . , {(r n ) n-1 o n-1 }}={(l 1 ) n-1 O n }={{(l 1 ) n-1 o 1 }, {(l 1 ) n-1 o 2 }, . . . , {(l 1 ) n-1 o n-1 }}. Structure features of the orbit leader array O n  provided by Theorem 2 are analyzed below and several different design methods are provided thereafter. 
     Structure Features of the Orbit Leader Array O n : 
     An orbit leader array of the presented (n,n(n−1),n−1) permutation group code has the following features: first, it is an array of (n−1)×n, each row thereof is a permutation of S n , and an unique column thereof contains a same element a k =k, where k,a k ∈Z n   0  or k,a k ∈Z n   1 ; second, removing the column containing the same element, residual rows and columns constitute a Latin square with a size of (n−1)×(n−1); and third, each row of the orbit leader array O n  has n different adjacent pairs (a μ ,a v ) containing cyclic adjacent pairs, and the orbit leader array O n  itself contains n(n−1) different adjacent (or cyclic adjacent) pairs, μ, v, a μ , a v ∈Z n   0  or μ, v, a μ , a v ∈Z n   1 , a μ ≠a v , and μ≠v. Generally, n(n−1) different pairs in a form of (a μ ,a v ) can be obtained as constructed by n positive integers, which is a sufficient condition for the orbit leader array containing n(n−1) different adjacent pairs. 
     Design Method of the Orbit Leader Array O n : 
     An orbit leader array meeting the above three structure features can be calculated by explicit expressions, and the following two design methods can be realized by hardwares for Theorem 2. 
     Method 1: A Permutation Contains Element 0 
     Let a α     1     ,β     1   ∈Z n   0 ={0, 1, . . . , n−1} denote an element in the α 1 th row and the β 1 th column of an array O n1 , where α 1 =0, 1, . . . , n−2 denotes the row index of the array O n1 , β 1 =0, 1, . . . , n−1 denotes the column index of the array O n1 , and k 1 =0, 1, . . . , n−1 denotes that all elements in the k 1 th column of the array O n1  equal k 1 ; as n is a prime, let a modular n of xn equal 0 if a α     1     ,β     1    is a multiple of n, namely a α     1     ,β     1   =xn(mod n)=0, where x could be any integer, and calculate each element of each permutation of the orbit leader array O n1  by:
 
 a   α     1     ,β     1   ( k )=[(α 1 +1)×(β 1   −k   1 )+ k   1 ](mod  n )  (i)
 
 O   n1 ( k )={ o   0   ,o   1   , . . . ,o   n-2   }={{a   α     1     ,β     1   ( k   1 )} α     1     =0   n-2 } β     1     =0   n-1 ( k   1 =0,1, . . . , n− 1)  (ii)
 
Method 2: A Permutation Contains No Element 0
 
     Let a α     2     ,β     2   ∈Z n   1 ={1, 2, . . . , n} denote an element in the α 2 th row and the β 2 th column of an array O n2 , where α 2 =1, 2, . . . , n−1 denotes the row index of the array O n2 , β 2 =1, 2 . . . , n denotes the column index of the array O n2 , and k 2 =1, 2, . . . , n denotes that all elements in the k 2 th column of the array O n2  equal k 2 ; as n is a prime, let a modular n of xn equal n if a α     2     ,β     2    is a multiple of n, namely a α     2     ,β     2   =xn(mod n)=n, where x could be any integer, and calculate an element of a permutation of the orbit leader array O n2  by:
 
 a   α     2     ,β     2   ( k   2 )=[α 2 (β 2   −k   2 )+ k   2 ](mod  n )  (iii)
 
 O   n2 ( k   2 )={ o   1   ,o   2   , . . . ,o   n-1   }={{a   α     2     ,β     2   ( k   2 )} α     2     =1   n-1 } β     2     =1   n ( k   2 =1,2, . . . , n )  (iv)
 
     As k 2 =n, equations (iii) and (iv) in method 2 can be simplified as:
 
 a   α,β ( n )=[α·β](mod  n ) for α=1,2, . . . , n− 1 and β=1, 2, . . . ,  n   (v)
 
 O   n   ={o   1   ,o   2   , . . . ,o   n-1   }={{a   α,β ( n )} β=1   n } α=1   n-1 =[[α·β] β=1   n ] α=1   n-1 (mod  n )={α· o   1 } α=1   n-1 (mod  n )  (vi)
 
     Calculation of equation (vi) is the same as that of O n  in Theorem 2. 
     Example 2 
     Let n=5, according to the design method 1, if a α     1     ,β     1   ∈Z n   0 , c 0 =o 0 =e=[01234], and each element of each permutation of O n1 (k 1 ) is calculated by a α     1     ,β     1   (k 1 )=[(α 1 +1)×(β 1 −k 1 )+k 1 ](mod n), different orbit leader arrays can be calculated by O n1 (k 1 ) in equation (ii) as follows as k 1 =0, 1, 2, 3, 4: 
     
       
         
           
             
               
                 { 
                 
                   
                     
                       
                         01234 
                         , 
                       
                     
                   
                   
                     
                       
                         02413 
                         , 
                       
                     
                   
                   
                     
                       
                         03142 
                         , 
                       
                     
                   
                   
                     
                       04321 
                     
                   
                 
                 } 
               
               
                 
                   k 
                   1 
                 
                 = 
                 0 
               
             
             ⁢ 
             
               
                 { 
                 
                   
                     
                       
                         01234 
                         , 
                       
                     
                   
                   
                     
                       
                         41302 
                         , 
                       
                     
                   
                   
                     
                       
                         31420 
                         , 
                       
                     
                   
                   
                     
                       21043 
                     
                   
                 
                 } 
               
               
                 
                   k 
                   1 
                 
                 = 
                 1 
               
             
             ⁢ 
             
               
                 { 
                 
                   
                     
                       
                         01234 
                         , 
                       
                     
                   
                   
                     
                       
                         30241 
                         , 
                       
                     
                   
                   
                     
                       
                         14203 
                         , 
                       
                     
                   
                   
                     
                       43210 
                     
                   
                 
                 } 
               
               
                 
                   k 
                   1 
                 
                 = 
                 2 
               
             
             ⁢ 
             
               
                 { 
                 
                   
                     
                       
                         01234 
                         , 
                       
                     
                   
                   
                     
                       
                         24130 
                         , 
                       
                     
                   
                   
                     
                       
                         42031 
                         , 
                       
                     
                   
                   
                     
                       10432 
                     
                   
                 
                 } 
               
               
                 
                   k 
                   1 
                 
                 = 
                 3 
               
             
             ⁢ 
             
               
                 { 
                 
                   
                     
                       
                         01234 
                         , 
                       
                     
                   
                   
                     
                       
                         13024 
                         , 
                       
                     
                   
                   
                     
                       
                         20314 
                         , 
                       
                     
                   
                   
                     
                       32104 
                     
                   
                 
                 } 
               
               
                 
                   k 
                   1 
                 
                 = 
                 4 
               
             
           
         
       
     
     Performing a cyclic-left-shift composite operation function (l 1 ) 4  or a cyclic-right-shift composite operation function (r 5 ) 4  on the above five orbit leader arrays of O n1 (k 1 ) (k 1 =0, 1, 2, 3, 4) respectively, ten equivalent permutation code sets can be obtained. 
     Let n=5, according to the design method 2 and a corresponding simplified alternative, if a α     2     ,β     2   ∈Z n   1 , c 1 =o 1 =e=[12345], and each element of each permutation is calculated by (iii) a α     2     ,β     2   (k 2 )=[α 2 (β 2 −k 2 )+k 2 ](mod n) or (v) a α,β (n)=[α·β](mod n), different orbit leader arrays can be calculated by O n2 (k 2 ) in equation (iv) and O n  in equation (vi) as follows as k 2 =1, 2, 3, 4, 5: 
     
       
         
           
             
               
                 
                   { 
                   
                     
                       
                         
                           12345 
                           , 
                         
                       
                     
                     
                       
                         
                           13524 
                           , 
                         
                       
                     
                     
                       
                         
                           14235 
                           , 
                         
                       
                     
                     
                       
                         15432 
                       
                     
                   
                   } 
                 
                 
                   
                     k 
                     2 
                   
                   = 
                   1 
                 
               
               ⁢ 
               
                 
                   { 
                   
                     
                       
                         
                           12345 
                           , 
                         
                       
                     
                     
                       
                         
                           52413 
                           , 
                         
                       
                     
                     
                       
                         
                           42531 
                           , 
                         
                       
                     
                     
                       
                         32154 
                       
                     
                   
                   } 
                 
                 
                   
                     k 
                     2 
                   
                   = 
                   2 
                 
               
               ⁢ 
               
                 
                   { 
                   
                     
                       
                         
                           12345 
                           , 
                         
                       
                     
                     
                       
                         
                           41352 
                           , 
                         
                       
                     
                     
                       
                         
                           25314 
                           , 
                         
                       
                     
                     
                       
                         54321 
                       
                     
                   
                   } 
                 
                 
                   
                     k 
                     2 
                   
                   = 
                   3 
                 
               
               ⁢ 
               
                 
                   { 
                   
                     
                       
                         
                           12345 
                           , 
                         
                       
                     
                     
                       
                         
                           35241 
                           , 
                         
                       
                     
                     
                       
                         
                           53142 
                           , 
                         
                       
                     
                     
                       
                         21543 
                       
                     
                   
                   } 
                 
                 
                   
                     k 
                     2 
                   
                   = 
                   4 
                 
               
               ⁢ 
               
                 
                   { 
                   
                     
                       
                         
                           12345 
                           , 
                         
                       
                     
                     
                       
                         
                           24135 
                           , 
                         
                       
                     
                     
                       
                         
                           31425 
                           , 
                         
                       
                     
                     
                       
                         43215 
                       
                     
                   
                   } 
                 
                 
                   
                     k 
                     2 
                   
                   = 
                   5 
                 
               
               ⁢ 
               
                   
               
               ⁢ 
               
                 O 
                 5 
               
             
             = 
             
               { 
               
                 
                   
                     
                       12345 
                       , 
                     
                   
                 
                 
                   
                     
                       24135 
                       , 
                     
                   
                 
                 
                   
                     
                       31425 
                       , 
                     
                   
                 
                 
                   
                     43215 
                   
                 
               
               } 
             
           
         
       
     
     Performing a cyclic-left-shift composite operation function (l 1 ) 4  or a cyclic-right-shift composite operation function (r 5 ) 4  on five orbit leader arrays of O n2 (k 2 ) (k 2 =1, 2, 3, 4, 5) and a simplified orbit leader array O 5  respectively, 12 permutation code sets obtained are equivalent to the code set of the (n,n(n−1),n−1) permutation group code obtained by composition operations, namely, for k=1, 2, 3, 4, 5, 
               P   5     =         C   5     ⁢     O   5       =       {         (     r   5     )     4     ⁢       O   52     ⁡     (     k   2     )         }     =       {         (     l   1     )     4     ⁢       O   52     ⁡     (     k   2     )         }     =       {         (     r   5     )     4     ⁢     O   5       }     =       {         (     l   1     )     4     ⁢     O   5       }     =     {           12345   ,           24135   ,           31425   ,           43215   ,               23451   ,           35241   ,           42531   ,           54321   ,               34512   ,           41352   ,           53142   ,           15432   ,               45123   ,           52413   ,           14253   ,           21543   ,               51234   ,           13524   ,           25314   ,         32154         }                     
Part 2: Structure Design of a Generator of the (n,n(n−1),n−1) Permutation Group Code Based on Coset Partition
 
     Illustration of the generator comprises 4 parts: generator architecture, orbit leader array generator, flash memory and cyclic-bidirectional-shift register group. 
     Binary Expression of a Permutation: 
     If m-bit binary data are used to express elements of a permutation with a length of n, the permutation can be described by a binary array of m×n, and 2 m-1 +1≤n≤2 m . 
     Generator Architecture of the Presented Code Set 
     As in  FIG. 1 , the generator architecture of the presented code set is formed by 3 parts: an orbit leader array generator, a flash memory and a cyclic-bidirectional-shift register group. A schematic circuit of the orbit leader array generator is designed based on equations (i)˜(vi), a specific working process is performing an operation of {αo 1 } α=1   n-1 (mod n) to generate an orbit leader array O n ={o 1 , o 2 , . . . , o n-1 } containing n−1 permutations. The flash memory is operable for storing an output result O n ={o 1 , o 2 , . . . , o n-1 } of the orbit leader array generator and an output result P n ={{(l 1 ) n-1 o 1 }, {(l 1 ) n-1 o 2 }, . . . , {(l 1 ) n-1 o n-1 }} or P n ={{(r n ) n-1 o 1 }, {(r n ) n-1 o 2 }, . . . , {(r n ) n-1 o n-1 }} of the cyclic-bidirectional-shift register group. The cyclic-bidirectional-shift register group is operable for performing an operation on a permutation by a cyclic-left-shift composite operation function (l 1 ) n-1  or a cyclic-right-shift composite operation function (r n ) n-1  (specifically, performing cyclic shift on a permutation o α  to a left or right direction for n−1 times) calculating an orbit {(l 1 ) n-1 o α } or {(r n ) n-1 o α } of an orbit leader permutation o α , where α=1, 2, . . . , n−1. For an orbit {(l 1 ) n-1 o α } or {(r n ) n-1 o α } contains n permutations, a (n,n(n−1),n−1) permutation group code based on coset partition can be generated by repeating generating process of each orbit for n−1 times, and a specific calculating equation thereof is: P n =C n O n ={(l 1 ) n-1 O n }={{(l 1 ) n-1 o 1 }, {(l 1 ) n-1 o 2 }, . . . , {(l 1 ) n-1 o n-1 }} or P n =C n O n ={(r n ) n-1 O n }={{(r n ) n-1 o 1 }, {(r n ) n-1 o 2 }, . . . , {(r n ) n-1 o n-1 }}. 
     The orbit leader array generator is shown in  FIG. 2  and structural parameters thereof are designed as follows with an optimum circuit structure. To avoid amplitude values attenuating to 0 under fading interference conflicting with code element 0 in a code, set a α,β ∈Z n   1  to ensure absence of element 0 in each permutation code, where n is an arbitrary prime. To facilitate code element tracking, let k 2 =n which means that all elements of the last column of the orbit leader array are the same with a value of n, so that equation (iii) can be simplified to an equation (v): a α,β (n)=[α·β](mod n), and calculation of the orbit leader array O n  can be simplified to O n ={o 1 , o 2 , . . . , o n-1 }={αo 1 } α=1   n-1 (mod n), where α=1, 2, . . . , n−1 representing that n−1 permutations are contained in the orbit leader array, and β=1, 2, . . . , n representing that n elements are contained in each permutation. 
     The orbit leader array generator is operable for performing an operation of O n ={αo 1 } α=1   n-1 (mod n)={o 1 , 2o 1 , . . . , (n−1)o 1 }(mod n) to generate n−1 orbit leader permutations as an initial permutation is o 1 =e=[12 . . . n], and transmitting each of the permutations to the flash memory right after it is generated. 
     The orbit leader array generator further comprises 5 parts: n parallel running input buffers ( 10 ), n parallel running positive integer adders ( 11 ), n parallel running mod n calculators ( 12 ), n parallel running output buffers ( 13 ), an n-input single-output switch ( 14 ) and an enable signal generator ( 15 ). Working principle of each part is described below. 
     The n parallel running input buffers ( 10 ) are formed by n m-bit binary registers, each binary register stores one of n input data as an m-bit binary data, an input and an output of each register are connected to m parallel data lines respectively, and the orbit leader generator starts to work after inputting the initial permutation o 1 =e=[12 . . . n] into the n parallel running input buffers ( 10 ). The n parallel running positive integer adders are operable for converting multiple operations in O n ={αo 1 } α=1   n-1 ={o 1 , 2o 1 , . . . , (n−1)o 1 } to accumulating operations on each element of the initial permutation o 1 =[12 . . . n], namely, mainly performing an operation of {αo 1 } α=1   n-1 . Initial identity permutation requires no accumulation and can be transmitted directly to an output buffer, so that calculation of the set {αo 1 } α=1   n-1  needs n−2 accumulations. Each positive integer adder is formed by m′ binary full-adders and an m′-bit B register, with m parallel input data lines and m′ parallel output data lines, and m&lt;m′≤┌log 2 (n−1) 2 ┐, an input of the binary full-adder is operable for receiving data from the input buffer, another input of the binary full-adder is connected to an output of the B register, and an output of the binary full-adder is connected to an input of the B register. As an enable signal E=1, each adder performs an addition between a last summation result (data in the B register) and an input of a corresponding parallel running input buffer ( 10 ), stores a result thereof in the B register and transmits the result to a corresponding parallel running mod n calculator ( 12 ); as the enable signal E=0, the n parallel running positive integer adders do not work. 
     The n parallel running mod n calculators ( 12 ) are operable for performing an operation of {αo 1 } α=1   n-1 (mod n), namely, performing mod n operations on data from the B register in the n parallel running positive integer adders, each mod n calculator is formed by a two-input single-output general mod n calculator, an m-bit C register and an m-bit D register, with m′ parallel input data lines and m parallel output data lines, an input of the general mod n calculator is connected to the output of the m′-bit B register through m′ parallel input data lines, another input of the general mod n calculator is connected to an output of the m-bit C register through m parallel output data lines, an output of the general mod n calculator is facilitated with m parallel output data lines, the m-bit C register is operable for storing and maintaining an m-bit binary value corresponding to n, the m-bit D register is operable for storing output values of said general mod n calculator, and a data |x| stored in the m-bit D register is output as it is not 0, otherwise a data stored in the m-bit C register is output. 
     The n parallel running output buffers ( 13 ) are formed by n m-bit registers, with the same structure as the n parallel running input buffers ( 10 ), operable for storing current orbit leader permutation, and as the (n−1)th buffer of the n parallel running output buffers ( 13 ) is prepared with current data, a signal is transmitted the first switch of the n-input single-output switch ( 14 ) so that this first switch is on. 
     The n-input single-output switch ( 14 ) is operable for serially transmitting each of the n data from the n parallel running output buffers ( 13 ) to a bus. m data lines of each output buffer are connected to an m-paralleled bus by a corresponding turn-on switch, the signal of closing a switch is transmitted to the first switch of the n-input single-output switch ( 14 ) as the (n−1) th buffer of the n parallel running output buffers is prepared with current data, and as the n th switch of the n-input single-output switch is on, the final data of a codeword is transmitted to the flash memory by the bus and a high level signal is transmitted to an input of the enable signal generator ( 15 ). 
     The enable signal generator ( 15 ) is operable for providing enable signals for the n parallel running positive integer adders ( 11 ) and formed by a binary plus 1 counter and a monostable flip-flop, with an input line and an output line which outputs a low level at a normal state, an input of the enable signal generator is connected to an output controlling signal line of the nth switch of the n-input single-output switch ( 14 ), an output of the enable signal generator is connected to enable terminals of the n parallel running positive integer adders ( 11 ), as the n th switch of the n-input single-output switch ( 14 ) is on, the enable signal generator ( 15 ) is enabled, the binary plus 1 counter performs an add-one operation, the monostable flip-flop generates a high level impulse with a width of a cp and transmits it to enable terminals of the n parallel running positive integer adders ( 11 ) to set E=1, and as the nth switch of the n-input single-output switch ( 14 ) is oft the enable signal generator ( 15 ) is disabled and E=0 is maintained. As the binary plus 1 counter performs n−1 add-one operations, the enable signal generator ( 15 ) outputs a low level. 
     The flash memory is shown in  FIG. 3 , which may be a read only (ROM), programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM) or an electrically erasable programmable read-only memory (E 2 PROM). 
     In the flash memory ( 16 ), each element of a permutation is represented by an m-bit binary data, e.g. the first element of a permutation is represented by an m-bit binary data b 1,1 , b 2,1 , . . . , b m-1,1 , b m,1 , the last element of a permutation is represented by an m-bit binary data b 1,n , b 2,n , . . . , b m-1,n , b m,n , b i,j  is binary 0 or 1, i=0, 1, . . . , m−1, and j=0, 1, . . . , n−1. m-bit binary data of an element of a permutation occupies m memory cells defined as an element storage word, a permutation occupies n element storage words, n−1 orbit leader permutations occupy n(n−1) element storage words, and n(n−1) permutation codewords occupy n 2 (n−1) element storage words. The flash memory ( 16 ) is facilitated with an m-bit parallel data input and an m-bit parallel data output. An m-bit data of an element storage word are input in parallel as Wr=1, an m-bit data of an element storage word are output in parallel as Rd=1, and the flash memory ( 16 ) is disabled as Wr=0 and Rd=0. 
     The cyclic-bidirectional-shift register group is shown in  FIG. 4 . The cyclic-bidirectional-shift register group ( 17 ) is operable for performing an operation on a permutation by a cyclic-left-shift composite operation function (l 1 ) n-1  or a cyclic-right-shift composite operation function (r n ) n-1  calculating an orbit {(l 1 ) n-1 o α } or {(r n ) n-1 o α } of an orbit leader permutation o α , and a code set {(l 1 ) n-1 O n } or {(r n ) n-1 O n }. Each element of an n-dimensional permutation vector can be expressed by an m-dimensional binary sequence and an n-dimensional permutation vector can be mapped into an m×n-dimensional binary array, corresponding to an m×n flip-flop array. A bidirectional register capable of shifting in both a left direction and a right direction cyclically is formed by n flip-flops in each of the m rows, namely, n flip-flops form a cyclic-bidirectional-shift register, m cyclic-bidirectional-shift registers are needed to form a cyclic-bidirectional-shift register group, e.g. the first cyclic-bidirectional-shift register is operable for storing an n-bit binary data b 1,1 , b 1,2 , . . . , b 1,n-1 , b 1,n  and the m th cyclic-bidirectional-shift register is operable for storing an n-bit binary data b m,1 , b m,2 , . . . , b m,n-1 , b m,n  (it should be noted that the array herein is m×n dimensional, and the flash memory ( 16 ) corresponds to an array of n×m). A switch ( 18 ) is serially connected to each of the cyclic-left-shift loops, m switches operates in parallel, a cyclic-left-shift operation is performed on m data in parallel by connecting the m switches, and a left-shift input operation and a left-shift output operation are performed on m data in parallel by disconnecting the m switches, and two inputs REG-in and REG-out are facilitated to provide four groups of control signals 00, 01, 10 and 11 corresponding to four working states of the cyclic-bidirectional-shift register group: left-shift input, left-shift output, cyclic-left-shift and cyclic-right-shift. Working process of the cyclic-bidirectional-shift register group ( 17 ) is described below. 
     Process a: input a permutation. As REG-in=0, REG-out=0 and Rd=1, the m parallel switches ( 18 ) of the cyclic-left-shift loops are disconnected, the first orbit leader permutation of the flash memory ( 16 ) is transmitted to the cyclic-bidirectional-shift register group ( 17 ), namely, the cyclic-bidirectional-shift register group performs an left-shift-input operation on m-bit binary in parallel in n times. 
     Process b: generate a new permutation by cyclic-left-shift. As REG-in=0 and REG-out=1, the m parallel switches ( 18 ) of the cyclic-left-shift loops are connected, and the cyclic-bidirectional-shift register group ( 17 ) performs a cyclic-left-shift operation on m-bit binary in parallel in n times to generate a new permutation. 
     Process c: output a permutation. As REG-in=1, REG-out=0 and Wr=1, the m parallel switches ( 18 ) of the cyclic-left-shift loops are connected, the cyclic-bidirectional-shift register group ( 17 ) performs the following two operations: transmitting a current permutation generated by Process b to the flash memory ( 16 ) by the left-shift-output operation on m-bit binary in parallel in n times, and performing a cyclic-left-shift operation on m-bit binary in parallel in n times, so that a permutation generated by Process b may be reserved. 
     Process d: generate an orbit {(l 1 ) n-1 o α }. It is formed by a combination of Process b and Process c with the m parallel switches ( 18 ) closed. Process b and Process c work alternately: this is that during an impulse of cp, REG-in=0 and REG-out=1, the cyclic-bidirectional-shift register group ( 17 ) performs a cyclic-left-shift operation of m-bit in parallel to generate a new permutation, and during each of the following n impulses of cp, REG-in=1, REG-out=0 and Wr=1, the cyclic-bidirectional-shift register group ( 17 ) simultaneously performs a left-shift operation to output a current permutation to the flash memory ( 16 ) for storage and a cyclic-left-shift operation to maintain this permutation by m-bit in parallel in n times. Process d is equivalent to performing an operation of (l 1 ) n-1  on an orbit leader permutation o α  to generate an orbit {(l 1 ) n-1 o α }, and storing n−1 permutations generated by the orbit {(l 1 ) n-1 o α } in the flash memory ( 16 ). 
     Process e: generate a code set {(l 1 ) n-1 O n }. It is formed by a combination of Process a and Process d, and a code set {(l 1 ) n-1 O n } of a (n,n(n−1),n−1) permutation group code based on coset partition is generated by repeating Process e for n−1 times. 
     Process b′: generate a new permutation by cyclic-right-shift. As REG-in=1 and REG-out=1, the m parallel switches ( 18 ) of the cyclic-left-shift loops are disconnected, and the cyclic-bidirectional-shift register group ( 17 ) performs a cyclic-right-shift operation on m-bit in parallel of length n to generate a new permutation. 
     Process d′: generate an orbit {(r n ) n-1 o α }. It is formed by a combination of Process b′ and Process c, equivalent to generating an orbit {(r n ) n-1 o α } of a permutation o α  and storing the orbit {(r n ) n-1 o α } in the flash memory ( 16 ). 
     Process e′: generate a code set {(r n ) n-1 O n }. It is formed by a combination of Process a and Process d′, and a code set {(r n ) n-1 O n } of a (n,n(n−1),n−1) permutation group code based on coset partition is generated by repeating Process e′ for n−1 times. 
     While preferred embodiments of the invention have been described above, the invention is not limited to disclosure in the embodiments and the accompanying drawings. Any changes or modifications without departing from the spirit of the invention fall within the scope of the invention.