Limite Superior para \(\pi\)

Esta nota técnica apresenta a obtenção de limite superior para \(\pi\) a partir da comparação de polígonos regulares inscrito e circunscrito em um círculo de raio 1.

Limite superir para \(\pi\) por hexágono circunscrito

Considere um hexágono circunscrito em um círculo de raio 1:

O seu lado pode ser expresso por x2. Para calcular o seu perímetro, basta encontrar o valor do lado do polígono. Assim, têm-se:

\(x_2^2=1^2+(x_2/2)^2\)

\(x_2^2=1+(x_2^2/4)\)

\(x_2=(2\sqrt3)/3\)

O perímetro do hexágono vai ser:

\(P_h=6x_2=6((2\sqrt3)/3)\)

\(P_h=4\sqrt3\)

Ph representa o perímetro do hexágono, a relação de Ph com \(\pi\) será:

\(\pi\)=Ph/2

Pode-se concluir facilmente que Ph>Pc. Assim:

\(\pi\) é menor que \(2\sqrt3\)

Mas esse limite superior pode ser melhorado, usando semelhança de triângulos para chegar num resultado mais preciso.

Limite superior para \(\pi\) usando semelhança de triângulos

Considere um hexágono inscrito e outro circunscrito ao círculo, como na figura abaixo:

A partir dessa figura, encontra um dois triângulos semelhantes:

Dois triângulos são semelhantes quando os ângulos correspondentes forem congruentes e os lados proporcionais.

No caso acima, os ângulos são correspondentes. A partir da figura, observa-se que:

\(\frac{OQ}{MQ}=\frac{PQ}{NQ}=\frac{MN}{OP}\)

Considere que:

\(x_1\) representa o comprimento do lado do hexágono inscrito
\(x_2\) representa o comprimento do lado do hexágono circunsnscrito

Pode-se afirmar que o lado OP é \(x_1/2\) e o lado MN é \(x_2/2\). Esse resultado é possível, pois os triângulos são equiláteros e a base será a metade do lado.

Além disso, o raio do círculo é 1. Utilizando a semelhança entre triângulos, tem a seguinte relação:

\(\frac{MN}{OP}=\frac{OQ}{MQ}\)

\(\frac{x_1}{2}/\frac{x_2}{2}=\frac{OQ}{1}\)

\(\frac{x_1}{2}*\frac{2}{x_2}=\frac{OQ}{1}\)

\(\frac{x_1}{x_2}=\frac{OQ}{1}\)

\(\frac{x_1}{x_2}=OQ\)

Com as manipulações algébricas, obtém-se uma relação entre os lados dos hexágonos.

Aplica-se o Teorema de Pitágoras no triângulo OPQ:

\(1^2=OQ^2+({\frac{OQ}{2}})^2\)

\(1=OQ^2+\frac{x_1^2}{4}\)

\(OQ=\sqrt{(1-(x_1^2/4))}\)

Esse resultado encontardo pode ser substituído na expressão:

\(\frac{x_1}{x_2}=OQ\)

Assim, obtém-se:

\(\frac{x_1}{x_2}=OQ\)

\(\frac{x_1}{x_2}=\sqrt{(1-(x_1^2/4))}\)

\(x_2=\frac{x_1}{\sqrt{(1-(x_1^2/4))}}\)

Melhores limites com polígonos de mais lados

Considere a relação obtida anteriomente entre \(x_1\) e \(x_2\). Os polígonos regulares internos são caracterizados pelo índice t=1,2,.., em que o número de lados \(L_t\) é definido por \(Lt=3×2^t\). Com essa definição t=1 corresponde ao hexágono, t=2 ao dodecágono e assim sucessivamente. Assim, conclui-se que:

\(x_(t+1)=\frac{x_1}{\sqrt{(1-(x_t^2/4))}}\)

Com \(x_1\)=1 correspondendo a área do hexágono inscrito. Se \(x_t\) e \(P_t\) reprsentam o comprimento do lado do polígono t, obtém-se:

\(P_t=3*2^t*x_t\), para qualquer valor t, \(P_t>\frac{\pi}{2}\)

Aplicando a equação em diferença e partindo de t=1, consegue limites superiores para \(\pi\) que são considerados melhores. A função abaixo permite a obtenção de limite superior para \(\pi\) para t=n:

acha_limsup<-function(n){
  x1<-1
  x2<-x1/sqrt(1-(x1^2/4))
  for(i in 1:n){
    L<-3*2^i
    p1<-L*x1
    p2<-L*x2
    cat(sprintf("t= %2i Lados: %10.0f Lim inf: %0.17f Lim sup dif %0.17f \n",i,L,p1/2, p2/2,p1-p2/2))
    x1<-sqrt(2-sqrt(4-x1^2))
    x2<-x1/sqrt(1-(x1^2/4))
  }    
}

Testando a função definida acima com t=5, correspondente ao polígono de 96 faces, computamos o limite superior obtido por Arquimedes por:

