Cargando…
A Verified Implementation of the Berlekamp–Zassenhaus Factorization Algorithm
We formally verify the Berlekamp–Zassenhaus algorithm for factoring square-free integer polynomials in Isabelle/HOL. We further adapt an existing formalization of Yun’s square-free factorization algorithm to integer polynomials, and thus provide an efficient and certified factorization algorithm for...
Autores principales: | , , , |
---|---|
Formato: | Online Artículo Texto |
Lenguaje: | English |
Publicado: |
Springer Netherlands
2019
|
Materias: | |
Acceso en línea: | https://www.ncbi.nlm.nih.gov/pmc/articles/PMC7115093/ https://www.ncbi.nlm.nih.gov/pubmed/32269396 http://dx.doi.org/10.1007/s10817-019-09526-y |
_version_ | 1783514027527241728 |
---|---|
author | Divasón, Jose Joosten, Sebastiaan J. C. Thiemann, René Yamada, Akihisa |
author_facet | Divasón, Jose Joosten, Sebastiaan J. C. Thiemann, René Yamada, Akihisa |
author_sort | Divasón, Jose |
collection | PubMed |
description | We formally verify the Berlekamp–Zassenhaus algorithm for factoring square-free integer polynomials in Isabelle/HOL. We further adapt an existing formalization of Yun’s square-free factorization algorithm to integer polynomials, and thus provide an efficient and certified factorization algorithm for arbitrary univariate polynomials. The algorithm first performs factorization in the prime field [Formula: see text] and then performs computations in the ring of integers modulo [Formula: see text] , where both p and k are determined at runtime. Since a natural modeling of these structures via dependent types is not possible in Isabelle/HOL, we formalize the whole algorithm using locales and local type definitions. Through experiments we verify that our algorithm factors polynomials of degree up to 500 within seconds. |
format | Online Article Text |
id | pubmed-7115093 |
institution | National Center for Biotechnology Information |
language | English |
publishDate | 2019 |
publisher | Springer Netherlands |
record_format | MEDLINE/PubMed |
spelling | pubmed-71150932020-04-06 A Verified Implementation of the Berlekamp–Zassenhaus Factorization Algorithm Divasón, Jose Joosten, Sebastiaan J. C. Thiemann, René Yamada, Akihisa J Autom Reason Article We formally verify the Berlekamp–Zassenhaus algorithm for factoring square-free integer polynomials in Isabelle/HOL. We further adapt an existing formalization of Yun’s square-free factorization algorithm to integer polynomials, and thus provide an efficient and certified factorization algorithm for arbitrary univariate polynomials. The algorithm first performs factorization in the prime field [Formula: see text] and then performs computations in the ring of integers modulo [Formula: see text] , where both p and k are determined at runtime. Since a natural modeling of these structures via dependent types is not possible in Isabelle/HOL, we formalize the whole algorithm using locales and local type definitions. Through experiments we verify that our algorithm factors polynomials of degree up to 500 within seconds. Springer Netherlands 2019-06-17 2020 /pmc/articles/PMC7115093/ /pubmed/32269396 http://dx.doi.org/10.1007/s10817-019-09526-y Text en © The Author(s) 2019 Open AccessThis article is distributed under the terms of the Creative Commons Attribution 4.0 International License (http://creativecommons.org/licenses/by/4.0/), which permits unrestricted use, distribution, and reproduction in any medium, provided you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license, and indicate if changes were made. |
spellingShingle | Article Divasón, Jose Joosten, Sebastiaan J. C. Thiemann, René Yamada, Akihisa A Verified Implementation of the Berlekamp–Zassenhaus Factorization Algorithm |
title | A Verified Implementation of the Berlekamp–Zassenhaus Factorization Algorithm |
title_full | A Verified Implementation of the Berlekamp–Zassenhaus Factorization Algorithm |
title_fullStr | A Verified Implementation of the Berlekamp–Zassenhaus Factorization Algorithm |
title_full_unstemmed | A Verified Implementation of the Berlekamp–Zassenhaus Factorization Algorithm |
title_short | A Verified Implementation of the Berlekamp–Zassenhaus Factorization Algorithm |
title_sort | verified implementation of the berlekamp–zassenhaus factorization algorithm |
topic | Article |
url | https://www.ncbi.nlm.nih.gov/pmc/articles/PMC7115093/ https://www.ncbi.nlm.nih.gov/pubmed/32269396 http://dx.doi.org/10.1007/s10817-019-09526-y |
work_keys_str_mv | AT divasonjose averifiedimplementationoftheberlekampzassenhausfactorizationalgorithm AT joostensebastiaanjc averifiedimplementationoftheberlekampzassenhausfactorizationalgorithm AT thiemannrene averifiedimplementationoftheberlekampzassenhausfactorizationalgorithm AT yamadaakihisa averifiedimplementationoftheberlekampzassenhausfactorizationalgorithm AT divasonjose verifiedimplementationoftheberlekampzassenhausfactorizationalgorithm AT joostensebastiaanjc verifiedimplementationoftheberlekampzassenhausfactorizationalgorithm AT thiemannrene verifiedimplementationoftheberlekampzassenhausfactorizationalgorithm AT yamadaakihisa verifiedimplementationoftheberlekampzassenhausfactorizationalgorithm |