Bibm@th

Forum de mathématiques - Bibm@th.net

Bienvenue dans les forums du site BibM@th, des forums où on dit Bonjour (Bonsoir), Merci, S'il vous plaît...

Vous n'êtes pas identifié(e).

#1 26-02-2025 00:51:45

bridgslam
Membre Expert
Lieu : Rospez
Inscription : 22-11-2011
Messages : 1 903

Abîme entre théorie et pratique

Bonjour,

Un exercice récent ( par bonheur très bien guidé tout en stimulant agréablement la curiosité) permet d'affirmer au final le résultat imparable suivant:
si x est un nombre irrationnel, il existe un ensemble infini d'entiers strictement positifs  q tels que l'on puisse approcher x  par des fractions de dénominateur q, avec un écart  inférieur à $1/q^2$,
ces approximations étant de surcroît chacunes les meilleures possibles avec ces dénominateurs q.
Par exemple si les q pour x sont 4, 10 ,20, 100, ....
on peut approcher x à moins d'un seizième avec une fraction de de dénominateur 4 la plus proche possible de x, à moins d'un centième avec une fraction de dénominateur 10 la plus proche possible de x, à moins d'un quatre centième avec une fraction de dénominateur 20, à moins d'un dix millième avec une fraction de dénominateur 100 la plus proche possible de x, etc.

En tout cas le résultat semble indiquer que l'on peut à bas coût
approximer rapidement tout irrationnel par des rationnels.

Je me suis posé la question suivante:
Existe-il, au moins pour certaines catégories d'irrationnels un ou des algorithmes automatiques  permettant d'obtenir un tel ensemble de dénominateurs   q ?
Si oui, peut-on dire également pour lesquels ce sera impossible ?
Vu l'aspect théorique essentiellement existentiel de la preuve,
j'en doute fort évidemment dans le cas général, mais des particularités algébriques ou analytiques de x pourraient éventuellement faciliter le boulot... qui sait?
N'étant pas spécialement branché théorie des nombres, je lance donc une bouteille à la mer, en espérant son accostage vers l'ilot ou le radeau  de spécialistes des nombres  le plus proche...

Alain

Dernière modification par bridgslam (26-02-2025 09:20:44)

Hors ligne

#2 26-02-2025 09:49:10

Black Jack
Membre
Inscription : 15-12-2017
Messages : 509

Re : Abîme entre théorie et pratique

Bonjour,

Si j'ai bien compris ce qui est demandé (pas sûr). :

On veut approcher x par a/q (avec a et q dans N) avec une erreur inférieure à 1/q², on a donc :

a/q - 1/q² <  x < a/q + 1/q²
a.q - 1 < x.q² < a.q + 1
(x.q²-1)/q < a < (x.q² + 1)/q

x.q - 1/q < a < x.q + 1/q

Comme a doit être entier, il faut au moins un écart de 1 entre les 2 bornes, donc il faut 2/q >= 1

Soit q <= 2

On ne peut donc pas approcher la valeur de x par a/q avec une erreur <= 1/q² si q > 2
--------
Exemple: x = sqrt(2) et q = 2

x.q - 1/q < a < x.q + 1/q
sqrt(2)*2 - 1/2 < a <  sqrt(2)*2 + 1/2
2,32 < a < 3,32
--> a = 3 (dans N)
La fraction a/q = 3/2 approche sqrt(2) à moins de 1/2² = 1/4 près.

Mais si :x = sqrt(2) et q = 3 ...

x.q - 1/q < a < x.q + 1/q
3,9 < a < 4,57
--> a = 4 (entier)
Mais a/q = 4/3 est différent de sqrt(2) de 0,08088... qui est plus grand que 1/3² = 0,111...
Donc ne va pas.

:-)

Hors ligne

#3 26-02-2025 09:51:32

Michel Coste
Membre Expert
Inscription : 05-10-2018
Messages : 1 464

Re : Abîme entre théorie et pratique

Bonjour,
Ne parles-tu pas des fractions continues et des propriétés d'approximation diophantienne qu'ont leurs réduites ?
https://fr.wikipedia.org/wiki/Fraction_continue
Le développement en fraction continue d'un irrationnel se fait de manière algorithmique, pour peu qu'on le connaisse avec une précision arbitraire (par exemple un irrationnel algébrique).

