Mostrando postagens com marcador matemática. Mostrar todas as postagens
Mostrando postagens com marcador matemática. Mostrar todas as postagens

domingo, fevereiro 04, 2007

Esses engenheiros fantásticos e suas calculadoras maravilhosas

A quantidade de coisas que acabamos por descobrir nessa era de blogs, comunidades virtuais e listas de discussão é realmente impressionante. Se, há meros 10 anos, um professor de uma universidade estadual brasileira qualquer, situada em uma cidade interiorana qualquer, publicasse uma curta nota em um jornal local afirmando ter descoberto um erro no cálculo de uma importante quantidade matemática, pessoas como eu, que moram a centenas de quilômetros de distância, dificilmente ficariam sabendo. E é precisamente isso que faz o engenheiro e professor Carlos Pereira de Novaes, da Universidade Estadual de Feira de Santana , que diz ter descoberto um erro no cálculo do número e, a base dos logaritmos naturais e freqüentemente denominado "constante de Napier" ou "número de Euler". Nessa era da internet, contudo, a notícia nos chega por e-mail e podemos perder com ela algum tempo de um fim de semana
No curto artigo em questão, intitulado "Professor da Uefs verifica erro em simbologia matemática" (*), o professor inicia com a definição mais conhecida do número de Euler, dada pela seguinte equação:


A seguir, o autor, pedindo desculpas a Euler (**), afirma ter usado uma calculadora eletrônica para estimar o limite, tendo obtido, não o número 2,71828182846, mas sim o número 1.

Imediatamente após ler o artigo, abri uma planilha eletrônica e fiz alguns cálculos. Para x maior do que 107 e menor do que 1011, o resultado é dado pela planilha com erro de 10-7. Acima de 1011, o erro começa a aumentar até que o resultado se torna unitário a partir de 1016. O que percebemos é que, obviamente, a planilha calcula inicialmente o número (1+1/x), e depois o eleva a x. Para x>1016, o resultado para 1/x é tão pequeno que a planilha simplesmente o arredonda para zero, obtendo-se e=1, pois o número 1 elevado a qualquer número é também igual a 1. O gráfico da evolução do erro de cálculo de acordo com o aumento de x é ilustrado a seguir.



O autor faz então a ressalva de que o resultado é esse mesmo e que o número (1+1/x) deve ser calculado antes de ser elevado a x. Se isso fosse verdade, a questão não seria simplesmente de “simbologia”, mas sim de uma verdadeira revolução na matemática, com reflexos na física, química e também na engenharia. Só para começar, muita coisa que os estudantes de engenharia elétrica aprendem sobre circuitos elétricos estaria simplesmente errada!

O autor diz ter usado uma calculadora científica HP para obter seus resultados. Infelizmente, tenho apenas uma Casio fx-82TL, que realmente fornece e=1 para a equação (1) e com x>1016. Coisas da vida.

Evidentemente, existem métodos matematicamente formais para se demonstrar a validade da equação (1), mas engenheiros preferem verificações numéricas a demonstrações analíticas. Mas como contornar as limitações de planilhas e calculadoras eletrônicas, sem recorrer a complicados pacotes numéricos?

Uma possibilidade é desenvolver um programa de computador que faça o cálculo com precisão maior do que uma calculadora ou planilha eletrônica. O Turbo Pascal, por exemplo, dispõe de variáveis reais de precisão estendida (extended), que constituem em números com mais de 400 casas decimais. Usando a função Power do Pascal, implementada no Turbo Delphi Explorer, escrevi então um pequeno programa para calcular o número de Euler. A situação melhorou, mas não muito. Em vez dos cálculos entrarem em colapso para x>1011, o colapso ocorreu para x>1014, quando o erro se tornou maior do que 10-6. Nem mesmo as variáveis extended resistem a cálculos com esses números enormes (é verdade que usei um laptop com um modesto processador Celeron de 1,5 GHz).

