How to split a tera-polynomial - Archive ouverte HAL Accéder directement au contenu
Pré-Publication, Document De Travail Année : 2024

How to split a tera-polynomial

Résumé

This article presents a new algorithm to compute all the roots of two families of polynomials that are of interest for the Mandelbrot set $\mathcal{M}$ : the roots of those polynomials are respectively the parameters $c\in\mathcal{M}$ associated with periodic critical dynamics for $f_c(z)=z^2+c$ (hyperbolic centers) or with pre-periodic dynamics (Misiurewicz-Thurston parameters). The algorithm is based on the computation of discrete level lines that provide excellent starting points for the Newton method. In practice, we observe that these polynomials can be split in linear time of the degree. This article is paired with a code library that implements this algorithm. Using this library and about 723 000 core-hours on the HPC center \textit{Roméo} (Reims), we have successfully found all hyperbolic centers of period $\leq 41$ and all Misiurewicz-Thurston parameters whose period and pre-period sum to $\leq 35$. Concretely, this task involves splitting a tera-polynomial, \ie a polynomial of degree $\sim10^{12}$, which is orders of magnitude ahead of the previous state of the art. It also involves dealing with the certifiability of our numerical results, which is an issue that we address in detail, both mathematically and along the production chain. The certified database is available to the scientific community. For the smaller periods that can be represented using only hardware arithmetic (floating points FP80), the implementation of our algorithm can split the corresponding polynomials of degree $\sim10^{9}$ in less than one day-core. We complement these benchmarks with a statistical analysis of the separation of the roots, which confirms that no other polynomial in these families can be split without using higher precision arithmetic.
Fichier principal
Vignette du fichier
TeraPoly.pdf (12.18 Mo) Télécharger le fichier
Vignette du fichier
img/07-27B_mandel.png (203.28 Ko) Télécharger le fichier
Vignette du fichier
img/Harmonic_1_24_1537_1537.png (152.32 Ko) Télécharger le fichier
Vignette du fichier
img/MLLC_10_18_12.png (675.6 Ko) Télécharger le fichier
Vignette du fichier
img/MVSplit_Algo.png (433.64 Ko) Télécharger le fichier
Vignette du fichier
img/Mandelbrot.png (761.83 Ko) Télécharger le fichier
Vignette du fichier
img/MandelbrotRays_6.png (710.24 Ko) Télécharger le fichier
Vignette du fichier
img/disk.png (124.25 Ko) Télécharger le fichier
Vignette du fichier
img/diskDetail.png (200.84 Ko) Télécharger le fichier
Vignette du fichier
img/hypRaw35.png (168.56 Ko) Télécharger le fichier
Vignette du fichier
img/idea.png (3.64 Mo) Télécharger le fichier
Vignette du fichier
img/mandelH18M16.png (3.12 Mo) Télécharger le fichier
Vignette du fichier
img/nSet.png (48.52 Ko) Télécharger le fichier
Vignette du fichier
img/newtonAccel.png (945.98 Ko) Télécharger le fichier
Vignette du fichier
img/rootCertif.png (77.31 Ko) Télécharger le fichier
img/closestHypRoots.pdf (19.07 Ko) Télécharger le fichier
img/compIntervalDisk1.pdf (486.04 Ko) Télécharger le fichier
img/compIntervalDisk2.pdf (492.09 Ko) Télécharger le fichier
img/compIntervalDisk3.pdf (486.11 Ko) Télécharger le fichier
img/gridToPointRatio.pdf (12.66 Ko) Télécharger le fichier
img/mpfr_ratio.pdf (21.67 Ko) Télécharger le fichier
img/nbLine.pdf (28.75 Ko) Télécharger le fichier
img/quickTimes.pdf (55.11 Ko) Télécharger le fichier
img/sepHist.pdf (106.09 Ko) Télécharger le fichier
img/sepHistMis26.pdf (92.87 Ko) Télécharger le fichier
img/separation.pdf (31.79 Ko) Télécharger le fichier
Origine : Fichiers produits par l'(les) auteur(s)
Format : Figure, Image
Licence : CC BY - Paternité
Format : Figure, Image
Licence : CC BY - Paternité
Format : Figure, Image
Licence : CC BY - Paternité
Format : Figure, Image
Licence : CC BY - Paternité
Format : Figure, Image
Licence : CC BY - Paternité
Format : Figure, Image
Licence : CC BY - Paternité
Format : Figure, Image
Licence : CC BY - Paternité
Format : Figure, Image
Licence : CC BY - Paternité
Format : Figure, Image
Licence : CC BY - Paternité
Format : Figure, Image
Licence : CC BY - Paternité
Format : Figure, Image
Licence : CC BY - Paternité
Format : Figure, Image
Licence : CC BY - Paternité
Format : Figure, Image
Licence : CC BY - Paternité
Format : Figure, Image
Licence : CC BY - Paternité
Licence : CC BY - Paternité
Licence : CC BY - Paternité
Origine : Fichiers produits par l'(les) auteur(s)
Licence : CC BY - Paternité
Licence : CC BY - Paternité
Licence : CC BY - Paternité
Licence : CC BY - Paternité
Licence : CC BY - Paternité
Licence : CC BY - Paternité
Licence : CC BY - Paternité
Licence : CC BY - Paternité
Licence : CC BY - Paternité

Dates et versions

hal-04448008 , version 1 (08-02-2024)

Licence

Paternité

Identifiants

  • HAL Id : hal-04448008 , version 1

Citer

François Vigneron, Nicolae Mihalache. How to split a tera-polynomial. 2024. ⟨hal-04448008⟩
14 Consultations
4 Téléchargements

Partager

Gmail Facebook X LinkedIn More