20 research outputs found

    Improving the Berlekamp Algorithm for Binomials x n  − a

    Get PDF
    In this paper, we describe an improvement of the Berlekamp algorithm, a method for factoring univariate polynomials over finite fields, for binomials xn −a over finite fields Fq. More precisely, we give a deterministic algorithm for solving the equation h(x)q≡h(x) (mod xn−a) directly without applying the sweeping-out method to the corresponding coefficient matrix. We show that the factorization of binomials using the proposed method is performed in O˜, (n log q) operations in Fq if we apply a probabilistic version of the Berlekamp algorithm after the first step in which we propose an improvement. Our method is asymptotically faster than known methods in certain areas of q, n and as fast as them in other areas

    A Combinatorial Commutative Algebra Approach to Complete Decoding

    Get PDF
    Esta tesis pretende explorar el nexo de unión que existe entre la estructura algebraica de un código lineal y el proceso de descodificación completa. Sabemos que el proceso de descodificación completa para códigos lineales arbitrarios es NP-completo, incluso si se admite preprocesamiento de los datos. Nuestro objetivo es realizar un análisis algebraico del proceso de la descodificación, para ello asociamos diferentes estructuras matemáticas a ciertas familias de códigos. Desde el punto de vista computacional, nuestra descripción no proporciona un algoritmo eficiente pues nos enfrentamos a un problema de naturaleza NP. Sin embargo, proponemos algoritmos alternativos y nuevas técnicas que permiten relajar las condiciones del problema reduciendo los recursos de espacio y tiempo necesarios para manejar dicha estructura algebraica.Departamento de Algebra, Geometría y Topologí

    Part I:

    Get PDF

    Binääripolynomien tekijöihinjako

    Get PDF
    This thesis describes a solution to a cryptographic programming challenge originally posted by Nintendo in order to gain job applicants. The encryption method turned out to be the same as binary polynomial multiplication which means decryption can be done with binary polynomial factorization. While providing shallow exploration of other options, the main approach in this thesis was to first compute square-free factorization of a polynomial using David Yun's algorithm from 1974 and then to apply slower Elwyn Berlekamp's algorithm on those square-free factors to compute a proper irreducible factorization of the polynomial. In addition to just explaining and implementing algorithms, the details of how to make these computations fast on a computer system have been explained in detail. The binary polynomial factorization translates really efficiently to a computer algorithm where one bit represents one coefficient. Using this fact allowed author of this thesis to efficiently implement the algorithms to solved the challenge as the 273rd person since the it was posted on-line.Tässä työssä kuvataan ratkaisu erääseen kryptografiseen ongelmaan, jonka peliyhtiö Nintendo julkaisi tavoitteenaan tarjota työmahdollisuus ongelman ratkaisseille. Lähemmässä tarkastelussa selvisi, että heidän salausalgoritminsa keskiössä oli binääripolynomien kertolasku ja siten purkualgoritmi sekä ongelman ratkaisu vaativat binääripolynomien tekijöihin jakoa. Itse ratkaisu koostuu kahdesta vaiheesta. Ensin binääripolynomi jaetaan neliöttömiin tekijöihin käyttäen David Yunin algoritmia vuodelta 1974. Tämän jälkeen neliöttömät tekijät jaetaan alkupolynomeihin käyttäen hieman hitaampaa Elwyn Berlekampin algoritmia. Molemmat algoritmit toteutetaan C++ kielellä modernilla tietokoneella ja tuon toteutuksen tehokkuuteen kiinnitettään työssä erityistä huomiota. Näiden kahden algoritmin kuvaamisen lisäksi työssä esitellään pintapuolisesti muita tapoja jakaa polynomi tekijöihin äärellisen kentän yli tarkoituksena antaa kuva siitä, kuinka alan tutkimus on kehittynyt. Binääripolynomit on hyvin tehokasta esittää tietokoneella niin, että yksi bitti vastaa yhtä kerrointa. Tätä hyväksikäyttäen työssä saatiin aikaiseksi tehokas toteutus, jolla päästiin 273ksi tehtävän suorittaneeksi

    Sur l'algorithme de décodage en liste de Guruswami-Sudan sur les anneaux finis

    No full text
    This thesis studies the algorithmic techniques of list decoding, first proposed by Guruswami and Sudan in 1998, in the context of Reed-Solomon codes over finite rings. Two approaches are considered. First we adapt the Guruswami-Sudan (GS) list decoding algorithm to generalized Reed-Solomon (GRS) codes over finite rings with identity. We study in details the complexities of the algorithms for GRS codes over Galois rings and truncated power series rings. Then we explore more deeply a lifting technique for list decoding. We show that the latter technique is able to correct more error patterns than the original GS list decoding algorithm. We apply the technique to GRS code over Galois rings and truncated power series rings and show that the algorithms coming from this technique have a lower complexity than the original GS algorithm. We show that it can be easily adapted for interleaved Reed-Solomon codes. Finally we present the complete implementation in C and C++ of the list decoding algorithms studied in this thesis. All the needed subroutines, such as univariate polynomial root finding algorithms, finite fields and rings arithmetic, are also presented. Independently, this manuscript contains other work produced during the thesis. We study quasi cyclic codes in details and show that they are in one-to-one correspondence with left principal ideal of a certain matrix ring. Then we adapt the GS framework for ideal based codes to number fields codes and provide a list decoding algorithm for the latter.Cette thèse porte sur l'algorithmique des techniques de décodage en liste, initiée par Guruswami et Sudan en 1998, dans le contexte des codes de Reed-Solomon sur les anneaux finis. Deux approches sont considérées. Dans un premier temps, nous adaptons l'algorithme de décodage en liste de Guruswami-Sudan aux codes de Reed-Solomon généralisés sur les anneaux finis. Nous étudions en détails les complexités de l'algorithme pour les anneaux de Galois et les anneaux de séries tronquées. Dans un deuxième temps nous approfondissons l'étude d'une technique de remontée pour le décodage en liste. Nous montrons que cette derni're permet de corriger davantage de motifs d'erreurs que la technique de Guruswami-Sudan originale. Nous appliquons ensuite cette même technique aux codes de Reed-Solomon généralisés sur les anneaux de Galois et les anneaux de séries tronquées et obtenons de meilleures bornes de complexités. Enfin nous présentons l'implantation des algorithmes en C et C++ des algorithmes de décodage en liste étudiés au cours de cette thèse. Tous les sous-algorithmes nécessaires au décodage en liste, comme la recherche de racines pour les polynômes univariés, l'arithmétique des corps et anneaux finis sont aussi présentés. Indépendamment, ce manuscrit contient d'autres travaux sur les codes quasi-cycliques. Nous prouvons qu'ils sont en correspondance biunivoque avec les idéaux à gauche d'un certain anneaux de matrices. Enfin nous adaptons le cadre proposé par Guruswami et Sudan pour les codes à base d'ideaux aux codes construits à l'aide des corps de nombres. Nous fournissons un algorithme de décodage en liste dans ce contexte

    Codes, arrangements, matroids, and their polynomial links

    Get PDF
    Codes, arrangements, matroids, and their polynomial links Many mathematical objects are closely related to each other. While studying certain aspects of a mathematical object, one tries to find a way to "view" the object in a way that is most suitable for a specific problem. Or, in other words, one tries to find the best way to model the problem. Many related fields of mathematics have evolved from one another this way. In practice, it is very useful to be able to transform a problem into other terminology: it gives a lot more available knowledge and that can be helpful to solve a problem. This thesis deals with various closely related fields in discrete mathematics, starting from linear error-correcting codes and their weight enumerator. We can generalize the weight enumerator in two ways, to the extended and generalized weight enumerators. The set of generalized weight enumerators is equivalent to the extended weight enumerator. Summarizing and extending known theory, we define the two-variable zeta polynomial of a code and its generalized zeta polynomial. These polynomials are equivalent to the extended and generalized weight enumerator of a code. We can determine the extended and generalized weight enumerator using projective systems. This calculation is explicitly done for codes coming from finite projective and affine spaces: these are the simplex code and the first order Reed-Muller code. As a result we do not only get the weight enumerator of these codes, but it also gives us information on their geometric structure. This is useful information in determining the dimension of geometric designs. To every linear code we can associate a matroid that is representable over a finite field. A famous and well-studied polynomial associated to matroids is the Tutte polynomial, or rank generating function. It is equivalent to the extended weight enumerator. This leads to a short proof of the MacWilliams relations for the extended weight enumerator. For every matroid, its flats form a geometric lattice. On the other hand, every geometric lattice induces a simple matroid. The Tutte polynomial of a matroid determines the coboundary polynomial of the associated geometric lattice. In the case of simple matroids, this becomes a two-way equivalence. Another polynomial associated to a geometric lattice (or, more general, to a poset) is the Möbius polynomial. It is not determined by the coboundary polynomial, neither the other way around. However, we can give conditions under which the Möbius polynomial of a simple matroid together with the Möbius polynomial of its dual matroid defines the coboundary polynomial. The proof of these relations involves the two-variable zeta polynomial, that can be generalized from codes to matroids. Both matroids and geometric lattices can be truncated to get an object of lower rank. The truncated matroid of a representable matroid is again representable. Truncation formulas exist for the coboundary and Möbius polynomial of a geometric lattice and the spectrum polynomial of a matroid, generalizing the known truncation formula of the Tutte polynomial of a matroid. Several examples and counterexamples are given for all the theory. To conclude, we give an overview of all polynomial relations

    Entanglement-assisted Coding Theory

    Full text link
    In this dissertation, I present a general method for studying quantum error correction codes (QECCs). This method not only provides us an intuitive way of understanding QECCs, but also leads to several extensions of standard QECCs, including the operator quantum error correction (OQECC), the entanglement-assisted quantum error correction (EAQECC). Furthermore, we can combine both OQECC and EAQECC into a unified formalism, the entanglement-assisted operator formalism. This provides great flexibility of designing QECCs for different applications. Finally, I show that the performance of quantum low-density parity-check codes will be largely improved using entanglement-assisted formalism.Comment: PhD dissertation, 102 page

    Coding theory:a Gröbner basis approach

    Get PDF
    corecore