Pensei então em contornar as limitações da função Power usando um processo iterativo: calcula-se inicialmente o número (1+1/x), multiplicando-se o resultado por ele mesmo x vezes. O processo funcionou admiravelmente bem, com um pequeno detalhe: para números realmente grandes, digamos x>1020, os testes indicam que o processamento demoraria alguns dias, talvez anos. Esse é o problema com limites com variáveis tendendo ao infinito: eles demoram uma eternidade para serem testados! Para manter o tempo de processamento inferior a 40 minutos, por exemplo, o valor máximo de x deve ser 1011.

Mas, como diz o velho ditado matemático, “quando você não puder vencer, trapaceie”. Após quebrar a cabeça por algum tempo, descobri que “trapaça”, nesse caso, consiste em realizar as iterações de maneira recursiva. Primeiro multiplicamos (1+1/x) por ele mesmo, obtendo (1+1/x)2. A seguir, multiplicamos (1+1/x)2 por ele mesmo, obtendo (1+1/x)4 e assim por diante. Esse método implica em que o número x deve ser da forma x=2n, onde n é o número de iterações. O número 2 aparece porque os fatores de uma iteração, são multiplicados aos pares.

Usando o método de iterações recursivas, foi possível reduzir o número de iterações para apenas 63, realizadas em menos de um milisegundo e não em algumas décadas. O valor correspondente de x é 263=9,22x1018, ou aproximadamente 1019, uma melhoria de pelo menos 1.000 vezes em relação aos métodos anteriores.

Para n>64, infelizmente, o método entra em colapso novamente e o resultado torna-se unitário. Contudo, o uso de métodos computacionais progressivamente mais sofisticados, com resultados condizentes para e, deixa claro que o problema em questão diz respeito às limitações computacionais existentes, e não a qualquer problema com a definição do número de Euler.

O programa executável, o respectivo código-fonte em Turbo Delphi Explorer e a planilha que usei para fazer alguns cálculos estão disponíveis em http://www.daelt.sh06.com/profs/alvaug/Euler.zip. É só verificar.

É claro que mesmo o número 1019 ainda está tão longe do infinito quanto o número 10, e nenhum matemático que se preze aceitaria verificações numéricas como prova de um teorema. Felizmente, há outras definições para o número de Euler, tais como a que se segue, baseada na expansão da função exponencial em série de McLaurin:



onde x! é o fatorial de x. Inserindo essa definição em uma planilha eletrônica, obtemos resultados com erro decrescente até que, em x=16, o erro se anula, obtemos o valor correto para o número de Euler e o grande matemático pode descansar em paz. O problema certamente está na maneira como os computadores tratam números muito pequenos em algumas situações, mas não em outras.

O problema levantado pelo professor Novaes e a reação a ele deixam algumas lições, a primeira delas dirigida especialmente aos alunos de engenharia de todos os tempos e lugares:

  • Não confie demais na sua HP.

  • Quando um pesquisador independente afirma ter descoberto provas de que um resultado conhecido há séculos, testado e comprovado pelas mais diversas pessoas nos mais diversos lugares, está errado, é muito provável que este pesquisador esteja enganado. Contudo, ele jamais se convencerá disso.

  • Quando confrontados com a contestação de um resultado conhecido há séculos, publicada por um pesquisador independente, a maioria dos profissionais de qualquer área responderá com argumentos pessoais, visando desqualificar o pesquisador em vez de contestar os argumentos dele.

  • Antes de publicar seus resultados revolucionários, envie-os para ser revisado por profissionais da área. Isso diminuirá o constrangimento e possíveis ameaças de
    morte. Coisas da vida.

(*) O artigo original, publicado em http://www.uefs.br/portal/news/2007/professor-da-uefs-verifica-erro-em-simbologia-matematica, foi removido, mas continua disponível em http://www.universiabrasil.net/noticia/materia_dentrodocampus.jsp?not=35247. O assunto também está em discussão em algumas comunidades do Orkut, tais como http://www.orkut.com/CommMsgs.aspx?cmm=68052&tid=2511957267834183215.
(**) Não é necessário pedir desculpas a Euler. O número e foi introduzido pelo matemático John Napier e a equação (1) foi estudada pelo matemático Jacob Bernoulli. Tudo o que Euler fez, nesse caso, foi introduzir a notação e (de “exponencial”), em sua obra Mechanica, de 1736.