acha_limsup(5)
## t=  1 Lados:          6 Lim inf: 3.00000000000000000 Lim sup dif 3.46410161513775527 
## t=  2 Lados:         12 Lim inf: 3.10582854123024976 Lim sup dif 3.21539030917347279 
## t=  3 Lados:         24 Lim inf: 3.13262861328123687 Lim sup dif 3.15965994209749912 
## t=  4 Lados:         48 Lim inf: 3.13935020304687207 Lim sup dif 3.14608621513144016 
## t=  5 Lados:         96 Lim inf: 3.14103195089052978 Lim sup dif 3.14271459964538824

Ao aumentar o número de lados, observa-se que o o limite inferior e superior fica cada vez mais próximo do valor \(\pi\)

Problemas numéricos com os valores computados

A partir de um certo número de casas decimais, os valores obtidos para o limite indicam alguma anomalia no processo computacional.

acha_limsup(30)
## t=  1 Lados:          6 Lim inf: 3.00000000000000000 Lim sup dif 3.46410161513775527 
## t=  2 Lados:         12 Lim inf: 3.10582854123024976 Lim sup dif 3.21539030917347279 
## t=  3 Lados:         24 Lim inf: 3.13262861328123687 Lim sup dif 3.15965994209749912 
## t=  4 Lados:         48 Lim inf: 3.13935020304687207 Lim sup dif 3.14608621513144016 
## t=  5 Lados:         96 Lim inf: 3.14103195089052978 Lim sup dif 3.14271459964538824 
## t=  6 Lados:        192 Lim inf: 3.14145247228534430 Lim sup dif 3.14187304997970607 
## t=  7 Lados:        384 Lim inf: 3.14155760791162209 Lim sup dif 3.14166274705661319 
## t=  8 Lados:        768 Lim inf: 3.14158389214893585 Lim sup dif 3.14161017660530728 
## t=  9 Lados:       1536 Lim inf: 3.14159046323676172 Lim sup dif 3.14159703433023818 
## t= 10 Lados:       3072 Lim inf: 3.14159210604304828 Lim sup dif 3.14159374881512843 
## t= 11 Lados:       6144 Lim inf: 3.14159251658815464 Lim sup dif 3.14159292728109474 
## t= 12 Lados:      12288 Lim inf: 3.14159261864078942 Lim sup dif 3.14159272131401934 
## t= 13 Lados:      24576 Lim inf: 3.14159264532121574 Lim sup dif 3.14159267098952277 
## t= 14 Lados:      49152 Lim inf: 3.14159264532121574 Lim sup dif 3.14159265173829283 
## t= 15 Lados:      98304 Lim inf: 3.14159264532121574 Lim sup dif 3.14159264692548490 
## t= 16 Lados:     196608 Lim inf: 3.14159264532121574 Lim sup dif 3.14159264572228292 
## t= 17 Lados:     393216 Lim inf: 3.14159230381173771 Lim sup dif 3.14159230391200417 
## t= 18 Lados:     786432 Lim inf: 3.14159230381173771 Lim sup dif 3.14159230383680432 
## t= 19 Lados:    1572864 Lim inf: 3.14158683965504126 Lim sup dif 3.14158683966130781 
## t= 20 Lados:    3145728 Lim inf: 3.14158683965504126 Lim sup dif 3.14158683965660801 
## t= 21 Lados:    6291456 Lim inf: 3.14167426502175751 Lim sup dif 3.14167426502214919 
## t= 22 Lados:   12582912 Lim inf: 3.14167426502175751 Lim sup dif 3.14167426502185521 
## t= 23 Lados:   25165824 Lim inf: 3.13747509950278314 Lim sup dif 3.13747509950280801 
## t= 24 Lados:   50331648 Lim inf: 3.13747509950278314 Lim sup dif 3.13747509950278936 
## t= 25 Lados:  100663296 Lim inf: 3.18198051533946380 Lim sup dif 3.18198051533946469 
## t= 26 Lados:  201326592 Lim inf: 3.00000000000000000 Lim sup dif 3.00000000000000089 
## t= 27 Lados:  402653184 Lim inf: 3.00000000000000000 Lim sup dif 3.00000000000000000 
## t= 28 Lados:  805306368 Lim inf: 0.00000000000000000 Lim sup dif 0.00000000000000000 
## t= 29 Lados: 1610612736 Lim inf: 0.00000000000000000 Lim sup dif 0.00000000000000000 
## t= 30 Lados: 3221225472 Lim inf: 0.00000000000000000 Lim sup dif 0.00000000000000000

Essa anomalia é em razão da representação finita dos números pelos computadores, que em geral se limita a 15 a 16 digitos significativos.

A utilização de recursos do R para cálculos utilizando um número arbitrário de digitos significativos nos cálculos pode solucionar esse problema. Isso é implementado pelo package Rmpfr, que deve ser instalado antes de sua utilização.