PS. Il y a une faute dans le raisonnement de Black Jack. Elle se situe ici : "Comme a doit être entier, il faut au moins un écart de 1 entre les 2 bornes". Il y a un entier entre les deux bornes $1789-10^{2025}$ et $1789+10^{2025}$, et pourtant l'écart entre les deux bornes est nettement plus petit que $1$.

Dernière modification par Michel Coste (26-02-2025 11:20:06)

Hors ligne

#4 26-02-2025 11:42:15

bridgslam
Membre Expert
Lieu : Rospez
Inscription : 22-11-2011
Messages : 1 903

Re : Abîme entre théorie et pratique

Bonjour,

Merci pour vos réponses détaillées.

Je ne parlais pas a priori de fractions continues.
Je devrai regarder de plus près l'approche par les fractions continues, je ne sais pas si c'est exhaustif, à savoir qu'elles donnent tout l'ensemble des dénominateurs possibles répondant aux contraintes. Je reste avec un léger doute là-dessus.
L'exercice relatif à cette question était simple, mais faisant jouer à un moment décisif le principe des tiroirs, je me suis interrogé sur la possibilité d'algorithme de recherche général, variant éventuellement avec la valeur de x.

Bonne journée

Hors ligne

#5 26-02-2025 11:56:07

bridgslam
Membre Expert
Lieu : Rospez
Inscription : 22-11-2011
Messages : 1 903

Re : Abîme entre théorie et pratique

Michel Coste a écrit :

PS. Il y a une faute dans le raisonnement de Black Jack. Elle se situe ici : "Comme a doit être entier, il faut au moins un écart de 1 entre les 2 bornes". Il y a un entier entre les deux bornes $1789-10^{2025}$ et $1789+10^{2025}$, et pourtant l'écart entre les deux bornes est nettement plus petit que $1$.

De l'eau a coulé sous les ponts entre la Révolution et nos jours, mais je pense qu'il manquera jusqu'à la fin du monde  un signe "moins" sur les exposants...

Alain

Hors ligne

#6 26-02-2025 11:59:27

Michel Coste
Membre Expert
Inscription : 05-10-2018
Messages : 1 464

Re : Abîme entre théorie et pratique

bridgslam a écrit :

Je devrai regarder de plus près l'approche par les fractions continues

Sûrement ! Regarde par exemple https://fr.wikipedia.org/wiki/Fraction_ … phantienne

Oui, les bornes sont bien sûr $17889-10^{-2025}$ et $1789+10^{-2025}$, comme tu l'as compris.

Dernière modification par Michel Coste (26-02-2025 12:01:33)

Hors ligne

#7 28-02-2025 11:03:05

Michel Coste
Membre Expert
Inscription : 05-10-2018
Messages : 1 464

Re : Abîme entre théorie et pratique

Un petit exemple avec Sagemath :

#fractions continues
a=continued_fraction(sqrt(2))
def red(n) :
    conv=a.convergent(n)
    print ("réduite d'indice {} de la racine carrée de 2 :".format(n),conv)
    d=(1/denominator(conv)**2).n()
    print ("inverse du carré du dénominateur de la réduite : {:.3e}".format(d))
    e=(sqrt(2)-conv).n()
    print("différence entre la racine de 2 et la réduite : {:.3e}".format(e))

La commande red(20) produit alors

réduite d'indice 20 de la racine carrée de 2 : 54608393/38613965
inverse du carré du dénominateur de la réduite : 6.707e-16
différence entre la racine de 2 et la réduite : 4.441e-16

Hors ligne

Réponse rapide

Veuillez composer votre message et l'envoyer
Nom (obligatoire)

E-mail (obligatoire)

Message (obligatoire)

Programme anti-spam : Afin de lutter contre le spam, nous vous demandons de bien vouloir répondre à la question suivante. Après inscription sur le site, vous n'aurez plus à répondre à ces questions.

Quel est le résultat de l'opération suivante (donner le résultat en chiffres)?
quatre-vingt seize plus un
Système anti-bot

Faites glisser le curseur de gauche à droite pour activer le bouton de confirmation.

Attention : Vous devez activer Javascript dans votre navigateur pour utiliser le système anti-bot.

Pied de page des forums