sábado, agosto 12, 2006

Newton da Costa no "Café com Ciência"

O matemático e filósofo Newton da Costa esteve em Curitiba no último dia 9/8 para participar do projeto Cáfé com Ciência do SESC da Esquina. O título da palestra era para ser "23 problemas abertos da matemática" (os problemas de Hilbert), mas da Costa acabou falando sobre filosofia do conhecimento científico, pois achou o tema original árido demais para uma audiência diversificada. Foi melhor assim, pois nem mesmo haveria tempo suficiente para falar detalhadamente sobre os 23 problemas de Hilbert.

Newton Carneiro Affonso da Costa nasceu em Curitiba, em 1929, e graduou-se em engenharia civil e em matemática pela Universidade Federal do Paraná. Seu reconhecimento internacional veio a partir de 1974, com a publicação do artigo "On the theory of inconsistent formal systems", que o lançou como um dos fundadores da lógica paraconsistente.

A lógica clássica, lembremos, não admite contradições. Dadas duas proposições contraditórias, qualquer proposição do sistema pode ser deduzida e este se torna trivial. Newton da Costa mostrou que é possível construir sistemas formais onde podem existir contradições sem que o sistema se torne trivial. Segundo muitos, o surgimento da lógica paraconsistente e de outras lógicas não clássicas representa uma revolução comparável à das geometrias não euclidianas no século XIX. Outros trabalhos de da Costa relacionam-se ao conceito de "quase verdade", à axiomatização das teorias da física (sexto problema de Hilbert) e, mais recentemente, ao problema P=NP, que é um dos "problemas do milhão".

Na palestra da última quarta-feira, da Costa procurou conceituar o conhecimento científico, principiando por dizer que conhecimento é uma crença justificável e que não pode ser confundido com opinião. Contudo, as dimensões dedutiva e indutiva não são suficientes, pois a crítica é fundamental em ciência, devendo ser exercitada diariamente. Nenhuma verdade é definitiva e, se um determinado corpo de conhecimentos não se expõe à crítica, não pode ser considerado científico.

Em uma das perguntas ao final da palestra, fez-se menção ao critério da refutação (ou falseabilidade) de Popper, segundo o qual uma teoria só pode ser considerada científica se puder ser experimentalmente refutada. Nesse ponto, da Costa disse não concordar totalmente com Popper, pois, segundo ele, existiriam teorias não científicas que podem ser refutadas, e citou a astrologia. Imagino que da Costa seja otimista demais em relação aos astrólogos, por razões que passarei a discutir brevemente.

A teoria da relatividade geral foi publicada por Albert Einstein em 1915. Dentre outras coisas, essa teoria prevê que os raios de luz devem se curvar ao passar perto de um corpo pesado, e Einstein foi capaz de calcular o ângulo de deflexão. Se a previsão estivesse errada, todo o edifício teórico da relatividade geral desabaria, sem possibilidade de reparo. Em tal situação, seria até preferível continuar usando a gravitação newtoniana, que prevê uma deflexão menor, mas que é uma teoria muito mais simples. Contudo, em 1919 algumas expedições organizadas por Sir Arthur Eddington aproveitaram um eclipse solar para observar a deflexão da luz das estrelas ao passar perto do sol. Apesar da incerteza experimental, os resultados se mostraram mais de acordo com a relatividade geral do que com a gravitação newtoniana. A teoria einsteiniana sobreviveu a esse experimento crucial e a muitos outros desde então, mas isso não significa que venha sobreviver a todos os testes futuros. Como disse o próprio Einstein, em 1922:

"O cientista teórico não deve ser invejado, pois a Natureza, ou, mais precisamente, o experimento, é um juiz inexorável e não muito cordial de seu trabalho. Ele nunca diz "Sim" a uma teoria. Nos casos mais favoráveis, ele diz "Talvez" e, na grande maioria dos casos, simplesmente "Não". Se um experimento concorda com uma teoria, isto significa, para esta, "Talvez", e se não concorda, "Não". Provavelmente, toda teoria algum dia experimentará o seu "Não" - a maioria das teorias, logo após sua concepção." (H. DUKAS; B. HOFFMANN, Albert Einstein: o lado humano, 1979, p. 19).

As boas teorias da física não permitem remendos: uma vez que não concorde com o experimento, a teoria desaba irremediavelmente. O mesmo não acontece com a astrologia, que usa remendos em profusão. É nesse sentido, imagino, que a astrologia deve ser considerada irrefutável, pois a teoria sempre pode ser modificada de maneira a se ajustar aos fatos.

Newton da Costa é mais otimista e argumenta que a astrologia pode ser refutada por meio de experimentos cuidadosamente projetados. Os astrólogos, contudo, são incansáveis e muito imaginativos. Se inquiridos, muitos deles argumentarão que existem provas abundantes a favor da astrologia e lançarão mão de dados históricos mostrando correlações entre configurações celstes e acontecimentos terrestres. Outros dirão que a astrologia existe há milhares de anos, incorrendo em uma falácia clássica conhecida como "argumento da antigüidade" (se é antigo e ainda existe, deve estar correto). Finalmente, muitos deles, ao serem confrontados com falhas em previsões astrológicas, lembrarão do remendo astrológico definitivo e dirão que "os astros impelem, mas não compelem".

É claro que, se a astrologia pode ser refutada ou não, tudo depende do significado que se dê ao termo "refutar". Se por isso entendemos a elaboração de um conjunto de experimentos que mostrem à comunidade científica internacional que os princípios astrológicos não são válidos, então a astrologia pode ser refutada. Isso, de fato, já foi feito mais de uma vez. Por outro lado, se por "refutar a astrologia" entendemos "convencer os astrólogos, imagino que isso jamais acontecerá. Da experiência que tenho com astrólogos, eles jamais aceitarão qualquer prova. É claro que isso somente mostra que a astrologia é imune a críticas e, assim sendo, não é ciência. QED.

Newton da Costa também lembra que não é possível justificar logicamente todas as nossas crenças, pois sempre existe um conjunto de crenças primitivas assumidas anteriormente. A maioria das pessoas não se dá conta de tais crenças primitivas e as tem como embutidas no funcionamento do universo. A ciência é o único ramo do conhecimento humano que invoca a crítica constante como maneira de verificar a validade de qualquer crença, primitiva ou não. Nessa singela característica reside sua enorme importância.

O contato com cientistas como Newton da Costa é sempre estimulante. Na voz dele, até mesmo afirmações aparentemente triviais, como "algumas pessoas são mais inteligentes do que outras", se revestem de um significado especial. É fascinante que ele, em uma idade na qual muitos brasileiros já se aposentaram há muito, continue escrevendo e participando de congressos e eventos científicos. Que isso sirva de exemplo a todos nós.

quinta-feira, junho 08, 2006

Livro de Décio Krause e Steven French

Deve sair ainda em junho, pela Oxford University Press, o livro"Identity in Physics - A Historical, Philosophical, and Formal Analysis", deDécio Krause (UFSC) e Steven French (University of Leeds, UK). São 480 páginas por um preço um pouco salgado (£50.00, em capa dura). Os assuntos tratados são aqueles tão caros ao Décio: individualidade em física clássica e em mecânica quântica, quase-conjuntos, matemática da não-individualidade, lógica não-reflexiva, lógica quântica.

É bom saber que fui "quase-aluno" (i.e., um aluno não formal) do Décio, que se tornou um pesquisador internacionalmente reconhecido, mesmo trabalhando nesse país que trata seus cientistas e astronautas com tanto descaso e displicência.