You are on page 1of 204

HISTRIA DA COMPUTAO:

O CAMINHO DO PENSAMENTO E DA TECNOLOGIA

Pontifcia Universidade Catlica do Rio Grande do Sul


Chanceler:
Dom Dadeus Grings
Reitor:
Joaquim Clotet
Vice-Reitor:
Evilzio Teixeira
Conselho Editorial:
Ana Maria Tramunt Ibaos
Antnio Hohlfeldt
Dalcdio M. Cludio
Delcia Enricone
Draiton Gonzaga de Souza
Elvo Clemente
Jaderson Costa da Costa
Jernimo Carlos Santos Braga
Jorge Campos da Costa
Jorge Luis Nicolas Audy (Presidente)
Juremir Machado da Silva
Lauro Kopper Filho
Lcia Maria Martins Giraffa
Luiz Antonio de Assis Brasil
Maria Helena Menna Barreto Abraho
Marlia Gerhardt de Oliveira
Ney Laert Vilar Calazans
Ricardo Timm de Souza
Urbano Zilles
EDIPUCRS:
Jernimo Carlos Santos Braga Diretor
Jorge Campos da Costa Editor-chefe

Cluzio Fonseca Filho

HISTRIA DA COMPUTAO:
O CAMINHO DO PENSAMENTO E DA TECNOLOGIA

PORTO ALEGRE
2007

EDIPUCRS, 2007
Capa: Vincius de Almeida Xavier
Diagramao: Carolina Bueno Giacobo e Gabriela Viale Pereira
Reviso: do autor

F676h Fonseca Filho, Cluzio


Histria da computao [recurso eletrnico] : O Caminho do
Pensamento e da Tecnologia / Cluzio Fonseca Filho. Porto Alegre :
EDIPUCRS, 2007.
205 p.
Sistema requerido: Adobe Acrobat Reader
Modo de acesso: World Wide Web:
<http://www.pucrs.br/orgaos/edipucrs/>
ISBN 978-85-7430-691-9 (on-line)
1. Informtica. 2. Informtica Histria. 3. Computao Teoria.
CDD 004

Ficha catalogrfica elaborada pelo Setor de Processamento Tcnico da BCPUCRS

EDIPUCRS
Av. Ipiranga, 6681 - Prdio 33
Caixa Postal 1429
90619-900 Porto Alegre, RS - BRASIL
Fone/Fax: (51) 3320-3523
E-mail: edipucrs@pucrs.br
http://www.pucrs.br/edipucrs/

Prefcio
Esta obra se prope a um objetivo bastante ousado: recontar a histria da
computao a partir de um panorama de idias e modelos. Vence este desafio com galhardia.
Neste sentido, a escolha do nome foi feliz e adequada, dado que realmente busca um ponto
de vista original, fugindo de um simples relato de fatos em ordem cronolgica. Bebeu na
fonte de autoridades reconhecidas como o medievalista Jacques Le Goff, um dos criadores da
nova historiografia, ou de historiadores da cincia do peso de Karl Popper, Thomas Khun e
Imre Lakatos. To boa companhia certamente inspirou o autor na concepo de um todo
abrangente, atualizado e inter-relacionado.
Deixa claro, por exemplo, que aquelas geringonas desengonadas e enormes do
ps-guerra e o mais moderno e colorido equipamento atual, apresentam ainda muita coisa em
comum: rigorosamente seguem o mesmo princpio de funcionamento. verdade que os
computadores continuam a ganhar poder e velocidade de forma espantosa, numa evoluo
sem precedentes na tecnologia. Seguem possuindo os componentes estabelecidos por Von
Neumann h meio sculo, como tambm a sua idia de programa armazenado, que executado
separadamente do hardware, converteu-o em uma mquina de propsito geral. No entanto, o
processamento paralelo, a engenharia de software e a evoluo das comunicaes que
culminaram na Internet, elevaram a tecnologia a patamares jamais sonhados pelos
fundadores.
Por outro lado, para desenvolver as postulaes que fundamentaram tamanho
avano, os criadores primevos apoiaram-se em resultados abstratos e outros nem tanto de
pensadores do porte de Gdel, Hilbert e Turing, para citar alguns, devidamente creditados no
decurso da obra. Antes mesmo de se construir a primeira mquina baseada em rels, a estrada
para sua concepo estava aplainada pela contribuio destes visionrios, que propuseram
solues tericas bem frente de seu tempo e cuja realizao parecia, ento, impraticvel.
Esta a melhor contribuio do livro: demonstrar que a computao nasceu do
desejo de se compreender a capacidade que tem o homem em resolver problemas de forma
sistemtica. Assim, a tentativa de reproduzir mecanicamente estes procedimentos, muitos
deles exaustivamente repetitivos, lanou as bases para estabelecer a computao como a
conhecemos hoje.
A evoluo dos conceitos em informtica sempre esteve intrinsecamente ligada da
matemtica. Nas universidades, a computao nasceu dentro dos Departamentos de
Matemtica. Isto justifica o resumo da histria da matemtica, brilhantemente apresentado
segundo uma evoluo de conceitos. Evitando quebrar o ritmo e sem truncar a narrativa, dse ao luxo de fornecer fatos curiosos e pouco conhecidos como, s para exemplificar, a
dificuldade para a aceitao dos algarismos indo-arbicos por parte dos mercadores europeus,
pois alguns smbolos sendo parecidos, facilitaria a falsificao.
Todo o texto est tratado de forma leve e agradvel, sem se afastar do necessrio
rigor. A leitura flui como em um romance. No cansa com detalhes desnecessrios. Muito ao
contrrio, chegamos ao final desejando mais. Os anexos so oportunos, permitindo um
aprofundamento de tpicos ligados fundamentao, inadequados se includos no corpo
principal. Vale lembrar que o primeiro deles uma cronologia comparada, um grande esforo

de compilao, que permite contextualizar os avanos da matemtica e da computao a par


de outras reas tecnolgicas.
Na histria mais recente da computao, no se prende somente evoluo do
hardware, que foi fundamental para o desenvolvimento da disciplina, mas incapaz de justificar
tamanha difuso. Mostra o crescimento das linguagens de computao do Assembler Java
a distino entre os paradigmas de programao imperativas e declarativas, os
aprimoramentos na arquitetura, os avanos do sistema operacional; enfim, a cristalizao da
Computao como Cincia. No esquece de abordar tpicos destacados como Inteligncia
Artificial, Ciberntica e o delicado equilbrio entre o homem e a tecnologia.
Enfim, trata-se de uma obra surpreendentemente abrangente, dado seu tamanho
compacto. Leitura fcil e gil, despertar interesse no s de especialistas da rea como
tambm de pessoas afastadas do mundo dos computadores. No entanto, vislumbramos
ganho maior para este texto no ensino de Computao, pois como afirma com propriedade
na concluso, Cada conceito tem o seu lugar, a sua importncia e a sua histria que
necessrio ser ensinado. Esta perspectiva sem dvida enriquecer a viso dos estudantes,
embasando mais fortemente a essncia do assunto, dando subsdos para se tornarem
profissionais melhores.
Roberto Lins de Carvalho

Do autor
Fascinante! Ainda recordo esta palavra, dita por quem depois orientaria a minha
dissertao de mestrado, origem deste livro: somente iria para a frente na futura tese se
estivesse fascinado pelo assunto. E devo dizer que foi exatamente isso que aconteceu.
Excetuando-se alguns crculos mais tericos, normalmente considerado pela
maioria das pessoas, inclusive dentro da prpria Computao, que os dispositivos
computacionais, que hoje fazem parte do nosso cotidiano, surgiram, por volta da dcada de
1940. O sculo XX teve a glria de materializar tantos artefatos, em tantas reas, que
esquecemos que na verdade so resultado, fruto, do labor de muitos que nos precederam. A
Computao no escapa a essa lei. Nomes como Turing, Hilbert, Church, Frege e tantos
outros at chegar a Aristteles e aos babilnios de 4.000 a.C. misturam-se com lgica
matemtica, sistemas axiomticos, formalismo e lgebra. Ao se estudar um pouco, percebe-se
que toda essa tecnologia fruto de um devir de sculos, uma auto-estrada de quase 2000
anos, paciente e laboriosamente pavimentada por figuras que so desconhecidas por muitos
de ns, profissionais de informtica, ou s superficialmente conhecidas.
Procurar resgatar este lado humano e terico da computao, contribuir de alguma
forma para que outras pessoas da rea ou de fora dela possam apreciar desde outro ngulo os
alicerces deste imponente edifcio formado pela tecnologia dos computadores, entusiasmar
aqueles que esto entrando na rea de informtica, so os objetivos principais deste livro. No
pensei nada de novo, nem tive pretenses de originalidade. Afinal a histria j foi feita! Tudo
que escrevi j estava registrado. Apenas percebi que faltavam, e ainda faltam, trabalhos em
portugus que tratem dos conceitos e idias que fundamentaram a Computao. Logicamente
no esgotei nenhum tema, somente procurei traar uma linha coerente da evoluo destes
conceitos, aprofundando um pouco mais em um caso ou outro, procurando deixar uma boa
bibliografia, embora haja muitos livros que possam ser acrescentados. Espero que este
trabalho sirva como ponto de partida para outros, pois h muita coisa a ser feita para iluminar
e tornar mais acessveis determinados conceitos.
Gostaria de deixar constantes alguns agradecimentos. Em primeiro lugar ao prof.
Dr. Aluzio Arcela, do Departamento de Computao da UnB, orientador da minha
dissertao de mestrado e quem sugeriu e acompanhou aqueles meus primeiros estudos, base
desta obra. Ao prof. Dr. Nelson Gonalves Gomes, do Departamento de Filosofia da UnB,
que tanta pacincia teve para esclarecer alguns conceitos lgico-matemticos e fornecer
indicaes preciosas de bibliografia. E um especial agradecimento ao prof. Dr. Roberto Lins
de Carvalho (PUC-RJ) pelo incentivo que deu e entusiasmo que transmitiu ao tomar
conhecimento do que estava fazendo, sem o que possivelmente no teria me atrevido a
escrever coisa alguma. E aos amigos e colegas que me apoiaram e ajudaram na reviso desse
trabalho, e que acabaram por lhe dar uma forma mais amigvel.
Cluzio Fonseca Filho

ndice
1
1.1
2
2.1
2.2
2.3
3
3.1
3.2
3.3
3.4
3.5
4

INTRODUO
ORDENAO DOS ASSUNTOS
UMA REFLEXO SOBRE A HISTRIA
A HISTRIA E SUAS INTERPRETAES
A HISTRIA DA CINCIA
ENFOQUE HISTRICO ADOTADO
MOTIVAES PARA SE ESTUDAR A HISTRIA DA COMPUTAO
NECESSIDADE DE DISCERNIR FUNDAMENTOS
INCENTIVO EDUCAO PARA A QUALIDADE DO SOFTWARE
TORNAR CLAROS E LIGAR OS FATOS
ACOMPANHAR NOVAS TENDNCIAS
REVALORIZAR O FATOR HUMANO
EVOLUO DOS CONCEITOS

4.1 PRIMRDIOS
4.1.1 A EVOLUO DO CONCEITO DE NMERO E DA ESCRITA NUMRICA
4.1.2 DESENVOLVIMENTOS INICIAIS DA CINCIA DO CLCULO
4.1.3 A LGICA DE ARISTTELES
4.1.4 A CONTRIBUIO DOS MEGRICOS E ESTICOS
4.1.5 EUCLIDES E O MTODO AXIOMTICO
4.1.6 DIOPHANTUS, AL-KHARAZMI E O DESENVOLVIMENTO DA LGEBRA
4.1.7 A AUTOMATIZAO DO RACIOCNIO
4.2 A MECANIZAO DO CLCULO
4.2.1 LEIBNIZ, O PRECURSOR DA LGICA MATEMTICA MODERNA
4.2.2 O PROBLEMA DA NOTAO
4.3 A LGICA MATEMTICA NO SCULO XIX
4.3.1 BOOLE E OS FUNDAMENTOS DA LGICA MATEMTICA E DA COMPUTAO
4.3.2 A IMPORTNCIA DE FREGE E PEANO
4.4 O DESENVOLVIMENTO DA LGICA MATEMTICA
4.5 A CRISE DOS FUNDAMENTOS E AS TENTATIVAS DE SUPERAO
4.5.1 A FIGURA DE DAVID HILBERT
4.6 KURT GDEL: MUITO ALM DA LGICA
4.6.1 UM POUCO DE HISTRIA
4.6.2 VERDADE E DEMONSTRABILIDADE
4.6.3 OUTRAS CONQUISTAS
4.7 ALAN MATHISON TURING: O BERO DA COMPUTAO
4.7.1 A MQUINA DE TURING
4.7.2 O PROBLEMA DA PARADA E O PROBLEMA DA DECISO
4.7.3 OUTRAS PARTICIPAES
4.7.3.1 Decifrando cdigos de guerra

13
14
16
17
19
21
23
23
24
26
27
27
29
29
29
35
36
39
40
42
45
49
49
53
54
56
58
61
62
64
68
68
71
73
74
75
76
77
77

4.7.3.2 O computador ACE e inteligncia artificial


4.7.3.3 Programao de computadores
4.7.4 O TRISTE FIM
4.8 A TESE DE CHURCH-TURING E OUTROS RESULTADOS TERICOS

78
79
80
80

85

PR-HISTRIA TECNOLGICA

5.1
5.2
5.3
5.3.1
5.3.2
5.4
5.5
5.6
5.6.1
5.6.2
5.6.3
5.7
6

AS PRIMEIRAS MQUINAS

6.1
6.1.1
6.1.2
6.1.3
6.2
6.2.1
6.2.2
6.2.3
6.3
6.3.1
6.3.2
6.3.3
6.3.4
6.3.5
6.3.6
6.4
6.5
6.6
6.6.1
6.6.2
7
7.1
7.2
7.3
7.4
7.5
7.6
7.7

DISPOSITIVOS MAIS ANTIGOS


LOGARITMOS E OS PRIMEIROS DISPOSITIVOS MECNICOS DE CLCULO
CHARLES BABBAGE E SUAS MQUINAS
A MQUINA DE JACQUARD, INSPIRAO DE BABBAGE
UMA LADY COMO PRIMEIRA PROGRAMADORA
OUTRAS MQUINAS DIFERENCIAIS E MQUINAS ANALTICAS
A LTIMA CONTRIBUIO DO SCULO XIX: HERMAN HOLLERITH
COMPUTADORES ANALGICOS
PRIMEIRAS EVOLUES: SCULO XV
MICHELSON E SEU ANALISADOR HARMNICO; I GUERRA MUNDIAL
COMPUTADORES ANALGICOS ELETROMECNICOS
CIRCUITOS ELTRICOS E FORMALISMO LGICO: CLAUDE ELWOOD SHANNON

OS PRIMEIROS COMPUTADORES ELETROMECNICOS


KONRAD ZUSE
AS MQUINAS DA BELL E AS MQUINAS DE HARVARD
A PARTICIPAO DA IBM
O INCIO DA ERA DA COMPUTAO ELETRNICA
ESTADOS UNIDOS: ENIAC, EDVAC E EDSAC
A CONTRIBUIO INGLESA: O COLOSSUS
OUTRAS CONTRIBUIES
AS PRIMEIRAS LINGUAGENS
ALGUNS ASPECTOS TERICOS
DESENVOLVIMENTOS ANTERIORES A 1940
AS PRIMEIRAS TENTATIVAS
KONRAD ZUSE E SEU PLANCALCULUS
O DIAGRAMA DE FLUXOS
A CONTRIBUIO DE HASKELL
INTERPRETADORES ALGBRICOS E LINGUAGENS INTERMEDIRIAS
OS PRIMEIROS COMPILADORES
A FIGURA DE VON NEUMANN
O CONCEITO DE PROGRAMA ARMAZENADO
A ARQUITETURA DE VON NEUMANN

A REVOLUO DO HARDWARE E DO SOFTWARE


DA SEGUNDA GERAO DE GRANDES COMPUTADORES AOS DIAS DE HOJE
O DESENVOLVIMENTO DAS LINGUAGENS
ARQUITETURAS DE COMPUTADORES E SISTEMAS OPERACIONAIS
UMA NOVA MENTALIDADE
A COMPUTAO COMO CINCIA
A INTELIGNCIA ARTIFICIAL
UMA NOVA DISCIPLINA: A CIBERNTICA

85
85
86
89
90
91
92
93
95
96
97
98
101
101
101
102
103
103
104
105
105
109
109
111
111
112
113
115
116
116
117
119
122
123
123
123
127
130
131
134
137

8
8.1
8.2
9

10

A DISSEMINAO DA CULTURA INFORMTICA


O DOMNIO E O CONTROLE DAS INFORMAES
O EQUILBRIO ENTRE O TOQUE HUMANO E A TECNOLOGIA
CONCLUSO

139
139
140
145

REFERNCIAS BIBLIOGRFICAS

147

ANEXO CRONOLOGIA (AT O ANO 2007)

154

ANEXO O MTODO AXIOMTICO E AS CINCIAS DEDUTIVAS

174

ANEXO DEDUO E INDUO NA MATEMTICA

175

ANEXO - A ARITMTICA DE PEANO

179

ANEXO - O MTODO DAS DIFERENAS

180

ANEXO - A CONCEPO FORMALISTA DA MATEMTICA

182

ANEXO - O PROBLEMA DA DECISO NA MATEMTICA

186

ANEXO - O TEOREMA DA INCOMPLETUDE DE GDEL

187

ANEXO - MQUINAS DE TURING

191

ANEXO - ASTROLBIO

195

ANEXO - TURING E A MQUINA ENIGMA

199

NDICE DE FIGURAS

204

1 Introduo
A cincia normalmente cumulativa, isto , constroem-se instrumentos mais
poderosos, efetuam-se medidas mais exatas, precisam-se melhor e ampliam-se os conceitos
das teorias, e assim por diante. Embora os paradigmas possam mudar, as pesquisas
normalmente evoluem com base em resultados do passado, que se constituem em
fundamentos de um desenvolvimento posterior. O cientista estar mais seguro em suas
pesquisas e mais preparado para novos desafios se souber como seu assunto especfico
evoluiu historicamente, quais as dificuldades maiores, as solues encontradas e os problemas
pendentes.
Nas cincias mais tradicionais Filosofia, Matemtica, Fsica, Biologia, etc.
existem sempre estudos de histria junto a muitos outros dedicados a pensadores, inventores
e conquistadores de primeira, segunda ou terceira grandeza, alm de inmeras monografias.
No caso da Computao, necessrio que apaream trabalhos para servir de base e referncia
aos estudantes, novos pesquisadores e aqueles interessados pelos aspectos tericos que esto
por detrs dessa tecnologia que domina o cotidiano neste fim e incio de milnios.
A Histria da Computao est marcada por interrupes repentinas, por mudanas
inesperadas e imprevistas, tornando-se difcil a viso da evoluo dos computadores mediante
uma mera enumerao linear de invenes-nomes-datas. O desejo de conhecer as vinculaes
que o trabalho de determinados homens estabeleceram no tempo vem acompanhado do
impulso de compreender o peso desses atos no conjunto da Histria da Computao. Buscar
uma compreenso dos fatos atravs dos acontecimentos que o precederam um dos
principais objetivos que estar presente neste estudo da Histria da Computao.
A computao um corpo de conhecimentos formado por uma infra-estrutura
conceitual e um edifcio tecnolgico onde se materializam o hardware e o software. A
primeira fundamenta a segunda e a precedeu. A teoria da computao tem seu
desenvolvimento prprio e independente, em boa parte, da tecnologia. Essa teoria baseia-se
na definio e construo de mquinas abstratas, e no estudo do poder dessas mquinas na
soluo de problemas. A nfase deste livro estar nessa dimenso terica, procurando mostrar
como os homens, atravs dos tempos, buscaram elaborar mtodos efetivos para a soluo de
diversos tipos de problemas.
A preocupao constante de minimizar o esforo repetitivo e tedioso produziu o
desenvolvimento de mquinas que passaram a substituir os homens em determinadas tarefas.
Entre essas est o computador, que se expandiu e preencheu rapidamente os espaos
modernos pelos quais circulam as pessoas. A partir do aparecimento da noo de nmero
natural, passando pela notao aritmtica e pela notao mais vinculada ao clculo algbrico,
mostra-se como apareceram regras fixas que permitiram computar com rapidez e preciso,
poupando, como dizia Leibniz, o esprito e a imaginao. Descartes acreditava no emprego
sistemtico do clculo algbrico como um mtodo poderoso e universal para resolver todos
os problemas. Esta crena juntou-se de outros e surgem as primeiras idias sobre mquinas
universais, capazes de resolver todos os problemas. Esta era uma crena de mentes poderosas
que deixaram obras respeitveis na Matemtica e nas cincias em geral [CO98].

13

Tambm inteno do presente estudo procurar compreender e estabelecer as


diretrizes para uma disciplina de Histria da Computao, mediante a seleo das idias,
teorias e conceitos que ajudaram os homens em sua busca da automatizao dos processos
aritmticos e que conduziram tecnologia dos computadores.
No Brasil ainda no existem livros que tratem do assunto Histria da Computao,
observando-se uma lacuna cultural que pases do primeiro mundo preocupam-se em
preencher * j faz alguns anos. Pretende-se que este trabalho seja uma contribuio nesse
sentido e um ponto de partida para novos estudos de Histria, pois so muitos os campos
que podero ser abertos.

1.1 Ordenao dos assuntos


O desenvolvimento deste livro estar apoiado na seguinte seqncia de captulos:
Uma reflexo sobre a Histria
Motivaes para se estudar a Histria da Computao
Evoluo dos conceitos
Pr-Histria tecnolgica
As primeiras mquinas
A revoluo do hardware e do software
A disseminao da cultura informtica e o controle das informaes
Concluso
Primeiramente ser tratado o tema da Histria: constatar sua existncia e necessidade, aspectos da evoluo da cincia histrica e tocar particularmente o tema da Histria da
Cincia, que se relaciona com o presente trabalho. Logo a seguir vir uma breve explanao
de motivos que incentivam a aprofundar no estudo do tema especfico da Histria da
Computao.
Em Evoluo dos conceitos ser mostrado o desenvolvimento dos conceitos tericos
que formaram a base para o surgimento da Computao. O caminho a ser usado ser o da
Histria da Matemtica, desde os seus primrdios por volta do ano 4.200 a.C. poca
provvel de um calendrio solar egpcio [Boy74] , passando pelas contribuies das culturas
babilnica, hindu, chinesa, rabe e grega, pelo baco, pela primeira mquina de calcular, at
Boole, Hilbert, Turing e von Neumann, entre outros, nos anos 30, 40 e 50 do sculo XX. A
partir da, a Computao constri a sua prpria histria, embora os laos com a matemtica
continuem sempre muito estreitos.
Por Pr-Histria tecnolgica entende-se a enumerao de alguns dispositivos analgicos
primitivos, as primeiras tentativas de se construir um dispositivo de clculo com Leibniz,
Pascal, Babbage, Hollerith, etc., o surgimento dos dispositivos analgicos modernos
planmetros, analisadores harmnicos, etc. e os primeiros 'computadores' eletromecnicos
por volta dos anos de 1930 e 1940.
Em As primeiras mquinas ver-se- a construo dos primeiros dispositivos
computacionais e os primeiros passos que so dados nesse campo essencial da Computao
*

Nestes ltimos dez anos vrios livros j foram publicados em outros idiomas.

14

que so as Linguagens de Programao. J estava formada a infra-estrutura conceitual


necessria e a tecnologia j possibilitava o desenvolvimento de dispositivos mais poderosos e
precisos para a execuo de clculos.
Sob o ttulo de A revoluo do hardware e do software abordar-se- o desenvolvimento
posterior da Computao, os avanos da Inteligncia Artificial, das Linguagens de
Programao e Arquitetura de Computadores. Segue-se tambm uma anlise da Computao
como uma Cincia, da Teoria da Computao, das bases matemticas para Anlise de
Algoritmos, e do surgimento do tema da Complexidade Computacional.
No captulo A disseminao da cultura informtica e a proliferao das informaes dois assuntos sero colocados. O primeiro tratar do impacto social do desenvolvimento da
Computao e da necessidade de uma anlise mais cuidadosa dos dados que os computadores
tornaram disponveis ao homem. O segundo far algumas consideraes sobre alguns limites
do uso dos computadores.

15

2 Uma reflexo sobre a Histria


Uma curiosidade de explicar e compreender o mundo o estmulo que leva os
homens a estudarem o seu passado.
Arnold Toynbee
Da curiosidade do homem por si mesmo nasce a histria.
A. Brunner

Na lngua latina a palavra histria expressa dois conceitos distintos: plenitude de


suceder e o conhecimento que se possui desse suceder. Sua origem procede de certa raiz
grega que significa inquirir, com inclinao curiosidade [Fer85].
Plenitude de suceder, conhecimento desse suceder, recuperao dos valores
antigos..., palavras que significam algo mais que uma mera enumerao de nomes, lugares,
datas, nmeros, etc. Consiste antes de tudo em um debruar-se sobre o passado e formularlhe perguntas para se apropriar do seu legado (da tradio, de traducere, entregar).
Ningum produz por si mesmo os conhecimentos de que necessita para sobreviver
em meio sociedade na qual nasce; a grande maioria chega como algo adquirido, que se
recebe pela interao com o meio ambiente. Desde o instante em que o homem se d conta
do mundo e de si mesmo, percebe-se rodeado de instituies e tradies que vive e atualiza
de um modo natural, sem se dar conta de que foi forjado nesse entorno, com atitudes e
pontos de vista to arraigados em seu modo de ser, em sua psicologia, que nada lhe parece
estranho ou desconhecido. Somente quando o homem sai do seu entorno vital e entra em
contato com novas superfcies de valores, tradies, costumes, que comea a compar-los
com os seus e a se perguntar reflexivamente sobre tais coisas, pelas verdades de umas e
outras.
A histria parte dessa necessidade humana de refletir: o desejo de explicar a
origem e a verdade das prprias instituies, quem ou qual acontecimento as estabeleceu.
Para responder sobre sua existncia atual e conhecer a si mesmo o homem tem de mergulhar
no seu passado, perguntando s geraes anteriores por que fizeram essas instituies e no
outras, por que surgiram esses precisos costumes e atitudes, por que ele tem essa herana
cultural, e assim por diante. Por possuir uma herana que cada homem um historiador em
potencial. Assim como em cada homem h uma evoluo biolgica necessria, h tambm a
manuteno de uma identidade ao longo das vrias etapas desse desenvolvimento biolgico,
que nos distinguem e nos tornam nicos, sendo fator de compreenso do modo pessoal de
ser. Com a histria buscamos essa nossa identidade para compreender o momento presente.
E isto pode e deve ocorrer sob pontos de vista especficos: sociais, psicolgicos, filosficos e
tecnolgicos.
Paul M. Veyne fala ainda da histria como compreenso, contrapondo o uso deste termo
ao uso do termo explicao. Em seu sentido mais forte explicar significa atribuir um fato a seu
princpio ou uma teoria a outra mais geral como fazem as cincias ou a filosofia. Nesse caso,
a histria seria uma difcil conquista porque a cincia s conhece leis, sistemas hipotticodedutivos, e no mundo da histria reinam, lado a lado, a liberdade e o acaso, causas e fins, etc.
Para Veyne a histria apresenta um carter acientfico no sentido de que difcil buscar
princpios universais que tornem os acontecimentos inteligveis, ou achar mecanismos de
16

causa e efeito para se poder deduzir, prever. (...) a Revoluo Francesa se explica pela subida
de uma burguesia capitalista: isto significa, simplesmente, (...) que a narrao da revoluo
mostra como essa classe ou seus representantes tomaram as rdeas do estado: a explicao da
revoluo o resumo desta e nada mais. Quando solicitamos uma explicao para a
Revoluo Francesa, no desejamos uma teoria da revoluo em geral, da qual se deduziria a
de 1789, nem um esclarecimento do conceito de revoluo, mas uma anlise dos antecedentes
responsveis pela exploso desse conflito (...). Busca-se portanto uma compreenso dos
fatos atravs dos acontecimentos que o precederam* [Vey82]. Toda verdadeira investigao
edifica-se estabelecendo-se com a mxima exatido possvel o j sabido, para depois poder
perguntar com exatido, de maneira que se possam encontrar respostas. S partindo da
informao adquirida podem ser feitas perguntas capazes de ter resposta, e no perguntas
deslocadas, no vazio, que nunca podero ser respondidas. necessrio caminhar passo a
passo, um aps o outro: em toda busca que se queira chegar a algo preciso estabelecer com
preciso o problema, planejar possveis linhas de ataque conceitual e valorar as aparentes
solues.
Tal enfoque ser um dos que estaro presentes neste estudo crtico da Histria da
Computao atravs de uma viso conceitual. Pode-se aplicar a essa histria a mesma
afirmao que faz Thomas Khun sobre a Histria da Cincia: est marcada por interrupes
repentinas, por inesperadas e imprevistas mudanas, exigindo modelos de conhecimento que
supom alteraes inesperadas no processo do seu desenvolvimento ([RA91], vol III). Em
funo desse fato torna-se difcil a viso da evoluo dos computadores mediante uma mera
enumerao linear de invenes-nomes-datas , forando-nos a tentar compreender as foras e
tendncias que, no passado, prepararam o presente. O desejo de conhecer as vinculaes que
os atos de determinados homens estabeleceram no tempo vai acompanhado do impulso de
compreender o significado de tais atos no conjunto da Histria da Computao.

2.1 A Histria e suas interpretaes


Desde o seu nascimento nas civilizaes ocidentais, tradicionalmente situado na
antigidade grega (Herdoto, sculo V a.C. considerado por alguns como o pai da
histria), a cincia histrica se define em relao a uma realidade que no construda nem
observada, como na matemtica ou nas cincias da natureza, mas sobre a qual se indaga, se
testemunha. Este aspecto da histria-relato, da histria-testemunho, jamais deixou de estar
presente no desenvolvimento da cincia histrica.

Se a histria ou no cincia uma questo muito disputada entre vrios autores e tema ainda polmico. No tratado Histria
e Memria do medievalista francs Jacques Le Goff [Gof94], captulo Histria, item 1, desenvolve-se uma panormica geral
dessas correntes e tendncias existentes entre historiadores e tericos da histria.

Obviamente no se quer tirar aqui a importncia da datao. Como diz Le Goff, o historiador deve respeitar o tempo que,
de diversas formas, condio da histria e que deve fazer corresponder os seus quadros de explicao cronolgica
durao do vivido. Datar , e sempre ser, uma das tarefas fundamentais do historiador, mas deve-se fazer acompanhar de
outra manipulao necessria da durao a periodizao para que a datao se torne historicamente pensvel [Gof94].
No se dispensar este trabalho de ter uma cronologia, a partir da qual se possa situar no tempo os homens e os fatos mais
representativos de uma determinada corrente de idias ou descobertas. No anexo I h uma tabela da evoluo conceitual e
tecnolgica por data.

17

A partir do momento em que se comearam a reunir documentos escritos, a


historiografia comea a ultrapassar os limites do prprio sculo abrangido pelos historiadores,
superando tambm as limitaes impostas pela transmisso oral do passado. Com a
construo de bibliotecas e a criao de arquivos iniciou-se o desenvolvimento de mtodos de
crtica. Sobretudo depois do final do sculo XVII, estabeleceram-se os fundamentos para uma
metodologia aplicada histria, sob uma radical exigncia de submeter todas as investigaes
razo crtica [Fer85]. A segunda metade do sculo XIX imps o paradigma de uma histria
que a partir da chamar-se- paradigma tradicional ou paradigma rankeano, derivado do
nome do historiador Leopold von Ranke (1795-1886). Ranke propunha apresentar os fatos
tais como o foram na realidade e os historiadores europeus criaram os grandes esquemas
polticos e institucionais.
Caractersticas desse paradigma, conforme Peter Burke, historiador de Cambridge
[Bur92b]:
a histria diz respeito essencialmente poltica;
essencialmente uma narrativa de acontecimentos;
viso de cima no sentido de estar concentrada nos feitos dos grandes homens;
baseada em documentos;
deveria perguntar mais pelas motivaes individuais do que pelos movimentos
coletivos, tendncias e acontecimentos;
a histria objetiva, entendendo-se por isso a considerao do suceder como algo
externo ao historiador, suscetvel de ser conhecido como objeto que se pe diante
do microscpio, almejando uma neutralidade.
Ainda no sculo XIX algumas vozes soaram discordantes desse paradigma histrico.
Entre outras coisas devido ao seu carter reducionista, onde situaes histricas complexas
so vistas como mero jogo de poder entre grandes homens (ou pases), e tambm em funo
daquilo que se poderia chamar a tirania do fato ou do documento, importantes sem dvida,
mas que no deve levar a abdicar de outros tipos de evidncias. Como relata Peter Burke,
Michelet e Burckhardt, que escreveram suas histrias sobre o Renascimento mais ou menos
na mesma poca, 1865 e 1860 respectivamente, tinham uma viso mais ampla do que os
seguidores de Ranke. Burckhardt interpretava a histria como um corpo onde interagem trs
foras Estado, Religio e Cultura enquanto Michelet defendia o que hoje poderamos
descrever como uma histria da perspectiva das classes subalternas(...) [Bur92a]. Outros
opositores da histria poltica foram os historiadores da evoluo das sociedades sob o
ponto de vista econmico e os fundadores da nova disciplina da sociologia, que comearam a
surgir na Frana.
Dois fatos, no entanto, ocorridos nas quatro primeiras dcadas do sculo XX
acabariam por sacudir e arruinar a confiana nos princpios rankeanos, O primeiro foi a
rpida difuso do marxismo, que renuncia neutralidade, afirmando que o materialismo
dialtico a nica filosofia cientfica vlida para a interpretao da histria; o segundo, a
grande crise do ano de 1929, que revelou at que ponto os fatores econmicos e sociais
podem exercer uma ao decisiva.

18

desse perodo o nascimento da revista francesa Annales, considerada uma das mais
importantes propulsoras da chamada Nova Histria. Nova Histria um termo que data de
1912, quando o estudioso americano James Harvey Robinson publicou um livro com esse
ttulo. Segundo Robinson, histria inclui todo trao e vestgio de tudo o que o homem fez ou
pensou desde seu primeiro aparecimento sobre a terra. Em relao ao mtodo, a nova
histria vai servir-se de todas aquelas descobertas que so feitas sobre a humanidade, pelos
antroplogos, economistas, psiclogos e socilogos [Bur92b].
Surgiu a idia de uma histria total, com a qual quiseram os autores da Escola dos
Annales advertir que, frente unilateralidade e reducionismo do materialismo dialtico, a
compreenso do passado exige que todos os dados polticos e institucionais, ideolgicos,
econmicos, sociais, da mentalidade humana, etc. fossem fundidos e integrados para
conseguir uma explicao correta. Uma tarefa rdua, na prtica quase impossvel, mas que
marca um ideal, uma direo, uma meta que preciso atingir.
Surgiram ainda outros enfoques como, por exemplo, a histria do ponto de vista
quantitativo, durante certo tempo em moda na Europa e Estados Unidos, que procura utilizar
fontes quantitativas, mtodos de contagem e at modelos matemticos na sua pesquisa
histrica, ou as histrias que abrangem um determinado campo da vida humana como a
histria da arte ou a histria das cincias [GN88].
O panorama atual, de acordo com os historiadores, o de uma histria fragmentada,
detectando-se alguns sinais de busca de uma sntese. Ainda se est a uma longa distncia da
histria total. Na verdade, difcil acreditar que esse objetivo possa ser facilmente
alcanado ou at que ser alcanado , mas alguns passos j foram e esto sendo dados em
sua direo.
Paralelamente a todos esses esforos, surgiram tambm os tericos da histria, que
se esforaram ao longo dos sculos para introduzir grandes princpios que pudessem fornecer
linhas gerais de compreenso para a evoluo histrica. A filosofia da histria o estudo da
realidade latente, ou melhor, do pano de fundo dos fatos histricos. Qual a natureza,
por exemplo, das crises de crescimento e decadncia de uma civilizao, quais foram as
causas? Sendo a histria no a simples crnica que apresenta os fatos de um modo minucioso,
mas sim sua investigao, que se esfora por compreender os eventos, captar relaes,
selecionar fatos, como fazer isso, qual a estrutura essencial da realidade histrica?
A filosofia da histria termo temido por muitos autores porque poderia supor
apriorismos, preconceitos, idealismos responder basicamente a duas questes
fundamentais:
o que so os fatos histricos historiologia morfolgica;
para qual fim se dirigem historiologia teleolgica.

2.2 A Histria da Cincia


O nascimento e o desenvolvimento da cincia experimental, a partir do sculo XVII,
estiveram freqentemente acompanhados de polmicas filosficas: sobre o alcance do
raciocnio cientfico, seus limites, o que a verdade na cincia, etc. Diferentes posturas
filosficas da poca moderna tentaram solucionar tais polmicas, mas foi no sculo XX que
19

realmente se chegou a constituir uma filosofia da cincia como disciplina autnoma. Do


Crculo de Viena em 1929, passando por Karl Popper, Thomas Khun, Imre Lakatos, Paul
Feyerabend, Wolfang Stegmller, entre outros, protagonizou-se um intenso debate em torno
do valor do conhecimento *.
Para este trabalho, o que interessa que toda essa movimentao em torno da
racionalidade da cincia tambm teve seu reflexo na teoria da histria, pelas novas
epistemologias cientficas que foram surgindo. Os debates trouxeram para o primeiro plano a
questo da funo da historiografia da cincia e alguns problemas tericos relativos a essa
historiografia. A importncia de uma histria da cincia que v alm da histria episdica ou
dos resultados obtidos ficou ressaltada. Em ([RA91], volume III) resume-se quais seriam as
funes da Histria da Cincia:
sendo a cincia fator de histria, no se pode entender o desenvolvimento dessa
histria, especialmente da poca moderna e da poca contempornea, se no
conhecermos a Histria da Cincia e da Tecnologia;
alm de ser fator de histria, a cincia tambm fator de cultura: assim, estar
vedada a compreenso do desenvolvimento da cultura mais ampla se no se
compreende a Histria da Cincia e seu entrelaamento e condicionamento
recproco com a Histria da Filosofia, as concepes morais, polticas e outras;
o conhecimento da Histria da Cincia necessrio para o trabalho do cientista,
porque o pleno entendimento do contedo de uma teoria pode ser obtido
mediante o confronto dessa teoria com outras, e essas outras teorias devem ser
buscadas onde quer que estejam disponveis, tanto no presente como no
passado;
a Histria da Cincia se revela como mais um ingrediente para a didtica das
cincias, tanto no que se refere motivao do aprendizado, como no que se
refere educao no antidogmatismo, isto , no reconhecimento do erro como
uma fonte cientfica de aperfeioamento da teoria;
a Histria da Cincia possibilita uma maior conscincia das normas
metodolgicas necessrias ao trabalho de pesquisa.
Os problemas do como realizar essas funes so complexos, bastando lembrar as
diferentes escolas de histria. De qualquer maneira, a disciplina da histria que revitalizada,
despertando a capacidade do homem de assumir o seu passado e a partir dele dar respostas
criadoras aos novos problemas que aparecem. muito significativo que entre os sintomas da
decadncia de uma cultura ou de uma cincia esteja precisamente isto: o repdio ao passado
que as valorizava.

Para aprofundar no assunto, em [Art94] h uma sntese das discusses e evoluo das polmicas.

20

2.3 Enfoque histrico adotado


A histria no exclusivamente caos ou acaso: existe no comportamento humano um certo
grau de ordem e padro observveis de uma regularidade parcialmente previsvel.
The Social Sciences in Historical Study (vrios autores)

Uma das intenes do presente estudo procurar compreender e estabelecer as


diretrizes para uma disciplina da Histria da Cincia, a Histria da Computao, atravs da
seleo das idias, teorias e paradigmas que ajudaram os homens em sua busca da
automatizao dos processos aritmticos e que conduziram tecnologia dos computadores.
Interessa portanto o enfoque teleolgico, citado anteriormente (A histria e suas interpretaes).
A historiologia teleolgica aplica-se na interpretao, de trs para frente, da conexo
concreta do curso histrico. Trata-se de compreender duas coisas: a primeira, que na srie
confusa dos fatos histricos podem-se descobrir linhas, faces, traos, em suma, uma
'fisionomia', conforme diz Ortega y Gasset; a segunda, tentar mostrar um sentido para a
histria, desde a perspectiva do seu fim. Conforme outro historiador, Toynbee * [Toy87], o
ponto de partida da interpretao histrica, como o de qualquer tarefa intelectual, o
pressuposto de que a realidade tem algum significado que nos acessvel pelo processo
mental da explicao. Considera-se que a realidade, ainda que no totalmente, tem um
sentido, isto , que h um acmulo de ordem nas relaes entre os milhares de fenmenos
observados na realidade e dissecados pela nossa inteligncia. Todo raciocnio pressupe a
existncia de conexes na natureza, ... e seu nico objetivo determinar que elementos essas
conexes renem [H30].
Na abordagem teleolgica, a histria no o fato meramente enumerado, mas
organizado, selecionado, relacionado. Como diz Kenneth O. May, de modo semelhante
fsica, ns no pensamos que o mero registro de uma observao por um fsico Fsica. Isso
se torna Fsica quando interpretado, organizado, relacionado com outras partes da Fsica.
Do mesmo modo, o conhecimento cronolgico torna-se histria somente quando ele
selecionado, analisado, acompanhado da sua compreenso dentro de um contexto mais
amplo. Significa que a histria dos computadores deveria ser compreendida no do ponto de
vista 'histrico', mas em relao ao computador propriamente. Deveria dar a perspectiva,
atravs das idias, sobre o que o futuro desenvolvimento deveria ser, ao que as futuras linhas
de desenvolvimento devem chegar, e assim por diante [May80].
O conhecimento histrico, por sua prpria natureza, inseparvel do historiador,
pois este que, da documentao coletada, destaca o singular, elevando o fato condio de
histrico. Procurou-se, ento, registrar neste livro, tecendo um fio de histria, os fatos
conceituais, com a mnima periodizao e dataes possveis. Por fatos conceituais entendam-se
aqui as idias e conceitos relevantes que fundamentaram a incansvel busca pela mecanizao
do raciocnio. Entre estes estaro: lgebra, Sistema Axiomtico, Lgica Matemtica, Sistema
Axiomtico Formal, Computabilidade, Mquina de Turing, Tese de Church, Inteligncia
Artificial, e outros mais.
*

Se bem que em outro contexto, pois tinha uma outra linha de pensamento historiogrfico, mas que serve tambm para o
enfoque adotado no trabalho.

21

uma histria que se vai tornando incrivelmente complexa, conforme vai


avanando no tempo. Os trabalhos isolados dos precursores da Fsica e da Matemtica, e mais
recentemente da prpria Cincia da Computao, justamente por causa de seu isolamento,
so relativamente fceis de discernir. Mas a partir de 1950, com a proliferao das pesquisas
nas universidades, nos grandes laboratrios, nas indstrias privadas ou estatais , observouse um desenvolvimento acelerado da informtica. A Cincia da Computao avanou em
extenso e profundidade, tornando-se difcil at a tarefa de enumerao dos fatos. Surge a
tentao de particularizar mais ainda. Pode-se falar por exemplo de uma histria dos
microcomputadores, tomando o ano de 1947 quando trs cientistas do Laboratrio da Bell
Telefonia, W. Shockley, W. Brattain e J. Bardeen, desenvolveram sua nova inveno sobre o
que seria um prottipo do transistor e de como, a partir da, ano aps ano, hardware e
software progrediram e criaram novos conceitos, estruturas, em ritmo vertiginoso. E assim
tambm no desenvolvimento das Linguagens de Programao, dos Compiladores, da Teoria
da Computao, da Computao Grfica, da Inteligncia Artificial, da Robtica, e outras
reas. Comea a tornar-se difcil separar o que significativo dentro do enfoque crtico
adotado.
Surge o problema da delimitao das fronteiras, pois as vrias especialidades se
misturam muitas vezes *, apesar de ter um corpo central definido. Para se atender finalidade
de uma Histria da Computao de carter conceitual, este trabalho estar limitado
prioritariamente ao campo das idias, acenando para outros campos quando necessrio se
sua repercusso atingir a linha de evoluo seguida.
De qualquer modo, embora enfatizando o aspecto do pensamento o que se tinha
em mente quando algo foi feito ou definido, e o que este algo fundamentar mais tarde , ser
necessrio o estabelecimento de alguns marcos temporais. Os acontecimentos da histria
produzem-se em determinados lugares e tempos. Esta pontualizao possibilitar ir
unificando esse suceder histrico especfico de que se est tratando, em um processo nico
que mostre claramente a mudana, o desenvolvimento e o progresso. No se dispensar
absolutamente o uso das datas assim como dos fatos tecnolgicos que possam ser
considerados verdadeiras mudanas de paradigma .
No se deve estranhar o recurso Histria da Matemtica. Alis preciso dizer que,
no incio, pelo menos nos crculos acadmicos, a Computao apareceu como algo dentro
dos Departamentos de Matemtica, e ainda hoje, em muitas Universidades, a Cincia da
Computao aparece como um Departamento de um Instituto de Matemtica. Dentre os
diversos tpicos cientficos sujeitos investigao, a Matemtica o que melhor combina um
carter abstrato com um uso universal em outros campos do conhecimento. Sua relao com
a Computao muito estreita, quase que inseparvel. As primeiras mquinas construdas
foram resultado de buscas por parte dos membros dessa comunidade do conhecimento.

Pense-se na Robtica por exemplo, onde esto includas a Inteligncia Artificial, as Linguagens de Programao, a
Computao Grfica, etc.

No anexo I encontra-se uma tabela cronolgica dos acontecimentos conceituais e tecnolgicos, que dar uma viso mais geral da
evoluo da Histria da Computao.

22

3 Motivaes para se estudar a Histria da Computao


Uma vez apontada a importncia e necessidade do estudo da histria em geral e,
mais especificamente, da histria da cincia e da tecnologia, fica fcil perceber que o estudo da
Histria da Computao um interessante relevo dentro da vasta paisagem do conhecimento
cientfico. Basta lembrar que o impacto dessa tecnologia na nossa sociedade imenso e nossa
dependncia dela cada vez maior.
Seguem abaixo outros fatores motivadores para esse estudo.

3.1 Necessidade de discernir fundamentos


Comparada com outras reas, a Cincia da Computao muito recente. Mas,
nestes poucos anos (pode-se apontar a Segunda Guerra Mundial como um marco inicial,
quando efetivamente se construram os primeiros computadores digitais) o avano da
Computao foi exponencial, abrindo-se em um grande leque de tecnologias, conceitos,
idias, transformando-se em uma figura quase irreconhecvel. Atualmente falar de estado da
arte na Computao tornou-se sem sentido: sob que tica, perspectiva, campo ou rea?
Apesar da sua recente irrupo na histria contempornea, a partir dos anos 40 do sculo XX,
ela j se tornou complexa, ampla, geradora de novos enfoques, tornando-se um verdadeiro
desafio a quem queira entend-la e traar sua evoluo.
Ao mesmo tempo, cada nova gerao de informatas depara-se com um duplo
problema: a impossibilidade de ter uma viso global sobre todo o conhecimento precedente e,
mais acentuadamente ainda, a histria do desenvolvimento das vrias especialidades. No
esto individualizados os eventos, por vezes complexos, que antecederam o saber atual e
tambm no se possui um quadro que os rena, para se ter uma idia geral, coerente e
significativa. A evoluo tecnolgica se nos apresenta abrupta, atravs de saltos descontnuos,
e todo o trabalho que antecede cada etapa aparece coberto por uma camada impenetrvel de
obsolescncia, algo para a paleontologia ou para os museus, como se nada pudesse ser
aprendido do passado.
O resultado um empobrecimento do panorama atual da realidade da informtica.
No se estabelecem conexes entre os vrios campos da Cincia da Computao, caindo-se
facilmente no utilitarismo. As camadas mais profundas dos conceitos no so atingidas, o
conhecimento torna-se bidimensional, curto, sem profundidade.
Junto a isso, cedendo talvez a um imediatismo ou deixando-se levar por uma
mentalidade excessivamente pragmtica de busca de resultados, h uma forte tentao de se
estabelecerem ementas para o estudo da Cincia da Computao preocupando-se mais com
determinados produtos linguagens, bancos de dados, sistemas, aplicativos, etc. e pouco se
insiste na fundamentao terica.
Os matemticos aprendem aritmtica e teoria dos nmeros, pr-requisitos sem os
quais no se evolui no seu campo do saber; os engenheiros, clculo diferencial, fsica; os
fsicos trabalham arduamente na matemtica, e assim por diante. Quais os fundamentos
correspondentes na Computao? Conhece-se a lgebra Lgica de George Boole, um
matemtico que buscando relacionar o processo humano de raciocnio e a Lgica Matemtica,
23

desenvolveu uma ferramenta para os futuros projetistas de computadores? Sabe-se que a


revoluo da Computao comeou efetivamente quando um jovem de 24 anos, chamado
Alan Mathison Turing, teve a idia de um dispositivo terico para buscar a resposta a um
desafio do famoso matemtico David Hilbert um dos primeiros a falar sobre
computabilidade , e que em um journal de matemtica comentou aos seus colegas que era
possvel computar na teoria dos nmeros, por meio de uma mquina que teria armazenadas
as regras de um sistema formal? Que as pesquisas de Turing esto relacionadas com o
trabalho de Gdel cujo Teorema que leva o seu nome considerado um dos mais famosos
resultados do sculo XX, dentro da matemtica? Pode-se citar ainda a Tese de Turing-Church
que possibilitou aos cientistas passarem de uma idia vaga e intuitiva de procedimento efetivo para
uma noo matemtica bem definida e precisa do que seja um algoritmo. E antes de todos
esses, o esforo de dezenas de pensadores de diferentes culturas, para encontrar melhores
formas de usar smbolos, que viabilizou o desenvolvimento da Cincia Matemtica e Lgica, e
que acabaram fundamentando toda a Computao.

3.2 Incentivo educao para a qualidade do software


A investigao histrica sob o prisma citado das idias e conceitos fundamentais
que formaram a base do desenvolvimento da Computao poder contribuir para uma
questo que assume importncia decisiva e crucial: a qualidade do software.
preciso aqui tecer um comentrio relacionado ao tema da qualidade. A expresso
crise do software [Nau69] apareceu no final da dcada de sessenta na indstria tecnolgica
da informao. Referia-se aos altos custos na manuteno de sistemas computacionais, aos
custos relativos a novos projetos que falhavam ou que consumiam mais recursos que os
previstos, etc., realidades presentes no dia a dia de muitos centros de processamento de
dados. Ao lado disso, havia, e ainda h, uma disseminao anrquica da cultura informtica,
impregnando cada dia mais a vida social e trazendo, como conseqncia, uma dependncia
cada vez maior da sociedade em relao ao computador. Torna-se fundamental, portanto,
diminuir as incertezas presentes no processo de elaborao dos sistemas de computao.
A resposta a esses desafios j h alguns anos vem sendo formulada no sentido de se
estabelecer uma execuo disciplinada das vrias fases do desenvolvimento de um sistema
computacional. A Engenharia de Software surgiu tentando melhorar esta situao, propondo
abordagens padronizadas para esse desenvolvimento. Algumas dessas propostas vo em
direo ao uso de mtodos formais * nos processos de elaborao do sistema, basicamente
atravs da produo de uma especificao formal em funo das manifestaes do problema
do mundo real que estiver sendo tratado e atravs da transformao dessa especificao
formal em um conjunto de programas executveis.
H tambm pesquisas dentro da Computao que caminham em direo ao
desenvolvimento de mtodos numricos, em direo lgica algbrica. George Boole, em sua
obra que deu incio a uma nova arrancada no desenvolvimento da Lgica Matemtica e da
*

Um mtodo se diz formal quando o conjunto dos procedimentos e tcnicas utilizadas so formais, isto , tm um sentido
matemtico preciso, sobre o qual se pode raciocinar logicamente, obtendo-se completeza, consistncia, preciso, corretude,
conciso, legibilidade e reutilizao das definies abstratas.

24

Computao, como se ver, j dizia: A lgica simblica ou lgica matemtica nasce com a
vocao de ferramenta para inferncia mecanizada atravs de uma linguagem
simblica[Boo84]. Busca-se por essa vertente a criao de uma metalinguagem lgicomatemtica para o desenvolvimento de sistemas, de tal maneira que se possa constituir no
instrumento que transfere a preciso da matemtica aos sistemas. A figura abaixo, conforme
[Coe95], serve como ilustrao dessa idia.

Mundo

Real

Metalinguagem

Sistemas

Matemtica
Cincia da
Computao

lgebra

Filosofia

Lgica

Figura 1: O desenvolvimento de sistemas atravs de


especificaes formais

Tcnicas provenientes da rea da lgica matemtica vm sendo aplicadas a diversos


aspectos do processo de programao de computadores *. No sem dificuldades que
evoluem as investigaes sobre o papel do raciocnio formal matemtico no desenvolvimento
do software. Mas preciso ressaltar a sua importncia pois atravs da especificao formal e
verificao obtm-se uma excelente guia para o desenvolvimento de programas corretos e
passveis de manuteno. Talvez no se possa pedir que todo programa seja formalmente
especificado e verificado, mas de se desejar que todo programador que almeje
profissionalismo esteja ao menos familiarizado com essas tcnicas e seus fundamentos
matemticos [BBF82].
Concluindo-se o comentrio sobre os problemas relativos qualidade do software,
pode-se dizer que a soluo para o problema do desenvolvimento de software passa por um
*

Entre os aspectos estudados encontram-se: (i) verificao (prova de corretude): a prova de que um dado programa produz os
resultados esperados; (ii) terminao: a prova de que um dado programa terminar eventualmente a sua execuo; (iii)
derivao (desenvolvimento): construo de um programa que satisfaz a um conjunto de especificaes dadas; (iv)
transformao: modificao sistemtica de um programa dado para obter um programa equivalente, como estratgia para a
derivao de novos programas por analogia a solues conhecidas ou como mtodo de otimizao da eficincia de
programas [Luc82].

25

treinamento formal mais intenso na formao dos futuros cientistas da computao. Desde os
primeiros anos da universidade necessrio que se estudem os princpios matemticos, e em
alguns casos at fsicos (como se poder falar em Computao Grfica se no se sabe quais
so as propriedades de um sistema de cores), que formam o substrato da Computao: o que
computvel (metamatemtica, computabilidade), a complexidade que exige a execuo de
um clculo (anlise de algoritmos, teoria da complexidade), fundamentos de algumas
abstraes (teoria dos autmatos, teoria das linguagens formais, teoria de rede, semntica
denotacional, algbrica, etc.), fundamentos dos raciocnios que se fazem em programao
(sistemas de provas, lgica de Hoare), etc. Ou seja, seria interessante notar que na Cincia da
Computao h um forte componente terico. um corpo de conhecimentos, sistematizado,
fundamentado em idias e modelos bsicos que formam a base das tcnicas de engenharia e
eletrnica usadas na construo de computadores, tanto no referente ao hardware como ao
software. Como no falar de induo matemtica quando se deseja seriamente explicar a
programao de computadores? Ou falar de uma linguagem de programao sem introduzir a
teoria dos autmatos? Com o desenvolvimento de conceitos matemticos adequados ser
possvel estabelecer um conjunto de procedimentos que assegure aos sistemas a serem
desenvolvidos uma manuteno gerencivel, previsvel e natural, como ocorre na engenharia.
O estudo da Histria da Computao, no j sob o enfoque de datas e nomes
importantes tambm e necessrios, para no se cair na pura especulao , mas sob o aspecto
das idias, de seus fundamentos e suas conseqncias, pode ser uma slida base, um ponto de
partida, para sensibilizar e entusiasmar o aluno sobre a importncia dos fundamentos tericos,
para ajud-lo a ver o que um determinado conceito tem como pressupostos.

3.3 Tornar claros e ligar os fatos


Entre os objetivos da cincia histrica pode-se aceitar como axiomtico o de
procurar dar um significado aos acontecimentos. a busca de se dar sentido histria. Este
trabalho, feito dentro de uma perspectiva teleolgica da histria, procurar estabelecer uma
conexo causal entre eventos, para se comear a entender o sentido do passado, dispondo-o
numa espcie de sistema organizado, para torn-lo acessvel compreenso.
Sob outro enfoque, pode-se ver a Histria da Cincia da Computao como um
olhar para trs com o fim de descobrir paralelismos e analogias com a tecnologia moderna,
com o fim de proporcionar uma base para o desenvolvimento de padres atravs dos quais
julguemos a viabilidade e potencial para uma atividade futura ou atual [Lee96]. Quer dizer,
analisar o passado e reconhecer tendncias que nos permitam prever algum dado futuro.
Dizia John Backus, criador do FORTRAN e da Programao Funcional: Na cincia e em
todo trabalho de criao ns falhamos repetidas vezes. Normalmente para cada idia bem
sucedida h dzias de outras que no funcionaram (1994, discurso ao receber o prmio
Charles Stark Draper). A histria cataloga e registra tais falhas, que ento se tornam uma
fonte especial de aprendizado, ensinando tanto quanto as atividades bem sucedidas. Mais
ainda, do-nos o caminho, por vezes tortuoso, por onde transcorreram as idias, as
motivaes, as inovaes. Ou seja, interessante e instrutivo o estudo da histria de qualquer
assunto, no somente pela ajuda que nos d para a compreenso de como as idias nasceram
26

e a participao do elemento humano nisso mas tambm porque nos ajuda a apreciar a
qualidade de progresso que houve.

3.4 Acompanhar novas tendncias


sintomtico notar que pela primeira vez incluiu-se no curriculum para Cincia da
Computao, desenvolvido pela ACM (Association for Computing Machinery) e IEEE
(Institute of Electrical and Electronics Engineers) Computer Society Joint Task Force, em
1991, mdulos relativos histria em 4 reas: Inteligncia Artificial, Sistemas Operacionais,
Linguagens de Programao e Temas Sociais, ticos e Profissionais. Mais recentemente
ainda, na 6a IFIP (International Federation for Information Processing), evento realizado
dentro da Conferncia Mundial dos Computadores na Educao, transcorrida em
Birmingham, Inglaterra, de 20 a 24 de julho de 1995, estimulou-se no s a preservao das
peas de computadores, o registro de memrias dos pioneiros e a anlise do impacto exterior
das inovaes nos computadores, mas tambm o desenvolvimento de mdulos educacionais
na Histria da Computao [Lee95].
Significativo tambm a introduo, nos cursos de Cincia da Computao, da
disciplina Histria da Computao, principalmente a partir da dcada de 1990, em algumas
universidades. Pode-se citar a Universidade de Stanford e o Instituto Charles Babbage, da
Universidade de Minnesota dedicado a promover o estudo da Histria da Computao, EUA,
o arquivo Nacional para a Histria da Computao da Universidade de Manchester,
Inglaterra, Universidade de Waterloo (Canad) e similar em Bordeaux, Frana, Universidade
de Wales Swansea, Austrlia, etc.
Tambm aumentaram o nmeros de museus e instituies governamentais ou
particulares que prestam esse servio de preservao da histria da tecnologia informtica,
como por exemplo o museu de Boston, os museus de instituies militares americanas e
organizaes do porte do IEEE. Esta ltima promoveu em 1996 o lanamento de pelo
menos quatro livros sobre o assunto Histria da Computao, tendo construdo um site na
Internet, narrando os eventos dessa histria desde o sculo XVII. Na Internet proliferaram os
museus de imagens e cronologias sobre assuntos especficos como Microcomputadores,
Computao Paralela, Linguagens de Programao, etc.

3.5 Revalorizar o fator humano


Finalmente h o grande tributo que se deve fazer a esses homens que, ao longo da
histria da cincia Matemtica, Lgica, Fsica, e mais recentemente da Computao, no se
deixaram levar pelo brilho atraente daquilo que chama a ateno e das demandas mais
imediatas. Motivados pela pura busca do saber formaram o arcabouo, a infra-estrutura que
27

possibilitou a revoluo da informtica. Os bits e todas as partes de um computador


(incluindo o software) so na verdade o resultado de um processo, de uma evoluo
tecnolgica de vrios sculos, partilhada por inmeros personagens, cada um acrescentando
sua pequena ou grande contribuio.
Qualquer que seja, porm, o destino da informtica, ela j tem o seu lugar na
Histria, constituindo-se num dos fatores preponderantes que moldam o conturbado mundo
no fim do sculo XX. Sem a compreenso do seu papel social, no ser possvel entender o
processo histrico em marcha, nem a direo do futuro. Desse modo, a pesquisa da Histria
da Computao tem um significado fundamental no presente [Mot96].

28

4 Evoluo dos conceitos


Considerando as idias e os conceitos como uma das linhas que conduziro ao
grande desenvolvimento tecnolgico da Computao a partir da dcada de 40 do sculo XX,
este captulo faz referncia a alguns aspectos da evoluo da Matemtica, e mais
especificamente de alguns dos seus ramos, no caso a lgebra e a Lgica Simblica ou
Matemtica, de onde nos vieram o rigor e o mtodo axiomtico, at chegar s noes de
computabilidade e procedimento, com Turing e Church.

4.1 Primrdios
4.1.1

A evoluo do conceito de nmero e da escrita numrica *

Talvez o passo mais fundamental dado nestes primeiros tempos tenha sido a
compreenso do conceito de nmero, isto , ver o nmero no como um meio de se contar,
mas como uma idia abstrata. O senso numrico foi o ponto de partida. Trata-se da sensao
instintiva que o homem tem das quantidades, atributo participado tambm pelos animais
irracionais (a gata mia quando um dos filhotes no est no ninho; determinados pssaros
abandonam o ninho quando um dos seus ovos foi mudado de lugar); na vida primitiva
bastava esse senso numrico. Mas com o comeo da criao dos animais domsticos era
necessrio saber algo mais, pois se a quantidade no fosse melhor conhecida, muitas cabeas
se perderiam. Inventou-se a contagem atravs do estabelecimento de uma relao entre duas
ou vrias quantidades, na qual cada elemento de uma corresponde a um elemento de outra e
nenhum elemento deixa de ter o seu correspondente (por exemplo, pedrinhas de um monte
com ovelhas de um rebanho).
No entanto essa relao biunvoca se d somente no mbito mental (ovelhas e pedra
esto na natureza e no se do conta um do outro). No est registrado de que forma ocorreu
o reconhecimento, pelos nossos antepassados mais primitivos, de que quatro pssaros
caados eram distintos de dois, assim como o passo nada elementar de associar o nmero
quatro, relativo a quatro pssaros, e o nmero quatro, associado a quatro pedras. Essa
correspondncia um pensamento que uma espcie de linguagem. Nessa linguagem esto
envolvidas a quantidade, a correspondncia biunvoca (o nmero) e a sua expresso (os
elementos usados para contagem: pedras, dedos, seqncias de toques no corpo, e outras
formas mais primitivas de expressar um numeral).
A viso do nmero como uma qualidade de um determinado objeto um obstculo
ao desenvolvimento de uma verdadeira compreenso do que seja um nmero. Somente
quando, de acordo com um dos exemplos dados, o nmero quatro foi dissociado dos
pssaros ou das pedras, tornando-se uma entidade independente de qualquer objeto uma
abstrao, como diriam os filsofos , que se pde dar o primeiro passo em direo a um
sistema de notao, e da aritmtica. Conforme Bertrand Russell, foram necessrios muitos

Este item est baseado em [Dan54], [Wil97] e [New56], principalmente no segundo

29

anos para se descobrir que um par de faises e um par de dias eram ambos instncias do
nmero dois [Dan54].
E assim como se criaram smbolos escritos para expressar idias, tambm criou-se a
escrita numrica. Os numerais escritos surgem nas civilizaes antigas (egpcia, babilnica e
chinesa) e se baseiam na repetio de smbolos. No caso dos egpcios, ao se completar o
dcimo elemento, tomava-se um outro smbolo para representar o nmero.

Figura 2: Sistema numrico clssico de adio egpcio baseado em


hierglifos [Wil97]

Foram criadas vrias escritas numricas: os gregos e os romanos usavam letras do


alfabeto. Os algarismos romanos foram to difundidos que existem at hoje, pelo menos para
certas funes especiais como marcar horas em relgios e numerar captulos em livros,
especialmente livros formais como a Bblia. Este amplo processo de criao conclui-se com a
escrita numrica criada pelos hindus, h vrios sculos.
O advento do que ns chamamos de sistema numrico hindu-arbico, com seu
rgido esquema de valores e posies, juntamente com o zero (que era usado para representar
um espao em branco), foi uma das grandes invenes da humanidade, e possibilitou o
desenvolvimento dos mtodos matemticos e aritmticos, que a partir disso evoluram muito
mais do que qualquer coisa que se conhecia at ento*.
O uso do zero no era incomum em certos sistemas numricos posicionais
primitivos. Os babilnios usaram um carter parecido com o zero para representar uma
coluna vazia no meio do nmero por volta do ano 200 a.C., mas isso no era muito comum
no sistema deles. Se um nmero, por exemplo 1024, precisasse de um zero para separar o
dgito 1 do dgito 2, eles usavam o smbolo do zero do mesmo modo que se faz hoje. No
entanto, se eles tivessem que representar um nmero como o 1000, parece que eram
incapazes de conceber o fato de que o smbolo zero pudesse ser usado para simplesmente
cobrir os espaos restantes, e eles representavam apenas o nmero 1, deixando ao leitor a
tarefa de descobrir se aquilo significava 1000, e no 10, 100 ou at mesmo 1.
* Olhando-se para trs na Histria, parece que a inveno de um sistema numrico de posies rgidas, e ainda de um smbolo
para designar o zero, deveria ter sido um extenso bvia de alguns dos primeiros sistemas numricos de posies. Essa idia
falsa: basta pensar que escapou percepo de grandes autores da Antigidade, como Arquimedes ou Apollonius de Pergam,
mesmo quando eles percebiam as limitaes de seus sistemas.

30

Exatamente onde e quando os homens comearam a utilizar o atual sistema


numrico posicional, e os 10 dgitos em que eles eram baseados, continua a ser um fato
obscuro. Certamente veio at a Europa pelos rabes, e bem certo de que eles o obtiveram
do povo do subcontinente indiano. Onde e quando os indianos obtiveram esse sistema no
conhecido. Pode ter sido uma inveno indgena, ou ter vindo do leste da Indochina, ou um
desenvolvimento do uso babilnico do smbolo da coluna vazia. Na ndia antiga, bem como
em muitas sociedades, a arte da aritmtica foi desenvolvida em um maior grau do que o
necessrio para o comrcio, por causa da sua importncia para a religio local. Todas as trs
primeiras religies indianas (Janasmo, Budismo e Hindusmo) consideravam a aritmtica
importante, como mostra o fato de ser exigida entre os estudos fundamentais a serem feitos
pelos candidatos ao sacerdcio.
O uso mais antigo que se tem notcia da matemtica indiana est em trabalhos
escritos em forma de verso, onde complicados expedientes literrios eram utilizados para
representar nmeros, de modo a se preservar a rima e a mtrica dos poemas. At mesmo
documentos que usam numerais para denotar nmeros nem sempre so guias seguros para
informar quando tal prtica comeou a aparecer. Parece que, em alguma poca no sculo XI,
foi feita uma tentativa para se racionalizar o sistema de propriedade da terra em partes da
ndia, o que levou muitas pessoas a produzirem documentos forjados para pedir seus vrios
lotes. Das 17 inscries conhecidas usando numerais antes do sculo X, todas, exceo de
duas, mostraram ser falsificaes. A mais antiga e indubitvel ocorrncia do zero na inscrio
escrita na ndia foi em 876 d.C., com os nmeros 50 e 270 sendo representados em uma
verso local dos dgitos indianos.
A histria do nosso sistema numrico fica muito mais clara a partir do sculo IX
d.C. No sculo VII, quando a dinastia dos Califas comeou em Bagd, o aprendizado das
culturas adjacentes foi absorvido em uma nova e expansiva cultura rabe. Quando os rabes
conquistavam um pas, eles costumavam adquirir seu modo de escrita, particularmente a
notao dos numerais do povo conquistado e procurar traos de conhecimento na literatura
que sobreviveu guerra.
Graas aos trabalhos do matemtico al-Kharazmi (mais a frente se falar da
importncia deste homem originrio da Prsia), o uso dos numerais hindus rapidamente se
expandiu por todo o imprio rabe. A eventual expanso desses numerais pela Europa mais
facilmente explicada a partir dos contatos gerados entre rabes e europeus pelo comrcio e
pelas guerras. provvel que os comerciantes italianos conhecessem o sistema de contas de
seus parceiros comerciais, e que os soldados e sacerdotes que retornaram das cruzadas
tambm tivessem uma ampla oportunidade de ter contato com o sistema de notao e
aritmtica rabes. O mais antigo manuscrito europeu contendo numerais hindu-arbicos de
que se tem notcia foi escrito no claustro Albeda, na Espanha em 976 d.C. Os novos
numerais tambm foram encontrados em outro manuscrito espanhol de 992 d.C., em um
manuscrito do sculo X encontrado em St. Gall, e em um documento do Vaticano de 1077
d.C. Entretanto seu uso no foi muito difundido durante esse perodo inicial, e provvel que
pouqussimas pessoas tenham entendido o sistema antes da metade do sculo XIII.

31

Figura 3: Mais antigo manuscrito europeu com numerais indoarbicos, cfr. [Ifr89]

A primeira grande tentativa de introduzir essa nova forma de notao foi feita por
Leonardo de Pisa (1175 a 1250), mais conhecido pelo nome de Fibonacci (que veio de filius
Bonaccio, o filho de Bonaccio), um dos melhores matemticos europeus da Idade Mdia.
Durante o tempo de Fibonacci, Pisa era uma das grandes cidades comerciais da Itlia, e por
isso entrou em contato com toda a rea do Mediterrneo. O pai de Fibonacci era o chefe de
uma das casas de comrcio ultramarino, em Bugia, na costa da frica Norte. Bugia era um
importante centro para mercadores e estudantes da poca e Fibonacci foi mandado, quando
tinha 12 anos, para se juntar a seu pai, tendo uma chance de ouro para observar os mtodos
rabes. Certamente obteve parte de sua educao enquanto estava em Bugia, e a lenda diz que
ele aprendeu rabe e aritmtica por um mercador local. Visitou depois o Egito, Sria, Grcia e
Frana, onde se esforou para se informar sobre os sistema aritmticos locais. Ele achou
todos esses sistemas numricos to inferiores aos que os rabes utilizavam que, quando
voltou a Pisa, escreveu um livro para explicar o sistema rabe de numerais e clculo. Esse
livro, nomeado de Liber Abaci (O Livro do baco) foi publicado pela primeira vez em 1202, e
revisto e ampliado em 1228. Era um tomo muito grande para a poca, constitudo de 459
pginas divididas em 15 captulos. Os captulos 1 a 7 introduziam a notao rabe e as
operaes fundamentais com nmeros inteiros; os captulos 8 a 11 tratavam de vrias
aplicaes, enquanto os restantes eram dedicados aos mtodos de clculo envolvendo sries,
32

propores, razes quadradas e cbicas, e uma pequena abordagem sobre geometria e lgebra.
Foi em um desses ltimos captulos em que ele introduziu o famoso
problema do coelho e as sries de nmeros que agora levam seu nome.
O Liber Abaci no foi to influente quanto deveria ser porque era muito grande, e
portanto difcil de copiar em uma poca em que no havia imprensa. Tambm continha
material avanado que s poderia ser entendido por estudiosos, tendo sido conhecido apenas
por poucas pessoas, nenhuma das quais parecia ter muita influncia nos mtodos de clculo
usado nas transaes dirias.
Mas embora os esforos de Fibonacci tivessem pouco sucesso, a idia dos numerais
hindu-arbicos foi gradualmente se expandindo na Europa. As principais fontes de
informao foram as vrias tradues, algumas parciais, do trabalho de al-Kharazmi. O fato
de ser a lngua rabe totalmente diferente de qualquer lngua europia foi uma grande barreira
para a disseminao das idias cientficas rabes. Para aprender o rabe, era geralmente
necessrio viajar a um pas de lngua rabe, e isso era uma tarefa difcil, j que alguns rabes
no eram simpticos aos visitantes cristos (e vice-versa). Esse problema foi parcialmente
resolvido em 1085, quando Alphonso VI de Leon recapturou Toledo dos mouros e uma
grande populao de lngua rabe veio esfera da influncia europia. A maioria das primeiras
tradues, ou pelo menos as pessoas que ajudaram os tradutores, vieram dessa populao.
Os dois principais trabalhos que espalharam o conhecimento aritmtico hindu-rabe
pela Europa foram o Carmen de Algorismo (o Poema do Algorismo) de Alexander De Villa Dei
por volta de 1220 e o Algorismus Vulgaris (Algorismos Comuns), de John de Halifax, mais
conhecido como Sacrobosco, por volta de 1250 d.C. Esses dois livros foram baseados, pelo
menos em parte, nos trabalhos de al-Kharazmi ou de um de seus sucessores. Foram
elaborados para uso em universidades europias e no pretendiam ser explicaes completas
do sistema; preferiram dar simplesmente o bsico que o professor pudesse explicar, linha a
linha, para seus alunos. O Carmen de Algorismo era particularmente difcil de ser seguido,
especialmente na discusso do clculo de razes, porque foi escrito em versos hexasslabos.
Apesar disso ele ficou muito popular, sendo copiado muitas vezes no latim original e sendo
at traduzido em ingls, francs e irlands. Parte dessa popularidade se deveu ao fato de que
Alexander de Villa Dei (? a 1240), que era nativo da Normandia e escrevia e ensinava em
Paris, j era famoso por uma gramtica de latim, tambm em versos, que era muito utilizada
nas escolas da poca. Tambm o fato de possuir somente 284 linhas o fazia facilmente
copivel pelos escribas, e assim, enquanto se produzia uma cpia do Liber Abaci, centenas de
cpias do Carmen podiam ser feitas e distribudas. O mesmo acontecia com o Algorismus
Vulgaris, que tinha somente 4.000 linhas. Sacrobosco, que tambm ensinava em Paris durante
a primeira metade do sculo XIII, era conhecido por seu trabalho em astronomia, e isso sem
dvida contribuiu para o sucesso do Algorismus Vulgaris, que continuou a ser usado como um
texto universitrio em aritmtica at mesmo depois da inveno da imprensa. Edies
impressas so conhecidas a partir do fim dos sculos XV e XVI.
Uma dos primeiros tradutores do trabalho de Al-Kharazmi foi Adelard de Bath que,
por volta do ano 1120, produziu um texto em latim cujas primeiras palavras eram Dixit
Algorismi (assim disse o algorismo), e que resultou nessa nova cincia que ficou
conhecida como algorismo. Esse termo, e as vrias corruptelas originadas por autores
33

diferentes, finalmente se espalhou atravs de todas linguagens europias at o ponto de o


processo de fazer aritmtica com os numerais hindu-arbicos ser chamado algarismo, e isso
nos deu o termo algoritmo que to familiar aos estudantes de Cincia da Computao. A
conexo do Algorismi com al-Kharazmi perdeu-se e muitos autores inventaram at outras
pessoas, como um que citava o Rei Algor, a quem a origem desses mtodos poderia ser
atribuda...
A troca dos numerais adicionais romanos para o sistema posicional dos hindurabes foi lenta, durou alguns sculos. No era fcil para os europeus entenderem o uso do
zero que, enquanto representando o nada em si, podia magicamente fazer outros dgitos
crescerem dramaticamente em valor. A palavra hindu para o sinal do zero era sunya que, muito
apropriadamente, queria dizer vazio ou desocupado. Quando o sistema foi adotado pelos rabes,
eles usaram sua prpria palavra para desocupado, que geralmente escrita como sifr no nosso
alfabeto. Essa palavra rabe foi simplesmente escrita no alfabeto latino ou como zephirum, de
onde veio a nossa palavra zero, ou como cipher, de onde derivou o antigo verbo ingls to cipher,
que significava fazer aritmtica. Parte do mistrio com que o novo sistema era considerado
pode ser observado pelo fato de que a mesma palavra para a raiz elevou termos que eram
envolvidos em mgica e escrita secreta, como calcular ou decifrar um texto em cdigo. Esse ar
de mistrio foi realado pela atitude de algumas pessoas que, depois que conheciam o
algarismo, acharam que isso era um conhecimento para ser mantido entre um grupo secreto, e
no para ser explicado para pessoas comuns. Essa atitude ilustrada em vrias figuras do fim
da Idade Mdia, uma das quais mostra duas pessoas fazendo aritmtica, uma usando os
mtodos antigos do baco enquanto o outro, escondendo seu trabalho do primeiro, estava
usando o novo algarismo.
Por volta de 1375 o uso dos numerais hindu-arbicos firmou-se na Europa. Eles
comearam a aparecer em muitos documentos diferentes, embora ainda existisse uma grande
resistncia para a adoo dos novos nmeros. Em 1229, a cidade de Florena proclamou uma
lei que proibia o uso dos numerais hindu-arbicos, pois eram fceis de serem alterados ou
forjados (por exemplo, transformar um 0 em um 6 ou 9 deveria ser bastante fcil). Os
mercadores desenvolveram vrios truques para prevenir esse tipo de coisa com os numerais
romanos; por exemplo, XII era escrito como Xij, ento um i extra no poderia ser adicionado
ao fim sem gerar suspeitas e, fazendo o primeiro caracter maisculo, eles evitavam que
qualquer um colocasse caracteres esquerda do nmero. Passaria apenas pouco tempo para
que se desenvolvessem dispositivos semelhantes para os novos numerais, mas ainda por volta
de 1594 os mercantes da Anturpia eram alertados para que no os usassem em contratos ou
em ordens de pagamento bancrias.
Os italianos rapidamente viram a utilidade do novo sistema para propsitos
mercantis e influenciaram toda a Europa para a adoo do sistema de valor posicional.
Algarismos j eram bem difundidos por volta de 1400, mas os mercadores mais
conservadores continuaram utilizando os numerais romanos at por volta de 1550, e muitos
monastrios e faculdades os usaram at o meio do sculo XVII. At mesmo por volta de
1681 encontram-se evidncias de que o novo sistema ainda no tinha sido completamente
compreendido. Um livro publicado naquele ano teve seus captulos numerados como: 1, 2, 3,
4, 5, 6, 7, 8, 9, X, X1, X2, X3, X4 XXX, XXX1, 302, 303 XXXX, 401, 402,
34

Essa permanncia dos mtodos antigos de notao foi causado no por falta de
conhecimento sobre o novo, mas pelo medo de que, sem um entendimento completo do
sistema, alguma coisa poderia dar errado. Esse tipo de medo visto de vez em quando at
hoje, mas dois exemplos do sculo XVII podem ajudar a ilustrar o fenmeno. Willian
Oughtred, que se encontrar mais a frente neste livro ao se falar da rgua de clculo, preferia
calcular ab + ac a calcular a(b+c) por causa do medo de que algum tipo de erro poderia
acontecer em um sistema abreviado. Muitas formas diferentes de numerais foram usadas na
Europa, alguma das quais no seriam reconhecidas da maneira que elas so agora. As verses
manuscritas dos antigos trabalhos so particularmente difceis de se ler porque o autor e o
copista usaram as formas de numerais com que eles eram mais familiarizados. Livros
produzidos em regies prximas, ou separados por poucos anos, usaram caracteres diferentes
para pelo menos alguns dos numerais. Foi a inveno da imprensa que os padronizou na
forma em que ns os conhecemos agora, embora at hoje as formas do 5 e do 7 variem
ligeiramente entre europeus e americanos. interessante notar que, apesar do fato de que os
europeus obtiveram o sistema dos rabes, as duas culturas utilizam formas de numerais
notavelmente diferentes hoje. O turista europeu tem constantemente problemas com o fato
de que o crculo usado nos pases rabes como smbolo para o dgito cinco e algo parecido
com um ponto usado para o smbolo do zero.
4.1.2

Desenvolvimentos iniciais da cincia do clculo

Pode-se dizer que os primeiros passos em direo aos computadores digitais foram
dados nas antigas civilizaes da China, do Egito e da Babilnia, h mais de quatro milnios,
com os sistemas de medidas de distncias, previso do curso das estrelas e tabelas gravadas
em tbuas de barro usadas para ajudar clculos algbricos. Durante a civilizao grega algumas
destas pr-cincias tomaram forma atravs dos sistemas axiomticos *. Enquanto isso,
geralmente aceito que a lgebra desenvolveu-se em cada civilizao passando por sucessivas
etapas, denominadas retrica, sincopada e simblica .
Um museu em Oxford possui um cetro egpcio de mais de 5.000 anos, sobre o qual
aparecem registros de 120.000 prisioneiros e 1.422.000 cabras capturadas [Boy74]. Apesar do
exagero dos nmeros, fica claro que os egpcios procuravam ser precisos no contar e no
medir, bastando lembrar o alto grau de preciso das pirmides. Medir as terras para fixar os
limites das propriedades era uma tarefa importante nas civilizaes antigas, especialmente no
Egito. Ali, as enchentes anuais do Nilo, inundando as reas frteis, derrubavam os marcos
fixados no ano anterior, obrigando os proprietrios de terras a refazer os limites de suas rea
de cultivo. Em algumas ocasies, a questo era refazer os limites com base em informaes
parciais; conhecida a forma do terreno, tratava-se por exemplo de reconstruir os lados
*

Em um sistema axiomtico parte-se de premissas aceitas como verdadeiras e de regras ditas vlidas, que iro conduzir a
sentenas verdadeiras. As concluses podem ser alcanadas manipulando-se smbolos de acordo com conjuntos de regras.
A Geometria de Euclides um clssico exemplo de um procedimento tornado possvel por um sistema axiomtico.

A lgebra retrica caracterizada pela completa ausncia de qualquer smbolo, exceto, naturalmente, que as prprias
palavras esto sendo usadas no seu sentido simblico. Nos dias de hoje esta lgebra retrica usada em sentenas do tipo
a soma independente da ordem dos termos, que em smbolos seria designada por a+b = b+a [Dan54]. A sincopada
a notao intermediria que antecedeu a simblica, caracterizada pelo uso de abreviaes que foram sendo contradas at se
tornarem um smbolo [idem].

35

restantes se um deles se havia preservado. Em outras ocasies, destrudas por completo as


fronteiras, tratava-se de refaz-las, de modo a remarcar o desejado nmero de propriedades,
conservando as reas relativas que possuam no passado. Os egpcios tornaram-se hbeis
delimitadores de terra e devem ter descoberto e utilizado inmeros princpios teis, relativos
s caractersticas de linhas, ngulos e figuras como por exemplo, o de que a soma de trs
ngulos de um tringulo igual a dois ngulos retos, e o de que a rea de um paralelogramo
igual do retngulo que possua a mesma base e a mesma altura.
Provavelmente os egpcios obtiveram esses princpios por intermdio de raciocnios
indutivos, fruto da observao e experimentao: mediam muitos tringulos e ngulos retos,
reas de muitos paralelogramos e retngulos, e parece que tais conhecimentos limitaram-se a
habilitar os egpcios a resolver problemas de traados de limites, de comparao de reas, de
projetos arquitetnicos e de engenharia de construes. No Egito antigo e na Babilnia
existiam calculadores profissionais chamados escribas pelos egpcios e logsticos pelos gregos. As
primeiras tentativas de inveno de dispositivos mecnicos para ajudar a fazer clculos datam
dessas pocas, como, por exemplo, o baco e o mecanismo Antikythera, sobre os quais se
falar mais detidamente no captulo da Pr-Histria Tecnolgica.
Os gregos assimilaram os princpios empricos dos egpcios e deram, a esse
delimitado conhecimento, o nome de Geometria, isto , medida da terra. Mas diferentemente
daqueles, estudaram a Geometria mais sob seu aspecto terico, desejando compreender o
assunto por ele mesmo, independentemente de sua utilidade. Procuraram encontrar
demonstraes dedutivas rigorosas das leis acerca do espao e mostraram um crescente
interesse pelos princpios geomtricos. Pitgoras considerava que, em sua forma pura, a
geometria se aproximava bastante da religio e para ele era o arch, o princpio de tudo,
buscado to intensamente pelos filsofos cosmolgicos[Bar67]. Com a obra Elementos, de
Euclides, renem-se e so apresentados de modo sistemtico as principais descobertas
geomtricas de seus precursores, sendo considerado, at o sculo XIX, no somente o livrotexto da Geometria, mas o modelo daquilo que o pensamento cientfico deveria ser.
Resumindo, deve-se ver nestes tempos as tentativas de conceituao do nmero, o
estabelecimento das bases numricas, o estudo da lgebra e da geometria e a busca de uma
sistematizao do raciocnio, que tanto atraram os antigos. Tempos de evoluo lenta e, em
termos de produo efetiva de conhecimento matemtico, bem abaixo da quantidade e
qualidade produzida quase que exponencialmente a partir do sculo XV d.C., mas no menos
importantes. De fato, para se compreender a Histria da Matemtica na Europa necessrio
conhecer sua histria na Mesopotmia e no Egito, na Grcia antiga e na civilizao islmica
dos sculos IX a XV.
4.1.3

A Lgica de Aristteles

Aristteles (384 a.C. - 322 a.C.) um filsofo atual: a questo aristotlica, isto , o
que Aristteles realmente escreveu , o que se deve a ele ou antes, a seus discpulos, algo
complexo, onde no h acordo definitivo, e provavelmente segundo alguns nunca haver,
sendo uma questo sobre a qual se continua escrevendo. Aristteles passou quase vinte anos
na Academia platnica e educou Alexandre Magno (se Plato estivesse vivo teria visto a
36

realizao de seu maior sonho, o de que os governantes filosofassem). Preocupava-o, como a


todos os gregos, a vida poltica, a cidade, porm o que mais o interessava era o saber. E foi
sbio em quase todos os domnios: cincias naturais, lgica, fsica, potica, astronomia, tica,
poltica, retrica, psicologia, entre outras. Mestre de lgica para centenas de geraes, aplicouse, sobretudo, em assentar as bases da cincia que buscamos, a filosofia primeira, o que
depois chamou-se Metafsica. Interessa neste estudo sobretudo a lgica aristotlica e o seu
mtodo axiomtico.
A Lgica foi considerada na tradio clssica e medieval como instrumento
indispensvel ao pensamento cientfico. Atualmente parte importante na metodologia
dedutiva das cincias, alm de constituir-se como um saber prprio, com ligao a relevantes
problemas tericos. Da Lgica Cientfica nasceu a Lgica Matemtica e, dentro desta, vrias
filosofias da lgica que interpretam os clculos simblicos e sua sistematizao axiomtica.
Para a Histria da Computao interessa abordar em particular a questo do pensamento
dedutivo e matemtico, seus limites, o problema da relativa mecanizao do pensamento
quantitativo e o problema da Inteligncia Artificial. Da discusso e busca da soluo desses
problemas, que entram tambm no campo filosfico, formou-se a base conceitual, teoria da
computabilidade, necessria para o advento do computadores.
O incio da cincia da Lgica encontra-se na antiga Grcia [Kne68] [Boc66]. As
polmicas geradas pela teoria de Parmnides e os famosos argumentos de Zeno *, que
negavam a realidade do movimento fazendo um uso indevido do princpio da nocontradio, contriburam para a distino dos conceitos, para se ver a necessidade de
argumentar com clareza, mediante demonstraes rigorosas, e assim responder s objees
dos adversrios. Mais tarde, as sutilezas dos sofistas, que reduziam todo o saber arte de
convencer pelas palavras, levaram Scrates a defender o valor dos conceitos e tentar defini-los
com preciso. Assim a Lgica como cincia vai se formando pouco a pouco, principalmente
com Scrates e Plato. Mas Plato pensava que qualquer contedo da mente existia tal qual na
realidade e Aristteles reage ao seu mestre, dizendo que as idias existem somente na mente
humana, mas correspondendo a realidades.
Com Aristteles que se d o verdadeiro nascimento da Lgica como cincia das
idias e dos processos da mente. At hoje no existe forma alguma concebvel de lgica, por
muito distinta que seja da lgica formal, que no tenha algum tipo de conexo com a obra
aristotlica [Sch31]. Ele foi o primeiro lgico formal da histria, tendo desenvolvido ao
menos duas formas distintas de lgica formal, elaborando algumas de suas partes de maneira
praticamente completa e deixando esboados outros tipos de lgicas que somente na poca
atual foram novamente tratadas .

Parmnides (540 a 470 a.C.) negava a existncia do movimento (devir) e afirmava a existncia de um nico ser
(pantesmo), tendo enunciado o princpio da no contradio: algo no pode ser e no ser ao mesmo tempo, sob o mesmo
aspecto e no mesmo sujeito. Seu discpulo Zeno (490 a 430 a.C.) foi o fundador da dialtica e radicalizou a negao do
movimento. Este envolveria um paradoxo: para mudar completamente preciso antes mudar parcialmente, e assim
infinitamente, o que levaria a concluir que o movimento no existe (paradoxos de Aquiles e a tartaruga e os pontos de
percurso de uma flecha)

Alm do mais interessa o estudo das obras do Filsofo pois tem um especial valor pedaggico, ao apresentar de maneira
unitria a maior parte dos problemas lgicos, contemplados com o vigor caracterstico que acompanha uma cincia
emergente, e mais acessvel ao principiante que muitas apresentaes modernas de lgica formal.

37

Aristteles escreveu uma srie de trabalhos que seriam editados por Andrnico de
Rodes no sculo I d.C. e que receberam posteriormente o nome de Organon (Instrumento),
de acordo com a concepo segundo a qual a Lgica deveria fornecer os instrumentos
mentais necessrios para enfrentar qualquer tipo de investigao. Essa obra compreende os
seguintes livros: Categorias, Analticos I, Analticos II, o Peri Hermeneias (ou sobre a interpretao),
Tpicos e Refutao de argumentos sofistas. A grande novidade aristotlica est nos Analticos, com
o silogismo. Aristteles chamava a Lgica com o termo analtica (e justamente Analticos
so intitulados os escritos fundamentais do Organon). A analtica (do grego analysis, que
significa resoluo) explica o mtodo pelo qual, partindo de uma dada concluso, resolve-se
precisamente nos elementos dos quais deriva, isto , nas premissas e nos elementos de que
brota, e assim fica fundamentada e justificada.
Aristteles construiu uma sofisticada teoria dos argumentos, cujo ncleo a
caracterizao e anlise dos chamados silogismos, os tpicos raciocnios da lgica aristotlica. O
argumento
Todo homem mortal
Scrates homem
Logo Scrates mortal
o exemplo tpico do silogismo perfeito. Conforme o prprio Aristteles, o silogismo um
discurso no qual, sendo admitidas algumas coisas, outra coisa distinta resulta necessariamente
dessas coisas afirmadas primeiro, pelo nico fato de que essas existem [Per88].

Figura 4: Aristteles

Nos Primeiros Analticos, Aristteles desenvolveu minuciosamente o sistema dos


silogismos, mostrando os princpios maiores que o sustentam e as regras que lhe devem

38

moldar a construo. A anlise do Filsofo to ampla quanto engenhosa e envolve tambm


as assim chamadas modalidades e os silogismos modais *.
Entre as caractersticas mais importantes da silogstica aristotlica est a de se ter
pensado pela primeira vez na histria da lgica em fazer uso de letras que poderiam ser usadas
para representar uma expresso substantiva qualquer, fundamental para o desenvolvimento
do simbolismo lgico. tambm com Aristteles que se encontra uma das primeiras
tentativas de se estabelecer um rigor nas demonstraes matemticas. Ao definir os dois tipos
de demonstrao, quia (dos efeitos s causas) e propter quid (das causas aos efeitos), dizia (I
Anal. Post., lect. 14) que as matemticas utilizam preferencialmente esse modo de demonstrar,
e por isso esta cincia essencialmente dedutiva: algumas vezes o mais conhecido por ns
em si mesmo e por natureza tambm o mais cognoscvel em si mesmo e por natureza.
Assim acontece nas matemticas, nas quais, devido abstrao da matria, no se efetuam
demonstraes mais do que a partir dos princpios formais. E assim as demonstraes
procedem desde o mais cognoscvel em si mesmo.
No entanto, para que haja demonstrao, os primeiros princpios devem ser
indemonstrveis, j que, do contrrio, se procederia a uma regresso ao infinito. E como se
conhece a verdade dos primeiros princpios? Por induo. fora de contemplar a
freqncia dos acontecimentos, buscando o universal. Os primeiros princpios no so
inatos; so adquiridos na experincia, analisando-se as percepes que contm um elemento
universal. No entanto esta induo citada por Aristteles nada tem a ver com demonstrao
por induo completa ou o mtodo da induo finita ou, mais ainda, raciocnio por
recorrncia, estabelecido pelo matemtico italiano Giuseppe Peano. Sobre esta temtica ver
anexo sobre Deduo e Induo na Matemtica.
E no meio de tudo isso emergiu aquela que considerada uma das mais definitivas
contribuies do Organon: o mtodo axiomtico, que recebeu precisamente no sculo XX
sua maior valorao, ao apresentar-se como o caminho universal dentro do qual se
enquadram todas as cincias dedutivas. Um pouco mais sobre este assunto exposto no
anexo O mtodo axiomtico e as cincias dedutivas.
4.1.4

A contribuio dos megricos e esticos

Embora Aristteles seja o mais brilhante e influente filsofo grego, outra importante
tradio argumentativa formou-se na antiga Grcia, com os megricos e esticos. Pouco
conservada pela tradio, merece um melhor tratamento dos historiadores, porque o que
deles se conhece sugere que esses gregos eram altamente inteligentes.
Os megricos (em funo de sua cidade, Mgara) interessaram-se por certos enigmas
lgicos como o conhecido paradoxo do mentiroso: quem diz O que eu afirmo agora
falso, enuncia algo verdadeiro ou falso? Um deles, Diodoro Cronus, que morreu por volta
de 307 a.C., formulou interessante concepo modal, relacionando possibilidade, tempo e
verdade, enquanto outro megrico, de nome Flon, estudou proposies do tipo Se chove
ento a rua est molhada, construda com o auxlio das expresses se..., ento... conhecidas
*

Modalidades so as expresses do tipo possvel que..., necessrio que....

39

como condicionais. Ele as definiu em termos extremamente polmicos, mas que seriam
assumidos como corretos, vinte e trs sculos mais tarde pelos fundadores da Lgica
Contempornea.
Os esticos (da chamada escola filosfica de Stoa, que quer dizer prtico)
desenvolveram tambm notveis teorias lgicas. Tinham bastante presente a diferena que h
entre um cdigo de comunicao especfico, de um lado, e o que se pode expressar atravs do
uso de tal cdigo. Assim sendo, um conceito de proposio anlogo ao usado na atual
Lgica, j estava presente, de modo virtual, na filosofia estica da linguagem.
Porm a mais notvel contribuio estica Lgica foi obra de Crsipo de Soles
(280-206 a.C.), homem de vasta produo poligrfica (750 livros). Ele estudou as sentenas
condicionais e tambm as disjuntivas (regidas pela partcula ou) e as copulativas (regidas
pelo e), tendo tambm reconhecido claramente o papel lgico desempenhado pela negao.
Alm disto, Crsipo foi capaz de relacionar tais idias com as modalidades, elaborando, ento,
um sistema de princpios lgicos que, no seu campo especfico, foi muito alm dos poucos
resultados obtidos por Aristteles e seu discpulo Teofrasto. Por tal razo, Crsipo
reconhecido como o grande precursor daquilo que hoje se chama Clculo Proposicional, o
primeiro captulo da Lgica desenvolvida a partir do ltimo quarto do sculo XIX [Bri79b].

4.1.5

Euclides e o Mtodo Axiomtico

Figura 5: Representao de Euclides

40

Com sua obra Elementos, o matemtico grego Euclides (330 a.C. - 277 a.C.) deu uma
forma sistemtica ao saber geomtrico, implementando as idias sobre axiomatizao, de
Aristteles, para uma cincia exata. No primeiro livro dos Elementos, ele enuncia vinte e trs
definies, cinco postulados e algumas noes comuns ou axiomas *. Em seguida ele deduz
proposies ou teoremas, os quais constituem o saber geomtrico, como por exemplo: se
em um tringulo dois ngulos so iguais entre si, tambm os lados opostos a esses ngulos so
iguais entre si. Postulados, axiomas e definies constituem os pontos de partida para as
demonstraes de Euclides. Seu objetivo mostrar todos os outros princpios geomtricos
primeiro os da Geometria Plana e depois os da Geometria Espacial , revelando que so
decorrncias necessrias dos princpios fundamentais.
Quais so os traos caractersticos das tcnicas adotadas por Euclides? Em primeiro
lugar ele enuncia as sua leis em forma universal: no se detm em determinada figura ou linha,
mas examina as propriedade que todas as figuras e todas as linhas de tal ou qual tipo devem
ter. Formula tais leis de maneira rigorosa e absoluta e, mais ainda, demonstra-as. Seu livro, na
verdade, consiste em demonstraes colocadas de maneira sistemtica, no indutiva, mas
dedutiva, por meio das quais procura estabelecer as suas concluses com o rigor da lgica.
Euclides visava aperfeioar o conhecimento acerca de pontos, linhas e figuras, tornando mais
rigorosas as demonstraes de leis j conhecidas, e procurava aumentar esse conhecimento,
demonstrando leis novas, at ento desconhecidas. Mas talvez no se esgotasse a a motivao
ou pelo menos as conseqncias do que elaborou o gemetra. A colocao de axiomas e
teoremas em forma dedutiva deu Geometria uma apresentao mais elegante e transparente,
tornando facilmente perceptveis as interessantes conexes lgicas ali introduzidas. A
axiomatizao do saber Geomtrico abriu um sem fim de perspectivas para os estudiosos das
cincias exatas, que adotam as exposies axiomticas e buscam axiomatizaes mais
elegantes e econmicas no s para dar rigor s suas demonstraes, mas descobrir novas
conexes lgicas.
Esse portanto o modo como Euclides ordena o conhecimento geomtrico no
chamado sistema euclidiano. Durante sculos esse sistema valeu como modelo insupervel do
saber dedutivo: os termos da teoria so introduzidos depois de terem sido definidos e as
proposies no so aceitas se no forem demonstradas. Euclides escolhia as proposies
primitivas, base da cadeia sobre a qual se desenvolvem as dedues sucessivas, de tal modo que
ningum pudesse levantar dvidas sobre a sua veracidade: eram auto-evidentes, portanto
isentas de demonstrao. Leibniz afirmaria mais tarde que os gregos raciocinavam com toda a
exatido possvel em matemtica e deixaram humanidade modelos de arte demonstrativa
([RA91], volume III).
Em resumo, Euclides, como j fizera Aristteles, buscou o ideal de uma organizao
axiomtica, que em ltima instncia se reduz escolha de um pequeno nmero de
proposies em princpio aceitas naquele domnio do conhecimento, e posterior deduo de
todas as outras proposies verdadeiras desse domnio, a partir delas. Surge com Euclides e
*

As definies pretendem substancialmente explicitar os conceitos da geometria (ponto aquilo que no tem partes; linha
comprimento sem largura, etc.). Os postulados representam verdades indubitveis tpicas do saber geomtrico (pode-se
levar uma reta de qualquer ponto a qualquer ponto; todos os ngulos retos so iguais; etc.). Os axiomas so verdades
que valem universalmente, no s na geometria (o todo maior que a parte; coisas que so iguais a uma mesma coisa
so iguais entre si, etc.).

41

Aristteles (estar plenamente desenvolvida no incio do sculo XX com a escola formalista


de Hilbert) a busca de uma economia do pensamento (um bom texto sobre o assunto pode ser
encontrado em [Wil65]). A Histria da Computao tem um marco significativo nesse ponto
da Histria: o comeo da busca da automatizao do raciocnio e do clculo.
Mas havia um problema no sistema de Euclides: suas evidncias no eram assim
to evidentes. O seu quinto postulado no convenceu de modo algum, e despertou
perplexidade na histria do prprio pensamento grego, depois no rabe e no renascentista.
No sculo XIX, Karl Friedrich Gauss (1777-1855) viu com toda a clareza a no
demonstrabilidade do quinto postulado e a possibilidade da construo de sistemas
geomtricos no euclidianos. Janos Boulay (1802-1860), hngaro, e Nicolai Ivanovic
Lobacewskiy (1793-1856), russo, trabalhando independentemente, elaboraram uma geometria
na qual o postulado da paralela no vale mais.
A conseqncia desses fatos foi a eliminao dos poderes da intuio na
fundamentao e elaborao de uma teoria geomtrica: os axiomas no so mais verdades
evidentes que garantem a fundao do sistema geomtrico, mas puros e simples pontos de
partida, escolhidos convencionalmente para realizar uma construo dedutiva. Mas, se os
axiomas so puros pontos de partida, quem garantir que, continuando-se a deduzir teoremas,
no se cair em contradio?
Esta questo crucial dos fundamentos da matemtica levar aos grandes estudos dos
finais do sculo XIX e incios do XX e ser o ponto de partida do projeto formalista de
David Hilbert, assim como de outras tentativas de se fundamentar a matemtica na lgica e
na teoria dos conjuntos, como as propostas por Frege, Russell e Cantor. E ser dessa
seqncia de sucessos e fracassos que se produzir a base da Computao, com Turing, von
Neumann, Post, Church, e outros mais.
4.1.6

Diophantus, al-Kharazmi e o desenvolvimento da lgebra

O seguinte problema no Rhind Papyrus *, do Museu britnico em Londres, foi escrito por volta
do ano 1650 a.C.:
Divida 100 pes entre 10 homens, incluindo um
barqueiro, um capataz e um vigia, os quais recebem uma
dupla poro cada. Quanto cabe a cada um? [Bow94]
Isto naturalmente pode ser resolvido usando-se lgebra.
O primeiro tratado de lgebra foi escrito pelo grego Diophantus (200 - 284), da
cidade de Alexandria, por volta do ano 250. O seu Arithmetica, composto originalmente por
13 livros dos quais somente 6 se preservaram, era um tratado caracterizado por um alto grau
de habilidade matemtica e de engenho: quanto a isto, o livro pode ser comparado aos
grandes clssicos da idade alexandrina anterior [Boy74]. Antes de Diophantus, toda a
*

Juntamente com o papiro de Moscou uma das principais fontes de informao relativa s formas de notao e operaes
aritmticas em uso durante a primeira poca da civilizao egpcia

42

lgebra que havia, incluindo problemas, operaes, lgica e soluo, era expressada sem
simbolismo palavra chave sobre a qual ainda se voltar a falar ; ele foi o primeiro a introduzir
o simbolismo na matemtica grega. Para uma quantidade desconhecida usava um smbolo
(chamado arithmos), que caracterizava um nmero indefinido de unidades. Pela nfase dada
em seu tratado soluo de problemas indeterminados, tal tratado tornou-se conhecido como
anlise diofantina, que em geral faz parte da disciplina de Teoria dos Nmeros *. Seu trabalho,
contudo, no suficiente para lhe conferir o ttulo de pai da lgebra .
Mas com os persas e principalmente com os rabes que a lgebra poder ser
efetivamente chamada de cincia. interessante notar que ao se falar que a Geometria uma
cincia grega ou que a lgebra uma cincia rabe, est se afirmando algo mais do que a
casualidade de terem sido gregos ou rabes seus fundadores ou promotores.
Ordinariamente tendemos a pensar que o conhecimento cientfico independe de latitudes e
culturas: uma frmula qumica ou um teorema de Geometria so os mesmos em ingls ou
portugus ou chins e, sendo a comunicao, primeira vista, o nico problema, bastaria uma
boa traduo dos termos prprios de cada disciplina. Mas no assim.
Na verdade a evoluo da cincia est repleta de interferncias histrico-culturais,
condicionando metodologias, o surgimento de novas reas do saber, e assim por diante. Os
juristas rabes referem-se lgebra como o clculo da herana, segundo a lei cornica, uma
problemtica importante dentro do Islam, e a j temos um exemplo de condicionamento
histrico-cultural. No foi por mero acaso que a lgebra surgiu no califado abssida (ao
contrrio dos Omadas, os Abssidas pretendem aplicar rigorosamente a lei religiosa vida
cotidiana [AG81]), no seio da Casa da Sabedoria (Bayt al-Hikma) de Bagd, promovida
pelo califa Al-Maamun; uma cincia nascida em lngua rabe e antagnica da cincia grega.
Embora hoje a lgebra possa parecer objetiva e axiomtica, com uma sintaxe de estruturas
operatrias e destituda de qualquer alcance semntico, ela o resultado da evoluo da velha
aljabr, forjada por um contexto cultural em que no so alheios elementos que vo desde as
estruturas gramaticais do rabe teologia muulmana da poca [Lau97].
Muhammad Ibn Musa Al-Khwarizmi (780 - 850), matemtico e astrnomo persa,
foi membro da Casa da Sabedoria, a importante academia cientfica de Bagd, que alcanou
seu resplendor com Al-Maamun (califa de 813 a 833). A ele, Al-Khwarizmi dedicou seu AlKitab al-muhtasar fy hisab al-jabr wa al-muqabalah (Livro breve para o clculo da jabr e da
muqabalah). Al-jabr, que significa fora que obriga, restabelecer , precisamente porque a lgebra
forar cada termo a ocupar seu devido lugar. J no comeo do seu Kitab, Al-Khwarizmi
distingue seis formas de equao, s quais toda equao pode ser reduzida (e, canonicamente
resolvida). Na notao atual:
*

Neste sentido foi o matemtico grego que maior influncia teve sobre a moderna teoria dos nmeros. Em particular Fermat
foi levado ao seu ltimo teorema quando procurou generalizar um problema que tinha lido na Arithmetica de Diophantus:
dividir um dado quadrado em dois quadrados (ver F.E. Robbins, P.Mich. 620: A Series of Arithmetical Problems, Classical
Philology, pg 321-329, EUA, 1929).

Apenas sob certo aspecto isto se justificaria. Em uma viso um tanto arbitrria e simplista poderamos dividir o
desenvolvimento da lgebra em 3 estdios: (1) primitivo, onde tudo escrito em palavras; (2) intermedirio, em que so
adotadas algumas simplificaes; (3) simblico ou final. Neste contexto, Arithmetica deve ser colocada na segunda categoria.

Restabelecer, por algo no seu devido lugar, restabelecer uma normalidade. Como observa [Lau97] a palavra tajbir significa
ortopedia e jibarath significa reduo, no sentido mdico (por o osso no devido lugar) e na Espanha, no tempo em que os
barbeiros acumulavam funes, podia-se ver a placa Algebrista e Sangrador em barbearias.

43

1. ax2 = bx
2. ax2 = c
3. ax = c
4. ax2 + bx = c
5. ax2 + x = ax2
6. bx + c = ax2
Al-jabr a operao que soma um mesmo fator (afetado do sinal +) a ambos os
membros de uma equao, para eliminar um fator afetado pelo sinal -. J a operao que
elimina termos iguais de ambos os lados da equao al-muqabalah que significa estar de
frente, cara a cara, confrontar. Por exemplo: em um problema onde os dados podem ser
colocados sob a forma 2x2 + 100 20x = 58, Al-Khwarizmi procede do seguinte modo:
2x2 + 100 = 58 + 20x (por al-jabr)
Divide por 2 e reduz os termos semelhantes:
x2 + 21 = 10 x (por al-muqabalah)
E o problema j est canonicamente equacionado.

Figura 6: Representao de Al-Kharazmi

Al-Kharazmi introduziu a escrita dos clculos no lugar do uso do baco. De seu


nome derivaram as palavras, como j citado acima na histria do desenvolvimento do
conceito de nmero, algarismo e algoritmo *[Kar61].
Embora no muito visvel ainda, deve-se chamar a ateno para essa disciplina da
lgebra, que deve ser colocada entre as cincias que fundamentaram o desenvolvimento da
*

A palavra algoritmo na matemtica designa um procedimento geral de clculo, que se desenvolve, por assim dizer,
automaticamente, poupando-nos esforo mental durante o seu curso; este termo ser depurado e aproveitado dentro da
Computao. Dele se tornar a falar mais frente

44

Computao. Pois o computador e todos os instrumentos que o precederam (rguas de


clculo, mquina de Pascal, a calculadora de Leibniz, a mquina analtica de Babbage, etc.) so
somente as manifestaes prticas que foram surgindo, com naturalidade, em resultado da
busca pelo homem de reduzir os problemas a expresses matemticas, resolvendo-as segundo
regras. E isto, h muitos sculos, j tinha tomado o nome de lgebra, a arte dos raciocnios
perfeitos como dizia Bhaskara, o conhecido matemtico hindu do sculo XII. Com os
rabes, depois de relativo obscurecimento da cultura grega, d-se continuidade ao processo
que proporcionar as bases fundamentais para o raciocnio automatizado, fundamental na
Cincia da Computao.
4.1.7

A automatizao do raciocnio

Ainda dentro do perodo acima estabelecido (4.200 a.C. at meados do ano 1600
d.C) iniciou-se concretizao de uma antiga meta: a idia de se reduzir todo raciocnio a um
processo mecnico, baseado em algum tipo de clculo formal. Isto remonta a Raimundo
Llio. Embora negligenciado pela cincia moderna, Raimundo Llio (1235 - 1316), espanhol,
figura pletrica de seu tempo, em seu trabalho Ars Magna (1305 - 1308), apresentou a primeira
tentativa de um procedimento mecnico para produzir sentenas logicamente corretas
[Her69]. Llio acreditava que tinha encontrado um mtodo que permitia, entre outras coisas,
tirar todo tipo de concluses, mediante um sistema de anis circulares dispostos
concentricamente, de diferentes tamanhos e graduveis entre si, com letras em suas bordas.
Inveno nica, tentar cobrir e gerar, representando com letras que seriam categorias do
conhecimento , todo o saber humano, sistematizado em uma gramtica lgica.

Figura 7: Desenho de Raimundo Llio

Conforme Hegel: A tendncia fundamental da arte de Raimundo Llio consistia


em enumerar e ordenar todas as determinaes conceituais a que era possvel reduzir todos os
objetos, as categorias puras com referncia s quais podiam ser determinados, para, desse
45

modo, poder assinalar facilmente, com respeito a cada objeto, os conceitos a ele aplicveis.
Raimundo Llio , pois, um pensador sistemtico, ainda que ao mesmo tempo mecnico.
Deixou traada uma tabela em crculos nos quais se acham inscritos tringulos cortados por
outros crculos. Dentro desses crculos, ordenava as determinaes conceituais, com
pretenses exaustivas; uma parte dos crculos imvel, a outra tem movimento. Vemos, com
efeito, seis crculos, dois dos quais indicam os sujeitos, trs os predicados e o sexto as
possveis perguntas. Dedica nove determinaes a classe, designando-as com as nove letras B
C D E F G H I K. Obtm, desse modo, nove predicados absolutos, que aparecem escritos ao
redor de seu quadro: a bondade, a magnitude, a durao, o poder, a sabedoria, a vontade, a
virtude, a verdade, a magnificncia; em seguida, vm nove predicados relativos: a diferena, a
unanimidade, a contraposio, o princpio, a metade, o fim, o ser maior, o ser igual e o ser
menor; em terceiro lugar, temos as perguntas: sim?, qu?, de onde?, por qu?, quo grande?,
de que qualidade?, quando?, de onde?, como e com qu?, a ltima das quais encerra duas
determinaes; em quarto lugar, aparecem nove substncias (esse), a saber: Deus (divinum), os
anjos (angelicum), o cu (coeleste), o homem (humanum), Imaginativum, Sensitivum, Vegetativum,
Elementativum; em quinto lugar, nove acidentes, quer dizer, nove critrios naturais: a
quantidade, a qualidade, a relao, a atividade, a paixo, o ter, a situao, o tempo e o lugar;
por ltimo, nove critrios morais, que so as virtudes: a justia, a prudncia, a valentia, a
temperana, a f, a esperana, o amor, a pacincia e a piedade, e nove vcios: a inveja, a clera,
a inconstncia, a avareza, a mentira, a gula, a devassido, o orgulho e a preguia (acedia). Todos
esses crculos tinham de ser colocados necessariamente de determinado modo para poder dar
como resultado as combinaes desejadas. Conforme as regras de colocao, segundo as
quais todas as substncias recebem os predicados absolutos e relativos adequados a estes,
deviam ser esgotados a cincia geral, a verdade e o conhecimento de todos os objetos
concretos. [Roc81].
Os procedimentos estabelecidos por Llio no foram muito vlidos. Mas o mais
importante em Llio a idia concebida, genial sob certo aspecto. Tanto que seu trabalho
influenciar muitos matemticos famosos, do nvel de um Cardano (sculo XVI), Descartes
(sculo XVII), Leibniz (sculos XVII/XVIII), Cantor (sculos XIX/XX), entre outros.
Raimundo Llio considerado o precursor da anlise combinatria. Como dir R. Blanch:
encontramos em Llio, pelos menos em germe e por mais que ele no soubesse tirar partido
disso por inabilidade, duas idias que iriam se tornar predominantes nas obras de Lgica,
primeiro em Leibniz e depois em nossos contemporneos: as idias de caracterstica e de
clculo (...). Com a ajuda desse simbolismo, tais autores pretendem permitir que as operaes
mentais, freqentemente incertas, fossem substitudas pela segurana de operaes quase
mecnicas, propostas de uma vez por todas ([RA91], volume III).
Pode-se ver em Raimundo Llio os primrdios do desenvolvimento da Lgica
Matemtica, isto , de um novo tratamento da cincia da Lgica: o procurar dar-lhe uma
forma matemtica. O interesse deste trabalho caracterizar a Lgica Matemtica, sem
aprofundar nas discusses filosficas ainda em aberto sobre os conceitos lgica
matemtica e lgica simblica, se uma lgica distinta da cincia matemtica ou no, pois
sem dvida alguma a Computao emergir dentro de um contexto da evoluo deste novo
tratamento da lgica.
46

A Lgica Matemtica ergue-se a partir de duas idias metodolgicas essencialmente


diferentes. Por um lado um clculo, da sua conexo com a matemtica. Por outro lado,
caracteriza-se tambm pela idia de uma demonstrao exata e, nesse sentido, no uma
imitao da matemtica nem esta lhe serve de modelo, mas pelo contrrio, Lgica caber
investigar os fundamentos da matemtica com mtodos precisos e oferecer-lhe o instrumento
para uma demonstrao rigorosa.
A palavra lgebra voltar a aparecer com o ingls Robert Recorde(1510?-1558), em
sua obra Pathway of Knowledge(1551), que introduz o sinal de = e divulga os smbolos + e ,
introduzidos por John Widmann (Arithmetica, Leipzig, 1489). Thomas Harriot(1560-1621)
prosseguir o trabalho de Recorde, inventando os sinais > e <. Willian Oughtred(15741621), inventor da rgua de clculo baseada nos logaritmos de Napier, divulgou o uso do sinal
, tendo introduzido os termos seno, coseno e tangente. Em 1659 J.H. Rahn usou o sinal
. Todos esses matemticos ajudaram a dar lgebra sua forma mais moderna.

47

Figura 8: Figuras representando mecanismo elaborado por Llio


para automatizar o raciocnio

48

4.2 A mecanizao do clculo


Se aceito o ponto de vista de estudiosos como Needham [Nee59], a data de 1600
pode ser vista como um bom divisor de guas dentro da histria da cincia em geral. Vale a
pena lembrar que o estudo da matemtica no tempo anterior a essa data, na Europa, no
havia avanado substancialmente em relao ao mundo rabe, hindu ou chins.
A lgebra rabe fora perfeitamente dominada e tinha sido aperfeioada, e a
trigonometria se tornara uma disciplina independente [Boy74]. O casamento de ambas pela
aplicao dos mtodos algbricos no terreno da geometria foi o grande passo e Galileu (1564
- 1642) a tem um papel preponderante. Ele uniu o experimental ao matemtico, dando incio
cincia moderna. Galileu d uma contribuio decisiva a uma formulao matemtica das
cincias fsicas. A partir de ento, em resultado desse encontro da matemtica com a fsica, a
cincia tomou um novo rumo, a um passo mais rpido, e rapidamente as descobertas de
Newton (1643 -1727) sucedem s de Galileu.
Trata-se de um perodo de transio por excelncia, que preparou o caminho para
uma nova matemtica: no j uma coleo de truques, como Diophantus possura, mas uma
forma de raciocinar, com uma notao clara. o comeo do desenvolvimento da idia de
formalismo na Matemtica, to importante depois para a fundamentao terica da
Computao *.

4.2.1

Leibniz, o precursor da Lgica Matemtica moderna

A Lgica Moderna comeou no sculo XVII com o filsofo e matemtico alemo


Gottfried Wilhelm Leibniz (1646 - 1716). Seus estudos influenciaram, 200 anos mais tarde,
vrios ramos da Lgica Matemtica moderna e outras reas relacionadas, como por exemplo a
Ciberntica (Norbert Wiener dizia que se fosse escolher na Histria da Cincia um patrono
para a Ciberntica, elegeria Leibniz [Wie70]).
Entre outras coisas, Leibniz queria dotar a Metafsica (aquela parte da Filosofia que
estuda o ser em si) de um instrumento suficientemente poderoso que a permitisse alcanar
o mesmo grau de rigor que tinha alcanado a Matemtica. Parecia-lhe que o problema das
interrogaes e polmicas no resolvidas nas discusses filosficas, assim como a insegurana
dos resultados, eram fundamentalmente imputveis ambigidade dos termos e dos
processos conclusivos da linguagem ordinria. Leibniz tentaria elaborar sua nova lgica
precisamente como projeto de criao de uma lgica simblica e de carter completamente
calculstico, anlogos aos procedimentos matemticos.
Historicamente falando, tal idia j vinha sendo amadurecida, depois dos rpidos
desenvolvimentos da Matemtica nos sculos XVI e XVII, possibilitados pela introduo do
simbolismo. Os algebristas italianos do sculo XVI j tinham encontrado a frmula geral
*

Lembrando algo que j foi dito, importante ressaltar que desde suas origens aristotlicas a lgica havia assumido claramente
alguns recursos fundamentais, como a estrutura formal, o emprego de certo grau de simbolismo, a sistematizao
axiomtica e o identificar-se com a tarefa de determinar as leis do discurso (tomando, por exemplo, a linguagem como
tema de estudo), caractersticas que foram assumidas pela Lgica Moderna.

49

para a resoluo das equaes de terceiro e quarto graus, oferecendo Matemtica um


mtodo geral que tinha sido exaustivamente buscado pelos antigos e pelos rabes medievais.
Descartes e Fermat criaram a geometria analtica, e, depois de iniciado por Galileu, o clculo
infinitesimal desenvolveu-se com grande rapidez, graas a Newton e ao prprio Leibniz. Ou
seja, as matemticas romperam uma tradio multissecular que as havia encerrado no mbito
da geometria, e estava se construindo um simbolismo cada vez mais fcil de manejar e seguro,
capaz de funcionar de uma maneira, por assim dizer, mecnica e automtica, sujeito a
operaes que, no fundo, no eram mais do que regras para manipulao de smbolos, sem
necessidade de fazer uma contnua referncia a contedos geomtricos intuitivos.

Figura 9: Leibniz

Leibniz deu-se conta de tudo isto e concebeu, tambm para a deduo lgica, uma
desvinculao anloga com respeito ao contedo semntico das proposies, a qual alm de
aliviar o processo de inferncia do esforo de manter presente o significado e as condies de
verdade da argumentao, pusesse a deduo a salvo da fcil influncia que sobre ela pode
exercer o aspecto material das proposies. Deste modo coube a ele a descoberta da
verdadeira natureza do clculo em geral, alm de aproveitar pela primeira vez a
oportunidade de reduzir as regras da deduo lgica a meras regras de clculo, isto , a regras
cuja aplicao possa prescindir da considerao do contedo semntico das expresses.
Leibniz influenciou seus contemporneos e sucessores atravs de seu ambicioso
programa para a Lgica. Esse programa visava criar uma linguagem universal baseada em um
alfabeto do pensamento ou characteristica universalis, uma espcie de clculo universal para o
raciocnio.

50

Figura 10: Blaise Pascal

Na viso de Leibniz a linguagem universal deveria ser como a lgebra ou como uma
verso dos ideogramas chineses: uma coleo de sinais bsicos que padronizassem noes
simples no analticas. Noes mais complexas teriam seu significado atravs de construes
apropriadas envolvendo sinais bsicos, que iriam assim refletir a estrutura das noes
complexas e, na anlise final, a realidade. O uso de numerais para representar noes no
analticas poderia tornar possvel que as verdades de qualquer cincia pudessem ser
calculadas por operaes aritmticas, desde que formuladas na referida linguagem universal
([Bri79a], volume XI). Com isso se poderia substituir o genrico dialoguemos por um mais
exato calculemos. Conforme o prprio Leibniz, Quando orietur controversiae, non magis
disputatione opus erit inter duo philosophos, quam inter duo computistas. Sufficet enin
calamos in manus sumere, sedereque ad bacos et sib mutuo (accito si placet amico) dicere:
calculemus *. As discusses no seriam, assim, disputas controvertidas, de resultado duvidoso
e final no concludo, mas sim formas de clculo que estabelecessem a maior ou menor
verdade de uma proposio.
Essa idia de Leibniz sustentava-se em dois conceitos intimamente relacionados: o
de um simbolismo universal e o de um clculo de raciocnio (isto , um mtodo quase
mecnico de raciocnio) . Isso, para a Histria da Computao, tem um particular interesse,
pois esse calculus ratiocinator de Leibniz contm o embrio da machina ratiocinatrix, a mquina de
raciocinar buscada por Turing e depois pelos pesquisadores dentro do campo da Inteligncia
Artificial. Leibniz, assim como Boole, Turing, e outros basta lembrar o baco, o

Quando aparecer uma controvrsia, j no haver necessidade de uma disputa entre dois filsofos mais do que a que h
entre dois calculistas. Bastar, com efeito, tomar a pena na mo, sentar-se mesa (ad abacus) e (ao convite de um amigo,
caso se deseje), dizer um ao outro: Calculemos! [Boc66]

Deve-se observar que destas conceituaes descenderam a notao da matemtica e da lgica do sculo XX.

51

'computador' de Babbage, etc. , perceberam a possibilidade da mecanizao do clculo


aritmtico. O prprio Leibniz, e Pascal um pouco antes, procuraram construir uma mquina
de calcular. Nota-se portanto que o mesmo impulso intelectual que o levou ao
desenvolvimento da Lgica Matemtica o conduziu busca da mecanizao dos processos de
raciocnio.
Interessa tambm chamar a ateno sobre a idia de uma linguagem artificial que j
aparece em Leibniz. Como j foi dito, ele captou muito bem as inmeras ambigidades a que
esto submetidas as linguagens de comunicao ordinrias e as vantagens que apresentam os
smbolos (que ele chamava notae) da Aritmtica e lgebra, cincias nas quais a deduo
consiste no emprego de caracteres. Ao querer dar Lgica uma linguagem livre de
ambigidades e ao procurar associar a cada idia um sinal e obter a soluo de todos os
problemas mediante a combinao desses sinais, Leibniz acabou provocando um novo
desenvolvimento da prpria lgica.

Figura 11: Mquinas calculadoras de Leibniz e Pascal

A idia de uma linguagem artificial ou a reduo do raciocnio ao clculo, como j


visto em Llio e agora em Leibniz, no , portanto, patrimnio do sculo XX. A contribuio
de Leibniz ao desenvolvimento da lgica aparece sob dois aspectos: ele aplicou com sucesso
mtodos matemticos para a interpretao dos silogismos aristotlicos, e apontou aquelas
partes da lgebra que esto abertas a uma interpretao no aritmtica ([Bri79a], volume
XI). Pela primeira vez se exps de uma maneira clara o princpio do procedimento formal.
Leibniz tornou-se assim o grande precursor da Lgica Matemtica.
Talvez se pudesse perguntar como possvel que muitos apresentem a Lgica
Simblica como fruto do nosso tempo, enquanto teve sua origem na segunda metade do
52

sculo XVII. que, na realidade, a contribuio de Leibniz ficou substancialmente reduzida a


um mero programa, do qual s executou alguns fragmentos, muito parciais se bem que muito
interessantes tambm, capazes de nos dar uma idia de como concebia sua obra. Nem sequer
seus seguidores diretos levaram para a frente a construo do clculo lgico mais alm de um
nvel muito rudimentar. Provavelmente a excessiva magnitude do plano de sua characteritica
universalis o tenha seduzido, afastando Leibniz de objetivos mais modestos porm alcanveis,
como o de construir o primeiro clculo lgico autntico.
Ainda dentro desses primeiros passos mais concretos em direo construo de
um dispositivo para clculo automtico, no se pode deixar de falar do ilustre francs Blaise
Pascal (1623-1662), j acima citado, que foi matemtico, fsico, filsofo e brilhante escritor de
religio, fundador da teoria moderna das probabilidades. Aos 17 anos j publicava ensaios de
matemtica que impressionaram a comunidade do seu tempo. Antecedendo a Leibniz,
montou a primeira mquina de clculo digital para ajudar nos negcios do pai em 1642. Iria
produzir ainda outras 49 mquinas a partir deste primeiro modelo. Estudos posteriores em
geometria, hidrodinmica, hidrosttica e presso atmosfrica o levaram a inventar a seringa e
prensa hidrulica e descobrir as famosas Leis de Presso de Pascal. Aps intensa experincia
mstica, entrou em 1654 para o convento de Port-Royal, onde escreveu pequenos opsculos
msticos. Os ltimos anos de sua vida foram dedicados pesquisa cientfica [Wil97].
4.2.2

O problema da notao
O smbolo no uma mera formalidade, a verdadeira essncia da lgebra. Sem o
smbolo, o objeto somente uma percepo humana e reflete todas as fases sob as
quais os sentidos humanos o captam; substitudo por um smbolo o objeto torna-se
uma completa abstrao, um mero operando sujeito a determinadas operaes
especficas.
Tobias Dantzig

Nas cincias, as descobertas que podem ser compreendidas e assimiladas


rapidamente por outros so fonte de progresso imediato. E na Matemtica, o conceito de
notao est relacionado com isso. Basta lembrar os algarismos romanos e pensar na
complexidade que envolve, por exemplo a multiplicao, de MLXXXIV por MMLLLXIX.
H uma forte analogia entre a histria da lgebra e a da Aritmtica. No caso desta
ltima, os homens esforaram-se durante centenas de anos usando uma numerao
inadequada, devido ausncia de um smbolo para o nada (zero). Na lgebra, a ausncia de
uma notao reduziu-a a uma coleo de regras fortuitas para a soluo de equaes
numricas. A descoberta do zero criou a Aritmtica que hoje ensinada e utilizada, e o
mesmo se pode dizer em relao notao, que acabou por introduzir uma nova etapa na
histria da lgebra.
As letras liberaram a lgebra da dependncia do uso de palavras, sujeitas s
ambigidades e diferentes interpretaes a que est sujeito o discurso de uma linguagem
natural (portugus, ingls, e outras). Mais ainda: a letra ficou livre dos tabus que a associavam

53

palavra. Ela agora um smbolo cujo significado pode transcender o objeto simbolizado. O
x de uma equao tem existncia prpria, independente do objeto que represente.
Importante tambm o fato de se poder operar com letras e transformar expresses
algbricas com literais, mudando um sentena qualquer para diferentes formas com sentido
equivalente. A lgebra no se torna somente uma maneira mais econmica de se escrever,
mas generaliza procedimentos. Por exemplo: expresses tais como 2x + 3, 3x 5, x2 + 4x +7
tinham antes uma individualidade prpria, eram fechadas em si mesmas atravs das palavras
com que eram expressas. Sua resoluo dependia de uma apropriada interpretao e
manipulao. Com a notao atravs de literais possvel passar de um individual para um
coletivo. A forma linear ax+b, a forma quadrtica ax2+bx+c so agora espcies, moldes
especficos, e graas a isso foi possvel o nascimento da teoria geral das funes que a base
de toda matemtica aplicada [Dan54].
A notao de Leibniz usada para o clculo contribuiu mais do que a de Newton para
a difuso das novas idias sobre integrais *, na poca. Pense-se por um momento como se
resolve ax = b. Imediatamente pode ser dado como resposta que x = b/a e haveria surpresa
se algum respondesse a = b/x. que normalmente se usam as ltimas letras do alfabeto para
representar as incgnitas e as do comeo para representar as quantidades conhecidas. Mas
isso no foi sempre assim, e somente no sculo XVII, a partir de Vite e com Descartes, tais
convenes comearam a ser usadas [Boy74].
Geralmente tende-se a apreciar o passado desde o sofisticado posto de observao
do tempo atual. necessrio valorizar e revalorizar este difcil e longo passado de pequenas e
grandes descobertas. Leibniz, em seu esforo no sentido de reduzir as discusses lgicas a
uma forma sistemtica que pudesse ser universal, aproximou-se da Lgica Simblica formal:
smbolos ou ideogramas deveriam ser introduzidos para representar um pequeno nmero de
conceitos fundamentais necessrios ao pensamento. As idias compostas deveriam ser
formadas a partir desses alfabetos do pensamento humano, do mesmo modo como as
frmulas so desenvolvidas na Matemtica [Boy74]. Isso o levou, entre outras coisas, a
pensar em um sistema binrio para a Aritmtica e a demonstrar a vantagem de tal sistema
sobre o decimal para dispositivos mecnicos de calcular . A idia de uma lgica estritamente
formal da construo de sistemas sem significado smntico, interpretveis a posteriori no
tinha surgido. Duzentos anos mais tarde, George Boole formularia as regras bsicas de um
sistema simblico para a lgica matemtica, refinado posteriormente por outros matemticos
e aplicado teoria dos conjuntos ([Bri79a], volume III). A lgebra booleana constituiu a base
para o projeto de circuitos usados nos computadores eletrnicos digitais.

4.3 A lgica matemtica no sculo XIX

Newton e Leibniz descobriram o princpio fundamental do clculo de que uma integrao pode ser feita mais facilmente
pela inverso do processo de diferenciao, no clculo das reas[RA91].

Em 1673 Gottfried Leibniz, usando uma engrenagem dentada, construiu uma calculadora capaz de multiplicar, na qual um
nmero era repetido e automaticamente somado a um acumulador.

54

Figura 12: George Cantor

A passagem do sculo XVIII para o sculo XIX marca o incio de um novo tempo
na Histria da matemtica, e, mais do que qualquer perodo precedente, mereceu ser
conhecido como a sua Idade urea, e que afetar diretamente a evoluo em direo ao
surgimento e fundamentao da Cincia da Computao. O que se acrescentou ao corpo da
Matemtica durante esses cem anos, supera de longe tanto em quantidade como em qualidade
a produo total combinada de todas as pocas precedentes. Com uma possvel exceo do
perodo conhecido como Idade herica, na Grcia antiga, foi uma das mais revolucionrias
etapas do desenvolvimento dessa cincia, e, conseqentemente, tambm da Computao.
Ser particularmente objeto de estudo a evoluo da Lgica Simblica ou Lgica
Matemtica que teve Leibniz como predecessor distante.
A partir de meados do sculo XIX, a lgica formal * se elabora como um clculo
algbrico, adotando um simbolismo peculiar para as diversas operaes lgicas. Graas a esse
novo mtodo, puderam-se construir grandes sistemas axiomticos de lgica, de maneira
parecida com a matemtica, com os quais se podem efetuar com rapidez e simplicidade
raciocnios que a mente humana no consegue espontaneamente.
A Lgica Simblica Lgica Matemtica a partir daqui , tem o mesmo objeto que
a lgica formal tradicional: estudar e fazer explcitas as formas de inferncia, deixando de lado
por abstrao o contedo de verdades que estas formas possam transmitir [San82]. No
se trata aqui de estudar Lgica, mas de chamar a ateno para a perspectiva que se estava
abrindo com o clculo simblico: a automatizao de algumas operaes do pensamento. A
Mquina de Turing, como ser visto, conceito abstrato que efetivamente deu incio era dos

A Lgica Formal remonta particularmente a Aristteles, como visto no captulo dos Primrdios, que a fundiu com a lgica
filosfica em um conjunto de obras que posteriormente chamou-se Organon. A lgica formal analisa detalhadamente as
diversas formas que podem adotar as operaes lgicas, em particular o raciocnio, com uma relativa independncia dos
seus contedos concretos.

55

computadores, baseou-se no princpio de que a simples aplicao de regras permite passar


mecanicamente de uns smbolos a outros, sistema lgico que foi inaugurado pelo matemtico
George Boole.
Entretanto a lgica booleana estava limitada ao raciocnio proposicional, e somente
mais tarde, com o desenvolvimento dos quantificadores, a lgica formal estava pronta para
ser aplicada ao raciocnio matemtico em geral. Os primeiros sistemas foram desenvolvidos
por F.L.G. Frege e G. Peano. Ao lado destes, ser necessrio citar George Cantor (1829 1920), matemtico alemo que abriu um novo campo dentro do mundo da anlise, nascida
com Newton e Leibniz, com sua teoria sobre conjuntos infinitos [Bel37].
No incio do sculo XX a Lgica Simblica se organizar com mais autonomia em
relao matemtica e se elaborar em sistemas axiomticos desenvolvidos, que se colocam
em alguns casos como fundamento da prpria matemtica e que prepararo o surgimento do
computador.
4.3.1

Boole e os fundamentos da Lgica Matemtica e da Computao

O ingls George Boole (1815 - 1864) considerado o fundador da Lgica Simblica


([Bri79a], volume III). Ele desenvolveu com sucesso o primeiro sistema formal para
raciocnio lgico. Mais ainda, Boole foi o primeiro a enfatizar a possibilidade de se aplicar o
clculo formal a diferentes situaes, e fazer operaes com regras formais, desconsiderando
noes primitivas.

Figura 13: George Boole

Sem Boole, que era um pobre professor autodidata em Matemtica, o caminho pelo
qual se ligou a Lgica Matemtica talvez demorasse muito a ser construdo. Com relao
Computao, se a Mquina Analtica de Babbage (ver captulo sobre a Pr-Histria Tecnolgica)
56

foi apenas uma tentativa bem inspirada (que teve pouco efeito sobre os futuros construtores
do computador), sem a lgebra booleana, no entanto, a tecnologia computacional no teria
progredido com facilidade at a velocidade da eletrnica.
Durante quase mais de dois mil anos, a lgica formal dos gregos, conhecida pela sua
formulao silogstica, foi universalmente considerada como completa e incapaz de sofrer
uma melhora essencial. Mais do que isso, a lgica aristotlica parecia estar destinada a ficar nas
fronteiras da metafsica, j que somente se tratava, a grosso modo, de uma manipulao de
palavras. No se havia ainda dado o salto para um simbolismo efetivo, embora Leibniz j
tivesse aberto o caminho com suas idias sobre o alfabeto do pensamento *.
Foi Boole, em sua obra The Mathematical Analysis of Logic (1847), quem forneceu uma
idia clara de formalismo, desenvolvendo-a de modo exemplar. Ele percebeu que poderia ser
construda uma lgebra de objetos que no fossem nmeros, no sentido vulgar, e que tal
lgebra, sob a forma de um clculo abstrato, seria capaz de ter vrias interpretaes [Kne68].
O que chamou a ateno na obra foi a clara descrio do que seria a essncia do clculo, isto
, o formalismo, procedimento, conforme descreveu, cuja validade no depende da
interpretao dos smbolos mas sim da exclusiva combinao dos mesmos [Boc66]. Ele
concebeu a lgica como uma construo formal qual se busca posteriormente uma
interpretao.
Boole criou o primeiro sistema bem sucedido para o raciocnio lgico, tendo sido
pioneiro ao enfatizar a possibilidade de se aplicar o clculo formal em diferentes situaes e
fazer clculos de acordo com regras formais, desconsiderando as interpretaes dos smbolos
usados. Atravs de smbolos e operaes especficas, as proposies lgicas poderiam ser
reduzidas a equaes e as equaes silogsticas poderiam ser computadas de acordo com as
regras da lgebra ordinria. Pela aplicao de operaes matemticas puras e contando com o
conhecimento da lgebra booleana possvel tirar qualquer concluso que esteja contida
logicamente em qualquer conjunto de premissas especficas.
De especial interesse para a Computao, sua idia de um sistema matemtico
baseado em duas quantidades, o Universo e o Nada, representados por 1 e 0, o levou a
inventar um sistema de dois estados para a quantificao lgica. Mais tarde os construtores do
primeiro computador entenderam que um sistema com somente dois valores pode compor
mecanismos para perfazer clculos .
George Boole estava convencido de que sua lgebra no somente tinha
demonstrado a equivalncia entre Matemtica e Lgica, como representava a sistematizao
do pensamento humano. Na verdade a cincia, depois dele, principalmente com Husserl, pai
da Fenomenologia, demonstrar que a razo humana mais complicada e ambgua, difcil de
ser conceituada e mais poderosa que a lgica formal, mas do ponto de vista da Matemtica e
da Computao, a lgebra booleana foi importante, e s os anos fizeram ver, pois a lgica at

Leibniz j tinha compreendido no sculo XVII que h alguma semelhana entre a disjuno e conjuno de conceitos e a
adio e multiplicao de nmeros mas foi difcil para ele formular precisamente em que consistia essa semelhana e como
us-la depois como base para um clculo lgico [Kne68].

A base do hardware sobre a qual so construdos todos os computadores digitais formada de dispositivos eletrnicos
diminutos denominados portas lgicas. um circuito digital no qual somente dois valores lgicos esto presentes. Para se
descrever os circuitos que podem ser construdos pela combinao dessas portas lgicas necessria a lgebra booleana.

57

ento era incompleta e no explicava muitos princpios de deduo empregados em


raciocnios matemticos elementares.
Mas, a lgica booleana estava limitada ao raciocnio proposicional, e somente aps o
desenvolvimento de quantificadores, introduzidos por Peirce, que a lgica formal pde ser
aplicada ao raciocnio matemtico geral. Alm de Peirce, tambm Schreder e Jevons *
aperfeioaram e superaram algumas restries do sistema booleano: disjuno exclusiva,
emprego da letra v para exprimir proposies existenciais, admisso de coeficientes numricos
alm do 0 e 1 e o emprego do sinal de diviso. O resultado mais importante, no entanto, foi a
apresentao do clculo de uma forma extremamente axiomatizada.
4.3.2

A importncia de Frege e Peano

Frege (1848 - 1925) e Peano (1858 - 1932) trabalharam para fornecer bases mais
slidas lgebra e generalizar o raciocnio matemtico [Har96].
Gottlob Frege ocupa um lugar de destaque dentro da Lgica. Embora no to
conhecido em seu tempo e bastante incompreendido, deve-se ressaltar que ainda hoje tornase difcil descrever a quantidade de conceitos e inovaes, muitos revolucionrios, que
elaborou de forma exemplar pela sua sistematizao e clareza. Muitos autores comparam seu
Begriffsschrift aos Primeiros Analticos de Aristteles, pelos pontos de vista totalmente geniais.
Frege foi o primeiro a formular com preciso a diferena entre varivel e constante,
assim como o conceito de funo lgica, a idia de uma funo de vrios argumentos e o conceito de
quantificador . A ele se deve uma conceituao muito mais exata da teoria aristotlica sobre
sistema axiomtico, assim como uma clara distino entre lei e regra, linguagem e
metalinguagem. Ele autor da teoria da descrio e quem elaborou sistematicamente o
conceito de valor. Mas isto no tudo, pois todas estas coisas so apenas produtos de um
empreendimento muito maior e fundamental, que o inspirou desde suas primeiras pesquisas:
uma investigao das caractersticas daquilo que o homem diz quando transmite informao
por meio de juzos.
Na verdade o que Frege chamou de Lgica assim como seus contemporneos
Russell e Wittgenstein no o que hoje chamado Lgica, fruto do formalismo e da teoria
dos conjuntos que acabaram por predominar entre os matemticos, mas sim o que se
denomina semntica, uma disciplina sobre o contedo, natureza desse contedo e estrutura.
Ele gastou considervel esforo na separao de suas concepes lgicas daquelas concepes
dos 'lgicos computacionais' como Boole, Jevons e Schreder. Estes estavam, como j foi
dito, empenhados no desenvolvimento de um clculo do raciocnio como Leibniz propusera,
mas Frege queria algo mais ambicioso: projetar uma lngua characteristica. Dizia ele que uma das
*

Jevons foi o primeiro a compreender que os mtodos booleanos podem ser reduzidos s regras do clculo elementar, com a
possibilidade, portanto, de ser mecanizados. Em 1869 conseguiu construir uma mquina lgica apresentada no ano
seguinte ao pblico: era um dispositivo de 21 chaves para testar a validade de inferncias na lgica equacional. Algumas das
caractersticas deste dispositivo foram usadas mais tarde na implementao do computador. A mquina est conservada no
museu de Histria da Cincia em Oxford.

O emprego de quantificadores para ligar variveis, principal caracterstica do simbolismo lgico moderno e que o torna
superior em alguns aspectos linguagem vulgar e ao simbolismo algbrico de Boole, est entre as maiores invenes
intelectuais do sculo XIX [Kne68].

58

tarefas da filosofia era romper o domnio da palavra sobre o esprito humano. Frege procurou
usar um sistema simblico, que at ento somente se pensava para a matemtica, tambm
para a filosofia: um simbolismo que retratasse o que se pode dizer sobre as coisas. Ele
buscava algo que no somente descrevesse ou fosse referido a coisas pensadas, mas o prprio
pensar [Cof91].
Os lgicos tradicionais estavam basicamente interessados na soluo de problemas
tradicionais de lgica, como por exemplo a validade. O objetivo de Frege foi mais alm:
entrou no campo da semntica, do contedo, do significado, onde encontrou o fundamento
ltimo da inferncia, da validade, etc. Frege acabou derivando para uma filosofia da lgica e
da matemtica e influenciou diretamente a Russell, David Hilbert, Alonzo Church e Carnap.
Destes, Hilbert e Church tm um papel decisivo na Histria conceitual da Cincia da
Computao.
Frege desejava provar que no somente o raciocnio usado na matemtica, mas
tambm os princpios subjacentes ou seja, toda a matemtica so pura lgica. Porm ele
expressou suas buscas e resultados pelos quais acabou sendo considerado um dos pais da
Lgica moderna, de uma forma excessivamente filosfica, em uma notao matemtica no
convencional. O mrito maior dele foi elaborar uma concepo lgica mais abrangente do
que a Lgica de Aristteles. Em um procedimento que lembra a characteristica universalis *,
Frege construiu um sistema especial de smbolos para desenvolver a lgica de maneira exata e
foi muito alm das proposies e dos argumentos. Em sua grandes obras, Begriffsschrift, eine der
arithmetischen nachgebildete Formelsprache des reinen Denkens (Ideografia, uma linguagem formalizada
do pensamento puro construda de modo aritmtico) e Grundgesitze der Arithmetik.
Begriffsschriflich abgeleitet (Leis Fundamentais da Aritmtica, Ideograficamente Deduzidas), est
contida de modo explcito e plenamente caracterizado uma srie de conceitos conectivos,
funo, funo proposicional, quantificadores, etc. que seriam vitais para a Lgica
Matemtica a partir de ento [Gom97].
Foi atravs do contato com a obra de Frege que Bertrand Russell (1872 - 1970)
procurou levar avante a idia de construir toda a matemtica sobre bases lgicas, convencido
de que ambas so idnticas. Os postulados fregianos , adotados primeiramente por Peano,
foram incorporados por Russell, que estendeu as teses logicistas de Frege Geometria e s
disciplinas matemticas em geral.
Peano tinha objetivo semelhante a Frege, mas mais realista. Ele desenvolveu uma
notao formal para raciocnio matemtico que procurasse conter no s a lgica matemtica,
mas todos os ramos mais importantes dela. O simbolismo de Peano e seus axiomas dos
quais dependem muitas construes rigorosas na lgebra e na anlise representam a mais
notvel tentativa do sculo XIX de reduzir a aritmtica comum, e portanto a maior parte da
matemtica, a um puro simbolismo formal. Aqui o mtodo postulacional atingiu novo nvel
de preciso, sem ambigidade de sentido, sem hipteses ocultas [Boy74]. Para maiores
detalhes, ver anexo sobre A Aritmtica de Peano.

Como j foi dito, a idia lanada por Leibniz de uma linguagem filosfica que seria um simbolismo atravs do qual o homem
estaria em condies de expressar seus pensamentos com plena clareza e dirimir dvidas atravs de simples clculos.

Sobre nmero, deduo, inferncia, proposies, premissas, etc.

59

J Hilbert procurou colocar em prtica a teoria da demonstrao de Frege, e pode-se


ver nessas palavras deste as idias implementadas posteriormente no programa hilbertiano: a
inferncia procede, pois, em meu sistema de escrita conceitual (Begriffsschrift), seguindo uma
espcie de clculo. No me refiro a este em sentido estrito, como se fosse um algoritmo que
nele predominasse, (...), mas no sentido de que existe um algoritmo total, quer dizer, um
conjunto de regras que resolvem a passagem de uma proposio ou de duas, a outra nova, de
tal forma que nada se d que no esteja de acordo com estas regras. Minha meta , pois, uma
ininterrupta exigncia de preciso no processo de demonstrao, e a mxima exatido lgica,
ao mesmo tempo que clareza e brevidade [Boc66].
Pode-se notar a partir desse momento uma guinada no conceito de Lgica: os
objetos da investigao lgica j no so mais as prprias frmulas, mas as regras de operao
pelas quais se formam e se deduzem.

Figura 14: Frege

60

Figura 15: Peano

4.4 O desenvolvimento da Lgica Matemtica


Uma das metas dos matemticos no final do sculo XIX foi a de obter um rigor
conceitual das noes do clculo infinitesimal (limite, continuidade, infinito matemtico, etc.).
Tal programa foi chamado de aritmetizao da anlise, isto , a busca da reduo dos
conceitos fundamentais da anlise (a matemtica que tem como base a teoria dos nmeros
reais) aos conceitos da aritmtica (a matemtica que tem como base a teoria dos nmero
inteiros positivos, isto , dos nmeros naturais e, por extenso, dos nmeros racionais).
Por exemplo, ao invs de se tomar o nmero imaginrio 1 como uma entidade
um tanto misteriosa, pode-se defini-lo como um par ordenado de nmeros inteiros (0,1),
sobre o qual se realizam certas operaes de adio e multiplicao. Analogamente, o
nmero irracional 2 se definia numa certa classe de nmeros irracionais, cujo quadrado
menor do que 2. Dado que a Geometria podia ser reduzida Anlise (Geometria Analtica), a
Aritmtica vinha a se configurar como a base natural de todo o edifcio matemtico. O ponto
culminante deste processo foram os axiomas de Peano (1899), que fundamentaram toda a
Aritmtica elementar posterior.
Ao mesmo tempo, matemticos como Frege, Cantor e Russell, no convencidos da
naturalidade da base constituda pela aritmtica. Eles procuravam conduzir a prpria
aritmtica a uma base mais profunda, reduzindo o conceito de nmero natural ao conceito
lgico de classe, ou, para recorrer a Cantor, definir nmero em termos de conjunto. Deste
modo, a lgica das classes apresentava-se como a teoria mais adequada para a investigao
61

sobre os fundamentos da matemtica. O esforo dos matemticos foi o de dar lgebra uma
estrutura lgica, procurando caracterizar a matemtica no tanto pelo seu contedo quanto
pela sua forma.
Bochenski [Boc66], falando da histria da Lgica Matemtica, diz que a partir de
1904, com Hilbert, inicia-se um novo perodo dessa cincia ento emergente, que se
caracteriza pela apario da Metalgica * (Hilbert, Lwenheim e Scholem) e, a partir de 1930,
por uma sistematizao formalista dessa mesma Metalgica. Iniciaram-se discusses sobre o
valor e os limites da axiomatizao, o nexo entre Lgica e Matemtica, o problema da verdade
(Hilbert, Gdel, Tarski).
A Metalgica, em sua vertente sinttica ocupa-se das propriedades externas dos
clculos, como por exemplo, a consistncia, a completude, a decidibilidade dos sistemas
axiomticos e a independncia dos axiomas. Hilbert, Gdel e Church so autores nesse
campo. Em sua parte semntica, a Metalgica dirige-se ao significado dos smbolos, dos
clculos com relao a um determinado mundo de objetos. Tarski, Carnap e Quino, entre
outros se interessaram por estas questes.
Apareceram tambm novos sistemas lgicos: as lgicas naturais, de Gentzen e
Jaskowski, lgica polivalente de Post e Lukasiewicz, e a lgica intuicionista de Heytings.
Complementando essas idias cabe destacar alguns sistemas originais de outros
matemticos como Schnfinkel (1924), Curry (1930), Kleene (1934), Rosser (1935) e o j
citado Alonzo Church (1941). Deve-se lembrar que quase todos estes ltimos, junto com o
logicista ingls Alan M. Turing, acabaram por definir, antes mesmo de existir o computador
propriamente, a natureza da computao, e as implicaes e limites do pensamento humano
atravs de uma mquina.

4.5 A crise dos fundamentos e as tentativas de superao


Os matemticos so conhecidos por serem exigentes na hora de pedir uma prova
absoluta antes de aceitarem qualquer afirmao. Esta reputao claramente mostrada em
uma anedota:
Um astrnomo, um fsico e um matemtico estavam passando frias na
Esccia. Olhando pela janela do trem eles avistaram uma ovelha preta
no meio de um campo. Que interessante, observou o astrnomo, na
Esccia todas as ovelhas so pretas. Ao que o fsico respondeu: No,
nada disso!. Algumas ovelhas escocesas so pretas. O matemtico
olhou para cima em desespero e disse: Na Esccia existe pelo menos
um campo, contendo pelo menos uma ovelha e pelo menos um lado
dela preto. (Ian Stuart, Conceitos de matemtica moderna, in

[Sin99])

Quando a prpria Lgica Formal reflete sobre seus contedos.

62

E o matemtico que se especializa no estudo da lgica matemtica ainda mais


rigoroso do que o matemtico comum. Os matemticos lgicos comearam a questionar
idias que os outros matemticos consideravam certas h sculos. Por exempo, a lei da
tricotomia declara que cada nmero ou negativo, ou positivo ou ento zero. Ningum se
preocupara em provar isso que parece bvio, mas os lgicos perceberam que se no o fosse,
ela poderia ser falsa, e todo o edifcio matemtico que dependia dessa lei desmoronaria *.
Apesar das disciplinas dedutivas terem atingido um alto grau de perfeio lgica, algumas
dvidas comearam a abalar a confiana dos matemticos: o surgimento, por volta de 1900,
de inmeros paradoxos ou antinomias, especialmente na teoria dos conjuntos . O
aparecimento de tais contradies mostrava que havia algum defeito nos mtodos. Ser que se
poderia ter certeza de que em se usando os axiomas de um sistema rigidamente lgico o
grande sonho de tantos matemticos do incio do sculo XX de reduzir a matemtica e o
conhecimento lgica , nunca se chegaria a uma contradio, dentro dos axiomas do
sistema? Estava iminente, nos fins do sculo XIX, uma inevitvel coliso entre matemtica e
filosofia. Alguns vagos conceitos metafsicos associados com o pensamento humano j
tinham chamado a ateno de matemticos das duas primeiras dcadas do sculo XX , que
passaram a procurar a verdadeira natureza do raciocnio dentro da cincia matemtica. O que
um procedimento correto, qual a relao entre verdade e demonstrao, possvel fornecer
uma prova para todos os enunciados matemticos verdadeiros? E o problema das
ambigidades, j que a matemtica sempre foi feita atravs de uma linguagem natural?
Desde os antigos gregos a matemtica vem acumulando mais teoremas e verdades,
e, embora a maioria deles tenha sido rigorosamente provada, os matemticos temiam que
alguns casos tivessem sido aceitos sem um exame mais adequado. Os lgicos ento decidiram
provar todos os teoremas, a partir de princpios fundamentais. No entanto, cada verdade
tinha sido deduzida de outras verdades. E estas, por sua vez, de outras ainda mais
fundamentais e assim por diante. Os lgicos acabaram por chegar aos axiomas da matemtica,
essas declaraes essenciais to fundamentais que no podiam ser provadas, pois so autoevidentes . O desafio para os lgicos era reconstruir toda a matemtica a partir desses
axiomas.
Uma legio de lgicos participou deste processo, lento e doloroso, usando somente
um nmero mnimo de axiomas. A idia era consolidar, atravs do raciocnio lgico e
rigoroso, o que j se pensava ser conhecido. Este quadro estimulou a criatividade matemtica.

A lei da tricotomia foi demonstrada no final do sculo XIX.

O paradoxo de Russel, o paradoxo de Cantor, o paradoxo de Burati Forti, o paradoxo de Richard, etc. Para exemplificar,
vamos ao de Cantor, descoberto por ele prprio em 1899: se S o conjunto de todos os conjuntos, ento seus
subconjuntos devem estar tambm entre os seus elementos. Conseqentemente, o nmero cardinal de S no pode ser
menor do que o do conjunto dos subconjuntos de S. Mas isso, pelo teorema do prprio Cantor, deveria ocorrer!

Basta ler as palavras do matemtico Sylvester em sua controvrsia com Huxley. Dizia que a matemtica se origina
diretamente das foras e atividades inerentes da mente humana, e da introspeco continuamente renovada daquele
mundo interior do pensamento em que os fenmenos so to variados e exigem ateno to grande quanto os do mundo
fsico exterior. Para ele, a matemtica era revelar as leis da inteligncia humana, assim como a fsica revela as leis do
mundo dos sentidos [Cos77].

A lei comutativa da adio, por exemplo: para quaisquer nmeros a e b, a + b = b + a.

63

Na tentativa de se resolverem os paradoxos surgiram trs grandes escolas da lgica: a


Logicista * , a Intuicionista e a Formalista.
A escola logicista rapidamente ficou exposta a fortes crticas . Frege, Peano e Russell
, devido ao seu platonismo, acreditavam em um mundo objetivo, existente por si mesmo, de
entes e relaes matemticas que o pesquisador deve descobrir e no inventar. Bertrand
Russell tinha objetivos ainda maiores: utilizar o instrumental da lgica como ponto de partida
do pensamento filosfico, atravs da gerao de uma linguagem perfeita. Mas a matemtica,
enquanto perquirio pura, independe teoricamente dessas aplicaes, bastando ver as
pesquisas atuais. Deve-se, no entanto, destacar o mrito dessa escola de incrementar
grandemente o progresso da logstica e confirmar a unio ntima entre matemtica e lgica.
O programa intuicionista sofreu tambm fortes crticas, principalmente a de
desfigurar a matemtica, tornando-a algo subjetivo e praticamente impossvel. O prprio
modo de se provar a no-contradio de uma teoria matemtica, buscando um modelo dos
axiomas dessa teoria dentro de outra teoria j existente (e que era considerada coerente )
mostrou-se pouco confivel: como dar a certeza da no-contraditoriedade dessa outra teoria?
A maior parte dos matemticos dos nossos dias afastou-se dessa linha de pensamento.
Positivamente falando, sua dura crtica matemtica tradicional obrigou os especialistas nos
fundamentos a desenvolverem novos mtodos para reabilitar a teoria clssica. A escola
formalista progrediu bastante atravs das polmicas com os intuicionistas [Cos77].
4.5.1

A figura de David Hilbert

Para David Hilbert (1862 - 1943) e outros, o problema de estabelecer fundamentos


rigorosos era o grande desafio ao empreendimento de tantos, que pretendiam reduzir todas as
leis cientficas a equaes matemticas. Ele acreditava que tudo na matemtica poderia e
deveria ser provado a partir dos axiomas bsicos. O resultado disso levaria a demonstrar
conclusivamente, segundo ele, os dois elementos mais importantes do sistema matemtico.
Em primeiro lugar a matemtica deveria, pelo menos em teoria, ser capaz de responder a cada
pergunta individual este o mesmo esprito de completude que no passado exigira a
inveno de nmeros novos, como os negativos e os imaginrios. Em segundo lugar, deveria
ficar livre de inconsistncias ou seja, tendo-se mostrado que uma declarao verdadeira
por um mtodo, no deveria ser possvel mostrar que ela falsa por outro mtodo. Hilbert
estava convencido de que, tomando apenas alguns axiomas, seria possvel responder a
qualquer pergunta matemtica imaginria, sem medo de contradio. O esforo para
*

A tese logiscista compe-se de duas partes: 1)Toda idia matemtica pode ser definida por intermdio de conectivos lgicos
(classe ou conjunto, implicao, etc.); 2)Todo enunciado matematicamente verdadeiro pode ser demonstrado a partir de
princpios lgicos (no contradio, terceiro excludo, etc.), mediante raciocnios puramente matemticos.

Para Brower, fundador desta escola na verdade um radicalizador das teses de Kronecker que no aceitava a teoria dos
conjuntos o saber matemtico escapa a toda e qualquer caracterizao simblica e se forma em etapas sucessivas que no
podem ser conhecidas de antemo: a atividade do intelecto cria e d forma a entes matemticos, aproximando-se do
apriorismo temporal de Kant.

Os logicistas tiveram de apelar a princpios extra-lgicos axioma de Zermelo, axioma do infinito que ainda hoje
encontram-se sujeitos a calorosos debates e fortes reparos.

Caminho praticado por Hilbert no seu famoso trabalho Fundamentos da Geometria (1899), onde axiomatizou de modo
rigoroso a geometria euclidiana.

64

reconstruir logicamente o conhecimento matemtico acabou sendo liderado por essa figura,
talvez a mais eminente da poca.
No dia 8 de agosto de 1900, Hilbert deu uma palestra histrica no Congresso
Internacional de Matemtica em Paris. Ele apresentou 23 problemas no-resolvidos da
matemtica que acreditava serem de imediata importncia. Alguns problemas relacionavam-se
com reas mais gerais da matemtica, mas a maioria deles estava ligada aos fundamentos
lgicos dessa cincia. Tais problemas deveriam focalizar a ateno do mundo matemtico e
fornecer um programa de pesquisas. Hilbert queria unir a comunidade para ajud-lo a realizar
sua viso de um sistema matemtico livre de dvidas ou inconsistncias[Sin99]. Todos esses
estudos denominaram-se Metamatemtica ou Metalgica, pela conectividade das duas.
Ele props-se a demonstrar a coerncia da aritmtica *, para depois estender tal
coerncia aos mbitos dos demais sistemas. Apostou na possibilidade da criao de uma
linguagem puramente sinttica, sem significado, a partir da qual se poderia falar a respeito da
verdade ou falsidade dos enunciados. Tal linguagem foi e chamada de sistema formal, e est
resumida no anexo A concepo formalista da matemtica. Isto, que fazia parte do centro da
doutrina formalista, mais tarde estimularia Turing a fazer descobertas importantes sobre as
capacidades das mquinas. Registre-se tambm que John von Neumann, a quem muitos
atribuem a construo do primeiro computador, era um aluno de Hilbert e um dos principais
tericos da escola formalista .

No incio do sculo XX a matemtica estava reduzida a 3 grandes sistemas axiomticos: aritmtica, anlise e conjunto, sendo
o mais fundamental o primeiro. Era natural que ele escolhesse esse sistema.

John von Neumann falava 5 lnguas e foi um brilhante logicista, matemtico e fsico. Alm de lhe ser atribuda a inveno
do primeiro computador, ele estava no centro do grupo que criou o conceito de programa armazenado, que
potencializou extremamente o poder computacional das mquinas que ento surgiam.

65

Figura 16: Professor David Hilbert

Interessam agora dois problemas da referida lista de 23. O segundo, relacionado


com a confiabilidade do raciocnio matemtico (isto , se ao seguir as regras de determinado
raciocnio matemtico no se chegaria a contradies), e, ligado a ele, o problema de nmero
dez. Este era de enunciado bastante simples: descreva um algoritmo que determine se uma
dada equao diofantina do tipo P(u1,u2,...,un) = 0, onde P um polinmio com coeficientes
inteiros, tem soluo dentro do conjunto dos inteiros. o famoso problema da decidibilidade, o
Entscheidungsproblem. Consistia em indagar se existe um procedimento mecnico efetivo para
determinar se todos os enunciados matemticos verdadeiros poderiam ser ou no provados,
isto , se eles poderiam ser deduzidos a partir de um dado conjunto de premissas *. Para
entender um pouco mais sobre deciso na matemtica, ver o anexo O problema da deciso na
Matemtica.
Tambm a questo da consistncia, como j foi dito, era decisiva para ele, pois
uma condio necessria para o sistema axiomtico do tipo que ele tinha em mente.
Aristteles j tinha mostrado que se um sistema inconsistente, qualquer afirmao poderia ser
provada como falsa ou verdadeira. Neste caso no seria possvel haver um fundamento slido
*

A simplicidade do problema de Hilbert apenas aparente, e somente aps 70 anos de esforos foi encontrada a soluo, por
Matijasevic, um matemtico russo de apenas 22 anos na poca. uma soluo bastante complexa, dependendo tanto de
resultados da Teoria do Nmeros, conhecidos h muitssimos anos, como do trabalho anterior de trs americanos, Martin
Davis, Julia Robinson e Hilary Putnan, que por sua vez baseia-se em certos resultados fundamentais sobre lgica e
algoritmos descobertos na dcada de 30 por Kurt Gdel, Alan Turing, Emil Post, Alonso Church e Stephen Kleene. A
resposta a esse problema de Hilbert : tal algoritmo no existe: o dcimo problema indecidvel.

66

para qualquer tipo de conhecimento, matemtico ou no. Anos mais tarde, em 1928, no
Congresso Internacional de Matemticos, realizado em Bolonha, Itlia, Hilbert lanou um
novo desafio, que na verdade somente enfatizava aspectos do segundo e do dcimo problema
j descritos. Hilbert queria saber se possvel provar toda assertiva matemtica verdadeira.
Estava buscando algo como uma mquina de gerar enunciados matemticos verdadeiros:
uma vez alimentada com um enunciado matemtico, poderia dizer se o enunciado falso ou
verdadeiro [Cas97]. um problema que est relacionado com o citado projeto hilbertiano da
busca de um sistema formal completo e consistente.
Ao mesmo tempo, em 1927, com 22 anos, von Neumann publicou 5 artigos que
atingiram fortemente o mundo acadmico. Trs deles consistiam em crticas fsica quntica,
um outro estabelecia um novo campo de pesquisas chamado Teoria dos Jogos, e, finalmente, o
que mais impactou o desenvolvimento da Computao: era o estudo do relacionamento entre
sistemas formais lgicos e os limites da matemtica. Von Neumann demonstrou a
necessidade de se provar a consistncia da matemtica, um passo importante e crtico tendo
em vista o estabelecimento das bases tericas da Computao (embora ningum tivesse esse
horizonte por enquanto).
J foi citado, no captulo sobre o Desenvolvimento da Lgica Matemtica, o desafio dos
matemticos do incio do sculo de aritmetizar a anlise. Eles estavam de acordo, no que diz
respeito s proposies geomtricas e outros tipos de afirmaes matemticas, em que
poderiam ser reformuladas e reduzidas a afirmaes sobre nmeros. Logo, o problema da
consistncia da matemtica estava reduzido determinao da consistncia da aritmtica.
Hilbert estava interessado em dar uma teoria da aritmtica, isto , um sistema formal que fosse
finitisticamente descritvel *, consistente, completo e suficientemente poderoso para descrever
todas as afirmaes que possam ser feitas sobre nmeros naturais. O que Hilbert queria em
1928 era que, para uma determinada afirmao matemtica, por exemplo, a soma de dois
nmeros mpares sempre um nmero par, houvesse um procedimento que, aps um
nmero finito de passos, parasse e indicasse se aquela afirmao poderia ou no ser provada
em determinado sistema formal, suficientemente poderoso para abranger a aritmtica
ordinria [Cas97]. Isto est diretamente relacionado com o trabalho de Gdel e Alan Turing.
Pode-se afirmar que, em geral, a lgica matemtica prestou naqueles tempos maior
ateno linguagem cientfica, j que seu projeto era o da elaborao de uma linguagem lgica de
grande preciso, que fosse boa para tornar transparentes as estruturas lgicas de teorias
cientficas. Tal projeto encontrou seus limites, tanto na ordem sinttica como na ordem
semntica (por exemplo, com os clebres teoremas de limitao formal). Este fenmeno
levou a uma maior valorizao da linguagem ordinria, que, apesar de suas flutuaes e
imprecises, encerram uma riqueza lgica que os clculos formais no conseguem recolher de
todo. Dentro da prpria matemtica como se ver mais adiante com Gdel h verdades
que no podem ser demonstradas mediante uma deduo formal, mas que podem ser
demonstradas o teorema da incompletude de Gdel uma prova disso mediante um
raciocnio metamatemtico informal. A partir desse propsito de construo de uma

O termo finitstico usado por vrios autores. Hilbert quis dizer que tal sistema deveria ser construdo com um nmero finito
de axiomas e regras e toda prova dentro do sistema deveria ter um nmero finito de passos.

67

linguagem ideal surgiu a filosofia da linguagem (Moore, Wittgenstein, Geach em sua segunda
etapa) colocando as questes lgicas sobre nova tica [San82].
Na verdade, tanto a lgica matemtica em sentido estrito como os estudos de
semntica e filosofia da linguagem depararam-se com problemas filosficos que no se
resolvem somente dentro de uma perspectiva lgica. H questes de fundo da lgica
matemtica que pertencem j a uma filosofia da matemtica.
Todos esses desafios abriram uma porta lateral para a Computao e deram origem
a um novo e decisivo captulo na sua Histria. Da tentativa de resolv-los ocorreu uma
profunda revoluo conceitual na Matemtica o Teorema de Gdel e surgiu o
fundamento bsico de todo o estudo e desenvolvimento da Computao posterior: a
Mquina de Turing.

4.6 Kurt Gdel: muito alm da lgica *


Kurt Gdel (1906 1978) no desfruta do mesmo prestgio de outros cientistas
contemporneos seus, como Albert Einstein. Possivelmente contribua para isto o fato de que
suas descobertas se produziram em um campo, o da lgica matemtica, prprio das cincias
formais, e no em algum ramo da cincia que tenha influenciado diretamente no conjunto da
sociedade.
No entanto, suas grandes contribuies lgica formal se estendem segundo seus bigrafos
muito alm do seu estrito mbito formal e abordam questes to vastas e espinhosas como
a natureza da verdade, o conhecimento e a certeza. Pode-se afirmar que, junto com a teoria da
relatividade de Einstein e o princpio da incerteza de Heisenberg, o teorema da incompletude
de Gdel despertou a cincia moderna de seu sonho dogmtico.
4.6.1

Um pouco de histria

Nascido em Brnn (hoje Brno, na Repblica Tcheca), Kurt Friedrich Gdel (ao
naturalizar-se norte-americano, em 1948, ele deixou o segundo nome) instala-se em Viena em
1924. Logo se apaixona pela cidade, por sua vida universitria e atmosfera intelectual. Requisita
a nacionalidade austraca e, em 26 de fevereiro de 1929, trs dias depois da morte de seu pai,
deixa oficialmente de ser tcheco. Apesar do luto, termina sua tese de doutorado, Sobre a
completude do clculo lgico. Nessa monografia datilografada de apenas 30 pginas, o jovem
matemtico, ento com 23 anos, expe diversos resultados extremamente importantes para a
lgica. Deduz que todo sistema de axiomas de primeira ordem no-contraditrio possui um
modelo. Isto , que existe um conjunto de objetos que verificam os axiomas do sistema.
Existem duas definies de completude:
1) Um sistema de axiomas completo (como uma caixa de ferramentas bem provida,
que permite realizar todos os trabalhos necessrios) quando todos os teoremas verdadeiros da
teoria em pauta (por exemplo, a aritmtica) podem ser deduzidos a partir dele. Esta a
completude semntica.
*

Parte do texto que se segue, a partir do item Um pouco de histria vem de maravilhoso artigo publicado na revista Scientific
American Brasil, edio Gnios da Cincia Matemtica: A vanguarda matemtica e os limites da razo

68

2) Um sistema de axiomas completo (como uma caixa de ferramentas qual no se


pode acrescentar nada) quando toda tentativa de lhe adicionar um novo axioma (independente
dos anteriores) resulta em contradio. Esta a completude sinttica.
Gdel usa o termo completude no primeiro sentido e mostra que toda frmula lgica
verdadeira do clculo de predicados de primeira ordem demonstrvel a partir dos axiomas
clssicos desse mesmo clculo. Para ele, esse resultado constitui um complemento terico ao
mtodo usual de demonstrao de no-contradio. O mtodo usual consiste em construir
um modelo, ou seja, oferecer uma interpretao semntica (por exemplo, geomtrica) do
sistema considerado: se a teoria admite um modelo, ento no-contraditria. Em sua tese, o
jovem demonstra a recproca de tal propriedade: todo sistema de axiomas de primeira ordem
no contraditrio admite um modelo *.
Esse resultado parece confirmar a esperana formalista de David Hilbert, de construir
uma teoria rigorosa capaz de descrever toda a matemtica. Mas Gdel opta pela prudncia.
Entusiasmado, seu orientador, Hans Hahn, encoraja-o a publicar uma verso presumida do
trabalho. O artigo Sobre a completude dos axiomas do clculo lgico de funes aparece, em 1930, no
peridico Monatshefte fr Mathematik und Physik. Detalhe interessante: no artigo, Gdel no
retoma nenhum elemento da introduo de sua tese, na qual havia relacionado seu resultado s
discusses acerca dos fundamentos da matemtica.
Eis aqui, nas palavras do prprio Gdel, um resumo do artigo: Na
fundamentao axiomtica da lgica, tal como estabelecida, por exemplo, nos Principia
mathematica, levanta-se a seguinte questo: os axiomas utilizados so de fato completos, ou seja,
suficientes para deles se deduzir todas as proposies importantes da lgica pela via formal?
Este problema no foi resolvido at agora seno para as proposies lgicas mais simples,
especificamente para aquelas do clculo proposicional. A resposta positiva, e significa que
toda proposio verdadeira (vlida em geral) decorre dos axiomas dos Principia mathematica. O
autor mostra como estender esse teorema s frmulas do clculo funcional (clculo de
predicados) de primeira ordem (em que os quantificadores no operam sobre as funes e
predicados).
Em sua tese, Gdel ainda toma o partido de Hilbert, contra o chamado
intuicionismo de Luitzen Brouwer (1881-1966). Mas certas idias do matemtico holands
certamente o influenciam. No sabemos se ele assistiu s duas conferncias que Brouwer
proferiu em Viena em maro de 1928; porm no h dvida de que conhecia seu contedo, ao
menos por meio das atas s quais teve acesso. Na primeira dessas duas conferncias, intitulada
Matemtica, cincia e linguagem, Brouwer ironiza as tentativas feitas pelos formalistas (Hilbert e
* Em outras palavras, busca-se uma interpretao semntica para o sistema de axiomas. Ex.: certo sistema de axiomas diz

respeito a dois conjuntos M e N cuja natureza, inicialmente, no especificada. Esses axiomas so: 1) M e N tm o mesmo
nmero de elementos; 2) Nenhum elemento de N contm mais de 2 elementos de M; 3) Nenhum elemento de M est
contido em mais de dois elementos de N. Esse sistema coerente, pois se pode associar a ele o seguinte modelo geomtrico,
onde se verifica os trs axiomas (M o conjunto de vrtices do quadrado e N o conjunto de seus lados):
M
M
N
N

N
N

69

seguidores) para tornar mais precisa a linguagem. Segundo ele, no existe na matemtica pura,
assim como em qualquer outra rea, uma linguagem absolutamente segura, isto , uma
linguagem capaz de excluir todo mal-entendido e na qual a memria evite todo erro (por
exemplo, a confuso entre entes matemticos). Como conseqncia, parece-lhe impossvel
remediar essa situao ao submeter, como faz a escola formalista, a linguagem matemtica a
um tratamento matemtico e pela tentativa de exprimi-Ia em uma linguagem de segunda
ordem ou em uma metalinguagem. O desacordo entre Gdel e Brouwer acerca do assunto
apenas uma questo de interpretao: enquanto Brouwer v como confisso de fraqueza a
impossibilidade de a linguagem atingir preciso absoluta, Gdel, ao contrrio, interpreta essa
mesma dificuldade como um indcio de que a matemtica inesgotvel, e que normal que ela
no se deixe circunscrever facilmente.
Os apontamentos feitos em 23 de dezembro de 1929 pelo filsofo Rudolf Carnap,
depois de trs horas de conversa com Gdel acerca da matemtica e do formalismo,
confirmam essa viso: Toda formalizao da matemtica envolve problemas que se podem
exprimir e explicitar na linguagem corrente, mas para os quais no existe expresso apropriada
dentro do prprio formalismo. Segue da (Brouwer foi citado nesse ponto) que a matemtica
inesgotvel: deve-se sempre retomar a seus incios, para `buscar nova fora nas fontes da
intuio'. No haveria, assim, nenhuma lngua characteristca unversalis, nenhuma lngua formal
para a totalidade da matemtica. (...) Ns dispomos apenas de uma linguagem, mas as sutilezas
construdas por nosso esprito so inesgotveis, porque se baseiam sempre em alguma nova
intuio.
O carter inesgotvel da matemtica fornecer a Gdel uma espcie de fio condutor
para suas pesquisas ulteriores, especialmente para o terema da incompletude.
Outro resultado que aparece na tese de Gdel, mas que adquire plena clareza
somente no artigo do Monatshefte, o teorema da compacticidade: para que um sistema com uma
infinidade enumervel de frmulas seja coerente necessrio e suficiente que cada parte finita
do sistema o seja. Esse teorema recebeu pouca ateno quando de sua publicao, sem dvda
devido aos preconceitos da poca em torno da noo de infinito. No entanto, ele iria se
tomar, a partir dos anos 40, uma das principais ferramentas conceituais para o
desenvolvimento da teoria de modelos.
Gdel evita explicitar em sua tese a noo de verdade. Mais tarde, ele diria que em
razo dos preconceitos filosficos da poca, um conceito de verdade matemtica diferente do
de demonstrabilidade parecia altamente suspeito e costumava ser rejeitado como desprovido
de significado.
Seu teorema da completude representa sem dvida um resultado notvel. Ainda
assim, para obter o posto de privatdozent que deseja, bem como o acesso carreira
universitria, ele precisa demonstrar alguma coisa maior. Compreende-se, desse modo, que,
apesar de toda a prudncia que j havia manifestado em sua tese, o gnio Gdel se dirija
precisamente pedra angular do programa de Hilbert: a demonstrao da coerncia (nocontradio) da anlise matemtica. Esse problema o segundo de uma lista de 23 que
Hilbert exps, em 1900, no Congresso Internacional de Matemtica. Tal lista era considerada,
poca, como um mapa para toda a matemtica do sculo XX. Aquele que conseguisse

70

resolver essa questo entraria para o panteo da matemtica e teria uma fulgurante carreira
universitria.
A idia de Gdel no era atacar diretamente o problema da no-contradio da
anlise; mas demonstrar que a anlise seria coerente se e somente se a aritmtica (teoria dos
nmeros) o fosse. Uma vez obtida essa coerncia relativa, bastava demonstrar a coerncia da
teoria dos nmeros, campo em que a utilizao de mtodos finitos parecia mais promissora.
Mesmo assim, o projeto era ousado, pois o mtodo de demonstrao da coerncia relativa
nunca havia sido utilizado fora da geometria (ele havia sido desenvolvido para demonstrar a
coerncia relativa da geometria no-euclidiana em relao geometria euclidiana). Gdel
penetra, assim, em territrio desconhecido.
O objetivo de Gdel no , absolutamente, provocar a queda de todo o programa
de Hlbert. Ao contrrio, ele se via como um dos matemticos da nova gerao aos quais o
grande Hilbert lanara seu apelo apenas dois anos antes, por ocasio do Congresso de Bolonha.
Aceita, portanto, a tradio de axiomatizao da aritmtica para elaborar sua demonstrao.
Uma axiomatizao da teoria dos nmeros havia sido oferecida pelo matemtico
alemo Richard Dedekind desde 1888 (ver anexo O mtodo axiomtico e as cincias dedutivas).
No entanto, para construir seu sistema de axiomas, Dedekind havia utilizado de maneira informal a
teoria dos conjuntos. Mais especificamente, ele colocara no mesmo nvel objetos, expresses
referidas a objetos e expresses referidas a outras expresses: sua aritmtica era de segunda ordem.
Deve-se ao matemtico italiano Guiseppe Peano a etapa seguinte, decisiva para a axiomatizao da
matemtica. Em sua obra Arithmetices principia nova methodo exposita, publicada um ano depois
dos trabalhos de Dedekind, Peano apresentou um sistema de axiomas para os nmeros naturais que
lembrava de maneira espantosa o sistema de Dedekind, apesar de concebido de modo
independente. O matemtico italiano, contudo, no construra sua teoria dentro do contexto
conjuntista, e introduziu uma notao (que, com uma ou outra modificao, tornou-se padro)
destinada a contornar certas ambigidades inerentes linguagem natural (ver anexo A Aritmtica
de Peano). Seu objetivo era captar, com o maior rigor possvel, a natureza lgica do princpio de
induo, ou seja, a lgica de segunda ordem.
Em linguagem matemtica, o princpio de induo condensado na frmula:
( (0) x ( (x) (s(x))) (x)
que se l da seguinte maneira: para toda propriedade , se vlida para zero e se a
proposio se vlida para um nmero x, vlida tambm para seu sucessor verdadeira, ento a
propriedade vlida para todo nmero natural.
Essa frase matemtica no uma frmula da lgica de predicados de primeira ordem,
mas de segunda ordem: com efeito, o primeiro quantificador (o primeiro todo) no est
aplicado a uma varivel que representa indivduos (nmeros naturais), mas a uma varivel que
representa propriedades desses indivduos (propriedades dos nmeros naturais). Em seu
sistema axiomtico, Peano segue exatamente essa formulao do princpio, e especifica que se
trata de um axioma de segunda ordem.
4.6.2

Verdade e demonstrabilidade

A distino entre axiomas de primeira e segunda ordem foi estabelecida pelo lgico
polons Alfred Tarski (1902-1983) para distinguir a linguagem-objeto de um estudo, ou seja, a
71

linguagem utilizada para falar de um domnio qualquer de objetos, da correspondente


metalinguagem, ou seja, a linguagem utilizada para falar da linguagem-objeto. Da mesma
maneira, existe uma metametalinguagem, que permite falar da metalinguagem, e assim por
diante. Todos esses nveis de linguagem superpem-se como camadas sucessivas e, para certos
estudos lgicos, torna-se essencial separar cuidadosamente cada camada. A faanha de Gdel
residir na inveno de um meio para superar a barreira entre os diferentes nveis de linguagem.
Gdel desejava demonstrar a no-contradio relativa da anlise matemtica em
relao aritmtica de Peano. Essa proposta j o conduz ao mago do problema verdadedemonstrabilidade: uma proposio verdadeira sempre demonstrvel? No rascunho de uma
carta do final dos anos 60, ele descrever da seguinte maneira seu projeto poca:
Minha tentativa de demonstrao, pela teoria dos modelos, da coerncia relativa da
anlise e da aritmtica forneceu tambm a ocasio para comparar verdade e
demonstrabilidade, pois essa demonstrao conduz quase obrigatoriamente a tal comparao.
Um modelo aritmtico para a anlise no nada mais, com efeito, do que uma relao

que

satisfaz ao seguinte axioma de compreenso:


N x ( x N (x) )
[Existe um conjunto N tal que, para todo nmero x, se x um elemento de N, ento
a propriedade (x) verdadeira, e vice-versa.] Quando se substitui (x)' por (x)
demonstrvel', tal relao

toma-se fcil de definir. Dessa forma, se os termos verdade e

demonstrabilidade fossem equivalentes, teramos alcanado nosso objetivo. Segue da correta


soluo para os paradoxos semnticos, porm, que a verdade das proposies de uma
linguagem no poder jamais expressar-se dentro dessa mesma linguagem, contrariamente
demonstrabilidade (que uma relao aritmtica). Como conseqncia, verdadeiro
demonstrvel.
Nos anos 30, o problema colocado pela formulao, em uma linguagem dada, de
uma definio da noo de verdade para essa mesma linguagem , certamente, uma das
questes mais discutidas nas reunies do Crculo de Viena *: possvel definir precisamente o
significado da expresso uma proposio verdadeira na linguagem L? Em fevereiro de
1930, Menger convida Tarski para uma srie de conferncias, no curso das quais o
matemtico polons sublinha que diversos conceitos utilizados em lgica vm expressos, no
na linguagem-objeto, mas na metalinguagem, e que importante, portanto, distinguir entre
esses dois tipos de linguagem. Nessa ocasio, Gdel solicita a Menger uma conversa particular
com Tarski.
Se aceita a argumentao de Tarski acerca do conceito de verdade, Gdel mostra-se
mais reticente em relao a esse mesmo tipo de argumentao aplicado no-contradio e
demonstrabilidade. Tanto assim que abandona a idia de construir um modelo aritmtico para
a anlise (provavelmente devido s reservas manifestadas na poca relativamente utilizao
do conceito de verdade em demonstraes) e decide provar que a demonstrabilidade e a no*

Grupo de pensadores que se reuniam em Viena (1926-1930) de onde surgiu o influente movimento conhecido como
positivismo lgico. Organizado por Moritz Schlick (Fsico), participavam, entre outros, os filsofos Rudolf Carnap e Karl
Popper, o socilogo e economista Otto Neurath, a matemtica Olga Neurath e seu marido, o matemtico Hans Hahn,
Karl Menger e Kurt Gdel. Entre os estrangeiros que assistiam a algumas reunies pode-se citar John von Neumann,
Willard van Orman Quine, Carl Hemper, Alfred Tarsky e Alfred Jules Ayer.

72

contradio podem, ainda que indiretamente, ser expressas na linguagem-objeto da teoria,


sem que isso acarrete antinomias fatais.
Para o desenvolvimento de seus estudos Gdel concebeu uma interessante
formulao de smbolos, frmulas e provas atravs de nmeros, bem como mostrou que as
proposies metamatemticas alis, sem isso no poderia ter realizado sua prova podem
estar adequadamente refletidas dentro do prprio clculo, aritmetizando assim a prpria
metamatemtica. No anexo O Teorema da Incompletude de Gdel h um pequeno resumo sobre a
prova de Gdel.
Gdel acabou com o sonho logicista, visto que no se pode desenvolver toda a
aritmtica (e muito menos toda a matemtica) num sistema que seja ao mesmo tempo
consistente e completo. Tambm acabou com o sonho formalista: existem enunciados
matemticos que so verdadeiros, mas no so suscetveis de prova, isto , existe um abismo
entre verdade e demonstrao *.

Figura 17: Kurt Gdel

4.6.3

Outras conquistas

Gdel tambm, ao longo da demonstrao do seu teorema, rompeu um limiar


crucial entre a lgica e a matemtica. Ele mostrou que qualquer sistema formal que seja to
rico quanto um sistema numrico qualquer, e que contenha os operadores + e =, pode
*

As concluses de Gdel no significam que seja impossvel construir uma prova absoluta e finitista da aritmtica. Significam
que nenhuma prova deste tipo pode ser construda dentro da aritmtica., isto , que esteja refletida a partir de dedues
formais da aritmtica. Outras provas metamatemticas da consistncia da aritmtica foram construdas, em particular por
Gerhard Gentzen, da escola de Hilbert, em 1936, embora no finitistas e no representveis dentro do clculo aritmtico,
ou seja, esto fora das condies previstas por Hilbert.

73

ser expresso em termos aritmticos [Coh87]. Isto significa que por mais complexa que se
torne a matemtica (ou qualquer outro sistema formal redutvel a ela), pode-se sempre
express-la em termos de operaes a serem executadas sobre nmeros, e as partes do
sistema podero ser manipuladas por regras de contagem e comparao.
Outro resultado fundamental do teorema da incompletude de Gdel pode-se
considerar como sendo a demonstrao de que h algumas funes sobre os inteiros que no
podem ser representadas por um algoritmo, ou seja, que no podem ser computadas *.
Posteriormente verificou-se a existncia de uma equivalncia entre o Teorema da
Incompletude de Gdel e o problema da parada de Turing.

4.7 Alan Mathison Turing: o bero da Computao

Figura 18: Alan Mathison Turing

A revoluo do computador comeou efetivamente a realizar-se no ano de 1935, em


uma tarde de vero na Inglaterra, quando Alan Mathison Turing (1912 - 1954), estudante do
Kings College, Cambridge, durante curso ministrado pelo matemtico Max Neumann,
tomou conhecimento do Entscheidungsproblem de Hilbert. Enquanto isso, conforme foi
brevemente citado no item precedente, uma parte da comunidade dos matemticos buscava
um novo tipo de clculo lgico, que pudesse, entre outras coisas, colocar em uma base

Os resultados de Gdel tm conseqncias importantes tambm para a filosofia. Sabe-se, graas a ele, ser impossvel
construir uma mquina que, de modo consistente, resolva todos os problemas da matemtica, com os recursos de um
sistema (certos problemas, por assim dizer, no se deixam resolver com os recursos do sistema apenas). Mas de fato o
matemtico os resolve muitas vezes.

74

matemtica segura o conceito heurstico do que seja proceder a um cmputo. O resultado destas
pesquisas era fundamental para o desenvolvimento da matemtica: tratava-se de saber se
possvel haver um procedimento efetivo para se solucionar todos os problemas de uma
determinada classe que estivesse bem definida. O conjunto desses esforos acabou por
formar a fundamentao terica da que veio a ser chamada Cincia da Computao.
Os resultados de Gdel e o problema da deciso motivaram Turing primeiramente a
tentar caracterizar exatamente quais funes so capazes de ser computadas. Em 1936, Turing
consagrou-se como um dos maiores matemticos do seu tempo, quando fez antever aos seus
colegas que possvel executar operaes computacionais sobre a teoria dos nmeros por
meio de uma mquina que tenha embutida as regras de um sistema formal. Turing definiu
uma mquina terica que se tornou um conceito chave dentro da Teoria da Computao. Ele
enfatizou desde o incio que tais mecanismos podiam ser construdos e sua descoberta acabou
abrindo uma nova perspectiva para o esforo de formalizar a matemtica, e, ao mesmo
tempo, marcou fortemente a Histria da Computao.
A percepo genial de Turing foi a substituio da noo intuitiva de procedimento
efetivo por uma idia formal, matemtica. O resultado foi a construo de uma conceituao
matemtica da noo de algoritmo *, uma noo que ele modelou baseando-se nos passos que
um ser humano d quando executa um determinado clculo ou cmputo. Ele formalizou
definitivamente o conceito de algoritmo.
4.7.1

A Mquina de Turing

Um dos primeiros modelos de mquina abstrata foi a Mquina de Turing.


Conforme o prprio Turing escreveu: Computar normalmente escrever smbolos em um
papel. Suponha que o papel quadriculado, podendo ser ignorada a bidimensionalidade, que
no essencial. Suponha que o nmero de smbolos finito. [...]. O comportamento do(a)
computador(a) determinado pelos smbolos que ele(a) observa num dado momento, e seu
estado mental nesse momento. Suponha que exista um nmero mximo de smbolos ou
quadrculas que ele(a) possa observar a cada momento. Para observar mais sero necessrias
operaes sucessivas. Admitamos um nmero finito de estados mentais [...]. Vamos imaginar
que as aes feitas pelo(a) computador(a) sero divididas em operaes to elementares que
so indivisveis. Cada ao consiste na mudana do sistema computador(a) e papel. O estado
do sistema dado pelos smbolos no papel, os smbolos observados pelo(a) computador(a) e
seu estado mental. A cada operao, no mais de um smbolo alterado, e apenas os
observados so alterados. Alm de mudar smbolos, as operaes devem mudar o foco da
observao, e razovel que esta mudana deva ser feita para smbolos localizados a uma
distncia fixa dos anteriores. [...] Algumas destas operaes implicam mudanas de estado
mental do computador(a) e portanto determinam qual ser a prxima ao.

Palavras como procedimento efetivo e algoritmo representam conceitos bsicos dentro da Cincia da Computao. So
noes que na poca de Turing j eram utilizadas pelos matemticos, como por exemplo Frege e Hilbert (ver captulos que
tratam dessas duas importantes figuras).

75

O trabalho de Turing ficou documentado no artigo On Computable Numbers with an


aplication to the Entscheidungsproblem, publicado em 1936 * ([Tur50], volume XII). Ele
descreveu em termos matematicamente precisos como pode ser poderoso um sistema formal
automtico, com regras muito simples de operao.
Turing definiu que os clculos mentais consistem em operaes para transformar
nmeros em uma srie de estados intermedirios que progridem de um para outro de acordo
com um conjunto fixo de regras, at que uma resposta seja encontrada. Algumas vezes se usa
o papel e lpis, para no se perder o estado dos nossos clculos. As regras da matemtica
exigem definies mais rgidas que aquelas descritas nas discusses metafsicas sobre os
estados da mente humana, e ele concentrou-se na definio desses estados de tal maneira que
fossem claros e sem ambigidades, para que tais definies pudessem ser usadas para
comandar as operaes da mquina . Turing comeou com uma descrio precisa de um
sistema formal, na forma de tabela de instrues que especificaria os movimentos a serem
feitos para qualquer configurao possvel dos estados no sistema. Provou ento que os
passos de um sistema axiomtico formal semelhante lgica e os estados da mquina que
perfaz os movimentos em um sistema formal automtico so equivalentes entre si. Estes
conceitos esto todos subjacentes na tecnologia atual dos computadores digitais, cuja
construo tornou-se possvel uma dcada depois da publicao do matemtico ingls.
Um sistema formal automtico um dispositivo fsico que manipula
automaticamente os smbolos de um sistema formal de acordo com as suas regras. A mquina
terica de Turing estabelece tanto um exemplo da sua teoria da computao quanto uma
prova de que certos tipos de mquinas computacionais poderiam ser construdas.
Efetivamente, uma Mquina de Turing Universal , exceto pela velocidade, que depende do
hardware, pode emular qualquer computador atual, desde os supercomputadores at os
computadores pessoais, com suas complexas estruturas e poderosas capacidades
computacionais, desde que no importasse o tempo gasto. Ele provou que para qualquer
sistema formal existe uma Mquina de Turing que pode ser programada para imit-lo. Ou em
outras palavras: para qualquer procedimento computacional bem definido, uma Mquina de
Turing Universal capaz de simular um processo mecnico que execute tais procedimentos.
De um ponto de vista terico, a importncia da Mquina de Turing est no fato de
que ela representa um objeto matemtico formal. Atravs dela, pela primeira vez, se deu uma
boa definio do que significa computar algo. E isso levanta a questo sobre o que
exatamente pode ser computado com tal dispositivo matemtico, assunto fora do escopo do
presente trabalho e que entra no campo da complexidade computacional.
4.7.2

O problema da parada e o problema da deciso

Um ano mais tarde, trabalhando independentemente, Alan Post publicou seu trabalho sobre uma mquina semelhante de
Turing.

H um anexo onde se detalha um pouco mais sobre o funcionamento de uma Mquina de Turing.

Uma Mquina de Turing Universal uma Mquina de Turing especfica que l na sua fita de alimentao, alm de dados de
entrada, um programa que uma especificao de uma Mquina de Turing qualquer.

76

Turing mostrou que o funcionamento de sua mquina (usar-se- a sigla MT a partir


de agora) e a aplicao das regras de formao de um sistema formal no tm diferena. Ele
demonstrou tambm que seu dispositivo poderia resolver infinitos problemas mas havia
alguns que no seriam possveis, porque no haveria jeito de se prever se o dispositivo pararia
ou no. Colocando-se de outra maneira: dado um programa P para uma MT e uma
determinada entrada de dados E, existe algum programa que leia P e E, e pare aps um
nmero finito de passos, gerando uma configurao final na fita que informe se o programa P
encerra sua execuo aps um nmero finito de passos ao processar E?
Comparando-se com as afirmaes sobre verdades aritmticas, dentro de um
sistema formal consistente da aritmtica, que no so passveis de prova dentro deste sistema,
percebe-se que o problema da parada de Turing nada mais do que o Teorema de Gdel, mas
expresso em termos de uma mquina computacional e programas, ao invs de uma linguagem
de um sistema dedutivo da Lgica Matemtica.
Em 1936 Turing provou formalmente o seguinte teorema:
Teorema da Parada: Dado um programa P qualquer para uma Mquina de Turing
e uma entrada E qualquer de dados para esse programa, no existe uma Mquina de Turing
especfica que pare aps um nmero finito de passos, e que diga se P em algum momento
encerra sua execuo ao processar E.
A soluo negativa desse problema computacional implica tambm numa soluo
negativa para o problema de Hilbert. Portanto nem todos os enunciados verdadeiros da
aritmtica podem ser provados por um computador *.
4.7.3
4.7.3.1

Outras participaes
Decifrando cdigos de guerra

Em 1940 o governo ingls comeou a interessar-se de maneira especial pelas idias


de Turing. Ele foi convocado pela Escola de Cifras e Cdigos, do governo, cuja tarefa era
decifrar mensagens codificadas do inimigo. Quando a guerra comeou, a Escola Britnica de
Cdigos era dominada por lingistas e fillogos. O Ministrio do Exterior logo percebeu que
os tericos dos nmeros tinham melhores condies de decifrar os cdigos alemes. Para
comear, nove dos mais brilhantes tericos dos nmeros da Inglaterra se reuniram na nova
sede da Escola de Cdigos em Bletchley Park, uma manso vitoriana em Bletchley,
Buckinghamshire. Turing teve que abandonar suas mquinas hipotticas com fitas telegrficas
infinitas e tempo de processamento interminvel, para enfrentar problemas prticos, com
recursos finitos e um limite de tempo muito real.
Devido ao segredo que cercava o trabalho realizado por Turing e sua equipe, em
Bletchley, a imensa contribuio que prestaram ao esforo de guerra no pde ser
*

Os computadores possuem conjuntos de instrues que correspondem a regras fixas de um sistema formal. Como provou
Gdel, existem problemas no solucionveis dentro de um mtodo axiomtico e, portanto, h problemas que um
computador no resolve. Esta afirmao no deve ser vista como algo pessimista dentro da Cincia da Computao: que
um computador no possa resolver todos os problemas no significa que no se possa construir uma mquina ou
algoritmo especfico para solucionar determinado tipo de problema [NN56].

77

reconhecida publicamente por muitos anos aps o conflito. Costuma-se dizer que a Primeira
Guerra Mundial foi a guerra dos qumicos e a Segunda Guerra Mundial, a guerra dos fsicos.
De fato, a partir da informao revelada nas ltimas dcadas, provavelmente verdade dizer
que a Segunda Guerra Mundial tambm foi a guerra dos matemticos. E no caso de uma
terceira guerra mundial sua contribuio seria ainda mais crtica.
Em toda sua carreira como decifrador de cdigos, Turing nunca perdeu de vista
seus objetivos matemticos. As mquinas hipotticas tinham sido substitudas por mquinas
reais, mas as questes esotricas permaneciam. Quando a guerra terminou, Turing tinha
ajudado a construir um computador, o Colossus, uma mquina inteiramente eletrnica com
1.500 vlvulas que eram muito mais rpidas do que os rels eletromecnicos usados nas
bombas *. Colossus era um computador no sentido moderno da palavra. Com sua sofisticao
e velocidade extra, ele levou Turing a consider-lo um crebro primitivo. Ele tinha memria,
podia processar informao, e os estados dentro do computador se assemelhavam aos estados
da mente. Turing tinha transformado sua mquina imaginria no primeiro computador
legtimo. Depois da guerra, Turing continuou a construir mquinas cada vez mais complexas
tais como o Automatic Computing Engine.
Para maiores detalhes sobre os episdios que envolveram Turing e a Mquina
Enigma, e de como foi decifrado o cdigo de guerra alemo, ver o anexo Turing e a Mquina
Enigma.
4.7.3.2

O computador ACE e inteligncia artificial

Enviado Amrica para trocar informaes com o servio de inteligncia americano


e conhecer os projetos relacionados a computadores, ele tomou conhecimento das
emergentes tecnologias eletrnicas e chegou a participar de outro projeto secreto, o Delilah,
um codificador de voz (conhecido nos filmes de espionagem como scramblers), tendo entrado
em contato com von Neumann (que quis traz-lo para junto de si em seus projetos) e com os
engenheiros da Bell (incluindo Claude Shannon). De volta para a Inglaterra, entrou para o
National Physical Laboratory, onde trabalhou no desenvolvimento do Automatic Computing
Engine (ACE), uma das primeiras tentativas de construo de um computador digital. No fim
da guerra, j se detinha o conhecimento sobre novas tecnologias eletrnicas, que poderiam ser
usadas para aumentar a velocidade dos ento circuitos lgicos existentes. A real possibilidade
de se construir modelos de Mquinas de Turing Universais fez com que o governo ingls
investisse na construo desse novo dispositivo, mas os americanos foram mais agressivos em
seus investimentos e acabaram ganhando a corrida na construo de computadores. Turing,
vtima de intrigas polticas, ficou fora do centro e controle dos novos trabalhos. Seus
relatrios tcnicos sobre os projetos de hardware e software do ACE eram ambiciosos e se a

* A bomba (Bombe em ingls) era uma mquina eletromecnica, com vrios conjuntos de rotores, idnticos aos da mquina

geradora de cdigos secretos alem chamada Enigma(ver o anexo Turing e a Mquina Enigma). Ao contrrio da Enigma, os
rotores da Bombe rodavam automaticamente para percorrer todas as configuraes possveis. Quando encontrasse uma
configurao que tornasse compatvel o palavra adivinhada e o texto cifrado, a mquina parava e o cripto-analista iria testar
aquela configurao com o resto do texto cifrado numa Enigma; se o resultado no fosse correcto, re-inicializava a bombe para
continuar a procura.

78

mquina originalmente imaginada por ele tivesse sido construda imediatamente, os ingleses
no teriam amargado o atraso em relao aos seus colegas do outro lado do Atlntico.
Foi tambm durante a temporada do ACE que Turing comeou a explorar as
relaes entre o computador e os processos mentais, publicando um artigo, Computing
Machinery and Intelligence (1950), sobre a possibilidade da construo de mquinas que
imitassem o funcionamento do crebro humano. Pode uma mquina pensar, perguntava-se
em seu artigo, e alm de focar no assunto inteligncia das mquinas, Turing adquiriu especial
notoriedade ao tentar introduzir, atravs desse artigo, um teste para decidir se realmente pode
ou no uma mquina pensar imitando o homem. Em novembro de 1991, o Museu do
Computador de Boston realizou uma competio entre 8 programas que simulavam o Turing
test, ganho por um programa chamado PC Therapist III. O problema do teste de Turing de
natureza behaviorista, isto , somente observa o comportamento exterior, o que lhe d uma
carter um tanto reducionista. Srias controvrsias ocorreram e ainda ocorrem sobre esse
tema, que esta fora do escopo deste livro *.
4.7.3.3

Programao de computadores

Turing tambm esteve interessado na programao das operaes de um


computador o que ento comeou a chamar-se de codificao em funo das operaes
matemticas a envolvidas e comeou a escrever linguagens de programao, avanadas ento
para o hardware da poca. Turing estava convencido de que operaes de clculo eram
somente um dos tipos de sistemas formais que poderiam ser imitados pelos computadores.
Em particular, ele percebeu como as tabelas de sua mquina terica poderiam tornar-se
elementos de uma poderosa gramtica que as mquinas utilizariam para modificar suas
prprias operaes Turing inovou ao comear a elaborar tabelas de instrues, que
automaticamente converteriam a escrita decimal a que estamos acostumados em dgitos binrios.
Estes poderiam ser lidos pelas mquinas que comeavam a ser construdas tendo como base a
lgebra booleana.
Turing anteviu assim que no futuro, os programadores poderiam trabalhar com as
linguagens hoje conhecidas como de alto nvel. Dizia: As tabelas de instrues devero ser
feitas por matemticos com experincia em computadores e certa habilidade em resolver
problemas de soluo mais difcil. Haver bastante trabalho deste tipo a ser feito, se todo os
processos conhecidos tiverem de ser convertidos na forma de tabelas de instrues em
determinado momento. Esta tarefa seguir paralelamente construo da mquina, para
evitar demoras entre o trmino desta e a produo de resultados. Podero ocorrer atrasos,
devido a virtuais obstculos desconhecidos, at o ponto em que ser seja melhor deixar os
obstculos l do que gastar tempo em projetar algo sem problemas (quantas dcadas estas
coisas levaro?). Este processo de elaborao de tabelas de instrues ser fascinante.
[Rhe85]
Ele percebeu ainda que a capacidade de um computador no estaria somente
limitada s questes de hardware, mas tambm de software. Exceto talvez por Konrad Zuse e

Para uma melhor percepo, existe uma interessante literatura: R.Rucher, Mind Tools; D. Holfstadter, Gdel, Escher, Bach:
an eternal golden braid; R. Penrose, The emperor's new mind; J. Lucas, Minds, Machines and Gdel

79

von Neumann, foi o nico a falar sobre os desafios matemticos e lgicos da arte de
programar computadores e seria von Neumann quem completaria em um estilo elegante sua
idia de uma linguagem de programao mais sofisticada.
4.7.4

O triste fim

O trabalho de Turing na Computao e na Matemtica foi tragicamente encerrado


por seu suicdio em junho de 1954, com a idade de 42 anos. Turing era homossexual e, depois
da fuga de dois espies britnicos de igual tendncia para a ento Unio Sovitica, nos incios
da dcada de 1950, houve uma especial presso sobre ele para corrigir sua condio atravs
do uso de hormnios. Turing, no agentando a forte presso, tomou cianeto.

4.8 A tese de Church-Turing e outros resultados tericos


At aqui foi mostrado como, do ponto de vista formal, surgiu a idia de
computao. Dentro dessa dimenso formal se procurar mostrar agora que o cume atingido,
e ainda no ultrapassado, foi a Mquina de Turing. um genial modelo abstrato de
equipamento, com capacidade de processar complicadas linguagens e calcular o valor de
funes aritmticas no-triviais. Pode ainda ser aperfeioado para realizar operaes mais
complexas, embora em relao ao modelo bsico isto no implique um salto qualitativo, isto
, que o torne algo mais poderoso.
Em termos computacionais pode-se dizer que as Mquinas de Turing so um
modelo exato e formal da noo intuitiva de algoritmo: nada pode ser considerado um
algoritmo se no puder ser manipulado por uma Mquina de Turing. O princpio de que as
Mquinas de Turing so verses formais de algoritmos e de que procedimento computacional
algum seja considerado um algoritmo a no ser que possa ser instanciado por uma Mquina
de Turing conhecido como a Tese de Church, em homenagem ao brilhante matemtico
americano Alonzo Church (1903 - 1995), ou ainda Tese de Church-Turing. uma proposio,
no um teorema, porque no um resultado matemtico: simplesmente diz que um conceito
informal corresponde a um objeto matemtico *.
Fazendo uma pequena retrospectiva. Aps os resultados de Gdel, em 1931, muitos
lgicos matemticos partiram em busca do que seria uma noo formalizada de um
procedimento efetivo (por efetivo entenda-se mecnico), ou seja, o que pode ser feito seguindose diretamente um algoritmo ou conjunto de regras (como j visto, antigo sonho de sculos,
que remonta a Leibniz). Destas buscas surgiram:

a sistematizao e desenvolvimento das funes recursivas (introduzidas nos trabalhos de


Gdel e Herbrand) por Stephen Cole Kleene (1909-1994) em sua teoria lgica da
*

Teoricamente possvel que a tese de Church seja derrubada em algum futuro, caso surja um modelo alternativo de
computao que seja publicamente aceitvel como algo que preenche totalmente as exigncias de executar finitamente cada
passo e fazer operaes no executadas por qualquer Mquina de Turing. At a data da confeco deste trabalho no surgiu
ainda algo de consistente que viesse a superar a tese de Church (o "computador quntico" sobre o qual no h ainda uma
literatura sria disponvel, para se poder falar algo dele nesse trabalho algo que poderia ocasionar um abalo nesse
sentido)

80

computabilidade (parte de seu livro Introduo Metamatemtica, um dos cumes da lgica


matemtica dos ltimos anos);

as Mquinas de Turing;
o clculo-lambda (componente caracterstico fundamental da linguagem de programao
LISP) de Alonzo Church;
a Mquina de Post, anloga de Turing, tornada pblica um pouco depois, fruto de
trabalho independente, e seu sistema para rescrita de smbolos (cuja gramtica de Chomsky
um caso particular), de Emil L. Post (1897 - 1954).
Com efeito, todos esses conceitos levaram mesma concluso e acabaram por ter o
mesmo significado, dentro do citado escopo da busca de uma definio bem elaborada de
processo efetivo. O que se desenvolver aqui refere-se mais a Church e Turing (Kleene fez em
seu trabalho uma ampla abordagem de ambos, tirando vrias conseqncias, e Post trata do
mesmo tema de Turing), para se ter uma viso mais clara da diversificao dos estudos da
dcada de 1930, com vistas fundamentao terica de toda a Computao.
Em seu clebre teorema, Church demonstrou, em 1936, que no pode existir um
procedimento geral de deciso para todas as expresses do Clculo de Predicados de 1a
ordem, ainda que exista tal procedimento para classes especiais de expresses de tal clculo.
Isso pode causar certo espanto quando se observa que o Clculo de Predicados de 1a ordem
semanticamente completo, com o que se diz, implicitamente, que o prprio clculo, com seus
axiomas e regras, constitui um algoritmo capaz de enumerar uma aps outra todas as suas
expresses vlidas. Estas expresses so em quantidade indefinida, e, mesmo sendo
enumerveis (isto , elaborveis passo a passo a partir dos axiomas), essa enumerao no tem
fim. Compreende-se ento que, ao se conseguir demonstrar uma determinada frmula P em
certo momento, isto j basta para afirmar que se trata de uma frmula vlida. E, pelo
contrrio, se depois de haver deduzido mil teoremas dos axiomas, P ainda no apareceu, no
se pode afirmar nada, porque P poderia aparecer aps outros mil teoremas, permitindo-se
reconhecer sua validade, ou no aparecer nunca, por no ser vlida. Mas no se poder
afirmar em qual caso se est, mesmo depois das mil dedues.[Aga86].
A deciso, dentro desse clculo, seria possvel possuindo-se um algoritmo capaz de
enumerar as expresses no vlidas. A expresso P ento aparecia dentro desse conjunto de
no vlidas em algum momento. O teorema de Church de que se est tratando consiste
fundamentalmente na demonstrao de que no existe algoritmo capaz de enumerar as
expresses no vlidas, de maneira que fica excludo a priori todo procedimento de deciso
para as expresses do Clculo de Predicados, em geral. Para compreender as razes de
semelhante fato seria necessrio valer-se das noes tcnicas relacionados com os conceitos
da matemtica recursiva, que excedem amplamente os limites deste trabalho.

81

Figura 19: Alonzo Church

Tambm Church estava interessado no problema de Hilbert. O resultado a que


Turing tinha chegado em 1936, sobre o problema da deciso de Hilbert, havia sido tambm
alcanado por Church, alguns poucos meses antes, empregando o conceito formalizado de
lambda-definibilidade (ao invs do computvel por uma Mquina de Turing, definido por
Turing), no lugar do conceito informal procedimento efetivo ou mecnico. Kleene, em 1936,
mostrou que lambda-definibilidade equivalente ao conceito de recursividade de GdelHerbrand, e, nesse perodo, Church formulou sua tese, estabelecendo que a recursividade a
prpria formalizao do efetivamente computvel. Isso foi estabelecido, no caso das funes
dos inteiros positivos, por Church e Kleene, em 1936.
O clculo-lambda, como sistema elaborado por Church para ajudar a fundamentar a
Matemtica (1932/33) era inconsistente, como o mostraram Kleene e Rosser (1935). Mas a
parte do clculo-lambda que tratava de funes recursivas estava correta e teve sucesso.
Usando sua teoria, Church props uma formalizao da noo de efetivamente
computvel, atravs do conceito de lambda-definibilidade. Turing, em 1936 e 1937, ao
apresentar a sua noo de computabilidade associada a uma mquina abstrata, mostrou que a
noo Turing-computvel equivalente lambda-definibilidade [Hur80]. O trabalho de
Church e Turing liga fundamentalmente os computadores com as MT. Os limites das MT, de
acordo com a tese de Church-Turing, tambm descreve os limites de todos os computadores.
O processo que determina o valor de uma funo atravs dos argumentos dessa
funo chamado de clculo da funo (ou computar uma funo). Como foi observado, a
mquina de Turing pode ser matematicamente interpretada como um algoritmo e,
efetivamente, toda ao de uma mquina algortmica como o computador pode ser
considerada como a de calcular o valor de uma funo com determinados argumentos. Este
insight interessante, pois fornece uma maneira de se medir a capacidade computacional de
uma mquina. Necessita-se somente identificar as funes que se capaz de computar e usar

82

esse conjunto como medida. Uma mquina que compute mais funes que outra mais
poderosa.
A partir dos resultados de Gdel, Turing e Church, pode-se dizer que existem
funes para as quais no existe uma seqncia de passos que determinem o seu valor, com
base nos seus argumentos. Dizendo-se de outra maneira, no existem algoritmos para a
soluo de determinadas funes. So as chamadas funes no computveis. Isso significa que
para tais funes no h nem haver capacidade computacional suficiente para resolv-las.
Logo, descobrir as fronteiras entre funes computveis e no computveis equivalente a
descobrir os limites do computador em geral. A tese de Church-Turing representa um
importante passo nesse sentido.
A percepo de Turing foi a de que as funes computveis por uma MT eram as
mesmas funes computveis acima referidas. Em outras palavras, ele conjeturou que o
poder computacional das MT abarcava qualquer processo algortmico, ou, analogamente, o
conceito da MT propicia um contexto no qual todas as funes computveis podem ser
descritas. Em sntese: as funes computveis so as mesmas funes Turing-computveis. A
importncia disso est na possibilidade de se verificar o alcance e limites de um computador.
Na figura que segue pode-se visualizar como se d a ligao entre os mundos formal,
matemtico e computacional.

83

Mundo Matemtico
Semntica
Aritmtica
Geometria
Anlise

Verdades Matemticas

Mundo Formal
Sintaxe
Alfabeto
Smbolos/Expresses
Axiomas
Regras de Inferncia

Teoremas

Mquina de Turing
Algoritmo
Argumentos:
Smbolos na fita
Padro da fita
Dados de Entrada
Instrues do programa
Funo
Sada: expresso simblica
Figura 20: Relacionamento entre mundos formal, matemtico e
computacional (cfr. [Cas97])

84

5 Pr-Histria tecnolgica
Como j foi dito, s foi possvel chegar aos computadores pelas descobertas tericas
de homens que, ao longo dos sculos, acreditaram na possibilidade de criar ferramentas para
aumentar a capacidade intelectual humana, e dispositivos para substituir os aspectos mais
mecnicos do modo de pensar do homem. E desde sempre essa preocupao se manifestou
na construo de mecanismos para ajudar tanto nos processos de clculo aritmtico quanto
nas tarefas repetitivas ou demasiado simples, que pudessem ser substitudas por animais ou
mquinas. Neste captulo se tratar dos dispositivos fsicos que precederam o computador,
principalmente as mquinas analgicas que incentivaram a corrida final at o aparecimento
dos computadores digitais.

5.1 Dispositivos mais antigos


Os primeiros dispositivos que surgiram para ajudar o homem a calcular tm sua
origem perdida nos tempos. o caso, por exemplo, do baco e do quadrante. O primeiro,
capaz de resolver problemas de adio, subtrao, multiplicao e diviso de at 12 inteiros, e
que provavelmente j existia na Babilnia por volta do ano 3.000 a.C. Foi muito utilizado
pelas civilizaes egpcia, grega, chinesa e romana, tendo sido encontrado no Japo, ao
trmino da segunda guerra mundial.
O quadrante era um instrumento para clculo astronmico, tendo existido por
centenas de anos antes de se tornar objeto de vrios aperfeioamentos. Os antigos babilnios
e gregos como, por exemplo, Ptolomeu, usaram vrios tipos de dispositivos desse tipo para
medir os ngulos entre as estrelas, tendo sido desenvolvidos principalmente a partir do sculo
XVI na Europa. Outro exemplo o compasso de setor, para clculos trigonomtricos,
utilizado para se determinar a altura para o posicionamento da boca de um canho, e que foi
desenvolvido a partir do sculo XV.
Os antigos gregos chegaram at a desenvolver uma espcie de computador. Em
1901, um velho barco grego foi descoberto na ilha de Antikythera. No seu interior havia um
dispositivo (agora chamado de mecanismo Antikythera) constitudo por engrenagens de metal e
ponteiros. Conforme Derek J. de Solla Price, que em 1955 reconstruiu junto com seus colegas
essa mquina, o dispositivo Antikythera como um grande relgio astronmico sem a pea
que regula o movimento, o qual usa aparatos mecnicos para evitar clculos tediosos (An
Ancient Greek Computer, pg. 66 *). A descoberta desse dispositivo, datado do primeiro sculo
a.C., foi uma total surpresa, provando que algum arteso do mundo grego do mediterrneo
oeste estava pensando em termos de mecanizao e matematizao do tempo (...) [Bol84].

5.2 Logaritmos e os primeiros dispositivos mecnicos de clculo

Trabalho citado por Bolter, que descreve o dispositivo Antikythera, na Scientific American, junho de 1959, pgs. 60-67.

85

John Napier, Baro de Merchiston, bastante conhecido pela descoberta dos


logaritmos, mas tambm gastou grande parte de sua vida inventando instrumentos para ajudar
no clculo aritmtico, principalmente para o uso de sua primeira tabela de logaritmo.
A partir dos logaritmos de Napier surgiu uma outra grande inveno, desenvolvida
pelo brilhante matemtico Willian Oughtred e tornada pblica em 1630: a rgua de clculo.
Ganhou sua forma atual por volta do ano de 1650 (de uma rgua que se move entre dois
outros blocos fixos), tendo sido esquecida por duzentos anos, para se tornar no sculo XX o
grande smbolo de avano tecnolgico, com uso extremamente difundido, at ser
definitivamente substituda pelas calculadoras eletrnicas.
Com o desenvolvimento dos primeiros dispositivos mecnicos para clculo
automtico, comea efetivamente a vertente tecnolgica que levar construo dos
primeiros computadores. A preparao do caminho para a completa automatizao dos
processos de clculo foi executada pelos esforos desses primeiros pioneiros da Computao,
que vislumbraram a possibilidade da mecanizao mas no possuam os instrumentos e
materiais adequados para concretizar seus projetos. Entre esses grandes nomes no se pode
deixar de citar Wilhelm Schickard (1592-1635) e os j citados Pascal e Leibniz. Existem obras
sobre essas invenes e somente sero citados os elemento bsicos que as compunham *, pois
muitas dessas idias estaro presentes de alguma forma nos futuros computadores.
Quase todas as mquinas para execuo de clculos mecnicos desses trs sculos a
partir do XVI tinham 6 elementos bsicos em sua configurao [Wil97]:
um mecanismo atravs do qual um nmero introduzido na mquina. Nos
primeiros projetos isso era parte de um outro mecanismo, chamado seletor,
tornando-se algo independente nas mquinas mais avanadas;

um mecanismo que seleciona e providencia o movimento necessrio para


executar a adio ou subtrao das quantidades apropriadas nos mecanismos de
registro;
um mecanismo (normalmente uma srie de discos) que pode ser posicionado
para indicar o valor de um nmero armazenado dentro da mquina (tambm
chamado de registrador);
um mecanismo para propagar o vai um por todos os dgitos do registrador, se
necessrio, quando um dos dgitos em um registrador de resultado avana do 9
para o 0;
um mecanismo com a funo de controle, para verificar o posicionamento de
todas as engrenagens ao fim de cada ciclo de adio;
um mecanismo de limpeza para preparar o registrador para armazenar o valor
zero.

5.3 Charles Babbage e suas mquinas


A idia de Leibniz de, atravs de mquinas, liberar o homem das tarefas repetitivas e
de simples execuo foi quase posta em prtica pelo matemtico e astrnomo ingls Charles
*

Havia tambm o problema, de modo algum simples, da inveno de mecanismos que produzissem os movimentos exigidos
pelas engrenagens durante os clculos

86

Babbage (1792-1871), considerado unanimemente um dos grandes pioneiros da era dos


computadores. No ano de 1822 ele apresentou em Londres o projeto de um mecanismo feito
de madeira e lato, que poderia ter alterado o rumo da histria se tivesse sido construdo
efetivamente. Babbage concebeu a idia de um dispositivo mecnico capaz de executar uma
srie de clculos.

Figura 21: Desenho de Charles Babbage

J por volta da dcada de 1820 ele tinha certeza de que a informao poderia ser
manipulada por mquina, caso fosse possvel antes converter a informao em nmeros. Tal
engenho seria movido a vapor, usaria cavilhas, engrenagens, cilindros e outros componentes
mecnicos que eram as ferramentas tecnolgicas disponveis em sua poca. Para descrever os
componentes de sua mquina faltavam-lhe os termos que atualmente so usados. Chamava o
processador central de usina e referia-se memria da mquina como armazm. Babbage
imaginava a informao sendo transformada da mesma forma que o algodo sendo tirada
do armazm e modificada para algo diferente. Em 1822 Babbage escrevia uma carta a Sir
Humphry Davy, o ento presidente da Royal Society, sobre automatizar, como ele prprio
dizia, o intolervel trabalho e a cansativa monotonia das tabelas de clculo, escrevendo um
trabalho cientfico intitulado On the Theoretical Principles of the Machinery for Calculating
Tables(...) [Gol72].
Embora conhecido por seu trabalho na rea de Computao, no ser demais citar
que Charles Babbage foi tambm um excelente matemtico e ao lado de Peacock, Herschel,
De Morgan, Gregory e do prprio George Boole, pode ser visto como um dos introdutores
da concepo moderna da lgebra. Alm disso foi um dos lderes da Sociedade Real de
Astronomia inglesa, tendo publicado tambm pesquisas no campo da ptica, meteorologia,
eletricidade e magnetismo, funcionamento de companhias de aplices de seguros, criptologia,
geologia, metalografia, sistemas taxonmicos, mquinas a vapor, etc. Escreveu e publicou

87

vrios livros, um deles (On the Economy of Machinery and Manufacturers) reconhecido
posteriormente como um dos trabalhos pioneiros na rea chamada Pesquisa Operacional.
Mas o que motivou esse ingls a fazer um dispositivo capaz de resolver equaes
polinomiais atravs do clculo de sucessivas diferenas entre conjuntos de nmeros (ver
anexo sobre o Mtodo das Diferenas) foi a necessidade de uma maior preciso na elaborao de
tabelas logartmicas.
No final do sculo XVIII houve uma proliferao de tabelas de vrios tipos. Desde
Leibniz e Newton os matemticos estiveram preocupados com o problema da produo de
tabelas, tanto por meios matemticos como no caso das de multiplicao, seno, coseno,
logaritmos, etc. ou por meio de medies fsicas densidade em funo da altitude,
constante gravitacional em diferentes pontos da terra, entre outras coisas. A inteno era
reduzir o trabalho de clculo, mas as tabelas produzidas pelos especialistas tinham muitos
erros. Os matemticos estavam cientes deles e estudos foram elaborados para se tentar
melhorar a situao. Nestas circunstncias apareceu o projeto denominado Difference Engine de
Babbage, que lhe valeu o apoio de seus colegas da Sociedade Real e fundos do governo
britnico para inici-lo.
O desafio era construir um dispositivo para computar e imprimir um conjunto de
tabelas matemticas. Babbage contratou um especialista em mquinas, montou uma oficina e
ento comeou a descobrir quo distante estava a tecnologia do seu tempo daqueles
mecanismos altamente precisos e de movimentos complexos exigidos pelo seu projeto. A
concluso foi que deveria, antes de iniciar a construo da Mquina de Diferenas, gastar
parte dos seus recursos para tentar avanar o prprio estado da arte da tecnologia vigente.
Todos estes trabalhos prolongaram-se por alguns anos, sem sucesso, at que o governo ingls
desistiu do financiamento. Em 1833 Charles Babbage parou de trabalhar em sua mquina *.
Apesar de tudo, esse teimoso ingls j vinha desenvolvendo novas idias.
Provavelmente tentando alguma nova modificao no projeto da Mquina de Diferenas foi
que Charles Babbage concebeu um mecanismo mais complicado que este em que falhara
aps vrios anos de tentativas. O pensamento era simples: se possvel construir uma
mquina para executar um determinado tipo de clculo, por que no ser possvel construir
outra capaz de qualquer tipo de clculo? Ao invs de pequenas mquinas para executar
diferentes tipos de clculos, no ser possvel fazer uma mquina cujas peas possam executar
diferentes operaes em diferentes tempos, bastando para isso trocar a ordem em que as
peas interagem?
Era a idia de uma mquina de clculo universal, que vir a ser retomada em 1930
por Alan Turing, e que ter ento conseqncias decisivas. Vale ressaltar que o Analitical
Engine, a Mquina Analtica nome dado por Charles Babbage sua inveno estava muito
prxima conceitualmente daquilo que hoje chamado de computador.
A Mquina Analtica poderia seguir conjuntos mutveis de instrues e, portanto,
servir a diferentes funes mais tarde isso ser chamado de software... Ele percebeu que para
*

Esta mquina, conforme imaginada por Babbage, foi construda e colocada em operao pelo Museu de Cincia de Londres
e mostrada com seus desenhos em 1862 durante exposio internacional. Em 1849 Babbage entregaria ao governo
britnico uma nova verso da Mquina de Diferenas, que nem considerada foi. Em 1991 foi construida esta segunda
verso [Wil97].

88

criar estas instrues precisaria de um tipo inteiramente novo de linguagem e a imaginou


como nmeros, flechas e outros smbolos. Ela serviria para Babbage programar a Mquina
Analtica, com uma longa srie de instrues condicionais, que lhe permitiriam modificar suas
aes em resposta a diferentes situaes.

Figura 22: Mquina Diferencial de Babbage construda pelo


Museu de Londres

Reconhecendo a importncia de se terem resultados impressos, Charles procurou


que os resultados finais e os intermedirios fossem impressos para evitar erros. Dispositivos
de entrada e sada eram assim necessrios. A entrada de dados para a mquina seria feita
atravs de trs tipos de cartes: cartes de nmeros, com os nmeros das constantes de um
problema; cartes diretivos para o controle do movimento dos nmeros na mquina; e
cartes de operao para dirigir a execuo das operaes tais como adies, subtraes,
etc. Mas o mais genial estava por vir: duas inovaes simples mas que produziram um grande
impacto. A primeira era o conceito de transferncia de controle que permitia mquina
comparar quantidades e, dependendo dos resultados da comparao, desviar para outra
instruo ou seqncia de instrues. A segunda caracterstica era possibilitar que os
resultados dos clculos pudessem alterar outros nmeros e instrues colocadas na mquina,
permitindo que o computador modificasse seu prprio programa. Nestes temas teve
importante participao, Ada Augusta Byron, condessa de Lovelace, a primeira efetiva
programadora de computadores, sobre a qual ainda se falar.
5.3.1

A mquina de Jacquard, inspirao de Babbage

89

Figura 23: Tear de Jacquard

importante fazer uma meno a Joseph-Mariae Jacquard (1752-1834), um francs


que produziu uma mquina para substituir o trabalho humano. Na verdade, Babbage
despertou para seu novo projeto observando a revoluo produzida pelos teares de Jacquard*,
dotados de um dispositivo que automatizava o processo de tecelagem com vistas a obter
determinados padres de desenho. Para executar um determinado tranado, a fiandeira
deveria ter um plano ou programa que lhe dissesse que fios deveriam passar por cima ou por
baixo, quando repetir o processo, etc. O ponto chave da mquina de Jacquard era o uso de
uma srie de cartes cujos buracos estavam configurados para descrever o modelo a ser
produzido. O sucesso foi total e em 1812 havia na Frana cerca de 11.000 teares de Jacquard
([Bri79b], volume V). Adaptando o tear de Jacquard, a Mquina Analtica processava
padres algbricos da mesma maneira que o tear processava padres de desenhos.

5.3.2

Uma Lady como primeira programadora

Ada Augusta Byron era filha do famoso poeta Lord Byron e foi educada pelo
matemtico logicista ingls Augustus De Morgan. Bem cedo demonstrou ter grandes talentos
*

O tear de Jacquard inspirou tambm a Herman Hollerith, sobre quem se falar mais adiante.

90

na rea. Apresentada a Babbage durante a primeira demonstrao da Mquina de Diferenas,


tornou-se uma importante auxiliar em seu trabalho, sendo, sobretudo, algum que
compreendeu o alcance das novas invenes. Ela percebeu que, diferentemente das mquinas
anteriores com funcionamento analgico (execuo de clculos usando medidas), a Mquina de
Diferenas era digital (execuo de clculos usando frmulas numricas). Mais importante ainda,
deu-se conta da combinao entre funes lgicas e aritmticas na mquina de Babbage.
Quando Charles Babbage visitou Turim a convite do amigo Giovanni Plana,
astrnomo e compilador de tabelas, ministrou uma srie de palestras para distintos pblicos,
incluindo Luigi F. Menabrea, futuro primeiro-ministro da Itlia. Este ficou impressionado
com o trabalho de Babbage e tomou uma srie de notas, publicadas depois em 1842 pela
Biblioteca da Universidade de Genebra. Lady Lovelace traduziu para o ingls essas notas,
acrescentando muitas observaes pessoais [Gol72]. Esta publicao e outro ensaio
(Observations on Mr. Babbages Analytical Engine) a colocam como patrona da arte e cincia da
programao. Conforme comentado por B.H. Newman, os escritos de Ada Byron mostram
como ela teve uma total compreenso dos princpios de um computador programado, um
sculo antes do tempo deste [Moo77].
Mesmo no estando a mquina construda, Ada procurou escrever seqncias de
instrues tendo descoberto conceitos que seriam largamente utilizados na programao de
computadores como subrotinas, loops e saltos.

5.4 Outras Mquinas Diferenciais e Mquinas Analticas


Embora no fosse fcil, o trabalho de Babbage foi divulgado por um certo Dr.
Dionysus Lardner, que procurou descrever a mquina e seu modo geral de operao [Wil97].
Um sueco, George Scheutz, editor de um jornal tcnico de Estocolmo, leu e ficou
entusiasmado pela mquina descrita por Lardner e, sem se comunicar com Babbage, propsse a construir a sua Mquina de Diferenas, junto com o filho *. Os anos de 1840, 1842 e 1843
marcaram etapas bem sucedidas no desenvolvimento do projeto, culminando com um
modelo preliminar. Em outubro de 1854 o dispositivo de Scheutz estava completo e em
funcionamento.
Outros, como por exemplo Alfred Decon, ingls, Martin Wiberg, sueco e G. B.
Grant, americano, construram modelos derivados, e at 1931 Mquinas de Diferenas foram
construdas para produzir diferentes tipos de tabelas [Wil97].
Com relao Mquina Analtica, parece que o irlands Percy Ludgate (1883-1922)
projetou e tentou construir um mecanismo similar ao de Babbage, conforme pequena
descrio feita em um dirio cientfico de Dublin, em 1909.

Em 1854, durante uma viagem a Londres, Scheutz pai e filho encontraram-se com Charles Babbage, que aprovou a mquina
por eles construda. Ambos nunca esconderam depois sua admirao pelas idias do ingls.

91

Figura 24: Mquina Diferencial de George Scheutz

5.5 A ltima contribuio do sculo XIX: Herman Hollerith

Figura 25: Tabuladora de Hollerith

O prximo passo importante na Histria da Computao no est relacionado com


tabelas de clculo de logaritmos ou desenvolvimento de leis do pensamento. O prximo
pensador a avanar o estado da arte foi Herman Hollerith, um empregado de apenas 19
anos do United States Census Office. Seu papel no teve impacto sobre os importantes
fundamentos tericos da Computao e sua inveno j obsoleta. Mas sua pequena
inovao cresceu tanto na indstria que, mais tarde, Hollerith veio a dominar o uso da
92

tecnologia de computadores. Em 1890 ele ganhou a concorrncia para o desenvolvimento de


um equipamento de processamento de dados para auxiliar o censo americano daquele ano. A
empresa fundada para isto, Hollerith Tabulating Machines, veio a ser uma das trs que em
1914 comps a empresa CTR (Calculating-Tabulating-Recording), renomeada em 1924 para
International Business Machine - IBM [IEEE95].
Hollerith, inspirado pelos teares de Jacquard, desenvolveu a idia de se aproveitar os
cartes perfurados dos teares em uma mquina que pudesse interpretar, classificar e
manipular as somas aritmticas representadas pelas perfuraes. Ele combinou cartes
perfurados com os novos dispositivos eletromagnticos de ento.

5.6

Computadores analgicos

Figura 26: Dispositivo analgico simples

H uma histria interessante sobre os computadores analgicos, cujas origens


remontam ao passado distante. Muitos dispositivos analgicos foram desenvolvidos a partir
do ano 400 a.C. Tpicos so os astrolbios (ver anexo sobre o assunto), o j mencionado
mecanismo Antikythera, os instrumentos de sinalizao e os planetrios [Wil97]. Ir
interessar particularmente para esse trabalho uma classe especfica de instrumentos
analgicos: as mquinas integradoras, que remontam a Maxwell, Faraday, Kelvin e
Michelson, entre outros, que tentaram desenvolver dispositivos para executar operaes
matemticas [Lil45]. Essas foram usadas em projetos que exigiam a soluo de equaes
diferenciais e modelagem de sistemas mais complexos, como o movimento das ondas do mar,
evoluindo at os computadores eletrnicos analgicos, alguns ainda usados at os dias de hoje
para aplicaes especiais. Tais desenvolvimentos formam uma parte dessa infra-estrutura que
constituiu a base para o aparecimento dos computadores digitais.
93

Um computador analgico um dispositivo no qual os nmeros so representados


por quantidades fsicas medidas, e nos quais equaes ou relaes matemticas so
representadas por diferentes componentes, correspondendo a operaes matemticas
singulares, tais como integrao, adio ou multiplicao.
Um dispositivo analgico muito conhecido a rgua de clculo. Ela consiste
basicamente de dois trilhos graduados de acordo com os logaritmos de nmeros, e os trilhos
deslizam um sobre o outro. Os nmeros so representados atravs de comprimentos nos
trilhos e a operao fsica que pode ser executada a soma de dois comprimentos nos trilhos.
Sabe-se que o logaritmo de um produto de dois nmeros a soma dos logaritmos deles.
Assim pode-se com a rgua de clculo formar a soma de dois comprimentos e executar
multiplicao e operaes correlatas.
Os componentes analgicos podem ser divididos em duas classes, dependendo da
maneira como os nmeros so representados: i) por quantidades mecnicas, como um
deslocamento linear ou rotao angular; ii) quantidades eltricas, como voltagem, corrente,
impedncia, condutividade.
Se os deslocamentos lineares so usados para representar nmeros, h caminhos
simples, nos quais relaes geomtricas podem aparecer atravs de formas mecnicas. As
operaes matemticas podem ser realizadas usando-se uma relao geomtrica
correspondente. Na figura ao lado pode-se ver um computador analgico muito simples.
No final do sculo XIX, as equaes matemticas que apareciam nos estudos de
fsica passaram a exigir uma grande quantidade de clculos, quase impossveis de se resolver
na prtica. Os fsicos comearam a desenvolver sofisticadas ferramentas matemticas para
descrever, atravs de equaes*, a operao de determinados tipos de mecanismos, assim
como conceber mquinas cujo movimento era feito de acordo com equaes. Uma soluo
foi a de se criar um sistema fsico anlogo e cujo comportamento pudesse ser
quantitativamente observado. Por exemplo: o fluxo de calor anlogo ao fluxo de
eletricidade, onde temperatura corresponde a potencial eltrico. Logo, pela anlise de camadas
eletricamente condutoras, dispostas de maneira a simular s caractersticas de uma estrutura,
pode-se investigar o fluxo de calor dentro dessa estrutura ([Bri79a], volume XI). Algum
que quisesse projetar um dispositivo desse tipo deveria:
i)
analisar quais operaes desejaria executar;
ii)
procurar um aparato fsico cujas leis de operao sejam anlogas quelas que
se deseja executar;
iii)
construir o aparelho;
iv)
resolver o problema medindo as quantidades fsicas envolvidas.
Dois nomes famosos esto diretamente ligados efetiva produo de dispositivos
analgicos para resoluo de clculos mais complexos: James Clerk Maxwell (1831-1879), o
criador da teoria sobre a eletricidade e o magnetismo, e James Thomson. Ambos inventaram
dispositivos analgicos por volta de 1860 [Gol72].

Como por exemplo equaes diferenciais ordinrias, sries de transformaes de Fourier, sistemas de equaes algbricas
lineares

94

Em todos os dispositivos analgicos que comearam a aparecer, a operao


b

fundamental a da integral, isto , todos eles produziam como sada

f ( x)dx

, dado f(x)

como entrada.
Dentro da evoluo das mquinas analgicas, os analisadores diferenciais foram os
dispositivos que mais tarde passaram a ser chamados propriamente de computadores
analgicos.
5.6.1

Primeiras evolues: sculo XV

por volta do sculo XV que aparecem dispositivos analgicos mais sofisticados,


utilizados para prever os intervalos de tempos de mar alta e baixa em alguns portos
europeus. So os chamados tide predictors, com suas escalas circulares, seus ponteiros que
marcavam a posio do sol e da lua e um interessante sistema de checagem desses dados e
que, juntamente com algumas informaes especficas do porto, permitia ao usurio ler nas
escalas do instrumento o tempo aproximado entre a mar alta e baixa. Quando na metade do
sculo XVIII foi possvel encontrar uma frmula para o clculo de sries de coeficientes de
coseno (y = A cos(u) + B cos(v) + C cos(w) + ...), Lord Kelvin construiu uma mquina
analgica para avaliar essa frmula. Chamou-a analisador harmnico, e um exemplo pode ser
visto na prxima figura.
Um desses primeiros dispositivos foi elaborado em 1878. Escrevendo sobre seu
analisador harmnico de ondas do mar Kelvin disse: O objetivo desta mquina substituir o
grande trabalho mecnico de calcular os fatores elementares que constituem a subida e
descida da mar (...)[Gol72]. Uma anlise harmnica consiste em se formar um nmero de
integrais do tipo geral f (t ) g (t )dt , onde g uma funo seno ou coseno. A avaliao das
integrais desse tipo foi o que Kelvin conseguiu, fazendo uma engenhosa adaptao de um
integrador * elaborado por seu irmo.
A ltima inveno de Kelvin relevante para nossa histria foi o que agora
chamado Analisador Diferencial, um dispositivo para a soluo de sistemas de equaes
diferenciais ordinrias. Dos dispositivos chamados integradores possvel obter uma integral
que o produto de duas variveis. Uma grande gama de sistemas de equaes pode ser
computada por esses componentes. Kelvin nunca chegou a construir sua mquina por no
dispor de tecnologia suficiente. A dificuldade estava em como usar a sada de um integrador
como entrada em outro. Na explicao de Maxwell, o problema central era a sada estar
medida pela rotao de um disco ligado a uma roda. Esta roda acionada por estar apoiada
sobre um disco que gira em torno de um eixo. O torque desse disco sua capacidade de girar
a roda muito pequeno e conseqentemente ele, de fato, no pode fornecer uma entrada

Integrador tambm um dispositivo analgico, que produz como resultado a integral de f(x). Seria exaustivo e fugiria do
escopo do trabalho falar sobre esses dispositivos existem ainda os planmetros, para medir reas de figuras traadas por
um operador humano, etc. que fazem parte desses primeiros esforos em direo a sofisticados mecanismos analgicos.

95

para outro integrador *. Esses problemas permaneceram suspensos por quase 50 anos at o
desenvolvimento dos amplificadores de torque. Analisadores diferenciais mecnicos foram
revitalizados por volta de 1925 e o mais famoso destes foi o construdo no Instituto de
Tecnologia de Massachusetts (MIT) por Vannevar Bush .

Figura 27: Dispositivo analgico de Lord Kelvin

5.6.2

Michelson e seu analisador harmnico; I Guerra Mundial

O principal obstculo na construo de tal mquina est na acumulao de erros


envolvida no processo de adio. O nico instrumento projetado para efetuar esta adio o
de Lord Kelvin (...). O alcance da mquina , no entanto, limitado pelo pequeno nmero de
elementos na conta (...), pois com um considervel aumento no nmero de elementos, os
erros acumulados devido aos fatores j mencionados logo neutralizariam as vantagens do
aumento do nmero de termos na srie.
So palavras de Albert A. Michelson (1852 - 1931) em 1898 [MS98], um dos
grandes fsicos do sculo XX. Interessou-se pelo desenvolvimento de um analisador
harmnico que pudesse manipular uma srie de Fourier de at 20 termos, continuando a
tradio das mquinas analgicas.

Outra dificuldade substancial: no possvel aumentar muito o nmero de termos em uma srie pois o seu dispositivo de
adio de termos levava a um acmulo de erros. Para uma longa srie de termos o resultado poderia estar completamente
viciado.

Aps a Segunda Guerra Mundial, analisadores diferenciais mecnicos comearam a se tornar obsoletos com o
desenvolvimento de analisadores diferenciais eletrnicos e com o aparecimento da Computao eletrnica digital.

96

Figura 28: Analisador harmnico de Michelson

Durante a I Guerra Mundial tornaram-se estratgicos os problemas referentes aos


clculos balsticos, o que foi um incentivo continuidade do desenvolvimento de mquinas
computacionais. Um desses problemas o de como determinar a funo de deslocamento,
observando-se a resistncia do ar, em funo da velocidade. Quando a artilharia aponta para
objetos que se movem, como navios ou avies, essencial prever o movimento dos alvos.
Foram duas dcadas (1910 e 1920) em que houve um grande aprofundamento
terico, com a formao de grupos de matemticos nos EUA e Inglaterra, cujas principais
descobertas esto nos procedimentos numricos para soluo de equaes diferenciais com
grande preciso [Gol72].
5.6.3

Computadores analgicos eletromecnicos

Nos primeiros anos do sculo XX muitos fsicos e engenheiros de todo o mundo


estiveram trabalhando em questes fundamentais da rea de eletricidade. Centros de pesquisa
foram criados em Harvard, no MIT, na IBM, na General Electric, e outros lugares. Tiveram
sucesso na formulao matemtica dos problemas em teoria de circuitos e muitos textos
foram escritos nos anos da dcada de 1920, especialmente por Vannevar Bush no MIT, A.E.
Kennelly de Harvard e do MIT, C.P Steinmetz da General Electric, entre outros [Gol72].
Tambm no se pode esquecer o trabalho fundamental de Oliver Heaviside (1850-1897), um
ingls que desenvolveu um dispositivo matemtico para manipular equaes e analisar
induo eletromagntica, e o trabalho de Norbert Wiener junto a Bush.
Como se disse sobre Kelvin e seu analisador harmnico, o grande problema foi ele
no dispor da suficiente tecnologia para desenvolver um dispositivo que executasse a
97

operao de gerar a integral do produto de duas funes,

f 1( x) f 2( x)dx , e por vrios anos


a

a idia esteve esquecida at o desenvolvimento dos amplificadores de torque.


A partir de 1927 at 1931, Vannevar Bush e sua equipe no MIT desenvolveram
mecanismos para resolver equaes diferenciais ordinrias. Bush deve especialmente a C. W.
Niemann, engenheiro e inventor do amplificador de torque Bethlehem, a possibilidade de ter
construdo seu famoso analisador diferencial, terminado em 1931. Usando o amplificador de
Niemann, Bush pde construir uma mquina usando exclusivamente integradores. Ainda
mecnico, este dispositivo foi aprimorado durante a II Guerra Mundial, pela substituio dos
mecanismos puramente mecnicos por corrente e voltagem, obtidas atravs de
potencimetros instalados sobre os discos cuja rotao representava quantidades. As
voltagens correspondiam soma, produto e a uma funo de uma varivel. Entram aqui
conceitos de servo-mecanismos e amplificadores operacionais [Ryd67].
Ainda dentro do mundo dos computadores analgicos, deve-se destacar o trabalho
do fsico ingls Douglas Hartree, das universidades de Manchester e Cambridge, que tentou
resolver equaes diferenciais parciais com analisadores diferenciais, e que, ao deparar-se com
clculos altamente complexos, anteviu e preparou o advento dos computadores eletrnicos
[Gol72].
As novas descobertas da indstria e da cincia no campo da eletricidade
proporcionando rapidez e preciso aos equipamentos juntamente com a limitao dos
equivalentes analgicos eletromecnicos, acabaria por impor a nova tecnologia de circuitos.
Uma nova era da Computao comeava a ser desvelada. necessrio assinalar, no entanto,
que novas mquinas analgicas eletromecnicas sucedneas da ltima mquina de Bush, no
MIT, em 1942 foram construdas e at 1960 ainda estavam em uso ([Bri79a], volume XI).

5.7 Circuitos eltricos e formalismo lgico: Claude Elwood Shannon


Como um grande tapete, que vai sendo tecido aos poucos por diferentes artesos
que no tm a viso de todo o conjunto, paulatinamente avanou a teoria e a tcnica que
levaram construo do computador digital. Paralelamente aos matemticos, tambm um
jovem engenheiro, Claude E. Shannon (1916 - 2001), com a idade de 22 anos, deu uma
grande contribuio Computao: em 1937 ele estabeleceu uma ligao entre os circuitos
eltricos e o formalismo lgico. Mestre em Engenharia Eltrica e Doutor (PhD) em
Matemtica pelo Instituto de Tecnologia de Massachusetts (MIT), Cambridge, MA, em 1940,
durante a Segunda Guerra Mundial, Shannon comeou a desenvolver uma descrio
matemtica da informao, dando origem a um ramo de estudos conhecido como Teoria da
Informao[Gat95]. Deu ainda importantes contribuies na rea da Inteligncia Artificial.

98

Figura 29: Claude E. Shannon

O que Shannon fez em 1937 foi mostrar um caminho para projetar mquinas
baseadas na lgica algbrica descrita um sculo antes por George Boole, aquela em que s
havia dois valores no sistema de clculo lgico: 1 e 0. Se um valor verdadeiro, ele pode ser
representado pelo valor 1 e, se falso, pelo 0. Nesse sistema, uma tabela-verdade descreveria os
vrios estados lgicos possveis. Uma das caractersticas importantes da lgebra de Boole
que as operaes lgicas podem ser colocadas juntas e formar novas operaes.
Claude Shannon percebeu que a mesma lgebra poderia descrever o
comportamento de circuitos eltricos chaveados. Igualmente importante foi o modo como
estas combinaes entre operaes lgicas e aritmticas poderiam ser usadas para se construir
uma operao de memria. A lgebra booleana torna possvel a construo de um
dispositivo de estado que pode armazenar qualquer informao especfica, seja um dado ou
uma operao. E se um circuito eltrico pode executar operaes matemticas e lgicas, e
pode tambm armazenar os resultados de tais operaes, ento os computadores digitais
podem ser construdos.
Em resumo:
lgica booleana, cujas tabelas-verdade poderiam representar as regras de um
sistema lgico formal;

tabelas de instrues da Mquina de Turing que podem simular as tabelasverdade de Boole;


dispositivos como o rel j ento muito usados em telefones para representar
estados de mquina.
Em breve j seria possvel a construo de circuitos eltricos que simulavam
algumas operaes lgicas. Shannon estava procurando um procedimento matemtico que
fosse o mais adequado para se descrever o comportamento de circuitos a rel*. Sua tese de
mestrado publicada em 1937 mostrou como a lgebra booleana poderia ser usada para
descrever as operaes desses complexos circuitos.

Um rel uma chave ou dispositivo que abre ou fecha um circuito, permitindo ou bloqueando o fluxo da eletricidade.
semelhante a um interruptor de luz, com a diferena de que o rel no ligado ou desligado por uma ao humana, mas
pela passagem de uma corrente eltrica.

99

Nos dez anos seguintes ao seu primeiro trabalho (a tese anteriormente citada),
Shannon dirigiu seu interesse para o estudo da comunicao, parte de um trabalho j iniciado
por Norbert Wiener, de quem se falar mais adiante.
Depois da guerra, tendo encontrado uma ferramenta perfeita para a descrio de
circuitos a rel, Claude Shannon procurou definir matematicamente aquilo que as novas
mquinas processavam. Ele estava interessado nas leis subjacentes aos sistemas de
comunicao de mensagens feitos pelo homem, na diferena entre rudo e mensagem e de
como esta mantinha a sua ordem em um meio onde a desordem rudo muito alta.
Chegou a equaes muito parecidas s do fsico Boltzmann sobre as leis da entropia.
Em 1948 Shannon publicou dois trabalhos que originaram a j citada rea da
Teoria da Informao (A Mathematical Theory of Information) *. O desenvolvimento deu-se
rapidamente, afetando no somente o projeto de sistemas de comunicao, mas tambm
reas como automatizao, cincia da informao, psicologia, lingstica e termodinmica
([Bri79a], volume IX).
Em 1950 publicou A Chess Playing Machine onde propunha que computadores
digitais poderiam ser adaptados para trabalhar simbolicamente com elementos representando
palavras, proposies ou outras entidades conceituais, dando prosseguimento ao emergente
ramo de estudos denominado mais tarde Inteligncia Artificial. Em 1953, com Computers
and Automata falou sobre simulao, atravs de hardware e software, de algumas operaes
da mente ([Rhe85], captulo 6).
Em 1956, mantendo seu trabalho nos laboratrios da Bell, Shannon aceitou o cargo
de professor no MIT, atividade que exerceu durante muitos anos. Preocupava-se com os
conceitos e simplificava ao mximo a simbologia. Onde outros professores poriam smbolos
e mais smbolos, ndices e mais ndices, Shannon colocava duas ou trs letras e incentivava os
alunos a perceber as relaes matemticas que essas letras traduziam.
Gnio matemtico que combinava a intuio, a abstrao e as aplicaes, Claude
Shannon tinha como passatempos andar de monociclo, construir mquinas de jogar xadrez e
outras aparentemente inteis . Estendeu sua Teoria Matemtica de Comunicao ao campo
da criptologia.
Claude Shannon, tinha a doena de Alzheimer. Faleceu no sbado, 24 de
Fevereiro de 2001, no Courtyard Nursing Care Center em Medford, Massachusetts. Ele
estava com 84 anos.

Informalmente falando, trata da representao matemtica das condies e parmetros que afetam a transmisso e
processamento da informao. importante notar que informao, como entendida na teoria da informao, no tem
nada a ver com o significado inerente na mensagem. Significa um certo grau de ordem, de no randomicidade, que pode
ser medida e tratada matematicamente como as quantidades fsicas.

Elaborou um autmato que procurava a sada num labirinto e aquela a que chamou de mquina final. Nela, via-se apenas
um interruptor. Ligando-o, o aparelho emitia um som zangado e dele emergia uma mo mecnica que desligava o
interruptor, terminando a brincadeira.

100

6 As primeiras mquinas
6.1

Os primeiros computadores eletromecnicos

A partir da dcada de 1930 alguns cientistas comearam a trabalhar com dispositivos


de clculo com algum tipo de sistema de controle automtico. J se dispunha da tecnologia
necessria para se construir aquela estrutura imaginada por Babbage. Surgiram os primeiros
computadores mecnicos e eletromecnicos e muitos projetos de computadores eletrnicos
feitos posteriormente sofreram muitas influncias dessas primeiras mquinas.
6.1.1

Konrad Zuse

Figura 30: Konrad Zuse por volta dos anos 70

Konrad Zuse (1910 - 1995) foi o primeiro a desenvolver mquinas de clculo


controladas automaticamente. Esse engenheiro civil percebeu rapidamente que um dos
aspectos mais onerosos ao se fazerem longos clculos com dispositivos mecnicos era
guardar os resultados intermedirios para depois utiliz-los nos lugares apropriados nos
passos seguintes [Zus80]. Em 1934, depois de vrias idias e tentativas, Zuse chegou
concluso que um calculador automtico somente necessitaria de trs unidades bsicas: uma
controladora, uma memria e um dispositivo de clculo para a aritmtica. Ele desenvolveu o
seu Z1, em 1936, um computador construdo inteiramente com peas mecnicas e que usava
uma fita de pelcula cinematogrfica para as instrues que controlavam a mquina.
Em 1938, antes mesmo de terminar o Z1, um aluno de Zuse, Helmut Schreyer,
construiu uma parte do Z1 usando vlvulas. Em funo da situao de pr-guerra, Zuse teve
101

de abandonar essa linha de desenvolvimento seriam necessrias 1000 vlvulas, o que era
impossvel naquele momento e continuou o Z2 usando tecnologia baseada em rels.
Esses dois primeiros modelos eram somente para teste: tinham todas as
caractersticas do computador posterior, mas no trabalhavam satisfatoriamente. O Z3 foi
terminado em 1941 e foi o primeiro modelo totalmente operacional * [Zus80]. O Z3, como
a maioria das mquinas dessa primeira gerao, usava dois mecanismos separados para as
funes aritmticas e tinha uma unidade especial para converso de nmeros na notao
decimal para a binria. Em termos de velocidade podia ser comparado ao MARK I, discutido
mais frente, que foi terminado dois anos aps o Z3. O Z3 executava trs a quatro adies
por segundo e multiplicava dois nmeros em quatro ou cinco segundos. Nunca chegou a ser
usado para grandes problemas em funo de possuir uma memria de tamanho limitado. Foi
destrudo, junto com a casa de Zuse, por um bombardeio em 1944.
O Z4 comeou a ser desenvolvido quase que simultaneamente ao final do trabalho
do Z3. Era essencialmente a mesma mquina, com maior capacidade de memria e mais
rpida. Por causa do avano das tropas aliadas, o trabalho do Z4 foi interrompido quase ao
seu final e a mquina ficou escondida em uma pequena cidade da Bavria chamada
Hinterstein Em 1950, na Sua, Zuse reconstruiu o seu Z4, e fundou uma empresa de
computadores, absorvida depois pela Siemens. As mquinas de Zuse tiveram pouco impacto
no desenvolvimento geral da Computao pelo absoluto desconhecimento delas at um
pouco depois da guerra [Zus80].
6.1.2

As mquinas da Bell e as mquinas de Harvard

Por volta de 1937, enquanto Turing desenvolvia a idia da sua Mquina Universal"
e formalizava o conceito do que computar e do que um algoritmo, nos Estados Unidos
dois outros matemticos tambm consideravam o problema da computao: Howard Aiken,
em Harvard, cujo trabalho daria seus frutos em 1944, e George Stibitz, nos laboratrios da
Bell Telephones. Eles procuravam componentes eletromecnicos que pudessem ser usados
na computao de clculos.
Nos ltimos anos da dcada de 1930 os problemas envolvendo clculos com
nmeros complexos (aqueles com partes imaginrias, envolvendo razes negativas) no projeto
de equipamentos telefnicos comearam a dificultar o crescimento da Cia. Bell Telephone. As
pesquisas da empresa ento comearam a ser direcionadas descoberta de mecanismos que
pudessem satisfazer essa necessidade cada vez mais crescente de clculos mais rpidos. Stibitz
demonstrou que rels podiam ser utilizados para executar operaes aritmticas. A partir de
1938, juntamente com S. B. Willians comeou a implementar suas idias, e em 1939 estava
pronto o seu Modelo I. Seus outros 'Modelos' chegaram at o nmero VI, terminado em
1950 tendo estado em uso at 1961 , e juntamente com os computadores K do Dr. Zuse
foram os primeiros computadores de cdigo binrio, baseados em rels [Sti80].
Ao mesmo tempo, nos Laboratrios de Computao de Harvard, Howard Aiken e
engenheiros da IBM comearam a desenvolver um outro tipo de mquinas eletromecnicas,
*

Quer dizer, tinha o controle automtico das suas operaes.

102

no totalmente baseada nos rels, j incorporando uma nova tecnologia que seria amplamente
utilizada mais tarde: as memrias de ncleo de ferrite. Ao trmino de sua primeira verso, em
1943, o IBM Automatic Sequence Controlled Calculator, comumente chamado de Harvard
Mark I *, tinha uma srie de novas capacidades: modificava instrues dinamicamente
baseando-se nos resultados obtidos durante o processamento, possua unidades para decidir
qual o melhor algoritmo para execuo de um clculo atravs do argumento de uma funo,
testava o contedo de registradores, etc. Diferenciava-se fundamentalmente de mquinas
anteriores, como o EDSAC, (citado mais frente), por usar memrias separadas para
instrues e dados, o que ficou denominado como arquitetura de harvard. Quando terminado
em 1944, foi imediatamente adotado pela marinha americana, para fins militares. Novas
verses foram produzidas at 1952.
6.1.3

A participao da IBM

As mquinas de calcular mecnicas produzidas por empresas como a IBM no


tinham linha de produo at a entrada dessas empresas no mercado de computadores
propriamente dito. Eram equipamentos para auxiliar tarefas computacionais, que variavam
desde as tabuladoras de Hollerith at tabuladoras para clculos cientficos como as produzidas
por L.J. Comrie na Inglaterra ou Wallace J. Eckert nos Estados Unidos. Em 1935 a IBM
comeou a produzir suas sries 602, 602A at 605, calculadoras baseadas em rels que
produziam em altas velocidades como Babbage imaginou tabelas de vrios tipos, com alta
confiabilidade. Uma posterior evoluo foi a possibilidade dessas mquinas poderem ser
programadas atravs de painis de controle ('plugboards') para ler um carto, executar at 60
diferentes clculos aritmticos, e perfurar o resultados no prprio carto de leitura. Outras
empresas como a Remington Rand produziram equipamentos semelhantes [Wil97].
Depois do sucesso do Mark I em Harvard, no qual teve grande participao com o
laboratrio em Endcott, a IBM lanou-se na produo do Selective Sequence Electronic
Calculator (SSEC), sob o comando de Frank Hamilton, que pertenceu ao grupo de Aiken, em
Harvard. Terminado em 1947, atraiu um importante grupo de pesquisadores que buscavam o
aprimoramento da capacidade de clculo e cujas solues apontavam para um conceito
decisivo para os computadores: o de programa armazenado. O ltimo computador
eletromecnico produzido foi o CPC, Card-Programmed Electronic Calculator, modelos I e
II que finalizaram a srie 700 [Hur80].

6.2 O incio da era da computao eletrnica


Durante os anos de 1936 a 1939, John Vincent Atanasoff, com John Berry,
desenvolveu a mquina que agora chamada de ABC (Atanasoff-Berry Computer), na
Universidade de Iowa, EUA, como uma mquina dedicada especialmente soluo de
conjuntos de equaes lineares na Fsica. Embora sendo um dos primeiros exemplos de
*

No confundir com um prottipo do computador EDASC, construdo na Universidade de Manchester em 1948, baseado
no conceito de programa armazenado

103

calculadora eletrnica, o ABC propiciou o desenvolvimento dos primeiros conceitos que


iriam aparecer nos computadores modernos: a unidade aritmtica eletrnica e a memria de
leitura e gravao [IEEE95].
6.2.1

Estados Unidos: ENIAC, EDVAC e EDSAC

No incio da Segunda Guerra, as necessidades de melhores tabelas de clculo para as


trajetrias de tiros tornaram-se imperativas, pois os analisadores diferenciais estavam no seu
limite. Nessa poca foi ento montado, na Moore School of Electrical Engineering, da
Universidade da Pensilvnia (Filadelfia, EUA), um grupo de pesquisa para o desenvolvimento
de projetos eletrnicos relacionados ao futuro radar. Entre eles, J. Presper Eckert, Joseph
Chedaker e Kite Sharpless logo se envolveram na produo de circuitos eletrnicos usados
como contadores.
Eckert (1919-1995) e um pouco mais tarde John Mauchly (1907-1980), fsico, e
Herman H. Goldstine, matemtico, acabaram por tornarem-se os principais protagonistas na
construo do primeiro computador de uso geral que realmente funcionou como tal, o
ENIAC (Electronic Numerical Integrator and Computer): esta mquina e a equipe que a
projetou e construiu, sero responsveis por um grande salto no desenvolvimento dos
computadores eletrnicos. Seu formato era em U, suas memrias tinham 80 ps de
comprimento por 8,5 de largura, e cada um dos seus registradores de 10 dgitos media 2 ps.
Ao todo possua 18.000 vlvulas. Executava desvios condicionais e era programvel, o que o
diferenciava das outras mquinas construdas at a data. Sua programao era feita
manualmente, atravs de fios e chaves. Os dados a serem processados entravam via carto
perfurado. Os programas tpicos do ENIAC demoravam de meia hora a um dia inteiro para
serem elaborados e executados.
Em 1944 John von Neumann ingressou como consultor na equipe da Universidade
da Pensilvnia. Os responsveis pelo projeto estavam interessados em melhorar a maneira
como os programas eram desenvolvidos e iniciaram discusses a respeito do armazenamento
de programas na forma de nmeros. Iniciaram assim um trabalho sobre projetos de
computadores que foi fundamental nos 40 anos que se seguiram. Em 30 de junho de 1945,
von Neumamm publicou o First Draft of a Report on the EDIVAC (Electronic Discrete
Variable Automatic Computer), que estabeleceu o paradigma de projetos de computadores
para vrias geraes seguintes de mquinas. Essa arquitetura ficou conhecida com o nome de
arquitetura de von Neumann, e entre outras coisas inclua o conceito de programa
armazenado *. O ENIAC comeou a operar em 1943, tendo sido terminado totalmente em
1946, encerrando suas operaes em 1955. A sada dos professores Eckert e Mauchly da
equipe atrasou, no entanto, o desenvolvimento do projeto EDVAC, s concludo em 1952.
Em 1946, Maurice Wilkes, da Universidade de Cambridge, visitou a Moore School
para participar de uma conferncia sobre computadores. Ao regressar a Cambridge, decidiu
iniciar um projeto para um computador baseado no princpio do programa armazenado,
*

Muitos dos pioneiros do desenvolvimento dos computadores acreditam que esse termo d um crdito exagerado ao trabalho
de von Neumann, que escreveu as idias, e muito pouco aos engenheiros Eckert e Mauchly, que construram as mquinas.
A polmica foi ruidosa e, em 1947, estes dois ltimos deixaram a Moore School.

104

chamado EDSAC (Electronic Delay Storage Automatic Calculator), que se tornou


operacional em 1949. Foi o primeiro computador de grande porte, baseado no citado
conceito, que entrou em operao.
6.2.2

A contribuio inglesa: o COLOSSUS

Enquanto isso, na Inglaterra, o grande esforo era decifrar o cdigo secreto de


guerra germnico. Um grupo especial formado por cientistas e matemticos reuniu-se em
Bletchley Park, um lugar entre as Universidades de Cambridge e Oxford, para tentar construir
uma mquina capaz de decodificar o alfabeto produzido pela verso germnica de um
dispositivo inventado nos Estados Unidos, o ENIGMA [Kah67]. A equipe era liderada pelo
prof. T. H. Flowers, sendo o prof. M. H. A. Newman o responsvel pelos requisitos que
levariam, em 1943, construo do computador digital eletrnico COLOSSUS *. O trabalho
do grupo de Betchley foi enormemente influenciado pelos resultados sobre computabilidade
obtidos por Alan Turing. Este trabalhava no departamento de comunicao criado pelo
governo britnico em funo da guerra, com a misso de treinamento em lgica matemtica e
logo alocado tambm para os esforos de decifrar o cdigo secreto alemo. O COLOSSUS
acabou no sendo conhecido em sua poca por duas razes. A primeira no ter sido ele um
computador para uso geral, mas sim projetado especialmente para decodificar mensagens
secretas. A segunda: a existncia desta mquina somente foi revelada a partir de 1970, sendo
que seus algoritmos de decodificao so ainda secretos.
Ainda na Inglaterra, aps o fim da guerra, Turing uniu-se ao centro de pesquisas do
National Physical Laboratory, onde rapidamente elaborou o projeto bsico do Automatic
Computing Engine (ACE), que iniciou operaes em 1950.
6.2.3

Outras contribuies

Um importante aspecto do desenvolvimento dos computadores foi a produo de


dispositivos chamados de 'memria'. Desde Konrad Zuse, a construo de computadores que
pudessem ter seus programas armazenados preocupou os cientistas e foi um fator
determinante nas primeiras arquiteturas. Das memrias mecnicas de Zuse, passando pelas
memrias trmicas utilizadas somente experimentalmente de A. D. Booth, pelos sistemas
de linha de retardo baseados em mercrio de Willian Shockley, da Bell aperfeioada por
Presper Eckert utilizados no ENIAC, pelas memrias eletrostticas de Willians at os
ncleos magnticos de ferrite, um rduo caminho foi percorrido. A memria de ncleos
magnticos acabou preponderando, tendo sido utilizada primeiramente em uma mquina de
teste no MIT e mais tarde no computador conhecido como Whirlwind. O uso das memrias
de ncleo magntico aumentaram excepcionalmente o desempenho dos computadores,
podendo ser consideradas como um divisor de guas no desenvolvimento dos mesmos.
Importantes tambm nesse primeiro perodo foram duas grandes revolues
tecnolgicas: o emprego de vlvulas para tornar o computador mais rpido, confivel e de uso
geral, e o conceito de programa armazenado. Esta tcnica de usar uma memria de
*

Tornado operacional em 1944, decodificando mensagens para ajudar nos planos do desembarque do dia D, ainda nesse ano.

105

armazenamento assim como a transferncia de controle via condio, que permitiam parar
e reiniciar o processamento a qualquer instante, abriu enorme perspectiva para a programao
de computadores. O elemento chave dessa arquitetura era a unidade central de
processamento, que permitia a coordenao de todas as funes do computador atravs de
uma nica fonte. Em 1951, o UNIVAC I (Universal Automatic Calculator), construdo pela
Remington-Rand, tornou-se o primeiro computador comercialmente disponvel que utilizava esses
conceitos.

Figura 31: ENIAC, sua programao era feita com fios ("hard
wired")

Figura 32:Colossus, da Inglaterra. Sua programao tambm era


feita com fios.

Esta primeira gerao de computadores caracterizou-se pelo fato de que as


instrues de operao eram produzidas para tarefas especficas. Cada mquina tinha um
106

programa em cdigo binrio diferente que indicava o fluxo das operaes. Isto dificultava a
programao e limitava a versatilidade desses primeiros computadores.

Figura 33:da esquerda para a direita, Patsy Simmers, segurando


uma placa do ENIAC, Gail Taylor, segurando uma placa do
EDVAC, Milly Beck, segurando uma placa do ORDVAC, Norma
Stec, segurando uma placa do BRLESC-I (ateno para o tamanho
das placas)

Na figura que se segue h um pequeno resumo desses primeiros tempos da


computao eletrnica, tomando como referncia o ensaio de Arthur W. Burks [Bur51b].

107

Hardware/Unidade Aritmtica

Organizao do Computador e
Programao

Dispositivos
mecnicos e
eletromecnicos

Analisador
diferencial

Eletrnica
(rdio)

Plugboard
(IBM)

Resistores

Computador de
Atanasoff
ENIAC
Harvard
Mark I

1943-1946

Crawford

Linha de mercrio
(radar)

Computadores de
rels (Bell)

Linha de Mercrio
de Eckert/Mauchly
-----------------------Memria eletrosttica

Order Code e
Projeto Lgico de
von Neumann

Projetos preliminares de um computador


com programa armazenado

Selectron

Tubo de Willians

IAS
Whirlwind
ILLIAC
IBM 701
....

EDVAC
EDSAC
UNIVAC I
SEAC
....

Figura 34: Desenvolvimento do hardware e software nos


primeiros tempos da Computao

108

Projeto
final e
construo
1946 - 1952

6.3 As primeiras linguagens


Seguindo as premissas iniciais de se destacar neste trabalho a evoluo dos
conceitos e idias ao longo da Histria da Computao no se far aqui uma descrio
exaustiva da evoluo das linguagens de programao. Depois de algumas consideraes
tericas iniciais, sero vistas as motivaes e as primeiras tentativas de se estabelecer um
cdigo que pudesse ser lido e processado pelos primeiros computadores.
6.3.1

Alguns aspectos tericos

Como foi visto, um dos pontos fundamentais do projeto formalista de Hilbert para
a soluo de problemas matemticos era descobrir um procedimento efetivo (ou mecnico)
para verificar a validade de proposies matemticas. Depois do Teorema de Gdel
evidenciou-se que tal proposta irrealizvel, mas todos os estudos em torno desse projeto de
Hilbert e dos resultados de Gdel propiciaram, entre outras coisas, uma adequada
caracterizao do termo efetivamente computvel, atravs da Mquina de Turing e das funes
lambda-definveis de Church e Kleene. Tornou-se claro o que um procedimento efetivo,
tornando-se claro ao mesmo tempo o que um problema computvel.
Um procedimento efetivo uma seqncia finita de instrues que podem ser
executadas por um agente computacional, seja ele homem ou no. Propriedades:
I.
II.

III.
IV.
V.

a descrio deve ser finita;


parte de um certo nmero de dados, pertencente a conjuntos especficos de objetos, e
espera-se que produza um certo nmero de resultados que mantenham relao
especfica com os dados;
supe-se que exista um agente computacional humano, eletrnico, mecnico, etc.
que execute as instrues do procedimento;
cada instruo deve ser bem definida;
as instrues devem ser to simples que poderiam ser executadas por algum usando
lpis e papel, em um espao de tempo finito.

Esse procedimento efetivo tambm chamado de algoritmo. Programas de


computadores que terminam sua execuo, fornecido qualquer conjunto especfico de dados
de entrada, so algoritmos.
A descrio finita do algoritmo deve ser feita atravs de uma determinada linguagem.
Essa linguagem algortmica deve pertencer a um subconjunto no ambguo de uma linguagem
natural, tal como Francs ou Ingls, ou ser uma linguagem artificial construda para isso,
como, por exemplo, as linguagens de programao (Fortran, Lisp, Ada, Cobol, Pascal, etc.).
As frases da linguagem descrevero as operaes a serem executadas. A forma ou formato de
procedimentos efetivos em uma linguagem algortmica qualquer especificada por um
conjunto de regras chamado regras de sintaxe, cujas propriedades esto acima enumeradas
[BL74]. Essa sintaxe refere-se aos programas corretamente escritos nela e o relacionamento

109

entre os smbolos e frases que ocorrem nesses programas. Alguns autores a dividem em
concreta e abstrata [Mos92]. A concreta envolve:
reconhecimento de textos (seqncias de caracteres) corretamente escritos de
acordo com as especificaes da linguagem;
a colocao dos textos, de maneira no ambgua, dentro das frases que compe o
programa. A sintaxe abstrata molda as estruturas de frases do programa.
Portanto a sintaxe refere-se forma dos programas: de que modo expresses,
comandos e declaraes podem ser justapostos para compor um programa. Uma linguagem
de programao torna-se assim, entre outras coisas, uma notao formal para a descrio de
um algoritmo, entendendo-se por notao formal um simbolismo que no tenha as imprecises
nem a variabilidade de uma linguagem natural, que possibilite rigor nas definies e
demonstraes sobre os procedimentos.
Uma linguagem de programao necessita ainda de outros requisitos. Deve ser
universal, isto , que qualquer problema cuja soluo possa ser encontrada atravs de um computador
pode ser escrito com ela *. Na prtica deve ser apta a resolver, no mnimo, os problemas da
rea para a qual foi projetada . E uma caracterstica fundamental: ser implementvel em
computador, isto , deve ser possvel executar qualquer procedimento bem formado na
linguagem [LSSK79].
Uma linguagem de programao tambm possui uma semntica. A semntica de um
programa ir depender exclusivamente do que se deseja causar objetivamente quando o
programa for executado por um agente computacional, eletrnico ou no. Os computadores
atualmente so mquinas complexas. Quando esto executando programas, luzes se acendem,
cabeotes dos discos movem-se, corrente eltrica flui pelos circuitos, letras aparecem na tela
ou so impressas, e assim por diante. Um programa controla todos esses fenmenos
mediante sua semntica. E se so consideradas as linguagens de programao de alto nvel, que
no controlam diretamente esses detalhes de ordem fsica, falar de semntica significa falar
das caractersticas que tornam tais linguagens implementveis em qualquer computador, isto
, quais as caractersticas da execuo do programa que so comuns a todas as
implementaes. Portanto a semntica uma entidade abstrata: ela modela o que o programa
quer causar quando executado, independentemente do seu uso nesse ou naquele
computador. A semntica de uma linguagem de programao a mesma semntica de todos
os programas escritos nela [Mos92].
A evoluo das linguagens de programao chegou at esses conceitos por
caminhos e esforos muitas vezes paralelos. Alguns informatas buscam caminhos para
projetar linguagens que combinem uma grande generalidade de usos (aplicaes matemticas
e cientficas, grficas, comerciais, etc.) com simplicidade e eficincia. Isso levou ao
desenvolvimento de diferentes paradigmas estilos e objetivos de programao como o
imperativo, o funcional, o orientado a objeto, o lgico, etc. Outros buscaram e buscam caminhos para
*

Qualquer linguagem em que se possa definir uma funo recursiva ser universal.

Uma linguagem com somente tipos numricos e arrays deve resolver naturalmente problemas numricos, por exemplo.

A maioria dos livros ao falar de semntica usa a palavra behavior, de difcil traduo. Pode-se dizer que um conjunto de
regras que determinam a ordem na qual as operaes do programa iro ser executadas, quais sero executadas primeiro e
quando se encerraro.

110

expressar a sintaxe e a semntica, esta ltima talvez a parte mais importante dentro do assunto
linguagens de programao e que levou ao surgimento de diversas linhas: a semntica
algbrica, a denotacional, a de aes, etc.
6.3.2

Desenvolvimentos anteriores a 1940

Mas, antes de entrar nesse mundo das linguagens, de que forma eram anteriormente
especificados os algoritmos? Os mais antigos algoritmos escritos que se conhecem so os da
velha Mesopotmia. Eram seqncias de clculos sobre conjuntos particulares de dados e no
uma abstrao * de procedimento como entendido na programao atual [Knu76]. Na
civilizao grega, vrios algoritmos no triviais foram estudados, como por exemplo o de
Euclides. A descrio era ainda informal.
A notao matemtica comeou a evoluir efetivamente a partir dos sculos XIII e
XIV e notaes para relaes funcionais tiveram um bom desenvolvimento. Na Computao,
Babbage e Lady Lovelace elaboraram, entre outros, um programa para o clculo dos nmeros
de Bernoulli [Mor61]. Era na verdade uma espcie de programa em linguagem de mquina,
como nos primrdios dos computadores digitais na dcada de 1940.
Em 1914, Leonardo Torres e Quevedo usaram uma linguagem natural para
descrever um pequeno programa para seu autmato hipottico. Helmut Schreeyer fez uma
descrio anloga em 1939 para a mquina que construa juntamente com Zuse.
O prprio Alan M. Turing, para tratar do problema da indecidibilidade de Hilbert
construiu uma linguagem muito primitiva para sua mquina. Nela s havia comandos para ler,
testar uma condio e escrever smbolos sobre uma fita, movendo para a direita ou esquerda
uma cabea de leitura e gravao. Conforme Knuth [KP80], as tabelas de Turing (como
Alan Turing chamava sua linguagem) representaram a notao de mais alto nvel para uma
descrio precisa de algoritmo que foram desenvolvidas antes da nossa histria comear
exceto talvez pela notao-lambda de Alonzo Church (que representa um approach
inteiramente diferente para o clculo) .
6.3.3

As primeiras tentativas

Nos primeiros tempos da computao propriamente dita os programas eram


escritos em cdigo de mquina e colocados diretamente no computador por meio de cabos e
fios. Por exemplo:
0000 0001 0110 1110
0100 0000 0001 0010
1100 0000 0000 1101
*

Uma abstrao um modo de pensar pelo qual nos concentramos em idias gerais ao invs das manifestaes especficas
destas idias.(...) Na programao, a abstrao refere-se distino que fazemos entre: (a) o que um pedao de programa faz
e (b) como ele implementado. Uma linguagem de programao em sentido prprio consiste de construes que so (em
ltima instncia) abstraes do cdigo de mquina [Wat90]. Exemplos tpicos de abstraes so as funes e
procedimentos de uma linguagem de programao.

111

Segundo Grace Murray Hopper *, como curiosidade, a frase mais freqente que ns
ouvamos era que a nica maneira de se programar em um computador era em octal
[Wex80]. Em 1946, junto com Howard Aiken, era assim que ela programava o Mark I.
Percebeu-se claramente que os programas em cdigo de mquina eram
extremamente difceis de editar e modificar, e quase impossveis de se compreender. A
comunidade computacional logo entendeu que era necessrio inventar uma notao simblica
para tornar os programas mais fceis de escrever. Nesta evoluo as instrues acima ficam
com o formato:
LOAD X
ADD R1 R2
JUMPZ H
Uma vez feito o programa dessa maneira, o programador o prepararia para ser
executado, 'escrevendo' manualmente (em painis, atravs de um emaranhado de cabos e
'plugs') as instrues no correspondente cdigo de mquina. Este processo foi chamado de
assembling. O que depois se queria fazer era com que a prpria mquina executasse essa
operao.
Mas mesmo quando programava com esses cdigos de operao mnemnicos
(tambm chamados de linguagem de montagem), o programador ainda estava trabalhando em
termos dos conjuntos de instrues da mquina, isto , os algoritmos eram expressos em
termos de instrues muito primitivas (detalhes sobre registradores, endereos, saltos, etc.).
Da a denominao linguagens de baixo nvel. A busca de linguagens que pudessem permitir que
os algoritmos fossem expressos em termos anlogos idia elaborada na mente do
programador fez com que aparecessem os primeiros compiladores e comeassem a surgir as
chamadas linguagens de alto nvel .
Claramente percebem-se duas principais tendncias nesses anos pioneiros: aqueles
que procuravam saber o que era possvel implementar e os que estavam preocupados com o
que era possvel escrever. Estes ltimos criaram estruturas conceituais iterao, tipos de
dados, recursividade, etc. importantes no processo de programao e que foram depois
objetos de estudo na Teoria da Computao. Naturalmente foram precisos muitos anos para
que essas duas tendncias se juntassem para formar uma sntese adequada.
6.3.4

Konrad Zuse e seu Plancalculus

Depois de salvar o Z4 das bombas dos aliados e mudar-se para a pequena vila
Hintesrtein nos Alpes, Konrad Zuse percebeu que ainda no existia uma notao formal para
a descrio de algoritmos e comeou a trabalhar em uma. O resultado foi uma linguagem
chamada Plankalkl (program calculus), uma extenso do clculo proposicional e de
*

Nome importante no desenvolvimento histrico das linguagens de programao. Ela desenvolveu programas para o Mark I,
um dos precursores do computador moderno; esteve envolvida na construo do UNIVAC e trabalhou no primeiro
compilador que se tem notcia, o A-2, e em uma das primeiras linguagens matemticas, originalmente chamada A-3 e
depois MATH-MATIC. Em 1955 trabalhou na equipe que elaborou as primeiras especificaes para uma linguagem de uso
comercial, originalmente chamada B-0, depois FLOW-MATIC, que forneceu inmeras caractersticas para o COBOL.

O termo alto nvel refere-se semelhana que a linguagem tem com uma linguagem natural ou matemtica, opondo-se a
baixo nvel, mais semelhante linguagem de mquina.

112

predicado de Hilbert. Em uma monografia sobre o Plankalkl, em 1945, Zuse comeava


dizendo: A misso do Plancalculus fornecer uma descrio formal pura de qualquer
procedimento computacional. O Plancalculus inclua alguns conceitos fundamentais da
programao: tipos de dados, estrutura de dados hierrquicos, atribuio, iterao, etc. Ele
pensou inclusive em usar o Plancalculus como base de uma linguagem de programao que
pudesse ser traduzida por uma mquina. Pode-se resumir sua idia dizendo que o Plankalkl
incorporou muitas idias extremamente importantes, mas faltou-lhe uma sintaxe amigvel
para expressar programas em um formato legvel e facilmente editvel. Como
complementao de seu trabalho desenvolveu algoritmos para ordenao, teste de
conectividade de grafos, para aritmtica de inteiros (inclusive raiz quadrada) e at um jogo de
xadrez, entre outros. Infelizmente a maior parte destas coisas permaneceu desconhecida at
1972, a no ser por alguns extratos aparecidos em 1948 e 1959, quando seu trabalho chamou
a ateno de alguns leitores ingleses. interessante especular sobre o que teria acontecido se
ele tivesse publicado tudo imediatamente; teriam as pessoas sido capazes de entender idias
to radicais? [KP80].
6.3.5

O diagrama de fluxos

Em Princeton, do outro lado do Atlntico, Herman H. Goldstine e John von


Neumann estavam preocupados com o mesmo problema: como se poderiam representar
algoritmos de uma maneira precisa, em uma linguagem de mais alto nvel que a de mquina.
Ao desenvolver os projetos lgicos do computador EDVAC e da mquina do IAS
(Institute for Advanced Study, da universidade de Princeton), von Neumann tinha tambm
uma grande preocupao com a sua programao. Ele deixou um manuscrito que
provavelmente o primeiro programa escrito para um computador com programa armazenado
na memria *. O problema proposto o da classificao de uma srie de dados em ordem
crescente. Von Neumann props o mtodo que ficou conhecido mais tarde como classificao
por intercalao, at hoje um dos algoritmos mais usados para classificar dados na memria . J
a aparecem alguns expedientes que prenunciam o surgimento das linguagens de montagem
(linguagens simblicas, mnemnicas, muito prximas linguagem binria das mquinas)
como os smbolos para denotar grandezas ou o conceito bsico de alocao dinmica de memria .
A descrio termina com uma anlise do tempo de execuo muito semelhante s anlises
difundidas por Donald Knuth.

Uma histria e anlise desse manuscrito esto em um artigo feito por Knuth em 1970, intitulado von Neumanns First Computer
Program

Na realidade o manuscrito contm somente uma parte da codificao do mtodo, que a parte do processo de duas
sequncias j em ordem

Sem entrar em detalhes mais tcnicos, significava que a atribuio de endereos era feita em relao a um endereo inicial
arbitrrio, a ser preenchido mais tarde, conseguindo-se o efeito de relocao manual do cdigo, de modo a ser usado como
uma subrotina aberta (outro conceito que exige maior conhecimento tcnico sobre sistemas operacionais e
programao/arquitetura de computadores)

113

Figura 35: Um exemplo de um diagrama de fluxos

Para o projeto do IAS, von Neumann e Goldstine compuseram trs volumes


(1947/48) intitulados Planning and coding of problems for an electronic computing instrument. O
primeiro volume dedicado metodologia da programao, o segundo volume traz vrios
exemplos de programas e o terceiro volume dedicado construo de subrotinas
reutilizveis e construo de bibliotecas destas subrotinas.

114

Figura 36: Computador IAS, 1952

Eles propuseram uma representao pictrica, atravs de caixas unidas por setas,
que chamaram de fluxogramas. Descreveram fluxogramas que continham uma caixa
denominada caixa de anotao (especificao). Nessa caixa descreviam-se certos fatos sobre
o resultado de uma computao (o efeito por ela provocado). O contedo dessa caixa deveria
ser confrontado com as operaes descritas pelo fluxograma, possibilitando uma verificao
da consistncia entre o fluxograma e as intenes do programador expressas atravs das
anotaes. Com von Neumann e Goldstine encontra-se tambm a primeira referncia
corretude de programas.
A nfase era colocada no poder de clculo e no na expressividade das estruturas
como Zuse e esse trabalho foi largamente difundido entre as pessoas envolvidas com
computadores na poca. Tal fato, acompanhado da excelente qualidade de apresentao e
pelo prestgio de von Neumann, significaram que seu trabalho teve um enorme impacto,
tornando-se fundamento para tcnicas de programao em todo o mundo. O conceito
matemtico de igualdade foi substitudo pelo de atribuio [KP80].
6.3.6

A contribuio de Haskell

Haskell B. Curry, contemporneo de Goldstine e von Neumann, aps uma


experincia com um programa complexo no ENIAC, sugeriu uma notao mais compacta
que a deles. Na prtica no obteve sucesso pela maneira estranha com que analisava e dividia
os problemas. O principal ponto de interesse no trabalho de Curry, no entanto, no foi a sua
linguagem de programao, mas os algoritmos que analisou para converso de parte desses
em cdigo de mquina. Com isso proporcionou uma descrio recursiva de um procedimento
para converter expresses aritmticas claras em um cdigo de mquina apropriado, sendo por
isso a primeira pessoa a descrever a fase de gerao de cdigo de um compilador [KP80].

115

6.4

Interpretadores algbricos e linguagens intermedirias

Em 1951, promovidas pela Marinha americana, houve uma srie de trs


conferncias, e naquela que tratava sobre manipulao de dados e computao automtica
apareceu um trabalho de John Mauchly, o Short Order Code. Codificado para o computador
BINAC, em 1949, por William F. Schmitt, foi recodificado pelo mesmo em 1950 para o
UNIVAC e usava dois dgitos para representar alguns smbolos, ao invs do usual cdigo
binrio. Era na verdade uma espcie de interpretador algbrico: o programa percorria cada linha
de representao de cdigo, da direita para a esquerda, desviava para as chamadas subrotinas,
executava-as e ia para a prxima instruo.
Arthur W. Burks e colegas, na Universidade de Michigan, investigando o processo
de passar alguns problemas de processamento de dados descritos em uma linguagem comum
para a linguagem interna de um computador, esboaram uma linguagem intermediria que
seria o passo anterior de uma linguagem interna do computador, e que tinha um alto nvel de
abstrao [Bur51a].
Heinz Rutishauser, colaborador de Zuse no Z4, publicou em 1952 um trabalho
descrevendo um computador hipottico e uma linguagem algbrica simples, junto com os
fluxogramas de von Neumann para o que seriam dois compiladores * para essa linguagem.
Um para decodificar todos os loops enquanto o outro produzia cdigo compacto atravs de
registradores de ndice. Como o Short Code, o programador deveria reservar manualmente as
localizaes de memria para variveis e constantes. Um trabalho semelhante apareceu na
Itlia, na tese de dissertao de Corrado Bhm, que desenvolveu uma linguagem algbrica e o
primeiro compilador para ela na prpria linguagem, que reconhecia precedncia de operaes.

6.5

Os primeiros compiladores

Conforme Knuth e Trabb [KP80], o termo compilador no era ainda utilizado


nessa poca. Na verdade falava-se sobre programao automtica. No incio da programao em
linguagem de mquina foram desenvolvidas subrotinas de uso comum para entrada e sada,
para aritmtica de ponto flutuante e funes transcendentais. Junto com a idia de um
endereamento realocvel pois tais subrotinas seriam usadas em diferentes partes de um
programa foram criadas rotinas de montagem para facilitar a tarefa de uso das subrotinas e
de endereamento relativo, idia desenvolvida por Maurice V. Wilkes. Para isso foi inventada uma
pseudo linguagem de mquina. Uma rotina interpretativa iria processar essas instrues, emulando
um computador hipottico [Gol72] [Knu69]. Esse o sentido do termo compilador at
aqui usado.
AUTOCODE foi o primeiro compilador real, que tomava uma declarao
algbrica e a traduzia em linguagem de mquina. Seu desconhecido autor, Alick E. Glennie,
das foras armadas da Inglaterra, declarava em Cambridge, em 1953, sua motivao para
elabor-lo: A dificuldade da programao tornou-se a principal dificuldade para o uso das
*

Os termos interpretador e compilador na linguagem da computao tm um sentido tcnico especfico, que na poca citada
ainda no correspondiam ao atual significado.

116

mquinas. Aiken expressou sua opinio dizendo que a soluo para esta dificuldade deveria
ser buscada pela construo de uma mquina especial para codificar(...) Para tornar isso fcil
deve-se elaborar um cdigo compreensvel. Tal coisa somente pode ser feita melhorando-se a
notao da programao [KP80]. John Backus [Wex80] discute essa distino que Knuth
faz, citando J. Halcomb Laning, Jr. e Niel Zierler como os inventores do primeiro
compilador algbrico, para o computador Whirlwind. Como esta, so muitas as discusses
ainda hoje sobre quem foi o pioneiro no assunto. De qualquer maneira esses primeiros
sistemas denominados genericamente de programao automtica (acima citada) eram muito
lentos e no fizeram muito sucesso, embora tivessem sido fundamentais para preparar a base
do desenvolvimento que se seguiu.
Este veio com o A-0, agora sim o primeiro compilador propriamente dito,
desenvolvido por Grace Murray Hopper e equipe, aprimorado para A-1 e A-2
subseqentemente. O prximo passo seria o A-3, desenvolvido em 1955, produzido ao
mesmo tempo com o tradutor algbrico AT-3, mais tarde chamado MATH-MATIC.
Em 1952 a IBM construa o computador 701 e em 1953 foi montada uma equipe
liderada por John Backus para desenvolver um cdigo automtico que facilitasse a
programao. O resultado foi o Speedcoding. Backus tornou-se uma das principais figuras na
histria da evoluo das linguagens de programao, tendo um papel fundamental no
desenvolvimento dos grandes compiladores que viriam a partir do ano de 1955 como o
FORTRAN e o ALGOL, alm do estabelecimento da moderna notao formal para a
descrio sinttica de linguagens de programao, denominada BNF, Backus Normal Form.

6.6 A figura de von Neumann

Figura 37: John von Neumann

117

Assim como no se pode falar de Computabilidade, ou sobre a Teoria da


Computao, ou ainda sobre os Fundamentos da Computao, sem deixar de citar nomes
como Turing e Church, tambm em relao ao advento do computadores, a partir da dcada
de 1940, no se pode deixar de falar da figura de Jnos Louis von Neumann (1903 1957).
Este hngaro conhecido como Jancsi, uma forma diminutiva de seu prenome Jnos (depois
de naturalizado americano seria tratado pelo apelido Johnny), era no final de sua vida um dos
mais poderosos homens em cena no comando da poltica americana com relao s cincias.
Mas esta foi somente uma das muitas qualidades que o distinguiu nos diferentes pases onde
viveu e nos variados campos da inteligncia em que exerceu sua atuao.
Tido como brilhante desde sua infncia (falava grego com seu pai aos seis anos de
idade [Die81]), entrou para a universidade de Budapeste em 1921 para estudar Matemtica.
Adotou a prtica, pouco ortodoxa!, de ir universidade somente no fim dos cursos, para
prestar exames, saindo-se sempre muito bem. Enquanto isso, entre 1921 e 1923, na
universidade de Berlin, estudou Qumica, tendo entrado em contato com nomes ilustres,
como Albert Einstein, Fritz Haber e outros cientistas hngaros, como Denis Gabor, Leo
Szilard e Eugene Wigner. Em 1923 dirigiu-se a Zurich, para estudar Engenharia Qumica,
formando-se em 1925. Doutorou em Matemtica, no ano de 1926, pela Universidade de
Budapeste, com uma tese sobre a Teoria dos Conjuntos (com 20 anos, estimulado por um
dos mais famosos matemticos do sculo XX, David Hilbert, enunciou uma definio sobre
nmeros que ainda hoje utilizada). Ainda fez um ps-doutorado na prestigiosa Universidade
de Gttingen, onde estudou sob a direo de Hilbert, no perodo de 1926 a 1927. Tornou-se
um dos membros da elite dos fsicos revolucionrios da mecnica quntica, e rapidamente
ganhou grande reputao pelos seus trabalhos na lgebra (como aluno de Hilbert foi uma das
estrelas do formalismo), Mecnica Quntica e Teoria dos Conjuntos. Convidado nos anos 30
a visitar a universidade de Princeton, foi chamado para ser um dos seis professores de
Matemtica que formariam parte do recm-inaugurado Instituto de Pesquisas Avanadas (os
outros eram J. W. Alexander, A. Einstein, M. Morse, O. Veblen, J von Neumann e H. Weyl),
cargo que levou at o fim de sua vida.[Asp90].
Conheceu Kurt Gdel (que como ele, naturalizou-se americano durante a 2a guerra),
e Church, orientador, naquela poca, da tese de doutoramento de Turing. Tomou
conhecimento da publicao deste, On Computable Numbers with an Application to the
Entscheidungsproblem, e convidou-o para trabalhar como seu assistente, pois estava interessado
em sua idia, que envolvia os conceitos de um projeto lgico para uma mquina universal.
Turing, no entanto, preferiu retornar a Cambridge e, um ano mais tarde, envolver-se-ia na
construo do computador Colossus, em Bletchley Park, na Inglaterra.
O interesse de von Neumann por computadores encaminhou-se rapidamente por
uma vertente diferente daquela seguida pelos seus colegas. Percebeu o potencial da nova
mquina para soluo matemtica de problemas e no somente para elaborao de tabelas.
Durante a guerra, os seus conhecimentos em hidrodinmica, balstica, meteorologia, teoria
dos jogos, e estatstica, foram colocados em uso em vrios projetos. Esse trabalho levou-o a
perceber que poderiam ser usados dispositivos mecnicos para computar clculos e, embora
se diga que seu primeiro envolvimento com um computador foi atravs do ENIAC, de fato
nessa poca ele estava com Howard Aiken, em Harvard, no projeto do Mark I (ASCC). Sua
118

correspondncia em 1944 mostra seu interesse no somente pelo trabalho de Aiken, mas
tambm com os computadores baseados em rels, de George Stibitz, e pelas pesquisas de Jan
Schilt no Watson Scientific Computing Laboratory da Universidade de Columbia. No fim da
II Guerra von Neumann tornou-se consultor, servindo a numerosos comits com sua
prodigiosa habilidade de rapidamente ver a soluo de problemas.
Ele tinha uma grande capacidade de aglutinar ao seu redor cientistas muitas vezes
separados por causa de exigncias de segredo. Movia-se confortavelmente entre o pessoal de
Los Alamos (National Laboratory e Manhattan Project) assim como entre os engenheiros da
Moore School of Electrical Engineering, da Universidade de Pensilvnia, que estavam
construindo o ENIAC. Uma combinao de diferentes desenvolvimentos cientficos
conduziram inveno do ENIAC: novas tecnologia de vlvulas, lgica booleana, as idias de
Babbage-Lovelace, as teorias de controle via retroalimentao (feedback), etc., e von Neumann
era talvez o nico que conhecia sobre todos estes temas, alm de politicamente dar-se bem
com as sociedades de Princeton, Los Alamos e Washington. No projeto Manhattan,
trabalhou juntamente com Oppenheimer, Fermi, Teller, Bohr e Lawrenceand, que, entre
outros, construram a bomba atmica. [Ula80] [Gol72].
6.6.1

O conceito de programa armazenado

Quando se terminou o ENIAC, era tarde para utilizar tal equipamento no esforo
de guerra, mas certamente foi possvel realizar o objetivo dos seus inventores: um clculo
balstico, que poderia tomar vinte horas de um especialista, seria agora feito pela mquina
em menos de 30 segundos. Pela primeira vez a trajetria de um mssil poderia ser calculada
em menos tempo do que levava o mssil real para atingir seu alvo. O primeiro problema a ser
resolvido por essa mquina foi um ensaio de clculo para a bomba de hidrognio, ento
sendo projetada.

119

Figura 38: Von Neumann e o computador IAS

Von Neumann tinha se unido ao grupo em meados de 1944, atravs do matemtico


Herman H. Goldstine *, como consultor especial. Seu gnio para questes relacionadas ao
pensamento formal, sistemtico e lgico foi aplicado s propriedades daquela imensa mquina
de 17.000 vlvulas, 70.000 resistores e 10.000 capacitores. Os problemas relativos
engenharia eram ainda imensos, mas estava se tornando claro que o componente no-fsico,
a codificao, aquilo que estabelecia a operao da mquina, era igualmente difcil e importante.
At o aparecimento do transistor, o que ocorreu alguns poucos anos depois, o
ENIAC representava o limite fsico daquilo que poderia ser feito atravs de um grande
nmero de chaves e conexes. Em 1945, o aprimoramento possvel no poder computacional
era um melhoramento na estrutura lgica da mquina, e von Neumann era provavelmente o
nico homem, a oeste da equipe inglesa de Bletchley Park (que tinha construdo o
computador COLOSSUS para decifrar o cdigo germnico de guerra), preparado para
compreender os mecanismos lgicos subjacentes no primeiro computador digital.
Parte da razo pela qual o ENIAC era capaz de operar rapidamente estava em que
os caminhos seguidos pelos impulsos eltricos eram estabelecidos dentro do equipamento.
Esta rota eletrnica era a materializao das instrues de mquina que transformavam os
dados de entrada em solues de problemas. Diferentes tipos de equaes poderiam ser
resolvidas, e a performance dos clculos poderia ser alterada pelos resultados de

A partir desse momento deu-se o incio de uma grande amizade entre os dois.

120

subproblemas *. Mas o que era ganho no poder de clculo e velocidade era perdido na
flexibilidade. Um srio obstculo consistia na necessidade da programao externa, atravs de
painis e cabos de conexo para a soluo de um determinado problema, um procedimento
que poderia levar vrios dias . Aps a entrada de von Neumann na equipe percebeu-se que o
ENIAC no seria a ltima palavra em termos de mquinas calculadoras, mas sim que era o
prottipo, ainda imperfeito, de uma nova categoria de mquinas. Antes mesmo de estar
terminado, seus construtores j estavam elaborando o projeto de seu sucessor, e von
Neumann compreendeu, daquelas discusses com seus colegas, que se estava falando de uma
mquina de uso geral.
Na mesma poca, a Universidade de Pensilvnia celebrou um contrato suplementar
para a construo do EDVAC, proposta um pouco antes por Mauchly e Eckert, cujas
caractersticas eram ainda um tanto vagas. O novo projeto despertou enorme interesse em
von Neumann, que comeou a participar de reunies relativas ao projeto, juntamente com
Eckert, Mauchly, Goldstine e outros.
Conforme [Kow96], um fator decisivo para viabilizar o projeto de uma nova
mquina foi a idia de Eckert de utilizar linhas de retardo para implementar elementos de
memria de custo muito mais baixo do que se fossem utilizadas vlvulas. Outro resultado das
reunies com a equipe do projeto e da freqente troca de correspondncia, foi a produo de
um documento descrevendo os detalhes da organizao da nova mquina. Von Neumann
ficou encarregado de escrever o First draft of a report on the EDVAC (1945), documento que
nunca passou da fase de rascunho (foi publicado na ntegra somente anos mais tarde, com
forma ligeiramente editada).
Existem controvrsias, alimentadas por nomes como Randell, Rosen, Stern e
Wilkes, sobre quem teria sido o primeiro a propor o conceito de programa armazenado. O
trabalho terico de Turing, com o qual von Neumann estava familiarizado, j indicava essa
possibilidade. Por outro lado existem referncias bastante obscuras e ambguas, em fontes
anteriores ao documento de von Neumann, alm das afirmaes posteriores de Eckert e
Mauchly. No h dvida de que a idia de programa armazenado estava no ar, e bastante
provvel que tenha sido sugerida por mais de uma pessoa. Apesar da notoriedade dessa
controvrsia, no parece que sua importncia seja mais que simblica. Independentemente de
quem tenha sido o primeiro a sugerir a idia de programa armazenado na memria, o fato
que o documento redigido por von Neumann a primeira descrio minuciosa e quase
completa da arquitetura de um computador desse tipo, com o repertrio de operaes que
permitiriam a utilizao plena de seus recursos. Embora resultado de vrias reunies, o fato
de von Neumann ter sido consultor no projeto e encarregado de sua redao indica o peso da
sua contribuio. Depoimentos de colaboradores indicam que o projeto lgico do
computador deve-se principalmente a ele, enquanto Eckert e Mauchly foram os principais
* O ENIAC estava habilitado de acordo com a idia de Babbage, em seu Engenho Analtico, pela qual ele poderia ser

reprogramado para solucionar diferentes equaes no alterando a mquina, mas a seqncia dos cartes de entrada.

A origem do ENIAC como um dispositivo voltado para um projeto balstico era parcialmente responsvel por esta pouca
flexibilidade. No era a inteno dos engenheiros da Moore School construir uma mquina universal. O contrato
estabelecido especificava claramente que eles deveriam criar um novo tipo de calculador de trajetrias.

121

responsveis pelo projeto de circuitos de alta velocidade, linhas de retardo e outros detalhes
fsicos, contribuies igualmente fundamentais [Kow96].
6.6.2

A arquitetura de von Neumann

O relatrio de von Neumann ficou incompleto, mas sua leitura instrutiva. Muitas
idias continuam vlidas at hoje: a separao entre arquitetura lgica e fsica, a diviso do
projeto em unidades de controle, aritmtica, memria, entrada e sada, precursoras de todos
os projetos posteriores. Alm disso, devido ao interesse nos trabalhos relativos a sistemas
neurais de McCulloch e Pitts, ele descreveu vrios dispositivos do computador fazendo
analogia com o sistema nervoso (mesmo porque na poca no existia ainda uma linguagem
adequada para tais descries). Von Neumann, em um nvel terico, estava intrigado com
algumas aparentes semelhanas na organizao e funcionamento paralelo da mente e dos
computadores, o que poderia levar a pensar em teorias lgico-formais que abrangessem tanto
um quanto outro. De alguma maneira, pensava, esses mecanismos poderiam evoluir para
algum tipo de extenso intelectual.
Com o fim da guerra em 1945, iniciaram-se gestes para construo de outro
computador para aplicaes cientficas em geral, com o apoio do IAS e da RCA(Radio
Corporation of America), assim como da Marinha e Exrcito. O projeto foi descrito em um
documento bsico, composto de duas partes, onde a primeira a mais fundamental, referente
ao projeto lgico. Conjuntamente com a descrio incompleta do EDVAC, esse esforo
constituiu a inspirao para a elaborao da arquitetura que foi, e continua sendo, modelo
de quase todos os projetos de computadores subsequentes:a arquitetura de von Neumann.
A expresso parece ter sido usada pela primeira vez por J. Backus, em 1977, durante o
recebimento do Prmio Turing da ACM, em palestra intitulada Can programming be liberated from
the von Neumann style? A functional style and its algebra of programs. Nela criticava o fato de que
aps mais de 30 anos da sua introduo, as arquiteturas de von Neumann ainda eram
dominantes e exerciam enorme influncia sobre o paradigma imperativo das linguagens de
programao mais utilizadas, impedindo o desenvolvimento de outros modelos *.
No entanto pode-se afirmar (...) que a estrutura lgica introduzida nos projetos do
EDVAC e da mquina IAS constitui o princpio de funcionamento de computadores digitais
at hoje, apesar do progresso tecnolgico que nos separa daquela poca. Na realidade, no
parece provvel que os conceitos bsicos de arquitetura de von Neumann sejam abandonados
em futuro prximo. Esta a opinio, por exemplo, de Patterson (Patterson, D. A., in
Microprocessors in 2020, Scientific American 273, 3, 1995, p. 48-51), um dos cientistas que mais
contriburam para a concepo de modernos circuitos integrados [Kow96].

A expresso usada por Backus tornou-se popular e passou a denotar, de maneira genrica, o fato de que a eficincia de
processamento das mquinas com a concepo introduzida por von Neumann limitada por problemas de comunicao
entre a memria e as outras unidades. interessante notar que no documento em que descreve o EDVAC, o prprio von
Neumann utiliza a palavra gargalo quando comenta as dificuldades de projeto e funcionamento de memria [Kow96].

122

7 A revoluo do hardware e do software


Os primeiros computadores da dcada de 1940 possuam somente dois nveis de
linguagem de programao: o nvel da linguagem de mquina, no qual toda a programao era
feita, e o nvel da lgica digital, onde os programas eram efetivamente executados. Com
Maurice V. Wilkes, em 1951, na Universidade de Cambridge, surgiu a idia de se projetar um
computador de trs nveis, a fim de se simplificar o hardware. Essa mquina, conhecida como
EDSAC (Electronic Delay Storage Automatic Calculator), tinha um programa denominado
interpretador, armazenado permanentemente, cuja funo era executar os programas em
linguagem de mquina. O hardware assim poderia ser simplificado: teria apenas que executar
um pequeno conjunto de microinstrues armazenadas *, o que exigia menos circuitos
eletrnicos. A partir da comearam a evoluir as linguagens e as arquiteturas das mquinas.

7.1 Da segunda gerao de grandes computadores aos dias de hoje


A segunda gerao (1956 - 1963) foi impulsionada pela inveno do transistor (1948)
e em 1956 j se produziam computadores com esta tecnologia. Apareceram tambm os
modernos dispositivos, tais como as impressoras, as fitas magnticas, os discos para
armazenamento, etc. Os computadores passaram a ter um desenvolvimento rpido,
impulsionados principalmente por dois fatores essenciais: os sistemas operacionais e as
linguagens de programao.
Os circuitos integrados propiciaram um novo avano e com eles surgiram os
computadores de terceira gerao (1964 - 1970). As tecnologias LSI, VLSI e ULSI abrigam
milhes de componentes eletrnicos em um pequeno espao ou chip, iniciando a quarta
gerao, que vem at os dias de hoje.
Os atuais avanos em pesquisa e o projeto de novas tecnologias para os
computadores esto possibilitando o surgimento da quinta gerao. Dois avanos que
configuram um divisor de guas so o processamento paralelo, que quebrou o paradigma de von
Neumann, e a tecnologia dos supercondutores.

7.2 O desenvolvimento das linguagens


Vrias linguagens, muitas delas conceitualmente diferentes entre si, foram surgindo e
sendo aprimoradas, incorporando-se umas em outras. Com algumas poucas excees, o
projeto de cada linguagem foi influenciado pela experincia em linguagens anteriores.
Merecem ateno especial, pelo seu pioneirismo e pelos novos paradigmas que introduziram,
as linguagens alto nvel FORTRAN e LISP.

As instrues do programa em linguagem de mquina seriam convertidas em conjuntos dessas microinstrues, que ento
so executadas.

Large Scale Integration, Very Large Scale Integration, Ultra Large Scale Integration.

123

Com relao ao FORTRAN, em 1954 realizou-se um simpsio sobre computao


automtica *, e seu maior evento foi a apresentao do compilador algbrico de Laning e
Zierler (ver Os primeiros compiladores). Foi o primeiro software que permitiu como entrada de
dados um cdigo algbrico elegante, embora limitado. Nesse meio tempo John Backus j
montara um grupo de pesquisa dentro da IBM para trabalhar em um projeto sobre
programao automtica, a fim de responder a uma questo fundamental: (...) pode uma
mquina traduzir uma linguagem matemtica abrangente em um conjunto razovel de
instrues, a um baixo custo, e resolver totalmente uma questo? [Wex80]. Em novembro
de 1954 a equipe de Backus tinha criado o IBM Mathematical FORmula TRANslation System, o
FORTRAN. O primeiro pargrafo da apresentao desse trabalho enfatizava que os sistemas
anteriores ofereciam duas escolhas: ou uma fcil codificao e uma execuo lenta do
programa ou uma laboriosa codificao com rpida execuo, mas o FORTRAN propiciava
o melhor das duas opes [KP80]. Com o FORTRAN apareceram as expresses
simblicas, subprogramas com parmetros, mas principalmente ocorreu a primeira tentativa
de se definir rigorosamente a sintaxe de uma linguagem de programao. Um pouco mais
tarde surgiu a notao BNF para a descrio sinttica de uma linguagem de programao.
A histria do LISP remonta a Turing e Church. Pela anlise de Turing nos anos de
1936 e 1937, aps seu famoso artigo sobre o dcimo problema de Hilbert, o clculo-lambda
de Church, apesar da sua sintaxe simples, era suficientemente poderoso para descrever todas
as funes mecanicamente computveis, ou seja, pode ser visto paradigmaticamente como
uma linguagem de programao. No clculo-lambda, muitos problemas de programao,
especificamente aqueles referentes s chamadas de procedimento, esto em sua forma mais
pura, e isto influenciar diretamente linguagens como LISP e Algol [Bar84].
Em 1955 e 1956 E.K. Blum, no U.S. Naval Ordinance Laboratory desenvolveu uma
linguagem completamente diferente das demais, ADES (Automatic Digital Encoding
System), baseada na teoria das funes recursivas e no esquema desenvolvido para elas por
Kleene. Foi a primeira linguagem declarativa, no sentido de que o programador estabelece
as relaes entre as variveis quantitativas sem explicitamente especificar a ordem de avaliao
(mais frente se falar sobre este paradigma de programao).
Aparece agora a figura de John McCarthy, matemtico, um dos primeiros a trabalhar
no tema de Inteligncia Artificial. Juntamente com Marvin Minsky iniciou um grande projeto
nessa rea. Estava procurando desenvolver uma linguagem algbrica para processamento de
listas, preocupado com o problema de como representar informaes da realidade por meio
de sentenas escritas em uma linguagem formal adequada, e de como criar um programa que
executasse fazendo inferncias lgicas. Surgiu ento o LISP, uma linguagem que pode ser
utilizada como um formalismo para descrio de algoritmos, para escrever programas e
provar propriedades de algoritmos, sendo adequada computao simblica e inteligncia
artificial. Sobretudo com LISP pode-se visualizar melhor um importante conceito na
computao moderna que o uso de estruturas de dados como objetos abstratos. um dos
*

Aparece aqui novamente este termo, utilizado por Knuth [KP80] e John Backus [Wex80] e, de acordo com este ltimo
significava naqueles primeiros tempos para muitos simplesmente escrever cdigos mnemnicos e endereo simblico,
para outros o simples processo de acessar subrotinas de uma biblioteca e inserir nelas os endereos dos operandos. A
maior parte dos sistemas de programao automtica eram programas de montagem ou conjuntos de subrotinas ou os
sistemas interpretativos (...)[Wex80].

124

aspectos centrais dessa linguagem, comparada a como a Matemtica usa os nmeros naturais
como entidades abstratas.
Nos incios da dcada de 1960, fruto do trabalho de americanos e europeus, surgiu
uma linguagem projetada para representar algoritmos ao invs de se escrever programas
simplesmente, o Algol-60. Ela implementava o conceito de estrutura de blocos, onde variveis,
procedimentos, etc., poderiam ser declarados onde quer que o programa os necessitasse.
Algol-60 influenciou profundamente muitas linguagens que vieram depois e evoluiu para o
Algol-68.
PL/I surgiu como uma tentativa de se projetar uma linguagem de uso geral
reunindo caractersticas de linguagens para aplicaes numricas como FORTRAN e Algol e
para processamento de dados comerciais. Ela inovou ao permitir a construo de cdigo de
baixo nvel para o controle de excees e o conceito de processamento concorrente, entre
outros. O resultado foi algo anmalo, complexo e incoerente, de difcil implementao.
Foi a linguagem Pascal entretanto que se tornou a mais popular das linguagens do
estilo Algol, por ser simples, sistemtica e facilmente implementvel nos diferentes
computadores. O Pascal, junto com o Algol-68, est entre as primeiras linguagens com uma
ampla gama de instrues para controle de fluxo, definio e construo de novos tipos de
dados. Ada, que veio depois do Pascal, introduziu o conceito de pacotes e permite a
construo de grandes programas com estrutura modular.
Podem-se discernir na histria das linguagens certas tendncias. A primeira foi a de
perseguir altos nveis de abstrao. Os rtulos simblicos e mnemnicos das linguagens de
montagem abstraem cdigos de operao e endereos. Variveis e atribuio abstraem acesso
a um endereo de memria e atualizao. Estruturas de dados abstraem formas de
armazenamento. Estruturas de controle abstraem desvios. Procedimentos abstraem
subrotinas. E assim por diante.
Outra tendncia foi a proliferao dos paradigmas. A maioria das linguagens
mencionadas at agora so imperativas, caracterizadas por comandos que atualizam variveis. A
estrutura das linguagens imperativas induzida pelo hardware, com preocupao de que os
dados trafeguem o mais rapidamente possvel. Da alguns de seus aspectos relevantes:
seqncia de comandos, atribuio, controles (loopings), etc. ainda o paradigma dominante.
J as linguagens que seguem o paradigma funcional (tambm conhecidas como
declarativas), como o LISP, tem como caractersticas a clareza e a busca de um maior poder
expressivo, procurando manter a maior independncia possvel do paradigma de von Neumann,
que caracteriza as linguagens imperativas *. Buscam uma transparncia referencial e a no
ocorrncia de efeitos colaterais nas suas instrues. Em LISP no h o conceito de estado
dado por uma atribuio , memria, seqncia de instrues, etc., procurando-se tornar mais
visvel o uso das funes. Nas linguagens imperativas as funes dependem de estados
internos, fora de seu contexto ( x := x + argumento), com a produo de efeitos colaterais
(alterao de valores, impresso, etc.). LISP foi a ancestral das linguagens funcionais que
*

O paradigma ou arquitetura de von Neumann refere-se ao conceito de programa armazenado, conforme documento
apresentado por Neumann em junho de 1945 sobre o EDVAC. As linguagens imperativas, preocupadas com performance
de execuo, tm em em conta o trnsito dos dados entre a unidade central de processamento e os dispositivos onde esto
armazenadas instrues e informaes .

125

culminaram atualmente em linguagens como Miranda, ML e Haskell, que tratam funes como
valores de primeira classe.

Figura 39: Gargalo de von Neumann

Smalltalk uma linguagem baseada em classes de objetos. Um objeto uma varivel


que pode ser acessada somente atravs de operaes associadas a ele. Smalltalk um exemplo
de uma linguagem que segue o paradigma de orientao a objeto. Simula foi um ancestral de tais
linguagens.
importante reparar que a notao matemtica em sua generalidade no
facilmente implementvel. No entanto muitos projetistas de linguagens quiseram explorar
subconjuntos da notao matemtica em linguagens de programao. Surgiram ento
tentativas de se construir uma linguagem lgica, isto , baseada em um subconjunto da lgica
matemtica. O computador programado para inferir relacionamentos entre valores, ao invs
de computar valores de sada a partir de valores de entrada. Prolog popularizou a linguagem
lgica. Em sua forma pura fraca e ineficiente, tendo sido alterada para incluir caractersticas
no lgicas e tornar-se mais amigvel como linguagem de programao.
No incio da dcada de 1990 ocorreu uma difuso intensa do paradigma da orientao
*
a objeto . Este paradigma esteve em gestao por cerca de 30 anos e as novas tecnologias como
a Internet, as necessidades geradas pela novas arquiteturas, tais como a de cliente-servidor e a
do processamento distribudo, coincidiam com o paradigma da orientao a objeto:
encapsulamento, mensagem, etc. O crescimento da Internet e o comrcio eletrnico
introduziram novas dimenses de complexidade no processo de desenvolvimento de
programas. Comearam a surgir linguagens que buscam superar esses novos desafios de
desenvolvimento de aplicaes em um contexto heterogneo ( arquiteturas de hardware
incompatveis, sistemas operacionais incompatveis, plataformas operando com uma ou mais
interfaces grficas incompatveis, etc.). Apareceram C++ e linguagens como Eifell, Objective C,
Cedar/Mesa (elaborada pela Xerox, para fazer pesquisa de dados), Delphi (uma evoluo da
linguagem Pascal) entre outras. E, o prximo passo ou um paradigma completamente novo
[GM95], surge a linguagem JAVA.
*

Falando de uma maneira mais tcnica e bastante genrica, significa que o foco da ateno do programador recai mais nos
dados da aplicao e nos mtodos para manipul-los do que nos estritos procedimentos.

Em termos gerais significa o partilhamento de uma aplicao em duas. A interface do usurio e a maioria dos programas
executada no cliente, o qual ser provavelmente uma estao de trabalho ou um PC de alta performance. Os dados da
aplicao residem no servidor, provavelmente em um banco de dados de um computador de grande porte. Desta maneira
mantm-se os dados onde podem ser melhor protegidos, atualizados, salvos, enquanto que o poder computacional fica
distribudo diretamente pelas mesas de trabalho dos clientes.

126

A origem da Java est ligada a um grupo de pesquisa e desenvolvimento da Sun


Microsystems formado em 1990, liderado por Patrick Naughton e James Gosling, que
buscava uma nova ferramenta de comunicao e programao independente da arquitetura de
qualquer dispositivo eletrnico. Em 1994, aps o surgimento do NCSA Mosaic e a
popularizao da Internet, a equipe redirecionou os seus esforos a fim de criar uma
linguagem para aplicaes multimdia on line.
Conforme Linden [Lin96], Java foi inspirada por vrias linguagens: tem a
concorrncia da Mesa, tratamento de excees como Modula-3, linking dinmico de cdigo
novo e gerenciamento automtico de memria como LISP, definio de interfaces como
Objective C, e declaraes ordinrias como C. Apesar dessas qualidades, todas importantes,
na verdade duas outras realmente fazem a diferena e tornam Java extremamente atrativa: sua
portabilidade e o novo conceito de arquitetura neutra.
Portabilidade significa que Java foi projetada objetivando aplicaes para vrios
sistemas heterogneos que podem compor uma rede como a Internet, por exemplo, e as
diferentes caractersticas dessa rede. Java procura obter os mesmos resultados de
processamento nas diferentes plataformas.
Por arquitetura neutra entende-se que programas em Java so compilados para se
obter um cdigo objeto (byte code na terminologia Java) que poder ser executado em um
Power PC que use o sistema operacional OS/2, ou em um sistema baseado no chip Pentium
debaixo do Windows 95 ou em um Macintosh usando MacOs, ou em uma estao de
trabalho Sparc rodando Unix. Ou seja, em qualquer computador, desde que tal computador
implemente o ambiente necessrio para isso, denominado conceitualmente de Mquina Virtual
Java.
Com a linguagem Java se comeou a superar barreira que impedia que a Internet se
tornasse um computador: a barreira que impedia o uso de um software utilizado em um
determinado lugar, executando-o em qualquer plataforma.

7.3 Arquiteturas de computadores e sistemas operacionais


O termo arquitetura de computador vem da possibilidade de se visualizar uma
mquina como um conjunto hierrquico de nveis que permite entender como os
computadores esto organizados. Os primeiros computadores digitais por exemplo somente
possuam dois nveis. O primeiro chamado o nvel da lgica digital, formado no incio por
vlvulas e depois por transistores, circuitos integrados, etc. O segundo chamado de nvel 1,
tambm chamado de nvel de microprograma, que o nvel da linguagem da mquina, onde
toda a programao era feita, atravs de zeros e uns, e que posteriormente seria o responsvel
por interpretar as instrues do nvel 2.
Com Maurice Wilkes em 1951 surgiu outro nvel, onde as instrues eram escritas
de um modo mais conveniente para o entendimento humano: a tcnica consistia em substituir
cada instruo desse novo nvel por um conjunto de instrues do nvel anterior (nvel da
mquina) ou examinar uma instruo de cada vez e executar a seqncia de instrues
equivalentes do nvel da mquina. Denominam-se estes procedimentos por traduo e

127

interpretao. Isto simplificou o hardware que agora somente tinha um conjunto mnimo de
instrues e portanto menos circuitos eram necessrios.
A partir da a evoluo do hardware avana juntamente com as novas descobertas
cientficas: quase na mesma poca do aparecimento dos transistores, por exemplo, surgiu o
conceito de barramento de dados, que acelerou a velocidade dos computadores. Ao mesmo
tempo apareceram os grandes sistemas operacionais, (simplificadamente, um sistema operacional
um conjunto de programas mantidos no computador durante todo o tempo, liberando o
programador de tarefas relacionadas diretamente com o funcionamento da mquina), como o
DOS e OS, da IBM. Estes evoluram possibilitando novos conceitos que melhoraram a
performance das mquinas, como por exemplo os sistemas de multiprogramao, isto , a
possibilidade de vrios programas serem executados em paralelo em uma mesma da mquina.
Se um destes programas tiver origem em um terminal remoto, tal sistema ser chamado de
tempo compartilhado. Um importante marco que possibilitou esses avanos foi a introduo de
processadores de entrada e sada, tambm chamados de canais. Isso motivou o aparecimento
dos conceitos de concorrncia, comunicao e sincronizao: uma vez que dois processadores
esto operando simultaneamente, surge a necessidade de prover mecanismos para sincronizlos e estabelecer um canal de comunicao entre eles.
a era das arquiteturas mainframes: o suporte s tarefas computacionais e o
desenvolvimento das aplicaes so feitos numa rea central, denominada centro de computao.
Terminais conectados diretamente mquina so utilizados somente por pessoas relacionadas
s aplicaes disponveis.
Nos anos 70 surgiram os supercomputadores, mquinas que inovaram na
arquitetura. At o momento, o crescimento da eficincia dos computadores estava limitado
pela tecnologia, mais especificamente pelo processamento escalar que exigia que o processador
central de um computador terminasse uma tarefa para comear a realizar outra, produzindo o
gargalo de von Neumann. Um avano significativo veio com o supercomputador Cray-1, da
Cray Research *, em 1971. Foi a primeira mquina pipeline, cujo processador executava uma
instruo dividindo-a em partes, como na linha de montagem de um carro. Enquanto a
segunda parte de uma instruo estava sendo processada, a primeira parte de outra instruo
comeava a ser trabalhada. A evoluo seguinte foi a denominada mquina vetorial, ou mquina
SIMD (single instruction multiple data) cujo processador trabalhava com mais de um
conjunto de dados ao mesmo tempo. Um pouco depois surgiu a arquitetura MIMD (multiple
instructions multiple data) e apareceram mquinas com mltiplos processadores como a
Connection Machine, com 65.536 processadores .

Muito da histria dos primeiros tempos dos supercomputadores coincide com a histria daquele que considerado o pai
dos supercomputadores, Seymour Cray (1926-1996), fundador da Cray Research, que liderou a construo dos
computadores mais rpidos do mundo durante vrios anos. Seymour Cray inventou ou contribuiu diretamente na criao
de mltiplas tecnologias usadas pela indstria dos supercomputadores, entre as quais est: a tecnologia de vetor de
registradores no CRAY-1, a tecnologia do semicondutor de glio arsnico e a arquitetura RISC (Reduced Instruction Set
Computing).

Deve-se observar que apesar da capacidade de execuo paralela de centenas de tarefas, dependendo de como feita a
comunicao entre os processadores, a eficincia de tais mquinas pode ser frustrante e as pesquisas continuam em busca
do aumento dessa eficincia.

128

H primariamente trs limites para a performance dos supercomputadores: a


velocidade do processador, o gasto de tempo (o termo tcnico, amplamente utilizado na
Computao, overhead), que envolve fazer um grande nmero de processadores trabalharem
juntos em uma nica tarefa, e a velocidade de entrada e sada entre os processadores e entre
os processadores e a memria *. A velocidade dos processadores aumenta a cada dia, mas a
um alto custo de pesquisa e desenvolvimento, e a realidade que se est alcanando os limites
dos processadores baseados em silcio. Seymour Cray demonstrou que a tecnologia de glio
arsnico poderia ser a soluo, mas muito difcil trabalhar com ele e poucas indstrias
estariam aptas a desenvolver processadores desse tipo. A soluo, como se falar mais adiante
caminha para o uso de um maior nmero de processadores, dando maior velocidade ao
computador pelo emprego do processamento paralelo.
Com a tecnologia VLSI (Very Large Scale Integration, quarta gerao de
computadores) surgiram os minicomputadores, o que possibilitou muitas empresas e
universidades informatizarem seus departamentos. Os grandes usurios interligavam os
minicomputadores para enviar tarefas aos seus mainframes. A arquitetura principal
continuava no entanto estabelecida no centro de computao. Do minicomputador para o
computador pessoal foi somente um passo, e no incio da dcada de 1980 apareceram os
primeiros PCs. Ainda nos anos de 1980 apareceram as arquiteturas RISC (Reduced
Instruction Set Code), com a promessa de ganho de desempenho pela eliminao do conceito
de microprograma. De qualquer maneira essas mquinas ainda so mquinas de von
Neumann tradicionais, com todas as suas limitaes, a maior delas a velocidade dos circuitos
que no pode crescer indefinidamente.
As tentativas de quebrar o gargalo de von Neumann e o incio da descentralizao
dos sistemas, com o surgimento das arquiteturas de rede que possibilitaram a universalizao
do uso da tecnologia da Computao, fizeram emergir e desenvolver as arquiteturas paralelas
de hardware.
A idia de incluir paralelismo nos computadores to antiga quanto os prprios
computadores. Trabalhos desenvolvidos por von Neumann na dcada de 1940 j discutiam a
possibilidade de algoritmos paralelos para a soluo de equaes diferenciais. O sistema
Model V, desenvolvido entre 1944 e 1947 por G. R. Stibitz e S. B. Willians nos laboratrios
da Bell Telephone um exemplo tpico de mquina paralela. Constitudo por dois
processadores e com trs posies de entrada e sada, esse multiprocessador primitivo tanto
era capaz de executar dois programas distintos quanto era possvel que os dois processadores
ficassem alocados para um mesmo programa. Posteriormente foi desenvolvido o Illiac IV, na
dcada de 1960, constitudo por 64 processadores. Como foi citado, a partir da dcada de
1970 comearam a ser produzidos supercomputadores baseados em arquiteturas paralelas.
Juntamente com as arquiteturas evoluram os sistemas operacionais e a evoluo das
linhas de processadores de uma empresa como a Intel servem para refletir a evoluo da
indstria dos computadores em um determinado perodo. Como destaque podem-se citar o
*

A velocidade de entrada/sada entre a memria principal (tecnicamente conhecida como RAM) e os dispositivos de
armazenamento um problema que afeta todos os tipos de computadores. Mas como os supercomputadores tem uma
grande quantidade de memria principal, esse problema pode ser resolvido facilmente com um gasto mais generoso de
dinheiro.

129

MS-DOS, o OS/2 e o UNIX. Especialmente este ltimo, que surgiu como fruto dos
trabalhos de um engenheiro da Bell Labs, Ken Thompson, foi popularizado nos meios
universitrios que usavam computadores PDP-11/45, durante a dcada de 1970. A palavra
UNIX espalhou-se rapidamente por todo o mundo e no incio de 1980 este sistema
operacional estava disponvel em mais mquinas do que qualquer outro sistema operacional
da poca, continuando hoje ainda a ser amplamente utilizado.
A mais recente evoluo da Computao foi o resultado da rpida convergncia das
tecnologias de comunicao de dados, de telecomunicao e da prpria informtica. a
Internet, ou o modelo computacional baseado em uma rede, que teve suas origens nos anos
da dcada de 1970, como um esforo do Departamento de Defesa dos EUA para conectar a
sua rede experimental, chamada ARPAnet, a vrias outras redes de rdio e satlites. Espalhouse logo em seguida nos meios acadmicos e est bastante popularizada.

7.4 Uma nova mentalidade


A partir de 1975, com a disseminao dos circuitos integrados, a Computao deu
um novo salto em sua histria, proporcionado pelo surgimento e desenvolvimento da
indstria dos computadores pessoais e, principalmente, pelo aparecimento da computao
multimdia. Com o aparecimento dos microcomputadores, rompeu-se a barreira de
deslumbramento que cercava as grandes mquinas e seu seleto pessoal que as manipulava, e
surgiu a possibilidade da transferncia do controle do computador para milhares de pessoas,
assistindo-se sua transformao em um bem de consumo.
Em 1975 a revista americana Popular Eletronics anunciou a chegada do Primeiro kit
de minicomputador do mundo a rivalizar com os modelos comerciais . Tratava-se do Altair
8800, construdo com base no chip 8080 da Intel por H. Edwards Roberts, oficial da Fora
Area americana, graduado em engenharia eltrica. O sucesso foi imediato: 4.000 unidade
vendidas em trs meses.
Impulsionados pelo sucesso, um jovem programador, Paul Allen, associa-se a um
estudante de Harvard, Willians Gates, com o objetivo de escrever uma verso popular de uma
linguagem computacional, o Basic, para o Altair. Mais tarde ambos fundaram a Microsoft, que
se tornou na dcada de 1990 a mais bem sucedida empresa de software da histria dos
microcomputadores. Outro grande sucesso dos primeiros anos dos computadores pessoais
foram os microcomputadores lanados pela Apple, nascida em 1976, fundada pela dupla
Steve Jobs e Stephen Wozniac, que foi um sucesso total naqueles primeiros anos.
Mas realmente essa nova onda s foi possvel graas entrada da IBM na
competio, quando, em 12 de agosto de 1981, em Nova Iorque, executivos da big blue ,
como conhecida, apresentaram o novo computador do momento, o IBM PC (Personal
Computer). Talvez o fato mais importante, que afetaria pelos prximos anos o panorama da
indstria dos microcomputadores foi a deciso da IBM de utilizar uma arquitetura aberta :
selecionar os componentes bsicos e o sistema operacional de fontes externas IBM.
Contando um pouco dessa histria. A fora-tarefa que a IBM tinha designado para a
criao do computador pessoal decidiu que queria um computador de 16 bits, mais potente e
mais fcil de programar que as mquinas de oito bits ento existentes. A Intel havia
anunciado, ento recentemente, o chip 8086 de 16 bits, mas a IBM, temendo que fizesse
130

sombra aos demais itens j comercializados por ela, escolheu o 8088, uma verso do chip com
barramento de 8 bits e estrutura interna de 16 bits. Tal tecnologia proporcionava ainda a
vantagem de trabalhar com as placas de expanso de oito bits existentes no mercado e com
dispositivos de oito bits relativamente baratos, como os chips controladores. Na busca pelo
software a IBM foi s portas da Digital Research para ver a possibilidade de portar seu
sistema operacional de grande sucesso! CP/M para a arquitetura 8086, mas esta rejeitou o
contrato de exclusividade apresentado pela IBM. Assim, a equipe da IBM rumou para os
escritrios da Microsoft, de quem esperavam obter uma verso do BASIC e acabaram
assinando um contrato no s deste software mas tambm sobre o sistema operacional. A
Microsoft adquiriu e incrementou um sistema operacional 8086 da Seattle Computer
Products o QDOS licenciando-o para a IBM, que comeou a comercializ-lo com o
nome de PC-DOS.
Os anos da dcada de 1980 poderiam ser caracterizados pelo aperfeioamento de
softwares tanto sistemas operacionais como utilitrios: planilhas, editores de texto, e outros
mais para o padro DOS e o desenvolvimento de um mercado de clones de diferentes
tipos de mquinas que seriam capazes de executar os programas elaborados para o padro. A
Apple continuava a fazer sucesso com sua famlia Apple II, embora fracassando na
introduo do Apple III e do formidvel LISA, a primeira tentativa de popularizar a
combinao de mouse, janela, cones e interface grfica com usurio. Mas o preo de
US$10.000,00 assustou e espantou o mercado.
O prximo passo a ser dado sem contar a evoluo e aprimoramento do hardware
sem o qual isso no seria possvel seria a gradual passagem dos aplicativos para ambiente
DOS verdadeiro mar de produtos para um novo padro de ambiente, que comeava a
ganhar contornos definitivos, e que protagonizou o incio de uma nova idade na histria dos
microcomputadores: o do sistema operacional Windows, que tornou-se padro dominante
para os aplicativos para PC, tornando a Microsoft lder na definio de especificaes
multimdia. importante no entanto fazer-se justia: o padro Windows inspirou-se no
padro Macintosh, lanado pela Apple em 1984: um computador que era capaz de oferecer
mais de um prompt de DOS e uma interface baseada em caracteres; ele podia ter vrias
janelas, menus suspensos e um mouse. Infelizmente o Macintosh no era compatvel com os
programas e aplicativos j existentes e no era expansvel.

7.5 A Computao como Cincia


Ao lado dessa evoluo do hardware e do software, a Computao abriu-se em
leque e novas tendncias surgiram dentro dela, incorporando estas duas entidades.
A Inteligncia Artificial, a Teoria da Complexidade Computacional * e a Teoria de
Bancos de Dados abriram novos campos de estudo. Na dcada de 1960 a Cincia da
*

A Teoria da Complexidade Computacional um ramo da Computao que estuda o grau de dificuldade envolvido na
resoluo algortmica de classes de problemas. Um dos principais tpicos abordados diz respeito eficincia (em termos de
tempo) envolvida na execuo de um algoritmo.

131

Computao tornou-se uma disciplina verdadeira. A primeira pessoa a receber um ttulo de


Ph. D. de um departamento de Cincia da Computao, foi Richard Wexelblat, na
Universidade da Pensilvnia , em 1965. Consolidaram-se os estudos sobre a Teoria dos
Autmatos e a Teoria de Linguagens Formais, principalmente com Noam Chomsky e
Michael Rabin. O nascimento do ramo das especificaes formais, que introduziu um novo
paradigma no desenvolvimento de sistemas computacionais, veio dentro dessa dcada, com
o incio das buscas pela corretude de programas atravs do uso de mtodos formais.
R. W Floyd, em 1967, props que a semntica de linguagens de programao fosse
definida independentemente dos processadores especficos a que se destina aquela linguagem.
A definio pode ser dada, segundo Floyd, em termos do mtodo para a prova de programas
expresso na linguagem. O seu trabalho introduziu o que passou a ser conhecido como o
mtodo das anotaes (assertivas) indutivas para a verificao (prova) de programas e uma
tcnica envolvendo conjuntos com ordenao bem fundada para provar o trmino de um
programa *.
Uma extenso das idias de Floyd foi proposta por C. A. Hoare em 1969. Hoare
formulou uma teoria axiomtica de programas que permite a aplicao do mtodo das
invariantes de Floyd a textos de programas expressos em linguagens de programao cuja
semntica precisamente formulada. Este trabalho tornou-se ainda um dos fundamentos do
que se chamou mais tarde programao estruturada. Dijkstra desenvolveu a idia de que a
definio (no estilo proposto por Hoare) pode ser usada para a derivao (sntese) de um
programa e no apenas para sua verificao [Luc82].
A partir dessas pesquisas surgiu a Engenharia de Software, que busca garantir a
corretude na construo de sistemas. O desenvolvimento de sistemas computacionais at
ento era feito de uma maneira quase que artesanal. No havia critrio orientativo algum
durante o processo. Isso acabou sendo fatal, como o revelaram certos estudos, elaborados na
dcada de 1970, sobre o desenvolvimento de sistemas: ausncia de corretude e consistncia,
baixa qualidade, manuteno extremamente custosa em funo de problemas no detectados
por ausncia de uma validao de requisitos mais rigorosa, no reaproveitamento de cdigo,
prazos de implementao no cumpridos em conseqncia de erros detectados ao longo
dessa mesma fase de implementao, etc.
Obedecendo a um grau de formalizao maior, apareceram como primeira reao a
essa abordagem informal modelos e mtodos de desenvolvimento de sistemas chamados
estruturados, que na verdade so conjuntos de normas e regras que guiam as vrias fases de
desenvolvimento de sistemas e as transies entre elas. a abordagem sistemtica. Ainda aqui
no est presente um formalismo definido com regras precisas. A prototipao e a orientao
a objeto so abordagens que podem ser consideradas sistemticas.
A abordagem rigorosa j apresenta um sistema lingstico formal para documentar as
etapas de desenvolvimento e regras estritas para a passagem de uma etapa a outra. No se
exige que as demonstraes de corretude das transformaes realizadas sejam feitas
*

O objetivo escolher essas proposies de tal forma que elas sejam satisfeitas cada vez que o fluxo de controle do programa
passe pelo ponto anotado e de maneira que cada ciclo do fluxograma seja cortado (anotado) por uma proposio.

Para estabelecer uma distino entre as vrias espcies de abordagem vamos seguir uma classificao sugerida por Bjorner
[Tan92], de acordo com o grau de formalizao.

132

formalmente, bastando uma argumentao intuitiva *. E finalmente a abordagem puramente


formal, rigorosa, com a exigncia de que todas as demonstraes necessrias para garantir a
corretude do processo sejam realizadas formalmente.
necessrio notar que essas duas ltimas abordagens exigem um conhecimento
mais profundo do raciocnio lgico formal e de um sistema lingstico formal adequado.
Embora a abordagem formal se apresente como nico meio de se dar uma garantia real
atividade de construo de sistemas, muitos autores mostram-se cticos quanto ao verdadeiro
impacto que ela venha a ter na prtica, devido dificuldade de aprendizado do necessrio
arcabouo matemtico.

Figura 40: Donald E. Knuth

Donald E. Knuth iniciou nos fins dessa dcada um rigoroso tratado sobre as bases
matemticas para a anlise de algoritmos, produzindo os trs conhecidos volumes do The Art
of Computer Programming [Knu69], que propiciaram a base para o amadurecimento dos estudos
da complexidade de algoritmos. Pode-se dizer que o trabalho de Knuth um dos grandes
marcos da Computao no sculo XX: antes de Knuth no havia um corpo sistemtico do
estudo da programao e dos algoritmos.
Ainda no campo da Complexidade Computacional novos avanos se deram a partir
de 1971, com o trabalho de Steve Cook e Richard Karp sobre problemas NP-completos e os
estudos sobre criptografia de Ronald Rivest, Adi Shamir e Leonard Adleman. Em 1977 H.J.
Bremermann desenvolveu alguns trabalhos pioneiros dentro da teoria da complexidade,
mostrando os limites fsicos na arquitetura de computadores de qualquer tipo e que estes
*

importante notar que a prova formal pode ser feita.

Um problema dito P (de polinomial) executado em um computador com um nmero de passos dado pela frmula Ank ( A e
k so inteiros fixos e n o nmero de dados de entrada). Algoritmos NP (de tempo no determinstico polinomial) executam em
tempo exponencial, em um nmero de passos 2n ou n! (problema do caixeiro viajante por exemplo, a soluo de alguns
teoremas lgicos de primeira ordem, o problema da torre de Hani, etc.).

133

limites fsicos atuam como fatores restritivos para a computao de determinados problemas.
De acordo com ele, existe um tempo chamado limite fundamental para a velocidade dos
computadores que no pode ser ultrapassado. Tal limite deriva-se da idia de que a velocidade
mxima de transmisso de sinal entre os componentes internos da mquina limitada pela
velocidade da luz. Mesmo que se pudessem construir mquinas muito pequenas, otimizandose a trajetria de transmisso de sinais, esse limite no pode ser ultrapassado. E ainda que se
chegue a uma mquina cuja velocidade de transmisso seja prxima da luz, existem
problemas computacionais que so intratveis, como por exemplo os problemas NP:
mesmo com a velocidade da luz tais problemas poderiam levar a idade do universo para
serem processados [Tei97].

7.6 A inteligncia artificial


um dos ramos da Cincia da Computao merecedor de especial destaque, pela
sua gama de influncia nas pesquisas e novas reas que se abriram a partir do seu incio.
aquela rea da Computao, em termos mais gerais, voltada para o estudo de tcnicas de
construo de programas que permitam ao computador simular aspectos do comportamento
da inteligncia, tais como jogar xadrez, provar teoremas lgicos, compreender partes
especficas de uma linguagem natural como, por exemplo, o portugus, etc.
Os primrdios da Inteligncia Artificial (IA a partir de agora) remontam dcada de
1940. Comeou a predominar nesses anos o movimento ciberneticista, que acreditava entre
outras coisas que a atividade humana poderia um dia ser estudada por meio de modelos
matemticos, como se faz com outros tantos fenmenos da natureza. Seguindo os trabalhos
de Gdel, muitos matemticos imburam-se do objetivo de formalizar a noo de
procedimento e definir o que poderia ser feito atravs de um algoritmo, e vieram a tona os
trabalhos de Turing, Church, Kleene e Post *. Os resultados desses esforos acabaram por ser
equivalentes e se estabeleceram os limites do que computvel.
No ano de 1943 foram publicados os trabalhos de Warren McCulloch e Walter
Pitts, que propuseram um modelo de neurnios artificiais, onde cada neurnio era
caracterizado como sendo on ou off, e era representado por uma chave onde on seria
a resposta a estmulos por um dado nmero de neurnios vizinhos. Eles mostraram que
qualquer funo computvel poderia ser processada por algum tipo de rede de neurnios
conectados e que os conectivos lgicos poderiam ser implementados atravs de estruturas de
rede simples [MP43]. Esto presentes aqui as pesquisas de Claude Shannon, que entre outras
coisas descreveu em termos lgicos o funcionamento de certos sistemas fsicos, e vice-versa:
sistemas fsicos que poderiam representar um raciocnio lgico. A fuso das idias de
Shannon e Boole, associadas a um tratamento simplificado do neurnio do crebro humano,
*

Como foi visto, Turing desenvolveu a Mquina de Turing, Church desenvolveu o clculo-lambda (que forneceu a base para
a linguagem LISP, desenvolvida por McCarthy, uma das favoritas do pessoal da IA), Kleene desenvolveu a teoria das
funes recursivas, enquanto Emil Post introduziu sistemas para reescrita de cadeias de smbolos (a gramtica de Chomsky
um caso particular disso).

Como um dos subprodutos do trabalho de Church, ficou estabelecido que tudo aquilo que um ser humano possa fazer
manipulando smbolos, seguindo um finito e bem definido conjunto de regras, uma mquina equipada com o conveniente
programa tambm poder faz-lo.

134

tornou possvel o trabalho de McCulloch e Pitts, que propuseram um modelo de neurnio


artificial (h um trabalho sobre este assunto em [Arb87]). Queriam esses dois pesquisadores
mostrar que se os neurnios artificiais pudessem efetuar computaes lgicas, estaria aberto o
caminho para simular o raciocnio humano.
Os trabalhos de Warren McCulloch e Walter Pitts tiveram grande sucesso e outros
trabalhos apareceram, mas logo foram objeto de fortes crticas. Frank Rosemblatt e seus
colegas da Universidade de Cornell projetaram uma mquina parecida com o modelo de
MccUlloch e Pitts, denominada Perceptron *. Marvin Minsky e Seymour Papert mostraram
algumas limitaes dos perceptrons, como por exemplo a impossibilidade de executarem
operaes lgicas do tipo ou exclusivo. De qualquer maneira surgiu uma primeira vertente
da emergente IA: a que buscava a simulao do crebro humano do ponto de vista fsico,
para simular a atividade mental, e que far surgir anos mais tarde, na dcada de 1970, a
Cincia Cognitiva ou Conexionismo, que est apoiada em um paradigma da IA de
processamento serial da informao e no approach da manipulao simblica para a
lingstica.
Outra vertente por onde se encaminharam os estudos da IA foi a chamada
Inteligncia Artificial simblica, que buscava a representao e a simulao dos estados e do
comportamento mentais atravs de programas computacionais. A representao e simulao
da inteligncia no estaria na construo de um determinado tipo de hardware, mas no
desenvolvimento de um software que opere sobre dados. Isto teve profundos reflexos nas
pesquisas posteriores e suscitou inmeros debates, sobretudo na filosofia, sobre as relaes
entre a mente e o crebro . Em [Tei97], h um captulo sobre as grandes objees levantadas
ao termo IA no sentido forte, o qual diz que um computador adequadamente programado
uma mente e reproduz estados mentais.
Em 1950 Turing introduziu atravs de um artigo, Computing Machinery and Intelligence,
o chamado Turing Test , considerado tambm um dos primeiros esforos no campo da
Inteligncia Artificial [RN95]. Mais tarde o prprio Turing (1953) escreveu um programa de
xadrez para computadores que tinham a arquitetura de von Neumann. Ao mesmo tempo,
Marvin Minsky e Deam Edmonds, do Departamento de Matemtica de Princeton,
construram o primeiro computador baseado em rede neural, em 1951, o SNARC. Era um
computador analgico para simular uma rede de 40 neurnios [RN95].
John McCarthy, outra figura influente da IA, aps formar-se em Princeton, dirigiuse ao Dartmouth College e convenceu Minsky, Shannon e Nathaniel Rochester, um
pesquisador da IBM, a ajud-lo a trazer pesquisadores interessados em teoria dos autmatos,
redes neurais e no estudo da inteligncia. Allen Newell e Herbert Simon, da Carnegie Mellon

Pode-se imaginar um Perceptron como um dispositivo para o reconhecimento de um conjunto de padres, no especfico,
isto , com capacidade de aprender a reconhecer os padres de um conjunto aps um nmero finito de tentativas.

Na verdade tais indagaes remontam ao filsofo Ren Descartes que introduziu a primeira fissura no pensamento
filosfico de at ento, ao cavar um fosso profundo entre a matria e o esprito humano.

Ele props uma definio de pensamento usando um jogo: um homem teria de decidir, baseado em uma conversa via
teletipo, se a entidade que estava na sala ao lado, respondendo a um teste, era um ser humano ou um computador. Se a
distino no pudesse ser feita, ento poderia ser dito que o computador estava pensando [Tur36].

135

University elaboraram o LT (Logic Theorist) *, um programa capaz de trabalhar nonumericamente e que provou a maioria dos teoremas do segundo captulo do Principia
Mathematica, de Russell e Whitehead. Em 1952, Arthur Samuel mostrou que os
computadores no fazem somente o que se lhes pede, mas so capazes de aprender. Outros
programas provadores de teoremas se seguiram ao LT e em 1958, com McCarthy surgiu o
LISP, que se tornou a linguagem de programao predominante para IA a partir da.
McCarthy seguiu para Stanford na busca da representao do raciocnio atravs da
lgica formal (seu trabalho recebeu grande impulso quando J. A. Robinson elaborou um
algoritmo completo para a prova de teorema na lgica de primeira ordem). Estas aplicaes
da lgica incluam robtica e um projeto para demonstrar a completa integrao entre
raciocnio lgico e atividade fsica. Minsky estava mais interessado em descobrir programas
para resolver problemas que exigiam inteligncia para serem solucionados: problemas de
analogia geomtrica que aparecem nos testes de QI, problemas de lgebra, etc.
Os anos de 1966 a 1974 foram marcados por um certo ceticismo diante das
dificuldades que comearam a ser encontradas, como por exemplo a no tratabilidade de
muitos problemas de IA, acentuada pelos primeiros estudos dos problemas no-polinomiais
determinsticos, NP, e pelas limitaes das estruturas bsicas usadas para gerar
comportamento inteligente, como por exemplo os algoritmos de aprendizado por backpropagation [RN95].
A dcada de 1970 marcou a busca pelos sistemas baseados em conhecimento e pelos
sistemas especialistas, protagonizada inicialmente por Ed Feigenbaum, Bruce Buchanan e Joshua
Lederberg. Os sistemas especialistas so solucionadores de problemas acoplados a grandes
bancos de dados onde o conhecimento humano especfico sobre determinado assunto
encontra-se armazenado. O sistema dever fornecer respostas a consultas, dar conselhos a um
leigo sobre um determinado assunto, auxiliar especialistas, ensinar, etc. A idia subjacente
que a inteligncia no somente raciocnio mas tambm memria. A grande meta a
preservao do conhecimento de especialistas aps a morte destes. O problema, ainda em
aberto, a difcil tarefa de se representar o conhecimento, alis nome de uma nova rea
surgida dentro da IA para solucionar os inmeros problemas surgidos, principalmente os de
como representar o senso comum, o sexto sentido ou ainda a intuio, termos que
resistem a uma conceituao clara. Ou ainda qualquer tipo de conhecimento no
representvel por uma expresso simblica como ensinar algum a jogar bola. Como
formalizar estas coisas? Mais ainda: at que ponto a formalizao um instrumento eficiente
para a representao do conhecimento? De qualquer maneira surgiram os sistemas
especialistas para diagnstico mdico, manipulao de linguagens, etc.
Lembrando o trabalho de H.J. Bremermann citado no item anterior (A Computao
como Cincia), sobre os limites fsicos que impedem a construo de um dispositivo com
velocidade ilimitada (maior que a da luz por exemplo), deve-se reparar que esses mesmos
limites esto presentes tambm dentro das reaes qumicas e nos impulsos eltricos que se
do nas complexas conexes dos neurnios do crebro. Se a mente humana consegue
resolver determinados problemas intratveis (o problema da parada na mquina de Turing
*

Newell e Simon tambm inventaram a linguagem IPL, para processamento de listas, para escrever o LT. Como no tinham
compilador, traduziram manualmente para o correspondente cdigo de mquina.

136

por exemplo) e funciona de maneira algortmica (como pensa determinada corrente de


estudiosos da simulao da mente por computador), as operaes mentais tem algo a mais do
que as caractersticas fsicas do crebro humano. Ou ento h processamentos mentais no
algortmicos, e se cai no problema da impossibilidade de uma representao formal disso. So
debates em aberto e que geram um saudvel intercmbio de idias entre a Computao e
outras reas do conhecimento humano como a Psicologia, Biologia e Filosofia.
Tambm a robtica demandou estudos da rea de IA, principalmente no que se
refere Viso Computacional. Os anos da dcada de 1980 foram os da introduo da IA na
indstria e um retorno ao uso de redes neurais. De 1987 para c houve uma mudana tanto
no contedo quanto na metodologia das pesquisas em IA. Agora mais comum trabalhar em
teorias existentes do que a proposio de novas, e basear-se em teoremas rigorosos ou em
fortes evidncias experimentais do que sobre intuio. O campo do reconhecimento da voz um
exemplo disto.

7.7 Uma nova disciplina: a ciberntica


O nascimento da ciberntica como cincia est associado aos trabalhos de Norbert
Wiener (1894-1964). Na II Guerra Mundial ele foi encarregado pelo governo norte-americano
de resolver os problemas de controle automtico da direo do tiro, na artilharia antiarea.
Wiener desenvolveu suas investigaes no MIT e idealizou um sistema mediante o qual o
erro, ou diferena entre o objetivo que se pretendia alcanar e o efeito real alcanado, era
medido e utilizado para regular o prprio sistema, corrigindo as variveis de velocidade,
ngulo de tiro, etc. Ao procurar resolver o problema, e encontrar algumas solues, Wiener
tentou construir uma conceituao geral das questes com que lidava. Em contato com
outros cientistas, como o fisilogo Cannon, pode comprovar que, alm da parte automtica,
esse tipo de problemas de controle e comunicao se aplicavam a muitos outros mbitos. Por
isso ampliou paulatinamente sua teoria de forma que abrangesse os seres vivos e as mquinas,
ou, mais em geral, a todo corpo com dinmica organizada pela informao.
Wiener alcunhou o termo ciberntico tomando diretamente o vocbulo grego
kybernetik, que significa a arte de governar um barco. Este termo tinha um amplo uso
no pensamento grego, em referncia precisamente a fenmenos muito similares ao estudado
pelo engenheiro norte-americano. Assim ele prprio define a ciberntica como controle e
comunicao no animal e na mquina, como aparece no ttulo de seu livro Cybernetics
[Wie70].
A Ciberntica uma teoria formada pelos aspectos relevantes de outras quatro
teorias: da informao, dos jogos, do controle e do algoritmo. Esto diretamente relacionados
com essa teoria os trabalhos de:
Alan M. Turing em seus estudos sobre a possibilidade lgica das mquinas;
Claude E. Shannon na Teoria da Informao;
Ludwig Von Bertalanffy, bilogo que, em resultado de 30 anos de trabalhos, publicou a
famosa obra intitulada Teoria Geral dos Sistemas;
James Watt (1736-1819), inventor do regulador centrfugo de presso nas mquinas a
vapor, germe da automatizao via feedback negativo;

137

John von Neumann com sua Teoria Matemtica dos Jogos.

Com a ciberntica surge uma disciplina que estuda a evoluo temporal dinmica
dos sistemas com capacidade de auto-regulao e auto-manuteno ao interagir com o meio
que o circunda. De maneira breve pode-se afirmar que as contribuies de Wiener podem
resumir-se em dois pontos [Ara78]:
Sublinhou a importncia dos estudos interdisciplinares, mostrando o grande
interesse que apresentam para cada uma das disciplinas consideradas
Percebeu a presena de processos realimentados de controle em uma ampla
classe de sistemas, tanto naturais como sociais.
Embora a ciberntica como cincia no tenha como objetivo o computador para
ela apenas mais uma das muitas estruturas existentes no universo , ela criou, juntamente
com a teoria da informao de Shannon, um novo caminho para tentar entender o homem e
as mquinas. Ao se ocupar das estruturas e funes lgico-matemticas de auto-regulao,
independentemente de que estejam inscritas e se cumpram em um organismo vivo, ou em
uma populao humana ou em um computador eletrnico, acabou tomando parte
indiretamente no desenvolvimento do hardware e do software.
A idia de informao como uma das caractersticas fundamentais do universo levou
Wiener e Shannon, separadamente, a demonstrarem que muitas coisas, desde o movimento
aleatrio de partculas subatmicas at o comportamento de redes baseadas em chaveamentos
eltricos ou alguns aspectos do discurso humano, esto relacionados de tal modo, que podem
ser expressos atravs de algumas equaes matemticas bsicas*.
Estas equaes foram teis na construo de computadores e redes telefnicas:
muitos conceitos elaborados e delineados pela ciberntica e teoria da informao tornaram-se
centrais no projeto lgico de mquinas e na criao do software.
A ciberntica no conseguiu estabelecer-se com um objeto e mtodo unificados na
tradio acadmica, e o termo se utilizou cada vez menos. Seus acahados foram integrados
dentro da Teoria Geral dos Sistemas , no que se refere aos aspectos mais tericos. Seu lado
mais prtico e utilitrio foram assimilados dentro da robtica. Somente em pases europeus
constituiu-se como uma cincia amplssima que engloba aspectos to diversos como a teoria
da informao, comunica~ao, computadores, sistemas de controle, robtica, modelagem
econmica, sociologia, etc. Independente da evoluo acadmica que tenha a ciberntica
como disciplina, necessrio referir-se a uma srie de conceitos que com ela se puseram em
andamento e so de uso comum em muitos mbitos [Tir2002].

Sobre estas idias to sumariamente enunciadas ver o livro Ciberntica, captulo introdutrio [Wie70].

A Teoria Geral dos Sistemas um completo paradigma, uma forma de pensar muito fecunda para entender a complexidade
que engloba tanto os campos j citados acima que se relacionam com a Ciberntica e ainda: Teoria dos Conjuntos
(Mesarovic), Teoria das Redes (Rapoport), Dinmica de Sistemas (Forrester), cfr. Bertalanffy, L. von Teoria Geral dos
Sistemas [Tir2002]

As noes de feed-back negativa ou realimentao, homostasis (permanecer igual a si mesmo), feed-before (comportamento predictivo
e por estratgia), etc.

138

8 A disseminao da cultura informtica


Quando a Histria olhar para trs e estudar os anos do sculo XX, entre outras
coisas, perceber que, do ponto de vista cientfico, eles esto caracterizados como tempos em
que se produziu uma acelerao tecnolgica e um avano nas comunicaes sem precedentes.
No fcil encontrar situaes histricas anlogas expanso tecnolgica que se assistiu
nestes ltimos cinqenta anos do sculo. Aps as revolues do ferro, da eletricidade, do
petrleo, da qumica, veio a revoluo apoiada na eletrnica e no desenvolvimento dos
computadores. A partir dos anos setenta iniciou-se a integrao em grande escala da televiso,
telecomunicao e informtica, em um processo que tende a configurar redes informativas
integradas, com uma matriz de comunicao baseada na informao digital, com grande
capacidade de veicular dados, fotos, grficos, palavras, sons, imagens, difundidos em vrios
meios impressos e audiovisuais. Pode-se at dizer que, em certo sentido, as mdias esto
sendo suprimidas, pois tudo est se tornando eletrnico.
A integrao dos meios de comunicao gera tambm uma progressiva fuso das
atividades intelectuais e industriais do campo da informao. Jornalistas das redaes dos
grandes jornais e agncias de informao, artistas, comunidade estudantil, pesquisadores
trabalham diante de uma tela de computador. Em algumas sociedades, como a norteamericana por exemplo, quase 50% (dados de 1955) da populao economicamente ativa est
dedicada a atividades industriais, comerciais, culturais, sociais e informacionais relacionadas
com coleta, tratamento e disseminao da informao. H um aumento da eficincia
informacional a cada dia, e se barateiam cada vez mais os custos tecnolgicos. No
esquecendo que o computador, diferentemente das outras mquinas (que manipulam,
transformam ou transportam matria e energia) manipula, transforma e transporta um
elemento muito mais limpo e menos consumidor de energia e matria prima. Abre-se
portanto uma porta para um crescimento da informao praticamente ilimitado.
J que se est tratando principalmente neste livro sobre a evoluo das idias e
conceitos que levaram ao surgimento e desenvolvimento da Cincia da Computao, pode-se
falar agora de um supra-conceito maior, conseqncia que a Computao ajudou a catalisar: o
surgimento da Sociedade da Informao. Sem querer adentrar no tema, merecedor de um
trabalho exclusivo e com implicaes histricas, antropolgicas, sociolgicas e at
psicolgicas que fogem ao presente escopo, duas consideraes sero feitas: o problema do
excesso de informao e o perigo do empobrecimento que pode ser causado pelo uso
indevido do computador.

8.1 O domnio e o controle das informaes


Existe no mundo da pintura uma expresso que se refere ao acmulo de cores que
acaba por no permitir uma clara distino do objeto: infopoluio. Esta possibilidade
comea a fazer-se realidade no mbito da Sociedade da Informao. A informao est
expandida no mundo de hoje, resultado da exploso de fontes que incluem as agncias
comerciais de notcias, os sistemas comerciais de satlites transmissores de imagens, a World
139

Wide Web, etc. H um otimismo que leva muitos a se alegrarem com essa invaso vertiginosa
de palavras, imagens e smbolos, dos quais muito poucos so controlados, de um ponto de
vista semntico. Faz tempo que soam os alarmes: Os usos normais da fala e a escrita nas
sociedades ocidentais modernas esto fatalmente enfermos. O discurso que se faz nas
instituies sociais, o dos cdigos legais, o debate poltico, a argumentao filosfica e a
elaborao literria, o leviat retrico dos meios de comunicao: todos estes discursos so
clichs sem vida, jargo sem sentido, falsidades intencionadas ou inconscientes. O contgio se
estendeu aos centros nervosos do falar privado. Em uma infecciosa dialtica de reciprocidade,
as patologias da linguagem pblica, especialmente as do jornalismo, a fico, a retrica
parlamentar e as relaes internacionais, debilitam e adulteram cada vez mais as tentativas de
psique particular dse comunicar a verdade [Ste91].
A superabundncia de informao tende a mudar a natureza de cada mensagem
concreta. s vezes, a maneira mais prtica de no informar dar uma enxurrada de
informaes. Pode-se chegar at a privar de significado, ou tornar insignificante, a prpria
mensagem. A informao converte-se, nessa perspectiva, em simples rudo de fundo. Isto j
ocorre, especialmente com os informes publicitrios.
uma acumulao de dados no s pela densidade de informaes bem como pela
sucesso rpida com que chega. Se no passado o problema era o de acesso e coleta, agora est
sendo o da seleo e avaliao. A possibilidade de recolher, processar, difundir e recuperar
informao de maneira quase instantnea implica numa certa desvalorizao da notcia. A
informao em doses exageradas acaba por tornar-se rudo. Por muita informtica que exista,
se no se tem capacidade de tratamento que a converta em significativa rudo: nos tornamos
incapazes de assimilar e tratar tanta abundncia informativa. necessrio que se enfatize cada
vez mais a anlise da informao e que se encorajem as inovaes tcnicas nesse campo. J
surgem os grandes sistemas de manipulao de dados, gigantescos depsitos de dados com
seus Data Minds, softwares usando tcnicas de IA que trazem, por mecanismos de
inferncia, a informao desejada ou a possvel informao desejada.
As possveis reaes ante esse fenmeno da poluio informativa ocorreriam em
trs direes [Sor92]. Uma primeira via seria a seleo da informao, sem redundncias nem
repeties, como se mencionou algumas linhas acima. A outra seria a reduo da informao,
acomodando-a em funo de interesses especficos e especializados do pblico e a terceira via
a fuga da informao. A fuga da informao seria o florescimento de ideologias
simplificadoras, a semeadura do irracional, o voluntarismo irreflexivo, o empobrecimento das
relaes sociais e o desenvolvimento do mais passivo consumismo. uma hiptese
reducionista, somente esboada em determinados nichos sociais. Uma futura linha de fuga
seria a explorao atravs da venda e compra da informao, das mensagens informativas, a
um determinado custo (como avaliar?), orientando-se a radioteleviso ao volume de
informao e tipo de informao que o assinante deseja.

8.2 O equilbrio entre o toque humano e a tecnologia

140

As citaes e consideraes deste captulo esto baseadas em uma palestra do prof.


Dr. Valdemar Setzer, do Instituto de Matemtica e Estatstica da USP, em 03-IV-96, no
Museu de Arte Contempornea da USP.
Como citado anteriormente, o computador tambm exerce aquelas trs aes das
demais mquinas, isto , transformar, armazenar e transportar, mas no mais matria ou
energia, e sim dados. Dados podem ser considerados abstraes do mundo real, no fceis de
se estabelecer muitas vezes. Como traduzir em smbolos uma personalidade, ou um
sentimento? Para serem processados por um computador eles tero que ser tratados como
smbolos formais (que j um empobrecimento), por exemplo, introduzindo-se uma
gradao numrica: tal intervalo entre nmeros x e y representar uma gradao da
intensidade de um determinado sentimento, o que um empobrecimento ainda maior.
Conforme o prof. Setzer:
importante fazer aqui uma distino necessria entre o armazenamento de
textos, imagens e som, que so pura e simplesmente reproduzidos, talvez com alguma edio
da sua forma (por exemplo, alinhamento de pargrafos, salincia de contrastes em fotos,
eliminao de rudos), e o processamento de dados. Este ltimo o tratamento que se d aos
dados, transformando seu contedo, isto , a semntica que se associa aos mesmos. Por
exemplo, traduzir textos de uma lngua para outra, extrair caractersticas de estilo de autores
em pesquisas de lingstica computacional, gerar desenhos a partir de programas como no
conhecido caso dos fractais, etc..
De onde provem o empobrecimento da informao? Do fato de que os dados no
tm nada a ver com a realidade, sendo na verdade representaes simblicas de pensamentos
abstratos formais, lgico-simblicos, e como tal eles no precisam ter consistncia fsica.
Alis, justamente a imponderabilidade dos dados e sua alienao em relao ao fsico que
permitiu que os computadores fossem construdos cada vez menores, o que no pode
acontecer com todas as outras mquinas. De fato, estas podem ser caracterizadas como
mquinas concretas, ao passo que os computadores so mquinas matemticas, e portanto
abstratas, virtuais. Assim, todo processamento de dados deve utilizar-se exclusivamente de
pensamentos formais expressos sob a forma de um programa de computador. Esse
processamento lgico-simblico, por ser extremamente restrito e unilateral, acaba por
restringir enormemente o espao de tratamento das informaes, que devem ser expressas
sob forma de dados; da o empobrecimento das informaes que so representadas por esses
dados. Note-se que essa restrio at de natureza matemtica: no possvel colocar no
computador as noes de infinito e de contnuo, apenas aproximaes das mesmas.
A caracterizao do computador como mquina abstrata fica mais clara ao notar-se
que todas as linguagens de programao so estritamente formais, isto , passveis de serem
descritas matematicamente. O prprio funcionamento lgico do computador pode ser
descrito por formulaes lgico-matemticas. As outras mquinas no tm essa caracterstica,
pois atuam diretamente na matria (a includa a energia), e esta escapa a uma descrio
matemtica.
Mas no so s as linguagens de programao que so formais. Qualquer
linguagem de comandos, mesmo icnica, de um software qualquer, tambm
matematicamente formal. Por exemplo, qualquer comando de um editor de textos produz
141

uma ao do computador que uma funo matemtica sobre o texto sendo trabalhado ou
sobre o estado do computador. Portanto, para se programar ou usar um computador,
necessrio formular os pensamentos dentro de um espao estritamente abstrato, matemtico,
apesar de aparentemente no ser o tradicional, pois os smbolos e as funes so em grande
parte diferentes. Programar ou usar um computador so funes estritamente matemticas,
como fazer clculos ou provar teoremas. Assim, a programao ou uso de um computador
exigem o mesmo grau de conscincia e abstrao que a atividade matemtica. Isso no se
passa com todas as outras mquinas, que exigem uma certa coordenao motora automtica,
semiconsciente (por exemplo, s se aprende a andar de bicicleta quando no mais
necessrio pensar sobre os movimentos e o equilbrio).
Como uma das conseqncias dessas afirmaes, pode-se propor que o uso do
computador deva estar acompanhado de um novo tipo de educao, seja no mbito da
famlia ou das escola, das universidades ou das empresas, que aponte para uma abertura maior
do entendimento humano. E esse saber vital, que faz com que um homem se sinta
interiormente livre porque tem respostas s questes da vida , e que tenha uma viso mais
ampla da realidade, a cultura, a literatura, a filosofia, a histria, etc., ou seja, as humanidades
ou artes liberais, como antes eram chamadas algumas cincias humanas. Nas cincias tcnicas
e para os profissionais da Computao isto mais premente. O maior problema que a
especializao das cincias tcnicas trouxe foi essa perda do sentido de conjunto.
Continuando com as consideraes da citada palestra:
Um empobrecimento que tambm pode dar-se em outro sentido que o uso da
computao na arte. H um elemento informal e intuitivo na arte que leva a dizer que na
criao artstica deve haver um elemento inconsciente, que nunca poder ser conceituado
totalmente. J a criao cientfica deve poder ser expressa por meio de pensamentos claros,
universais e no-temporais, isto , independentes da particular interpretao do observador,
talvez at certo ponto (dependendo da rea) formais, matemticos. Imagine-se uma descrio
do Altar de Isenheim atravs dos seus pixels e seus comprimentos de onda: ele perderia
totalmente o senso esttico e no produziria mais a reao interior provocada no observador
pelas cores, formas e motivos, isto , no teria o efeito teraputico para o qual foi criado por
Grnewald.
O elemento emocional foi realado por Freud, quando afirmou em sua Introduo
Psicanlise, Aula 23, e no ensaio Alm do Princpio do Prazer, que a arte emoo ou
expresso subconsciente e no imitao ou comunicao (dentro de seu tpico raciocnio
unilateral da teoria da sublimao da emoo e do desejo atravs da arte). Comparando-se
com a arte como comunicao de uma realidade espiritual, de Kandinsky, v-se bem o
contraste entre materialismo e espiritualismo; neste pode haver algo superior a ser
comunicado.
Apesar de que a idia expressa em um objeto de arte seja de contedo objetivo, a
sensao e emoo que ela desperta subjetiva. Por exemplo, oua-se uma tera maior
seguida de uma menor, ou uma stima seguida de uma oitava. Estamos seguros que qualquer
pessoa ter sensaes diferentes em cada caso, que ficam claras pelo contraste entre cada
intervalo e o seguinte. Mas provavelmente quase todas as pessoas diro que a tera menor
'mais triste' e a stima produz uma tenso aliviada pela oitava. Cada um sente essas emoes
142

diferentemente, mas h claramente algo universal por detrs delas, como as sensaes que
temos do amarelo limo (alegre, radiante, abrindo-se) e do azul da Prssia (triste,
introspectivo, fechando-se) .
necessrio considerar tambm uma distino essencial entre obra artstica e
cientfica o fato da primeira dever sempre ter contextos temporais e espaciais ligados sua
criao. Como contraste, uma teoria cientfica no depende do tempo, desde que seja
consistente e corresponda s observaes, se for o caso. Um exemplo simples o do conceito
de uma circunferncia, como por exemplo o lugar geomtrico dos pontos eqidistantes de
um ponto. Essa definio formal no dependeu das condies de seu descobridor. Ela
impessoal e eterna. O fato de podermos capt-la com nosso pensamento levou Aristteles a
conjeturar, por um raciocnio puramente lgico (precursor de nossa maneira de pensar
hodierna), que temos dentro de ns tambm algo de eterno, e que no poderia ter ocorrido
em Plato, pois este tinha sido um iniciado nos Mistrios (em A Escola de Atenas, de Rafael h
uma representao da diferena entre os dois *).
A dependncia espao-temporal da criao artstica aliada ao elemento de
expresso individual semiconsciente do artista faz com que haja sempre um elemento de
imprevisibilidade na criao. O artista deve observar sua obra durante o processo de criao,
para influir no mesmo e chegar a algo que no podia inicialmente prever. Isso pode ser um
processo puramente interior, como no caso de um compositor que no precisa ouvir os sons
de sua obra; no entanto, a sensao auditiva ao ouvi-la tocada nunca a mesma que a que
pode imaginar interiormente. Poder-se-ia argumentar que a pesquisa cientfica tambm tem
elementos de imprevisibilidade. Isso pode ocorrer at na matemtica: um teorema pode ser
descoberto, e o seu autor ou outros ainda no saberem como se poder prov-lo (um
exemplo recente foi a prova do ltimo teorema de Fermat, formulado no sculo XVII). Uma
grande diferena reside no fato do resultado ser de um lado um conceito e de outro um
objeto. Alm disso, uma vez estabelecido um conceito cientfico, toda vez que se refizer a
experincia ou a teoria correta o resultado ser o mesmo (dentro das eventuais aproximaes
experimentais); no caso da criao artstica, o objeto de arte dever sempre mudar, pois a sua
simples presena deve influenciar o criador, que ter outras inspiraes na hora de repetir a
criao (lembremos da frase de Freud de que simples imitao no arte). D-se a esse fator
o nome de dinamismo da criao artstica.
Portanto o uso do computador para fazer arte, sem considerar sua grande utilidade
como banco de dados das obras artsticas, pode ser empobrecedor.
Como instrumento passivo na criao artstica, como o caso do uso de uma
ferramenta CorelDraw, existe o problema do usurio fazer uso de um raciocnio formal ao
utilizar os comandos do computador submetendo a criao artstica a uma consciencializao
e formalizao e o problema da ausncia do elemento inconsciente, assim como do contato
fsico que desperta diferentes reaes, como por exemplo, no pintor com seu pincel, no
pianista ao dedilhar o piano.

O autor se refere ao famoso quadro onde vrios filsofos gregos aparecem, e, caminhando lado a lado, esto Plato e
Aristteles, um apontando o dedo para cima e outro para baixo, respectivamente, indicando o mundo das idias e o mundo
real.

143

Uma outra forma de usar um computador em arte fazer um programa para gerar
imagens ou sons (quem sabe, no futuro, at fazer uma escultura ou construir uma casa). Um
exemplo conhecido disso so os fantsticos desenhos produzidos por funes fractais;
programas para produzir desenhos com essas funes provavelmente estaro logo no
mercado. Nesse caso, no h apenas a substituio de um instrumento informal por outro
formal; o prprio processo de criao torna-se totalmente formal. A criao deve ser expressa
de maneira estritamente matemtica, como o caso de um programa. Com isso, elimina-se
totalmente o elemento inconsciente. tambm eliminado o elemento individual, no sentido
de qualquer pessoa poder entender totalmente como a obra foi produzida - basta examinar
detalhadamente o programa. eliminado ainda o elemento temporal e espacial ligado
criao. Em outras palavras, a atividade artstica tornou-se atividade cientfica. A propsito,
muito importante compreender-se o que significa produzir um programa para fazer uma obra
de 'arte' segundo um certo estilo. Um computador pode produzir desenhos e msica que se
assemelham aos de Mondrian e de J.S.Bach, mas estes tiveram que desenvolver seus estilos
para poder ser depois analisados e expressos em elementos puramente formais e
programados em um computador, para gerar algo que aparentemente semelhante. Sem
Bach, no haveria programas que imitam sua msica. Alm disso, a criao do computador
no exprime nenhuma idia alm da contida no estilo, desde que este seja expresso
matematicamente, o que representa um empobrecimento.
Encerradas as consideraes, o que se deseja chamar a ateno a mentalidade do
uso do computador sem o correspondente desenvolvimento de outros aspectos da
inteligncia do homem. Depois de tudo o que foi dito, seria redundante e suprfluo falar das
vantagens desse instrumento de trabalho que potencializou e impulsionou o desenvolvimento
das cincias em geral. Mas bom lembrar que os computadores no inovam, no se
relacionam, no so flexveis e no sabem tomar iniciativas diante de situaes no prdeterminadas por algoritmos internos. A imerso na informtica traz o risco de se deixar de
lado o cultivo ou mesmo a perda de aptides fundamentais como a leitura, a reflexo, a
criatividade, etc. Ser tarefa primordial principalmente nos estabelecimentos de ensino, onde
o computador se faz cada vez mais presente, preocupar-se em dar ao lado dos conhecimentos
tcnicos e informticos, uma slida formao humanstica que garanta o exerccio integral da
inteligncia humana em seus vrios mbitos.

144

9 Concluso
Voltando a algumas das primeiras observaes feitas no captulo introdutrio, foi
dito que a exposio histrica no apenas a narrativa de acontecimentos, cronolgica e
tematicamente ordenados. Esses so somente a ponta do iceberg, pois escondem
motivaes, esforos, entrelaamentos e a prpria evoluo anterior. A tarefa do historiador
no se conclui com a obteno de dados fidedignos, depurados e exatos, bem como o
estabelecimento de sries desses fatos de maneira coerente e significativa. So somente
pontos de partida para se inquirir e perguntar sobre o prprio homem, o verdadeiro
protagonista da Histria. Esse saber histrico produz assim um enriquecimento da
experincia humana, permite enfrentar o desafio dos novos problemas com melhores
recursos. H mais possibilidades de crescimento e criao de coisas novas quando se possui
uma herana. A criatividade no se faz sobre o nada. Ao jovem que o procurou dizendo que
queria fazer versos livres, Manuel Bandeira recomendou que estudasse a fundo poesia
clssica, metrificada: e que s ento estaria apto a fazer versos livres. A criatividade antes
extrapolar e reorganizar dados j incorporados, numa configurao nova. Mas, para extrapolar
ou reorganizar dados, preciso, antes de mais nada, t-los.
Ao lado disso, uma aspirao constante de qualquer cultura entender o momento
presente, formar uma imagem coerente, selecionando os fatos do passado que afetaram a
evoluo do ser humano, que permitam construir uma explicao. Essa idia pode ser levada
tambm a qualquer campo do conhecimento humano e tcnico. Quando se abandona o
conhecimento histrico, uma cincia, uma comunidade social, o homem, ou qualquer outro
mbito, ficam privados de uma dimenso essencial na ordem do tempo: o entrelaamento
entre presente e passado em uma unidade lgica.
A Computao atravessa um tempo de expanso em vrias direes, tornando-se
uma tarefa necessria guardar seu patrimnio, discernindo as realidades e conceitos mais
importantes. Tudo isso importante para o ensino, pois a Computao no surgiu do nada:
h uma histria por trs de cada conceito. Cada conceito tem o seu lugar, a sua importncia e
a sua histria que necessrio ser ensinada
Este trabalho sobre Histria da Computao, um entre outros que esto surgindo e
alguns que j existem, faz uma retrospectiva enfatizando as idias, os paradigmas,
pretendendo apenas ser uma pontualizao, visando uma futura expanso, sobre alguns
aspectos abstratos do desenvolvimento dos computadores. Ele e sua futura expanso so
apenas um comeo, porque a rea sobre a qual se falou continua em constante evoluo e
mudana. O campo de estudo ainda tem uma histria muito recente e por demais voltil, no
se podendo chegar a algo definitivo.
Apesar dessas dificuldades, deve-se continuar a chamar a ateno sobre a
importncia de se registrar e estudar o desenvolvimento dos computadores eletrnicos e a
conseqente evoluo dos temas anexos: Linguagens de Programao, a Teoria da
Computao, estudo da Complexidade dos Algoritmos, etc., assim como a importncia
decisiva do fator humano. Quando tantos se maravilharam com a derrota do campeo
mundial de xadrez Kasparov para o computador da IBM, o Deep Blue, (abril/maio de 1997),
surpreende a pouca ateno dada equipe de tcnicos que construiu e programou a mquina,
145

s heursticas utilizadas e aos objetivos que esto por detrs desse novo engenho, como se
algum ficasse maravilhado com o quadro e os pincis de uma obra de arte e se esquecesse do
artista. A histria tem o dom de focalizar com especial nitidez aquele que o seu personagem
principal: o homem.

146

10 Referncias bibliogrficas
[AG81]

Anawati, M-M & Gardet, Louis. Introduction a la Thologie Musumane. Paris: Vrin,
1981, apud [Lau97].

[Aga86]

Agazzi, Evandro. La logica simbolica. Barcelona: Herder, 1986.

[Ara78]

Aracil, J. Introduccin a la dinmica de sistemas. Madrid: Alianza, 1978, apud


[Tir2002].

[Arb87]

Arbib, Michael A. Brain, Machines and Mathematics. New York: Spring-Verlag,


1987.

[Art94]

Artigas, Mariano. El desafio de la racionalidad. Barcelona: EUNSA, 1994.

[Asp90]

Aspray, Willian. John von Neumann and the origins of modern computing.
New Baskerville: Massachusetts Institute of Technology, 1990.

[Bar67]

Barker, Stephen F. Filosofia da matemtica. Rio de Janeiro: Zahar, 1969.

[Bar84]

Barendregt, H.P. The lambda calculus, its syntax and semantics. Amsterdan: Elsevier
Science Publishers B.V., 1984.

[BBF82]

Berg, H.K. & Boebert, W.E & Franta, W.R. & Moher, T.G. Formal methods of
program verification and specification. New Jersey: Prentice-Hall, Inc., 1982.

[Bel37]

Bell, E. T. Men of Mathematics. New York: Simon & Schuster, Inc, 1937.

[BL74]

Brained, W. & Landweber. Theory of computation. New York: Wiley-Interscience


Publication, 1974.

[Boc66]

Bochenski, J. M. Historia de la logica formal. Madrid: Biblioteca Hispnica de


Filosofia, 1966.

[Bol84]

Bolter, J. David. Turings man, western culture in the computer age. Carolina do Norte:
Universidade da Carolina do Norte, 1984.

[Boo84]

Boole, George. El analises matematico de la lgica. Madrid: Catedra, 1984.

[Bow94]

Bowen, Jonathan P. A brief history of algebra and computing: an ecletic oxonian view.
Oxford: Librarian, Oxford University Computing Laboratory, 1994.

[Boy74]

Boyer, Carl B. Histria da Matemtica. So Paulo: Edgard Blucher, 1974.


147

[Bri79a]

Encyclopedia Britannica The New, Macropaedia. USA: Helen Hemingway Benton,


1979.

[Bri79b]

Encyclopedia Britannica The New, Micropaedia. USA: Helen Hemingway Benton,


1979.

[Bur51a]

Burks, Arthur W. [1951]. An intermediate program language as an aid in program


synthesis. Engineering Research Institute, Report for Burroughs Adding Machine
Company, 1951.

[Bur51b]

Burks, Arthur W. [1980]. From de ENIAC to the stored-program computer, in A history


of computing in the twentieth century (a collection of essays). London: Academic Press,
1980.

[Bur92a]

Burke, Peter. A escola dos annales, 1929-1989-A revoluo francesa da historiografia. So


Paulo: Editora UNESP, 1992.

[Bur92b]

Burke, Peter. A escrita da histria-novas perspectivas. So Paulo: Editora UNESP,


1992.

[Cas97]

Casti, John L. Five golden rules-great theories of 20th-century Mathematics and why they
matter. Canad: John Wiley Sons, Inc., 1997.

[CO98]

Carvalho, Roberto Lins de & Oliveira, Cludia Maria G.M. de. Modelos de
computao e sistemas formais. Rio de Janeiro: DCC/IM, COPPE/Sistemas,
NCE/UFRJ, 11a Escola de Computao, 1998.

[Coe95]

Coelho, Clarimar J. Monografia: apresentao das bases tericas para o desenvolvimento de


um sistema de apoio a deciso utilizando resoluo de equaes booleanas. Gois: Depto.
Matemtica e Fsica da Universidade de Gois, 1995.

[Cof91]

Coffa, J. Alberto Wessels. The semantic tradition from Kant to Carnap. Cambridge:
Cambridge University Press, 1991.

[Coh87]

Cohen, Daniel E. Computabilty and logic. England: Ellis Horwood Series in


Mathematics and Its Aplications, 1987.

[Cos77]

Costa, Newton C. A. Introduo aos fundamentos da Matemtica. So Paulo: Editora


Hucitec, 1977.

[Dan54]

Dantzig, T. Number, the language of science. New York: Doubleday Anchor Books,
1954.

148

[Die81]

Dieudonn, J. Von Neumann, Johann (or John), in Gillespie, Charles C., Dictionary of
Scientific Biography. New York: Charles Scribner's Sons, 1981.

[Fer85]

Fernandez, Luiz Soares. Historia Universal, Volume 1. Pamplona: Edies


Universidade de Navarra, 1985.

[Gat95]

Gates, Bill. A estrada do futuro. So Paulo: Companhia das Letras, 1995.

[GM95]

Gosling, James & McGilton, Henry [1995]. The Java language environment- a white
paper. California: Sun Microsystems, Inc, 1995.

[GN88]

Le Goff, Jacques & Nora, Pierre. Histria: novos problemas. Rio de Janeiro: Livraria
Francisco Alves Editora, 1988.

[Gof94]

Le Goff, Jacques. Histria e memria. Campinas: Editora da UNICAMP, 1994.

[Gol72]

Goldstine, Herman H. The computer from Pascal to von Neumann. New Jersey:
Princeton University Press, 1972.

[Gom97]

Gomes, Nelson Gonalves. Lgica Matemtica, Curso de Lgica da Faculdade de


Filosofia da UnB, apostila para apontamentos de aula, 1997.

[H30]

H.W.B., Joseph [1916|1930]. Introduction to Logic. Oxford: Clarendon Press,


1930.

[Har96]

Harrison, John, The history of formal logic.. Revista Mathesis Universalis, 1996, no 2,
Formalized Mathematics. Disponvel na internet
http://saxon.pip.com.pl/MatUniversalis/2/harrison/jrh03.html.

[Her69]

Hermes, Hans. Enumerability, decidability, computability-an introduction to the theory of


recursive functions. New York: Springer-Verlag, 1969.

[Hod83]

Hodges, Alan. Alan Turing: the Enigma. New York: Simon & Schuster, 1983.

[Hur80]

Hurd, Cuthbert. Computer Development at IBM, in A history of computing in the twentieth


century (a collection of essays). London: Academic Press, 1980.

[IEEE95] IEEE Computer Society, Edio comemorativa dos 50 anos da revista. Disponvel na
Internet, http://www.computer.org/50.
[Ifr89]

Ifrah, Georges. Os nmeros, a histria de uma grande inveno. Rio de Janeiro: Globo,
1989.
149

[Kah67]

Kahn, D. The Code Breakers. New York: Macmillan, 1967.

[Kar61]

Karlson, Paul. A magia dos nmeros. Rio de Janeiro: Editora Globo, 1961.

[Kne68]

Kneale, Willian & Kneale, Martha O desenvolvimento da lgica. Lisboa: Fundao


Calouste Gulbenkian, 1968.

[Knu69]

Knuth, D. E. The Art of Computer Programming, volume 1. Massachusetts: AddisonWesley, 1969.

[Knu76]

Knuth, D. E. Ancient babylonian algorithms. In Comm. ACM 15, 671-677(1972);


Errata, Comm. ACM 19, 108, 1976.

[Kow96]

Kowaltowski, Tomasz. Von Neumann: suas contribuies Computao, in Estudos


Avanados 10(26). Campinas: UNICAMP, 1996.

[KP80]

Knuth, D. E. & Pardo, L. T. The early development of programming languages, in A


history of computing in the twentieth century (a collection of essays). London: Academic
Press, 1980.

[Lau97]

Lauand. Luis Jean. tica e antropologia: estudos e tradues. So Paulo: Mandruv,


1997.

[Lee95]

Lee, J. A. N., Relatrio preparatrio sobre o estudo da Histria da Computao, e propostas


preliminares para incluso de aspectos da Histria da Computao curriculum das universidades
e colgios, apresentado no Grupo de Trabalho 9.7 (Histria da Computao), do IFIP
(International Federation for Information Processing), 24 a 29 de julho de 1995.

[Lee96]

Lee, John A. N. Annals of the History of Computing, Volume 18, no 2. EUA: Institute
of Electrical and Electronics Engineers, Inc., 1996.

[Lil45]

Lilley, S. Machinery in Mathematics, a historical survey of calculating machines. London:


Discovery, 1945.

[Lin96]

Linden, Peter van der. Just Java. California: The Sunsoft Press, 1996.

[LSSK79]

Lucchesi, C. L. & Simon, I. S. I. & Simon, J. & Kowaltowski, T. Aspectos Tericos


da Computao. Rio de Janeiro: Livros Tcnicos e Cientficos S.A., 1979.

[Luc82]

Lucena, Carlos J.P. Anlise e sntese de programas de computador. Braslia: Editora


Universidade de Braslia, 1982.

150

[May80]

May, Kenneth O. Historiography: a perspective for computer scientists, in A history of


computing in the twentieth century (a collection of essays). London: Academic Press, 1980.

[Moo77]

Moore, Doris Langley. Ada, countess of Lovelace: Byrons legitimate daughter.


New York: Harper and Row, 1977.

[Mor61]

Morrison, Philip & Morrison, Emily. Charles Babbage and his calculatings engines.
New York: Dover, 1961.

[Mos92]

Mosses, Peter D. Action Semantics. Cambridge: Cambridge University Press, 1992.

[Mot96]

Motoyama, Shozo. In Histria da tcnica e da tecnologia no Brasil. So Paulo: UNESP,


1996.

[MP43]

McCulloch , Warren & Pitts, Walter. A logical calculus of the ideas immanent in nervous
activity, Bulletin of Mathematical Biophysics, volume 5, 1943.

[MS98]

Michelson, A..A.. & Stratton, S.W. A New Harmonic Analyzer. American Journal
of Science, 4a srie, vol V, 1898.

[Nau69]

Naur, P. Randell B. Software Engineering. Rept. NATO Sci. Comm., 1969.

[Nee59]

Needham, Joseph. Science and civilization in China, volume 3. Cambridge:


Cambridge University Press, 1959.

[New56]

Newman, J. R. The world of mathematics. New York: Simon & Schuster, 1956.

[NN56]

Nagel, Ernest & Newman, J. R. Gdels Proof, the world of mathematics. New York:
Simon e Schuster, 1956.

[Per88]

Prez, Rafael Gomes. Histria bsica da filosofia. So Paulo: Nerman, 1988.

[RA91]

Realle, G. & Antisseri, Dario. Histria da Filosofia. So Paulo: Edies Paulinas,


1991.

[Rhe85]

Rheingold, Howard. Tools for thought: the people and Ideas of the next computer revolution.
New York: Simon & Schuster, 1985.

[RN95]

Russell, Stuart & Norvig, Peter. Artificial Intelligence, a modern approach.


New Jersey: Prentice Hall Series in Artificial Intelligence, 1995.

151

[Roc81]

Roces, Wenceslao. Lecciones sobre la historia de la filosofia, III. (trad. Vorlesungen ber
die Geschichte der Philosophie. Karl Ludwig Michelet, 1842). Mxico: Fondo de
Cultura Econmica, 1981.

[Ryd67]

Ryder, John D. Engineering Electronics with Industrial Applications and Control. Toquio:
McGraw-Hill Kogakuska, Ltd., 1967.

[San82]

Sanguineti, Juan Jose. Lgica. Pamplona: EUNSA, 1982.

[Sch31]

Scholz, H.. Abriss der Geschichte, apud [Aga86], pag. 61

[Sho67]

Shoenfield, Joseph R. Mathematical logic. Massachusetts: Addison-Wesley


Publishing Company, 1967.

[Sin99]

Singh, Simon. O ltimo teorema de Fermat. Rio de Janeiro: Record, 1999.

[Sho71]

Shoenfield, Joseph R. Degrees of Unsolvability. Amsterdam: North-Holland


Publishing Company, 1971.

[Ste91]

Steiner, George. Presencias reales. Barcelona: Destino, 1991.

[Sor92]

Soria, Carlos. De la metfora del cuarto poder a la sociedad de la informacin, in Veinte


claves para la nueva era. Madrid: Ediciones Rialp S/A, 1992.

[Sti80]

Stibitz, George R. Early computers, in A history of computing in the twentieth century (a


collection of essays). London: Academic Press, 1980.

[Tan92]

Tanenbaum, A. S. Organizao Estruturada de Computadores. Rio de Janeiro:


Prentice-Hall do Brasil, 1992.

[Tei97]

Teixeira, Joo de Fernandes Teixeira Mentes e Mquinas. Porto Alegre: Artes


Mdicas, 1997.

[Tir2002]

Andrs, Tirso de. Homo cybersapiens, la inteligncia artificial y la humana. Pamplona:


EUNSA, 2002.

[Toy87]

Toynbee, Arnold. Um estudo da histria. Braslia: Martins Fontes & Editora


Universidade de Braslia, 1987.

[Tur36]

Turing, A. M., On computable numbers, with an aplication to the Entscheidungsproblem.


Proceedings of the London Mathematical Siciety, volume 42, Londres, 1936.

152

[Tur50]

Turing, A. M. Computing machinery and intelligence. England: Mind, volume 59, no


236, 1950.

[Ula80]

Ulam, S. M. Von Neumann: The Interaction of Mathematics and Computing, in A history


of computing in the twentieth century (a collection of essays). London: Academic Press,
1980.

[Vey82]

Veyne, Paul M. [1982]. Como se escreve a histria. Braslia: Editora Universidade de


Braslia, 1982.

[Wat90]

Watt, David A.. Programming language concepts and paradigms. Cambridge: Prentice
Hall, 1990.

[Wex80]

Wexelblat, R. L. [1980]. ACM History of programming language conference, Los Angeles.


New York: ACM Monograph, Academic Press, 1980.

[Wie70]

Wiener, Norbert. Ciberntica. So Paulo: Editora da Universidade de So Paulo e


Editora Polgono, 1970.

[Wil65]

Wilder, Raymond L. Introduction to the foundations of Mathematics. Tquio: John


Wiley & Sons, Inc., 1965.

[Wil97]

Willians, Michael R. History of computing technology. California: IEEE Computer


Societ Press, 1997.

[Zus80]

Zuse, Konrad [1980]. Some remarks of the history of computing in Germany, in


A history of computing in the twentieth century (a collection of essays). London: Academic
Press, 1980.

153

Anexo Cronologia (at o ano 2007) *


DATA

EVOLUO CONCEITUAL

EVOLUO TECNOLGICA

Registros de transaes comerciais em pequenas

4000 aC

tbuas

3000 aC
1800 aC
1650 aC

Provvel aparecimento do BACO


Babilnia, mtodos para resolver problemas
numricos
Rhind Papyrus: palavra lgebra (al-jabr,
reunio de partes separadas)

500 aC

Egito, baco com fios


Aristteles: incio da cincia lgica (Organon,

384 aC

cj. de obras editadas posteriormente: lgica


formal e filosfica)
Euclides, em sua obra Elementos, mtodo

330 aC

axiomtico:

postulados,

proposies,

teoremas
250 aC

Crivo de Eratstenes para nmeros primos


Dispositivo Antikythera, para clculo de

79 aC
830

calendrio lunar
Abu

Jafar

Muhammad

ibn

Musa

alKhwarizmi, lgebra
Gerbert de Aurillac ou Papa Silvestre II, baco

1000

mais eficiente
Raymundus Lullus, Ars magna: o

1300

1o

dispositivo de texto ocidental para produo


de sentenas logicamente corretas
al-Kashi: Tabac al-Manatec - dispositivo para

1445

simplificar clculos de importantes tempos


associados aos eclipses lunares

1614

John Napier, ponto decimal, tabela de

John Napier, dispositivo que usa ossos para

logaritmos dispositivo que usa ossos para

demonstrar a diviso atravs de subtraes e

demonstrar a diviso atravs de subtraes e

multiplicao por adies

Esta cronologia vai at o ano 2007 somente, e no sei se sero feitas novas atualizaes, ao menos por esse autor. A histria
segue, a tecnologia avana, talvez novos paradigmas alterem rotas, enquanto ns, pobres homens, ficamos... Espero que os
interessados no assunto prossigam com a divulgao de novos aspectos ou aprofundamentos da Histria da Computao,
proporcionando tambm melhores tabelas (e mais atualizadas!).

154

multiplicao por adies


William Oughtred, rgua de clculo circular

1622

baseada nos logaritmos de Napier


Wilhelm Schickard, relgio de calcular para

1624

multiplicao de grandes nmeros

1642
1666

Blaise Pascal, 1a mquina numrica de calcular


Leibniz:

De

Arte

Combinatoria;

characteristica universalis
Leibniz, dispositivo mecnico de calcular que

1673

multiplica, divide, soma e subtrai


Arteso suio cria autmatos com mecanismos

1750

de trabalho temporais para bater teclas e escrever


letras

1780

Benjamin Franklin, eletricidade.


Joseph-Marie Jacquard, cartes perfurados para

1801

automatizar seus teares


J.H.Herman, primeiro planmetro, dispositivo

1814

analgico para medir rea coberta por uma curva


em um grfico

1822

Charles

Babbage,

projeto

Engenho

Diferencial para calcular logaritmos


Willian Austin Burt, EUA, 1a mquina de

1829

escrever
Charles Babbage, projeto Mquina Analtica,

1833

cartes perfurados: 1o modelo terico de um


computador.

1838
1842

Samuel Morse e Alfrdd Vail demonstram os


elementos do sistema de telgrafo
Lady Ada Byron, 1o programa para a mquina
de Babbage
George Boole, The Mathematical Analysis of

1847

Logic - nasce a Lgica Simblica; sistema


binrio

1854
1855

George Boole, An Investigation of the Laws


of Thougt
James Clerk Maxwell: planmetro rotacional
George e Edvard Scheutz de Estocolmo, 1o

1855

computador mecnico, baseados no trabalho de


Babbage.

1858

Jako Amsler: planmetro polar (pr-computador

155

analgico)
O telefone inventado por Alexander Graham

1876

Bell
Sir Willian Thomson (Lord Kelvin): analisador

1878
1879
1874- 97

harmnico (pr-computador analgico)


Gottlob Frege: Begriffsschrift (Ideografia ou
Conceitografia) - rigor formal
Cantor - desenvolvimento da Teoria dos
Conjuntos
William Burroughs, 1a mquina mecnica de

1886

calcular
Herman

1889

patente

de

mquina

tabuladora
Herman Hollerith, mquina eletromecnica,

1890

cartes perfurados, censo EUA


Gottlob

1893

Hollerith,

Frege:

Fundamentais

Grundgesitze
da

(Leis

Aritmtica,

Ideograficamente deduzidas) - reduo da


aritmtica logica, teoria da linguagem

1895

Guglielmo Marconi transmite um sinal de rdio


Hilbert, 10o problema: existe procedimento

1900

de deciso para soluco das equaes


diofantinas?

constri um dispositivo classificador


Nikola Tesla,

1903

patenteia um circuito lgico

eletrico chamado porta ou chave


John A. Fleming patenteia um tubo de diodo a

1904

vcuo (vlvula)
G.

1908

Hollerith funda a Tabulating Machine Co. e

Peano:

Formulrio

Matemtico,

simbolismo conectado com estrutura das


linguagens naturais
Bertrand Russell e Whitehead: Principia

1913

Mathematica, dedues matemticas a partir


do clculo lgico

1911

Kamerlingh Onnes, fsico, na Universidade


de Leiden descobre a supercondutividade
Computer-Tabulating-Recording

1911

formada da unio de Tabulating Company,


Computing Scale Company, e International Time
Recording Company

156

Company

O uso de microchips prefigurado pelo fsico


Manson Benedicks que descobre que o cristal de

1915

germnio pode ser usado para converter corrente


alternada para corrente direta
Eccles e Jordan, fsicos americanos, inventam o

1919

chaveamento eletrnico flip-flop, crtico para


altas velocidades
A palavra robot usada pela 1a vez por

1921

Karel Cpek, em seu trabalho Rossums


Universal Robots
Computing-Tabulating-Recording

1924

Company

muda seu nome para International Business


Machines
Vannevar

1925

Bush,

inicia

construo

de

dispositivo para resolver equaes diferenciais,


em MIT
Radio-telefonia

1927

torna-se

operacional

entre

Londres e Nova Iorque


Powers Accounting Machine Company torna-se

1927

Tabulating Machines Division da RemingtonRand Corp.

1928

Aparece o relgio de cristal de quartzo


Vladimir Zworykin, inventa o tubo de raios

1928

catdicos
O

1930

Analisador

Diferencial,

inventado

por

Vannevar Bussh e colegas, no MIT, resolve


inmeras equaes diferenciais

1930

Gdel: Teorema da Incompletude


Reynold B. Johnson, professor em Michigan,
inventa um processo de marcar em uma folha de

1931

respostas atravs de uma caneta sensvel


condutividade. A IBM comprou mais tarde esta
tecnologia
1o computador mecnico construido na

1931

Alemanha, por Konrad Zuse


1a mquina eletrnica que se comunica, Voder,

1933

construda por Dudley, que seguiu em 1939 com


o Vocoder (codificador de voz)

1936

Konrad Zuse compreende que programas


compostos de combinaes de bits podem

157

ser armazenados
1936
1936

Alonso

Church:

funces

computveis,

indecidibilidade da lgica de 1a ordem


Alan M. Turing, Universidade de Princeton:
computabilidade e Mquina de Turing
George Stibitz, 1o circuito binrio baseado na

1937
1937

lgebra booleana, Bell Telephone Laboratories


Claude Shannon: princpios para um somador
eletrnico de base 2
Howard Aiken submete IBM proposta de

1937

mquina calculadora digital, capaz de fazer as


4 operaes fundamentais e operar mediante
instrues sequenciais

1937

John Vincent Atanasoff elabora os princpios


para um computador eletrnico digital
Zuse

1938

completa

Z1,

computador

eletromecnico binrio e o refina desenhando o


Z2
Hewlett-Packard Co.

1938
1938

fundada

para

fazer

equipamentos eletrnicos
Isaac Asimov: termo robot
Trabalhando de outubro a novembro, John
Vincent Atanasoff com Clifford E. Berry,

1939

controem

um

prottipo

de

computador

eletrnico digital que usa aritmtica binria


Bell Labs, George Stibitz, Calculador de

1940

Nmeros Complexos, computador digital

1940

TV a cores

1940

Bell Laboratories, 1o terminal.

1940

Konrad Zuze completa o Z2


Colossus projetado por Alan M. Turing e
iniciada a sua construo por M.H.A.

1941

Neuman e Tommy Flowers, Universidade de


Manchester,

1o dispositivo de calcular

eletrnico(participao de Alan Turing)


Konrad Zuse constri o computador Z3 a 1a
1941

mquina de calcular com controle automatico de


suas operaes
31-V, comea a construo do ENIAC, na

1943

Moore
Filadelfia

158

School

of

Electrical

Engineering,

Dezembro, Colossus, torna-se operacional em

1943

1943

Bletchley Park
Post: 1o sistema gerativo para computao
simblica
Mark I (IBM Automatic Sequence Controlled
Calculator) terminado pelo prof. Howard H.

1944

Aiken em Harvard junto IBM: baseado em


rels

1944

Grace Murray 1o programador do Mark I

1945

Z4 de Zuze sobrevive II Guerra


J. Presper Eckert e John Mauchly assinam
contrato

1945

para

construir

EDVAC

(Electronic Discrete Variable Automatic


Computer). John von Neumann introduz o
conceito de programa armazenado, no
rascunho do projeto do EDVAC
Na primavera deste ano ENIAC es pronto e

1945

executando
Trabalhando em um prottipo do Mark II,

1945

Grace Murray Hopper encontra o 1o bug, uma


mariposa que causou uma falha em um dos rels
Binac

1946

(Binary

Automatic

Computer),

computador para operar em tempo real, iniciado


por Eckert and Mauchly; completado em 1949

1946

Wiener: ciberntica
ENIAC (Electronic Numerical Integrator and
Computer), J. Presper Eckert e John Mauchly,

1946

18.000 vlvulas, Universidade de Pensilvnia.


5.000 adies e 360 multiplicaes por segundo
Arthur Burks, Herman Goldstine, e John von

1946

Neumann escrevem Preliminary Discussion


of the Logical Design of an Electronic
Computing Instrument
Eckert-Mauchly

1946

Computer

Corporation

constituida como Electronic Control Co.,


Universal Automatic Computer (Univac).

1946
1947
1947

John Tukey, conceito de bit


Alan M. Turing, artigo sobre Mquinas
Inteligentes, incio da IA
Association

for

Computing

Machinery

159

(ACM) constituida
Howard Ayken e equipe completam o Harvard

1947

Mark II
EDSAC (Electronic Delay Storage Automatic

1948

Calculator), na Universidade Cambridge, por


Maurice V. Wilkes

1948

IBM introduz o computador eletrnico 604


IBM constri o Selective Sequence Electronic

1948

Calculator (SSEC), computador com 12,000


vlvulas
Inveno do Transistor, William Bradford

1948

Shockley e John Bardeen e Walter H. Brattain


Manchester Mark I, ou baby machine,

1948

computador digital operacional, com programa


armazenado
Claude E. Shannon publica A Mathematical

1948

Theory of Communication, formulando as


bases para uma moderna compreenso dos
processos de transmissao de informao
Richard Hamming encontra e corrige erros

1948

em blocos de dados. O cdigo Hamming


usado posteriormente em computadores e
chaveamentos telefnicos
EDVAC

1949

(Electronic

Automatic Computer)

Discrete

Variable

testado com os 1os

discos magnticos
Computador Whirlwind, MIT: 1o computador de

1949

tempo-real, Jay Forrester e Ken Olsen


EDSAC (Electronic Delayed Storage Automatic
Computer),

1949

computador

com

programa

armazenado, Maurice Wilkes, Universidade de


Cambridge, faz seu 1o calculo dia 6 de maio
Short Order Code, desenvolvido por John

1949

Mauchly, a 1a linguagem de programao de


alto nvel

1949

Claude Shannon inventa a 1a mquina de

Claude Shannon inventa a 1a mquina de jogar

jogar xadrez

xadrez
Jay Forrester inventa a memria de ncleos

1949
1950

160

magnticos
Maurice

V.

Wilkes,

universidade

de

Cambridge, usa uma linguagem simblica de


montagem(assembler) no EDSAC
SEAC (Standards Eastern Automatic Computer)
1950

desenvolvido para o National Bureau of


Standards

1951
1951
1951
1951

William Shockley inventa o transistor de juno


1a

conferncia

internacional

sobre

computadores
Maurice

V.

Wilkes,

conceito

de

microprogramao
IEEE Computer Society constituida
UNIVAC I instalado no Bureau of Census

1951

americano, usando fita magntica como um


buffer de memria

1952
1952

1o

manual

de

computador,

Fred

Gruenberger.
Kleene: teorema da forma normal, funes
recursivas
Computador IAS (von Neumann): a maioria das

1952

mquina atuais utiliza este projeto

1952

IBM 701

1952

Nixdorf Computer i fundada na Alemanha


RCA desenvolve o Bizmac, com memria de

1952

ncleos magnticos e um tambor magntico para


o 1o banco de dados
1o computador da IBM para grandes massas de

1953

dados: utilizando tambores magnticos


Burroughs Corp. instala o Universal Digital

1953

Electronic

Computer

(UDEC)

na

universidade de Wayne State


Remington-Rand, para uso no Univac, 1a

1953

impressora de alta velocidade


1o dispositivo de fita magntica, o IBM 726, 100

1953

caracteres-por-polegada de densidade e 75
polegadas por segundo de velocidade
Earl Mastersons Uniprinter, ou impressora de

1954

linha, desenvolvida para computadores, 600 lpm


FORTRAN desenvolvido por John Backus,

1954

IBM. Harlan Herrick executa com sucesso o


1o programa em FORTRAN

1954

Gene Amdahl, 1o sistema operacional, IBM 704

161

Univac 1103a: a 1a mquina comercial com

1954
1956

memria de ncleos de ferrite


APT (Automatic Programmed Tool)
desenvolvido por D.T. Ross
Edsger Dijkstra: algoritmo eficiente para

1956

caminhos curtos em grafos e minimizar


expanso de rvores

1956

A. Newell, D. Shaw e F. Simon inventam o


IPL (Information Processing Language.)
Logic Theorist: dispositivo baseado em IA

1956

capaz

de

provar

prpoposies

lgicas

(Dartmouth College)
John McCarthy e Marvin Minsky renem-se
1956

em Dartmouth College onde o conceito de


inteligncia artificial desenvolvido

1956

O termo Inteligncia Artificial usado por


John McCarthy.
Control Data Corporation formada por

1957

William C. Norris e grupo de engenheiros da


Sperry-Rand
Ford e Fulkerson: avanos na combinatria e

1957

algoritmos eficientes para cculo de fluxo


mximo em redes
Digital Equipment Corporation fundada por

1957

Ken Olsen

John Backus e colegas da IBM desenvolvem


1957

1o

compilador

FORTRAN

para

Westinghouse
ALGOL, primeiramente chamado IAL
1958

(International

Algebraic

Language),

apresentado em Zurich
A 1a mquina de memria virtual, Atlas,
1958

instalada

na

Inglaterra

por

Ferranti.

Desenvolvida ne Universidade de Manchester


por R.M. Kilburn

1958

1os computadores eletrnicos no Japo: NEC1101 e -1102


Frank Rosenblatt contri o Perceptron Mark I

1958

usando

uma

CRT

(character

recognation) como dispositivo de sada

162

caracter

LISP, IBM 704, MIT, John McCarthy:


1958

processamento

de

listas,

recursividade,

lambda calculus, acelerao pesquisas IA


Seymour Cray constri o 1o supercomputador
1958

totalmente transistorizado para a Control Data


Corp., o CDC 1604

1958-

N. Chomski, M. Rabin: especificaes

1959

formais
Ultimate, 1o robot, F.Engleberger e George C.

1958

Devol, na Gen.Motors, controlar mq. trmicas


Jack Kilby da Texas Instruments elabora o 1o

1958
1959

circuito integrado
COBOL definido pela Conference on Data
System Languages (Codasyl)
IBM

1959
1959

monta

seus

1os

computadores

transistorizados: 1620 e 1790


Jack S. Kilby na Texas Instruments arquiva
uma patente para o 1o circuito integrado
Robert Noyce da Fairchild Semiconductor

1959

desenvolve a idia de um bloco de circuitos


integrados
Benjamin Curley, 1o minicomputador, o PDP-1,

1960

na Digital Equipment Corporation


Control Data Corporation, CDC 1604, 1o

1960
1960
1960
1960
1960

computador cientfico
Mtodos

para

problemas

intratveis: Karp e Kernigan


Hoare, Dijkstra, Bobo Floyd: mtodos
formais para corretude de programas
Inst.Pesq.Stanford & Univ. Edimburg: equipe
de IA para projetar robot com viso
Algol 60 desenvolvido por cientistas da
computao americanos e europeus
O

1961

heursticos

conceito

de

multiprogramao

implementado no IBM 7030. Time-sharing


implementado no MIT no IBM 709 and 7090
por F. Corbato.
IBM desenvolve o IBM 7030 para Los Alamos:

1961

transistorizado, 64-bit data paths, 1o de byte de 8


bits; em uso at l971

1962

APL (A Programming Language), Ken

163

Iverson, Universidade de Harvard University


e IBM
Linguagens de simulao de uso geral: (1)
1962

SIMSCRIPT, por Rand Corporation; (2)


GPSS por IBM

1962

IBM 1311 discos removveis


H. Ross Perot funda EDS (Electronic Data

1962
1963

Systems), Dallas, TX.


Cdigo

ASCII

padro

para

troca

de

informaes entre computadores


B5000 (Burroughs): primeira mquina projetada

1963

para uma linguagem de alto nvel


Consoles grficas, General Motors (DAC-1) e
MIT

1963

Lincoln

Laboratories

(Sketchpad),

resultando em computer-aided design (CAD). 1a


light-pen, desenvolvida por Ivan Sutherland

1963

DEC, PDP-5 minicomputador


IBM System 360, 1a famlia de computadore

1964

compatveis (circuto integrado)


Control Data Corporation, CDC 6000, palavra
de 60 bits, processamento paralelo. CDC 6600, o

1964

mais poderoso computador por longos anos.


Projetado por Seymour Cray
BASIC (Beginners All-purpose Symbolic

1964

Instruction Language)

criado por Tom

Kurtz e John Kemeny of Dartmouth


Universidade de Belgrado, Rajko Tomovic
1965

faz uma das 1a tentativas de desenvolver um


mecanismo artificial sensvel ao toque
Robin M., Yamada, Edmond, Hartman &

1965

Stearns:

Teoria

da

Complexidade

Computacional
1966
1967

164

Texas Instruments oferece a 1a calculadora de


mo baseada em estado slido
A.H. Bobeck, na Bell Laboratories desenvolve a
1a memria de bolha magntica

Ole-Johan Dahl e Kristen Nygaard, no


1967

Norwegian Computing Centre terminam uma


verso da linguagem de uso geral Simula, a 1a
orientada a objeto

Donald Knuth: The Art of Computer


1968-

Programming, algoritmos e estruturas de

1973

dados

como

entidades

separadas

dos

programas
1968
1968

Edsger Dijkstra escreve sobre programao


estruturada
Dendral, 1o programa de diagnstico mdico,
Joshua Lederberg, Universidade de Stanford
Edson de Castro deixa a DEC to comear a

1969

Data General Corp. e introduz o Nova, 1o


minicomputador de 16 bits

1969
1969
1969

1a Confer. Internacional sobre Inteligncia


Artificial
IBM abre hardware e software; introduz

IBM abre hardware e software; introduz linha

linha de minicomputador, Sistema /3

de minicomputador, Sistema /3

Complilador PASCAL, by Nicklaus Wirth,


instalado no CDC 6400
Shakey, desenvolvido na SRI International, o 1o

1970

robot que usa inteligncia artificial para se


deslocar

1970
1970

DEC, PDP-11/20, 1o mini de 16 bits


1o torneio de xadrez entre mquinas da ACM
IBM monta o 1o Sistema 370, computador de 4a

1970

gerao
Floppy disks so introduzidos para carregar o

1971
1971

microcdigo do IBM 370


Cook, Levin: problemas NP-completos
Intel

1971

Corporation

anuncia

1o

microprocessador, o Intel 4004, equipe liderada


por Marcian E. Hoff.

1971

1972

John Blankenbaker, 1o computador pessoal,


Kenbak I
1a calculadora eletrnica, por Jack Kilby, Jerry
Merryman, e Jim VanTassel, da Texas

165

Gary Kildall, Naval Postgraduate School


1972

escreve o PL/1, a 1a linguagem de


programao para o microprocessador Intel
4004

1972

SIRCH, dispositivo capaz de reconhecimento


e orientao, Universidade de Nottingham

1972
1972

Intel 8008, microprocessador de 8 bits


Dennis Ritchie desenvolve a linguagem C nos
Bell Labs
Teorias

de

anlise

de

complexidade

desenvolvem a idia da incompletude dos


1972

problemas NP, mostrando a intratabilidade


de determinados problemas computacionais
como o do caixeiro viajante

1973

Linguagem PROLOG, Alain Comerauer,


Universidade de Marseilles-Luminy, Frana
R2E

1973

comercializa

MICRAL,

1o

microcomputador da Frana
Winchester disk drives, pela IBM, nome usado

1973

para seu dispositivo de acesso direto memria,


Modelo 3340
Intel 8080, microprocessador de 8 bits, usado em

1974

muitos microcomputadores

1974

Zilog formada

1975

Cray-1, supercomputador

1975

Impressora laser (IBM)


MITS, computador pessoal Altair, Ed Roberts

1975

and Bill Yates.


Cincinnati Milacron T3, 1o robot da indstria

1975

aeroespacial
Microsoft formada aps Bill Gates e Paul Allen

1975

adaptarem e venderem um BASIC para o Altair


PC da MITS

1976
1976
1976

Impressoras jato de tinta (IBM)


MYCIN, expert system, Stanford, por E.
Shortliffe
NEC System 800 e 900, mainframes
Seymour Cray desenvolve o Cray 1 com 100

1976

milhes de operaes de ponto flutuante por


segundo (MFLOP)

166

1976

Kernigan: algoritmos aproximativos; Solovai


e Strassen: algoritmos randomizados
Superminicomputadores so apresentados por

1976

Perkin-Elmer e Gould SEL.

1976

Zilog Z-80 chip


Apple Computer formada e apresenta o

1977

computador pessoal Apple II

1977

DEC, supermini VAX-11/780, 32 bits


Datapoint , sistema ARC system, a 1a rea de

1977
1978
1978
1978
1979

rede local
Popularizao da anlise estruturada (Tom
de Marco)
Texas Instruments, brinquedo educacional
Speak-and-Spell, sntese de voz
1a COMDEX
Linguagem

Ada,

CII-Honeywell

Bull

(Frana), Jean Ichbiah


Benoit Mandelbrot continua sua pesquisa

1979

sobre

fractais,

gerando

conjunto

Mandelbrot, derivado de z(n + 1) = z(n) *


z(n) - (0)

1979

VisiCalc, software de planilha eletrnica


Wordstar, software de processamneto de texto,

1979

Micropro (agora Wordstar International).


Control

1980
1980

Data

Corporation,

Cyber

205

supercomputador
Anlise probabilstica de algoritmos
Microsoft licencia o sistema operacional

1980

UNIX, da Bell Laboratories e aprsenta sua


adaptao, o XENIX

1980-90

Criptografia: protocolos de chave pblica,


baseados na gerao de nmeros primos
Commodore, VIC-20 computador

1981

domstico
IBM entra no mercado de computadores

1981

pessoais

1981
1981
1982

para uso

Osborne Computer, Osborne 1, o 1o laptop


Linguagens robticas para facilitar gargalos de
programao
John Warnock desenvolve o PostScript,

167

linguagem para definio de pginas e com


Charles Geschke funda a Adobe Systems.
1982

Sun Microsystems formada

1982

Microsoft, MS-DOS
Cray 2, 1 bilho de FLOPs (floating point

1983

operations per second)


At AT&T Bell Labs, Bjarne Stroustrup

1983

continua seu trabalho sobre o C++, uma


extenso orientada a objeto para C

1984

Apple, computador Macintosh

1984

IBM introduz o PC AT

1984

Programao Linear: algoritmo de Karmakar

1984

Linguagem funcional Standard ML

1984
1985
1986

CD-Rom, Sony e Philips


Aldus apresenta o PageMaker, para o
Macintosh: incio da era da edio desktop
Incio da popularizao da palavra e conceito
Case
Compaq, srie Fortune 500; 1o

1986

Intel 80386-

based PC
HP,

1986

linha

tecnologia

Spectrum,
RISC

computadores

(reduced

com

instruction

set

computers)
1986

Eiffel, linguagem orientada objeto

1987

IBM PS/2
Cray Research, Cray 2S, 40% mais rpido que

1987

Cray 2

1987

ETA Systems, ETA-10, supercomputadores


Sun Microsystems, 1a workstation baseada

1987

microprocessador RISC
Watts Humphrey e William Sweet, Instituo
de Engenharia de Software, EUA, publicam

1987

uma estrutura de processos que se torna


um modelo para ajudar desenvolvimento de
software confivel

1987
1987
1988

168

Aldus, PageMaker para IBM PC e compatveis


Texas Instruments: 1o chip microprocessador
baseado em IA
Cray Research, Cray Y-MP, supercomputador de
20 milhesde dlares

1988

IBM, sistema operacional MVS/ESA

1988

Motorola, 88000, um microprocessador RISC


O 1o supercomputador para aplicaes grficas,

1988

por Apollo, Ardent e Stellar


AT&T anuncia plano de adquirir 20% da Sun

1988

Microsystems,

que

ir

ajudar

no

desenvolvimento de nova verso para UNIX


1988

Sun Microsystems 80386-based workstations


Next workstation computer: 1o computador

1988
1988

usando discos ticos apagveis


Internet network

Internet network

Barry Boehm publica uma descrio do


1988

modelo espiral para desenvolvimento de


software
DEC workstation usando computadores com

1989

tecnologia RISC
Intel

1989

80486

microprocessador

I860

RISC/coprocessador. Chips com mais de um


milho de transistores.

1989

Sun Microsystems, SPARCstation


Cray se reestrutura em duas cias: Cray Research e
Cray Computer Corp., esta liderada por Seymour

1989

Cray, o qual desenvolver um supercomputador


baseado em glio-arsnio
Mais de 100 milhes de computadores no

1989

mundo
Pocket anuncia o 1o computador de pequeno

1989

porte com MS-DOS


Grid introduz um laptop sensvel ao toque, que

1989

reconhece escrita a mo
Notebook com bateria: LTE e LTE/286 da

1989

Compaq

1989

DEC mainframe VAX 9000

1989

O 1o computador pessoal com tecnologia EISA

1989

O 1o computador baseado no chip 80486


Berners-Lee escreve um prottipo inicial para

1990

a World Wide Web, que usa suas outras


criaes: URLs, HTML, e HTTP

1990

Motorola microprocessador 68040

169

1990

IBM RISC Station 6000

1990

DEC VAX tolerante a falhas

1990

Cray Research, supercomputador, Y-MP2E

1990

Haskell, a ltima evoluo das linguagens


funcionais, para uso geral

1990

Microsoft Windows 3.0

1990

IBM PS/1

IBM PS/1

1990

IBM System 390, mainframe dos ano 90

1990

Microsoft Windows 3.0

1990

Apple, Classic, LC e IISI

1990

Intel i486 e iPSC/860 e Motorola 68040

1990

Sun Microsystems SPARCstation 2

1990

As primeiras estaes SPARC compatveis


Advanced Micro Devices, microprocessador

1991

AMD 386 microprocessor, para competir com


chip Intel 386

1991

Notebook PCs

1991

HP, srie 700 RISC-based 9000

1991

Intel 486SX,

1991

NCR assumida pela AT&T

1991

Sistema operacional Apple 7.0

1991

Microsoft DOS 5.0

1991

Borland compra Ashton-Tate


SunSoft, subsidiria da Sun Microsystems

1991

anuncia o Solaris, sist.operacional UNIX para


SPARC workstations e 386/486 PCs.

1991

Wavetracer, Zephyr, computador paralelo com


8192 processadores

1992

IBM OS/2 2.0

1992

Microsoft Windows 3.1

1992

Sun Microsystems lana famlia SPARCstation


Digital Equipment anuncia sua prxima gerao

1992

de computadores com arquitetura baseada


tecnologia RISC, o Alpha

1992

Microsoft Windows for Workgroup

1992

Intel Pentium

1992

170

Hewlett-Packard LaserJet 4, de alta resoluo


(600 x 600)

1992

Novell adquire UNIX Systems Laboratory


Estudante e o staff do Centro de Aplicaes
Supercomputadores,

1993

Universidade

de

Illinoiscriam, criam uma interface grfica para


usurio

para

navegao

na

INTERNET

chamada NCSA Mosaic


CARMEL, robot de Univ. de Michigan, robtica

1993

auxiliada por computador

1993

Novell NetWare 4.0

1993

Motorola PowerPC, microprocessador

1993

Microsoft Windows NT
Microsoft Plug and Play e Microsoft at Work

1993

(MAW)

1993

IBM workstation baseada em chip PowerPC

1993

IBM OS/2 para Windows

1993

Sun Microsystems licensia NextStep


Leonard Adleman, da Universidade de

1994

Southern California demonstra que o DNA


pode ser usado como um medium para
computadores
O 1o browser para o Netscape torna-se

1994

disponvel e possibilta o rpido crescimento


de surfistas WEB
Em abril, Jim Clark e Marc Andreesen

1994

fundam

Netscape

Communications

(originalmente Mosaic Communications)


1994

Intel introduduz o 486DX4


Linguagem de programao Java, apresentada

1995

em maio, possibilita desenvolvimento de


aplicaes com independncia de plataforma
Em

julho

de

1995,

pesquisadores

da

Universidade de Tokyo quebram a barreira do 1


1995

teraflop com o processador 1.692-GRAPE4(GRAvity PipE nmero 4), computador para


aplicaes especiais: simulaes astrofsicas,
especialmente os problemas gravitacionais

1995

Windows 95 lanado dia 24 de agosto

1996

O Intel Pentium Pro anunciado

171

CRAYT3E-900, computador de uso geral com

1996

1.8 teraflop

1997

Sistema StarMax 6000 da Motorola

1997

Lanamento do Windows NT 5.0


Seagate Technology lana drive rgido para disco

1997

de 3,5 de 2,5 Gigabytes: o Seagate Medalist


Verso 333 Mhz do processador Intel II.
Nomeado Deschutes, este processador usa o
novo processo industrial que o torna mais
rapido, gerando menos calor que antes

1998

1998
1999

Nova verso do Windows 98


Nova verso do kernel do Linux, a 2.2.0. O
nmero de pessoas que usam Linux calculado
em mais de 10 milhes

1999

Nova verso do processador AMD Athlon: 750


Mhz

2000

MS Windows 2000
Novas verses dos processadores AMD Athlon

2000

e Intel Pentium III: 1 GHz

2000
2000

Compaq iPAQ, para a plataforma DEC Itsy

2000

Mac OS X da Apple. Sistema operacional


com interface grfica baseada em Unix
Polmica do bug do milnio (Y2K Bug)

2001

Lanamento do Kernel do Linux 2.4


Lanamento do primeiro iPod da Apple

2001
MS Windows XP
2002

Lanamento do Lindows
Lindows alia-se Microtel
Lanamento do Kernel do Linux 2.6

2003

Microsoft Office 2003


2003 Motherboard Intel Canterwood

2003
2003

Surge o vrus Worm Blaster


2003 Intel Prescott

2003
2003

Multithreading
Comunicaes WiFi

2003
2004

Mozilla Firefox 1.0


nVidia releases GeForce 6800

2004
2005
2005

172

Windows Vista
Migrao da plataforma
processadores Intel

Macintosh

para

2006
2006
2007

Web 2.0
Apple lana o iPod Nano, o menor iPod com
tela LCD e o iPod Video, com capacidade de
armazenamento de at 80GB
Maio: novo sistema Cray XT4 parapreviso de
tempo instalado no CSCS-Swiss National
Supercomputing Centre: 2.6 GHz, 4.5 Tflops.

Nota: de autoria individual a separao da evoluo conceitual e tecnolgica, observando-se


que h casos onde difcil se estabelecer uma distino rgida entre idia e equipamento.
Saliente-se tambm que algumas das datas indicadas so conjeturais e, freqentemente,
controversas, e que, dada a multiplicidade das reas e eventos dentro destas, muito
possivelmente o quadro estar incompleto.

173

Anexo O mtodo axiomtico e as cincias dedutivas *


O problema do mtodo axiomtico para Aristteles surge da anlise da estrutura de
uma demonstrao. Esta consta de trs partes fundamentais: o que se quer demonstrar (ou
seja, a concluso), os axiomas (as premissas verdadeiras de que se parte) e um gnero cujas
propriedades so objeto de demonstrao (Analticos II, A, VII, 75a, 39 75b,2).
Que toda demonstrao tenha que partir de premissas que no podem ser objeto de
demonstrao e que qualquer definio deva se ater a uns poucos termos tomados como
primitivos e no definveis por seu lado, dentro do sistema, provado por Aristteles de
maneira bastante clara. Sustentamos, no entanto, que nem toda cincia demonstrativa, mas
sim que a do imediato no se constitui por demonstrao. ( evidente que deve ser assim,
pois se os antecedentes a partir dos quais se estabelece a demonstrao devem ser conhecidos
e se o processo demonstrativo deve terminar em proposies imediatas, necessrio que
estas sejam indemonstrveis).
evidente tambm que no possvel em absoluto demonstrar mediante um
processo circular, visto que a demonstrao parte de premissas prvias e mais conhecidas que
a concluso, e visto que uma coisa no poder ser ao mesmo tempo antecedente e
conseqente sob o mesmo aspecto, se bem possa ser prvia para ns enquanto posterior em
si mesma, como ocorre quando se conhece por induo... queles que afirmam que
possvel estabelecer demonstraes de carter circular, pode-se objetar no somente pelo dito
acima, mas tambm que se limitam a dizer que, se algo , ento ... (Analticos II, A, III, 72b,
18ss). Neste texto, junto a uma considerao de carter gnoseolgico (isto , relativo a nossa
maneira de conhecer) que o reconhecimento de que as premissas imediatas devem ser
evidentes, h uma pontualizao de carter claramente lgico-metodolgico: a de que no
pode haver demonstraes com um regresso ao infinito, e nem um processo circular, de
modo que todo sistema dedutivo deve partir de axiomas.
Como um complemento, mais notvel ainda do que apontar o mtodo axiomtico
como o mais adequado para as cincias dedutivas ter aplicado o mtodo prpria lgica.
Porque isso implica considervel dificuldade conceitual: axiomatizar uma teoria dedutiva
significa essencialmente estabelecer certas premissas (os axiomas) e no admitir nela seno
proposies (ou teoremas) deduzidas desses axiomas mediante o uso da lgica. Como poder
ento pensar-se em axiomatizar a prpria lgica? Porque para faz-lo seria necessrio adotar
novos axiomas (os princpios lgicos) e depois fazer dedues a partir deles mediante o
emprego da ... lgica! Ou seja, usar a lgica para a lgica. No possvel aqui estudar isso,
mas a grosso modo a soluo e foi o que Aristteles fez para sua silogstica consiste em
admitir que tambm na lgica possvel adotar certas estruturas consideradas como
primitivas e, depois, extrair outras delas mediante determinados procedimentos ou regras de
transformao, que no tm por sua vez carter de estruturas, mas sim o de operaes
verificveis sobre estruturas.
Na matemtica, uma axiomatizao da teoria dos nmeros havia sido oferecida
desde 1888 pelo matemtico alemo Richard Dedekind, em seu revolucionrio tratado Os
*

Baseado em [Aga86] e em artigo da Scientific American Brasil, edio Gnios da Cincia Matemtica: A vanguarda
matemtica e os limites da razo

174

nmeros: o que so e para que servem?, no qual buscava estabelecer as propriedades da sucesso
dos nmeros naturais que sejam independentes, vale dizer, no se possam deduzir umas das
outras, mas a partir das quais se possa construir todas as outras. Assim, ele construiu a teoria
dos nmeros com base nos seguintes axiomas: 1) 1 um nmero; 2) o sucessor de todo
nmero um nmero; 3) nmeros distintos tm sucessores distintos; 4) 1 no sucessor de
nenhum nmero; 5) o conjunto dos nmeros naturais o menor conjunto S tal que 1
pertence a S e o sucessor de todo elemento de S tambm pertence a S. Esse ltimo axioma,
fundado no princpio de induo (ou de recorrncia), havia permitido a Dedekind excluir da
classe de modelos para sua teoria todas as estruturas que contivessem, para alm dos nmeros
naturais, elementos estrangeiros (nmeros que, depois, sero nomeados no-standard), e,
assim, demonstrar a possibilidade de definir exatamente a estrutura dos nmeros naturais.
No entanto, para construir seu sistema de axiomas, Dedekind havia utilizado de
maneira informal a teoria dos conjuntos. Mais especificamente, ele colocara no mesmo nvel
objetos, expresses referidas a objetos e expresses referidas a outras expresses (ver o
axioma 5): sua aritmtica era de segunda ordem. Deve-se ao matemtico italiano Guiseppe
Peano a etapa seguinte, decisiva para a axiomatizao da matemtica. Em sua obra Arithmetices principia nova methodo exposita, publicada um ano depois dos trabalhos de
Dedekind, Peano apresentou um sistema de axiomas para os nmeros naturais que lembrava
de maneira espantosa o sistema de Dedekind, apesar de concebido de modo independente. O
matemtico italiano, contudo, no construra sua teoria dentro do contexto conjuntista, e
introduziu uma notao (que, com uma ou outra modificao, tornou-se padro) destinada a
contornar certas ambigidades inerentes linguagem natural. Seu objetivo era captar, com o
maior rigor possvel, a natureza lgica do princpio de induo, ou seja, a lgica de segunda
ordem.
Ver anexos Deduo e Induo na Matemtica e A Aritmtica de Peano.

Anexo Deduo e Induo na Matemtica *

Baseado em [Sho67], [Dan54] e [CO98]

175

Uma das principais caractersticas da cincia Matemtica, ao contrrio das demais


cincias, o uso de provas em vez de observaes. Um fsico deve provar as leis fsicas a
partir de outras leis fsicas, mas ele normalmente decide via observao: a prova final de
uma lei fsica. Um matemtico eventualmente usa a observao. Por exemplo: ele pode medir
os ngulos de vrios tringulos e concluir que a soma dos ngulos sempre 180. Entretanto,
ele somente aceitar isto como uma lei matemtica quando estiver logicamente provado
dentro de um sistema axiomtico.
As leis que regem este tipo de raciocnio so antigas. Embora formuladas
sistematicamente por Aristteles, eram j conhecidas muito antes dele. Elas so uma espcie
de espelho do intelecto humano: todo homem inteligente aplica de algum modo essas leis
para alcanar os seus objetivos no dia a dia. Sabe que para raciocinar corretamente deve antes
escolher algumas premissas sem ambigidades, e ento seguir passo a passo uma seqncia
lgica de aes. Assim dever chegar a uma nica conseqncia, de acordo com o processo
lgico seguido. Caso no chegue, ir provavelmente rever se aplicou corretamente as regras
lgicas do processo, e se tudo foi aplicado corretamente, significar que h algo de errado em
suas premissas.
Mas no fcil estabelecer o conjunto de premissas para um determinado domnio
de conhecimento: exige-se no s um juzo crtico apurado mas grande habilidade tambm,
assim como imperativo que cada premissa seja independente da outra e que todo o sistema
esteja abrangendo a questo investigada. O campo da matemtica que lida com tais problemas
chamado de axiomtica e foi cultivado por homens do calibre de Peano, Russell e Hilbert.
No anexo sobre A concepo formalista da matemtica desenvolvem-se um pouco mais estas
idias.
Por ora basta saber que esse processo acima descrito chamado de dedutivo e
caracteriza o pensamento matemtico. Ele encontrou sua completa realizao na geometria, e
por esta razo a estrutura lgica da geometria tornou-se modelo das cincias exatas.
De diferente natureza outro mtodo usado nas investigaes cientficas: a induo.
Geralmente descrito como o mtodo que vai do particular para o geral. o resultado de
observaes e experincias. Para se descobrir uma propriedade de uma certa classe de objetos,
repetem-se testes tantas vezes quanto possvel, sob circunstncias semelhantes. Se uma
determinada resposta tende a acontecer na maioria das vezes, tal tendncia aceita como uma
propriedade daquela classe de objetos. Porm na matemtica tal processo no pode ser
utilizado, pois bastaria uma nica resposta diferente das demais para negar uma determinada
assertiva *.
No entanto, algumas propriedades da aritmtica, como a associativa, comutativa,
etc., podem ser demonstradas por um mtodo dedutivo chamado de raciocnio por recorrncia,
muitas vezes tambm denominado induo matemtica ou induo finita ou ainda induo completa.
Foi introduzido na teoria dos nmeros pelo matemtico italiano Giuseppe Peano, e desde
ento vem sendo vastamente aplicado na matemtica e, em particular, na teoria dos
conjuntos. Abaixo segue uma breve explicao desse procedimento, que est formalizado no
anexo A Aritmtica de Peano.
*

Considere por exemplo a expresso n2 n + 41. Para n = 1,2,3,...40, gera-se em todos os casos um nmero primo. Seria um
erro primrio dentro da matemtica pensar que tal expresso sempre gerar um nmero primo...

176

As propriedades principais do conjunto dos nmeros naturais so:


1. Os nmeros naturais podem ser gerados a partir do nmero natural 0 (zero) via a
operao do sucessor: o sucessor de um nmero natural n n+1, que tambm natural.
2. Quando uma determinada propriedade de nmeros ocorre para um nmero natural e
para o prximo nmero natural na gerao, ento a propriedade acontece para todos os
nmeros naturais.
Esta segunda propriedade conhecida por princpio da induo finita e assim enunciado:
Seja P uma propriedade de nmeros naturais. Se 0 tem a propriedade P, e quando n tem a propriedade P,
n+1 tambm tem a propriedade P, ento todo natural tem a propriedade P.
O princpio da induo usado para demonstrar asseres, digamos P, sobre os
nmeros naturais e o procedimento de demonstrao tem os seguintes passos:
(a) Base de induo: mostrar que 0 satisfaz a assero P;
(b) Hiptese de induo: supor que o nmero natural k satisfaz a assero P, e demonstrar
que:
(c) Passo de induo: k+1 satisfaz a assero P;
(d) Concluso da induo: de (a), (b), (c) concluir que todo natural n satisfaz a assero P.
Exemplo: Provar que 0 + 1 + 2 + 3 + ... + k =

Base de induo: se k = 0, ento 0 =

k (k + 1)
2

0(0 + 1)
2

Hiptese de induo: suponha vlido para k = n, ou seja, 0 + 1 + ... + n =

n(n + 1)
2

Passo de induo: para k = n + 1 tem-se


n(n + 1)
+ (n+1) (por hiptese de induo)
0 + 1 + 2 + ... + n + (n+1) =
2
n(n + 1)
2(n + 1)
=
+
2
2
(n + 1)(n + 2)
=
2
(n + 1)((n + 1) + 1)
=
2
Concluso de induo: a propriedade vlida

177

A possibilidade de usar induo finita para nmeros naturais s possvel porque


este conjunto indutivo, isto , existe um elemento inicial (no caso o 0) e todos os outros
elementos so gerados pela aplicao da funo sucessor, como segue abaixo:
Definio: O conjunto dos nmeros naturais N indutivo em A, onde A = {0}, e a funo
geradora a operao de sucessor, que soma 1 a um nmero natural:
1. 0 um nmero natural;
2. Se a um nmero natural, ento o sucessor de a um nmero natural.
3. Os nicos nmeros naturais so os objetos satisfazendo os itens 1 e 2 acima
Isto abre uma srie de novas possibilidades de definies indutivas principalmente
para conjuntos. possvel definir indutivamente conjuntos que possuam um conjunto de
elementos iniciais e possuam um conjunto de funes geradoras.
A importncia capital da induo matemtica foi ressaltada, sobretudo, pelo grande
pensador francs Henri Poincar, no princpio do sculo XX. Poincar fez ver que toda
cincia matemtica seria mera e estril tautologia, redutvel ao princpio da identidade, A = A,
se o nico modelo ali aplicado fosse o da inferncia silogstico-dedutiva. Segundo Poincar a prova
por induo completa que ele chamou de dmonstration par rcurrence conteria uma
virtude criadora, capaz de possibilitar, de modo finito, a formulao de uma infinidade de
juzos matemticos.

178

Anexo - A aritmtica de Peano*


Em 1889, o matemtico italiano Giuseppe Peano resumiu as caractersticas estruturais dos
nmeros naturais em uma lista de axiomas enunciados em lgica simblica. Esta ltima era
uma linguagem de primeira ordem (ou seja, uma linguagem na qual aparecem somente
predicados aplicados aos objetos da linguagem, mas no predicados aplicados aos predicados,
nem proposies acerca de proposies), com identidade. A identidade (cujo smbolo =)
fica definida por duas propriedades:
1) a = a; a= b b = a; (a = b b = c) a = c
a igualdade uma relao reflexiva, simtrica e transitiva
2) a1 = a2 (a1) = (a2)
para dois objetos idnticos, sempre que um deles possuir uma propriedade , o outro
tambm a possuir
O conceito central da aritmtica de Peano o de sucessor: todo nmero natural x
tem um sucessor. Esse sucessor no pode ser escrito como x + 1, pois a adio ainda no foi
definida. Peano indica ento com s(x) (sucessor de x) o nmero que segue a x e especifica
que a funo s est definida para todo nmero natural x. Ele formaliza assim uma
propriedade importante dos nmeros naturais (pode-se contar sempre um a mais) e que,
depois de especificada sua estrutura particular, servir para estabelecer tacitamente que
existem infinitos nmeros.
As constantes da linguagem aritmtica de Peano so as seguintes: 0 (o nmero zero),
s (a funo sucessor), + e , as operaes de adio e multiplicao. O significado destas
constantes fica definido pelos seguintes axiomas:
1) x ( s(x) = 0)
0 (zero) no sucessor de nmero algum
2) x y (s(x) = s(y) x = y)
nmeros distintos tm sucessores distintos
3) ( (0) x ( (x) ( s (x) ) ) x (x) )
esse o princpio da induo matemtica completa: se uma propriedade verdadeira
para o zero e verdadeira a frase se verdadeira para x, ento verdadeira para o
sucessor de x, ento verdadeira para qualquer x, isto , para todo nmero natural.
4) x y (x + 0 = x) x + s(y) = s(x+y)
5) x y (x 0 = 0) x s(y) = x y + x
estes dois ltimos axiomas definem, por induo, a adio e multiplicao

A maior parte do texto vem de artigo publicado na revista Scientific American Brasil, edio Gnios da Cincia Matemtica:
A vanguarda matemtica e os limites da razo

179

Anexo - O Mtodo das Diferenas


Se uma funo, como por exemplo f(x) = 2x + 3, avaliada para sucessivos valores de x e
anotarmos as diferenas entre cada valor de f(x), encontraremos:
x
0
1
2
3
4
5
6

1a diferena

f(x)
3
5
7
9
11
13
15

2
2
2
2
2
2

Para se achar o valor de f(x) para x = 7, sem fazer nenhuma multiplicao, basta
tomar a constante de diferena e somar a f(6) j calculado, portanto f(7) = 15 + 2 = 17.
Se a funo fosse um pouco mais complexa, como por exemplo f(x) = x2 + 2x + 3,
ento seria necessrio obter as diferenas das diferenas (ou segundas diferenas) antes de se
chegar ao valor constante. Por exemplo:
x
0
1
2
3
4
5
6

f(x)
3
6
11
18
27
38
51

1a diferena

2a diferena

3
5
7
9
11
13

2
2
2
2
2

Vamos agora encontrar o valor de f(x) para x = 7. O valor da constante de diferena


2 que dever ser somado ao valor 13, encontrando-se assim o valor da coluna da 1a
diferena para x = 7. Logo, f(7) ser 15 + 51 = 66.
Em geral, se a equao polinomial a ser avaliada tem um termo de aridade n, ento
ser necessrio ser tomada a n-sima diferena antes de uma constante ser encontrada. Se
preciso avaliar uma equao polinomial para vrios valores de x, tal como quando se est
computando uma tabela, mais fcil faz-lo adicionando a diferena diferena de cima, para
ento adicionar aquela diferena de cima, e assim por diante at a o valor da funo ser
encontrado. Isto resulta em um procedimento no qual somente adies so exigidas se a
prpria funo fosse ser avaliada para cada valor de x.
Embora todas as polinomiais tenham uma constante de diferena, funes
logartmicas e trigonomtricas no tm, em geral, essa propriedade. Assim, para se poder usar
o mtodo das diferenas quando da produo de tabelas de tais funes, necessrio
aproximar a funo com uma polinomial e ento avaliar essa polinomial.
180

Uma Mquina de Diferenas simplesmente uma mquina com a capacidade de


armazenar uma srie de nmeros e executar adies com eles. Os nmeros iro representar os
valores da funo, sua primeira diferena, segunda, terceira, e assim por diante. Em funo da
mquina poder adicionar as diferenas inferiores s superiores e finalmente chegar ao valor da
funo, possvel gerar sucessivos valores da funo. A mquina projetada por Babbage era
capaz de trabalhar com polinomiais de grau seis [Wil97] [Gol72].

181

Anexo - A concepo formalista da Matemtica *


Antes das consideraes mais tcnicas sobre o formalismo na Matemtica,
oportuno fazer alguns comentrios sobre o conceito forma (com o aberto), do ponto de
vista da Lgica, mais especificamente de um dos seus ramos, que a Lgica Matemtica ou
tambm Lgica Simblica.
Ainda que o sentido mais intuitivo do termo forma relacione-se com a configurao
externa dos objetos materiais, tambm costume, na linguagem ordinria, falar de forma em
um sentido mais amplo, como por exemplo, quando se comenta que uma composio
potica est em forma de soneto, ou que uma composio musical est em forma de sonata. O
que se pensa nesse momento nas propriedades estruturais que so observveis, sem ter em
conta o significado dos versos ou dos motivos que inspiraram a msica. Da mesma maneira
usa-se o termo estrutura no s para indicar a constituio de um corpo slido, mas tambm
se referindo estrutura de uma sociedade, de um discurso, e assim por diante.
Do mesmo modo pode-se pensar em estruturas lgicas ou formas lgicas, e, dentro da
cincia Lgica, tais expresses representam um aspecto que se reveste de capital importncia:
o aspecto formal. A lgica formal um tipo de investigao sobre a linguagem que
simplesmente analisa as estruturas desta, prescindindo de contedos concretos que
posteriormente sejam dados a estas estruturas (gerando proposies concretas de um discurso
falado ou escrito). Por exemplo: todos os A so B, todos os B so C, e portanto todos os A
so C. De tal tipo de estrutura surgem argumentos vlidos, quaisquer que sejam os termos
usados para substituir A, B ou C (embora a concluso possa ser falsa se uma das premissas
for falsa ).
A forma lgica diz respeito ao contedo dos nexos que organizam uma
demonstrao (um raciocnio dedutivo), prescindindo-se dos contedos semnticos do
discurso. A lgica, nesse caso, somente se ocupa do problema do desenvolvimento dessa
demonstrao. O fato de prescindir dos contedos tem, entre outras conseqncias, a de que
possvel utilizar-se de estruturas dedutivas mediante smbolos, e isso permite uma exatido
da anlise estrutural que seria muito mais difcil de conseguir sem o auxlio do simbolismo
[Aga86].
A computao sobretudo a cincia do formal. Os computadores seguem fielmente
regras e no admitem excees. O programa no funciona quando se troca um 0 (zero) por
O (letra ), engano de natureza apenas formal. A Matemtica tambm formal, a mais
formal de todas as cincias (pois todos os seus resultados so baseados em regras e
*

Este resumo baseia-se nas exposies feitas em [NN56] e [Cos77].

O ponto de vista da correo e da verdade de um raciocnio distinto dentro da Lgica, embora voltem a unir-se
principalmente considerando-se que as regras lgicas permitem obter de premissas verdadeiras somente concluses
verdadeiras.

De qualquer maneira, no preciso reduzir o horizonte conceitual da lgica simblica a este simples aspecto instrumental
que, apesar de ser o mais facilmente compreendido de incio, tem o risco de fazer perder de vista a verdadeira natureza dos
problemas abordados pela moderna logstica. De fato, os desenvolvimentos desta ltima ultrapassam amplamente a tarefa
no fundo bastante modesta de proporcionar instrumentos mais precisos para o estudo da deduo. Com efeito, a
Lgica j uma verdadeira cincia por si mesma, que estudada e desenvolvida com o mesmo interesse puramente
especulativo que move as investigaes das matemticas puras ou da lgebra abstrata [Aga86].

182

apresentados por frmulas), e sua linguagem formal utilizada por todas as outras. No
entanto os formalistas, escola fundada pelo prof. David Hilbert, so apenas um dos grupos
dentro da Matemtica e seus resultados foram e so fortemente questionados *.
Hilbert, diferentemente dos matemticos da escola logicista, no tinha pretenses de
reduzir a matemtica lgica, mas fundamentar conjuntamente ambas. Ele e os outros
seguidores da escola formalista viam na matemtica a cincia da estrutura dos objetos. Os
nmeros so as propriedades estruturais mais simples desses objetos e por sua vez
constituem-se tambm em objetos, com novas propriedades. O matemtico pode estudar as
propriedades dos objetos somente por meio de um sistema apropriado de smbolos,
reconhecendo e relevando os aspectos destitudos de importncia dos sinais que utiliza. Uma
vez que se possua um sistema de sinais adequados, no mais necessrio se preocupar com
seus significados: os prprios smbolos possuem as propriedades estruturais que interessam.
Aqui devemos atentar para o fato de que a formalizao no deve ser confundida com este
aspecto no essencial que a simbolizao. O matemtico deve apenas investigar, segundo os
formalistas, as propriedades estruturais dos smbolos, e portanto dos objetos,
independentemente de seus significados. Assim como na geometria ou na lgebra, para
simplificar e uniformizar determinadas questes, so introduzidos conceitos no reais ponto
do infinito, nmeros ideais, etc. que so apenas convenes lingsticas, tambm se justifica
a introduo, na matemtica, de conceitos e princpios sem contedo intuitivo. Desse modo,
as leis da lgica clssica permanecem vlidas.
Ponto chave na metamatemtica de Hilbert que o sistema estudado no encerre
contradio, isto que no se possa provar uma proposio e ao mesmo tempo a sua
negao. Ele procurou estabelecer um mtodo para se construir provas absolutas de
consistncia (ausncia de contradio) dos sistemas, sem dar por suposta a consistncia de
algum outro sistema.
O primeiro passo a completa formalizao de um sistema dedutivo. Isto implica
tirar todo significado das expresses existentes dentro do sistema, isto , devem ser
consideradas puros sinais vazios. Expresso o nome que se d s palavras do sistema, que
por sua vez so compostas de smbolos abstratos, tambm chamados alfabeto do sistema. A
forma como se devem combinar essas expresses deve estar plasmada em um conjunto de
regras de formao e regras de inferncia enunciadas com toda preciso, que especificam como uma
expresso pode ser formada ou transformada em outra. A finalidade desse procedimento
construir um clculo que no oculte nada e que somente contenha o que expressamente se
tenha colocado nele. Em um sistema formal um nmero finito de expresses tomado como
sendo o conjunto de axiomas do sistema. A idia de prova num sistema formal consiste em
comear com um dos axiomas e aplicar uma seqncia finita de transformaes, convertendo
o axioma em uma sucesso de novas expresses, onde cada uma delas ou um dos axiomas
do sistema ou derivada deles pela aplicao das regras de formao. A totalidade dos
teoremas constitui o que pode ser provado no sistema. Os axiomas e os teoremas de um

Na verdade, a maioria dos matemticos desenvolve seus resultados dentro de um esprito mais informal, intuitivo, mais
geomtrico do que algbrico, e quando algbrico, no muito formal.

Quando a Matemtica fala da Matemtica

183

sistema completamente formalizado so portanto sucesses de comprimento finito de


smbolos sem significado.
Especificando um pouco melhor (baseado em [CO98]):

Definio 1: Um sistema formal uma tupla <,L,A,R>, onde:


1. um alfabeto;
2. L um conjunto recursivo * em , chamado de linguagem do sistema
formal;
3. A um subconjunto recursivo de L, chamado de Axiomas;
4. R um conjunto recursivo de relaes em L.

Exemplo: seja um sistema formal, onde o alfabeto, as palavras, os axiomas e as


relaes estejam definidas abaixo:

= {+,*}, L = {*}, A = {+,*}, R = {r1,r2}, onde:


r1 = {<x+,x*> | x *}
r2 = {{<x+*,x*+> | x *} U
{<x+**,x*++> | x *} U
{<x*,x++> | x *}}

As relaes r1 e r2 so binrias, e seus pares ordenados possuem uma lei de formao


bem definida.
Definio 2: seja =<,L,A,R> um sistema formal e seja o conjunto L.
Uma deduo ou derivao de a partir de em uma seqncia 1, 2,... n de palavras
de L, tal que:
1. n ; e
2. para todo j, 1 j< n,
(a) ou j U A
(b) ou existem j1, j2, ... jk , ji {1,..., j-1}, 1 i<k, tais que <j1,
j2, ... jk> r, com r R
Se existir uma deduo de a partir de dizemos que dedutvel ou derivvel, a
partir de em . Isto denotado por |.
Exemplo: no sistema formal do exemplo acima, uma deduo de *+ :
+ ( A)

* (<+,*> r1)
++ (<*,++> r2)
+* (<++,+*> r1)
*+ (<+*,*+> r2)

No aprofundando muito na questo, que entra na rdua teoria da recurso: um conjunto A contido em X recursivo se e
somente se h um procedimento pelo qual, dado um x pertencente a X, pode-se computar sobre x, pertena x a A ou
no. Exemplo: o conjunto dos primos em N (o procedimento o crivo de Eratstenes)[Sho71].

184

{}|*+.

portanto a seqncia *,++,+*,*+ uma deduo de *+ onde = {}; assim

Uma axiomtica formalizada converte-se, em resumo, em uma espcie de jogo


grafo-mecnico, efetuado com smbolos destitudos de significado e regulado por meio de
regras determinadas. E isso tem uma valiosa finalidade: revelar com clareza a estrutura e a
funo, similarmente ao manual esquemtico e de funcionamento de uma mquina. Quando
um sistema est formalizado, tornam-se visveis as relaes lgicas existentes entre as
proposies matemticas, como se combinam, como permanecem unidas, etc.
Uma pgina inteira preenchida com os sinais sem significado no afirma nada:
simplesmente um desenho abstrato de um mosaico que possui determinada estrutura. No
entanto perfeitamente possvel descrever as configuraes de um sistema assim especificado
e formular declaraes acerca das configuraes e das suas diversas relaes mtuas. Hilbert
observou que tais declaraes pertencem metamatemtica, isto , declaraes a respeito dos
smbolos e expresses existentes dentro de um sistema matemtico formalizado.
Para cada sistema formalizado procura-se provar sua consistncia, evidenciando-se
que jamais se poder chegar a arranjos simblicos contraditrios. Os mtodos utilizados
foram denominados por Hilbert de mtodos finitsticos: procedimentos elementares e intuitivos
de tipo combinatrio, utilizados para manipular um nmero finito de objetos e funes bem
determinadas *. A quantidade de axiomas e regras do sistema tinha de ser construtvel com um
nmero finito de passos e que os enunciados passveis de prova tinham de ser provados com
um nmero finito de passos.
Como um sistema formal sinttico se relaciona com um mundo de objetos
matemticos aos quais esto associados significados? Esta relao se d atravs da noo de
interpretao . Desta forma todos os teoremas do sistema formal podem ser interpretados
como enunciados verdadeiros acerca desses objetos matemticos. O sonho de Hilbert era
encontrar um sistema formal no qual todas as verdades matemticas fossem traduzveis,
mediante algum tipo de interpretao, para teoremas e vice-versa. Tal sistema denominado
completo. O teorema de Gdel veio a destruir esse sonho.

Como se pode notar Hilbert utiliza-se da intuio, mas no como os intuicionistas no sentido de estabelecer as propriedades
de determinados entes matemticos, mas referindo-se unicamente efetuao de operaes muito simples, to seguras e
elementares a ponto de serem aceitas na base de qualquer pesquisa terica.

Uma interpretao a descoberta de um isomorfismo entre duas estruturas: no caso ela confere significado aos objetos e
entidades matemticas, tais como linha, ponto, smbolos abstratos, etc.

185

Anexo - O problema da deciso na Matemtica *


Os casos mais conhecidos e elementares do problema da deciso pertencem
aritmtica. Por exemplo, dados dois inteiros a e b, como descobrir se a exatamente divisvel
por b? Para responder a tal questo no necessria uma especial intuio, j que existe um
procedimento de clculo, puramente mecnico (no caso executar a conhecida operao
matemtica da diviso aritmtica de a por b), que permite chegar ao trmino da operao aps
um nmero finito de passos, obtendo um quociente e um resto, depois do qual s so
possveis dois casos: ou o resto zero e ento se diz que a divisvel por b, ou o resto diferente de
zero, e ento a no exatamente divisvel por b. Existem ainda casos que envolvem um
procedimento decisrio mais simples como o que responde pergunta se um nmero
divisvel por 2. No , nesse caso, necessrio executar a operao de diviso, bastando ver se a
expresso decimal de a termina em 0, 2, 4, 6 ou 8. Da mesma forma existe um procedimento
mais simples para ver se a divisvel por 3, por 9 e alguns outros nmeros.
Nesses casos, o problema da deciso relativo s perguntas simples colocadas
solucionvel, pois existe um procedimento decisrio, que de maneira aritmtica e finita,
oferece a possibilidade de responder afirmativamente ou negativamente s perguntas citadas.
No entanto, existem na aritmtica elementar perguntas tambm simples, para as quais no
existe ainda um procedimento decisrio, como por exemplo, se os pares de nmeros primos
que se sucedem imediatamente na srie dos nmeros mpares so finitos ou infinitos em
nmero. Quer dizer, se pares como 11-13, 17-19, 41-43, ... so finitos ou infinitos. Como no
h um procedimento de clculo que oferea uma, por assim dizer, 'lei de gerao' para o
conjunto dos nmeros primos, no se est em condio de responder a essa pergunta .

Conforme [Aga86]

Ao que parece, conforme vo se gerando maiores nmeros primos, esses pares vo escasseando. Mas se deixaro de
aparecer no se sabe.

186

Anexo - O Teorema da Incompletude de Gdel *


A numerao de Gdel
Para conferir metamatemtica o rigor necessrio, Gdel tenta formaliz-la por
meio de uma teoria com duas caractersticas essenciais: por um lado, uma teoria poderosa o
suficiente para expressar a metateoria sinttica; por outro, uma teoria que pudesse ser
construda em um nmero finito de etapas, de acordo com a exigncia finitista. A aritmtica
de Peano, que apresenta essas duas propriedades, ser essa teoria. O desafio, assim, est em
traduzir os enunciados da metalinguagem da aritmtica de Peano na linguagem-objeto da
aritmtica. Os objetos da linguagem-objeto so nmeros; os da metalinguagem so afirmaes
acerca dos nmeros: Gdel precisa encontrar um modo de expressar tais afirmaes por meio
dos prprios nmeros.
Ele procede assim: a cada smbolo da aritmtica de Peano, ele atribui de maneira
unvoca um nmero, chamado seu nmero de Gdel. A partir da, possvel atribuir, tambm
de maneira unvoca, um nmero de Gdel para todas as outras expresses da aritmtica de
Peano, bem como para todas as suas frmulas e todas as suas seqncias finitas de frmulas.
A eficcia desse mtodo fica garantida pelo fato de que essa aritmetizao da linguagem
(como o processo designado) acontece em duas etapas: toda funo da aritmtica pode ser
deduzida com auxlio de certas funes bsicas chamadas de funes recursivas primitivas , as
quais so sempre calculveis por construo.
Por meio de uma tabela de correspondncia, Gdel atribui a cada smbolo da
aritmtica de Peano um nmero mpar: 0 traduzido por 1; o sucessor s por 3; a negao
por 5; o smbolo por 7; por 9; ( por 11; ) por 13; e as variveis de tipo n por
nmeros da forma pn, em que p um nmero primo superior a 13. Uma frmula da
aritmtica de Peano, que uma seqncia desses smbolos, levada, portanto, em uma
correspondente seqncia de nmeros mpares: nl, n2, ..., nk Essa seqncia, por sua vez,
transformada em um nmero nico m, por meio da seguinte instruo (que uma funo
recursiva primitiva):
m =2n1 3n2 ... p k n k
Em que p k o k-simo nmero primo (em outras palavras, o segundo membro a
decomposio de m em fatores primos). O nmero m o nmero de Gdel da frmula.
Assim, n1, n2, ... nk so os nmeros de Gdel dos smbolos de uma frmula da aritmtica de
Peano, e m o nmero de Gdel dessa frmula. Esse processo pode ser repetido para uma
seqncia de nmeros de Gdel associados a uma seqncia de frmulas da aritmtica de
*

A maior parte do texto vem de artigo publicado na revista Scientific American Brasil, edio Gnios da Cincia Matemtica:
A vanguarda matemtica e os limites da razo e tambm tem como base [Cas97]

Uma funo calculvel quando existe um algoritmo que, para todo argumento dado, fornece o valor da funo em um
nmero finito de etapas. Para enfrentar a infinidade de algoritmos imaginveis, pode-se considerar uma classe das funes
calculveis: as funes recursivas primitivas. Elas sempre tomam nmeros naturais por argumento, e so definidas da
seguinte maneira: certas funes simples denominadas funes base - so declaradas, inicialmente, como recursivas
primitivas. Chamam-se recursivas primitivas depois todas as funes que possam ser construdas, de acordo com certas
regras, a partir das funes que j se saiba serem recursivas primitivas. A demonstrao do teorema da incompletude de
Gdel baseia-se em uma srie de funes recursivas primitivas deduzidas umas a partir das outras.

187

Peano, o que resulta em um nmero de Gdel para essa seqncia de frmulas. Essa
codificao para as seqncias de frmulas importante, pois as demonstraes nada mais so
do que seqncias finitas de frmulas, em que cada uma ou um axioma, ou decorre das
frmulas precedentes.
Os teoremas da teoria dos nmeros asseguram que a enumerao de Gdel
unvoca, vale dizer, que a cada smbolo, frmula ou seqncia de frmulas corresponde um
nico nmero de Gdel, que lhe exclusivo. Em outras palavras, possvel saber, para cada
nmero natural, a partir da unicidade de sua decomposio em fatores primos, se esse nmero
um nmero de Gdel e, nesse caso, de qual elemento (seja smbolo, frmula ou seqncia de
frmula) ele smbolo.
O mtodo de Gdel (a aritmetizao), apresentado aqui para as frmulas e
demonstraes do sistema formal da aritmtica de Peano, pode ser reproduzido de maneira
semelhante para no importa qual linguagem (notadamente linguagens de programao).
Atribuem-se nmeros aos elementos bsicos da linguagem (letras, palavras, caracteres
especiais) e formam-se novos nmeros a partir das seqncias desses nmeros, de acordo com
a instruo recursiva oferecida acima. Graas aritmetizao, os conceitos metalingsticos da
sintaxe da aritmtica de Peano aparecem agora traduzidos como propriedades, funes ou
relaes entre nmeros. Por exemplo, o conceito uma frmula corresponde propriedade
um nmero cujos expoentes da decomposio em fatores primos so todos mpares.
Analogamente (embora com um grau bem maior de dificuldade), o conceito metaterico x
uma frmula demonstrvel, indicado pelo smbolo Dem (de demonstrvel), pode ser expresso
com auxlio de relaes aritmticas.
O Teorema de Incompletude
Aps estabelecer, em quatro teoremas, um mtodo para a construo de funes
recursivas, Gdel enuncia uma seqncia de 45 propriedades e funes, cada uma das quais
definida com base nas precedentes por meio dos procedimentos dados nos teoremas I a IV.
A funo nmero 45 uma funo D de duas variveis: yDx significa a seqncia de
frmulas de nmero de Gdel y uma demonstrao para a frmula de nmero de Gdel x.
Sob o nmero 46, ele define enfim a demonstrabilidade:
Dem(x) ( y)yDx,
e acrescenta entre parnteses: Dem(x) o nico conceito, entre todos os definidos,
de 1 a 46, a respeito do qual no podemos afirmar que seja recursivo. A frmula 46 deve ser
interpretada assim: A frmula x demonstrvel se, e somente se, existe uma seqncia q de
frmulas que demonstra x. Existe, portanto, uma frmula para a frase x uma frmula
demonstrvel, bem como para sua negao.
Gdel mostra, alm disso, que a funo de substituio subst, que permite substituir
uma varivel por um valor numrico dentro de uma frmula, uma funo recursiva primitiva.
Subst de importncia capital para a demonstrao de Gdel, pois fornece a chave para a
auto-referncia: permite inserir o nmero de Gdel da frmula a proposio x no
demonstrvel no lugar da prpria varivel x.

188

Mais especificamente, chamemos de F(x) a frmula a proposio de nmero de


Gdel x no demonstrvel; seja f seu nmero de Gdel. A funo de substituio permite
substituir, na prpria frmula F(x), a varivel x por esse nmero de Gdel f Obtemos assim a
frmula F(f): `A proposio de nmero de Gdel f no demonstrvel, ou seja, a
proposio a proposio de nmero de Gdel x no demonstrvel no demonstrvel. Isso
significa que, em um sistema no-contraditrio de axiomas, a frmula F(f) no formalmente
demonstrvel. Em uma etapa seguinte, Gdel demonstra que a frmula F(f), ainda que
formalmente no-demonstrvel, uma proposio aritmtica verdadeira para todos os
nmeros inteiros. Como proposio verdadeira, sua negao (que falsa) tambm no pode
ser formalmente demonstrada no sistema. Segue da que a proposio F(f) indecidvel - que
no pode ser deduzida. A frmula F(f), portanto, ao mesmo tempo verdadeira e formalmente
indecidvel.
Uma vez atingido esse resultado, Gdel observa: O mtodo de demonstrao que
foi exposto pode-se aplicar a todo sistema formal que, em primeiro lugar, interpretado como
sistema de conceitos e proposies, oferea recursos expressivos suficientes para definir os
conceitos que aparecem no raciocnio precedente (em particular, o conceito frmula
demonstrvel), e no qual, em segundo lugar, toda frmula demonstrvel seja verdadeira na
interpretao considerada. Gdel chega assim a seu teorema de incompletude, que pode ser
enunciado da seguinte maneira: Toda teoria axiomatizada suficientemente poderosa para
expressar a aritmtica incompleta.
Em seu breve livro sobre Gdel, Jaako Hintikka sublinha que, ao contrrio do que
levam a crer diversas vulgarizaes desse resultado revolucionrio, o primeiro teorema de
incompletude de Gdel no demonstra que existem na aritmtica (ou em outro sistema)
proposies verdadeiras, mas absolutamente indemonstrveis. Ele mostra, antes, que todas as
proposies verdadeiras da aritmtica no podem ser demonstradas por meio de um nico
sistema formal dado.
Para Gdel, sistema formal e procedimento determinista e mecnico andam juntos.
Assim, convencido de que as funes recursivas primitivas no do conta do conceito de
procedimento mecnico de maneira satisfatria, ele tenta desenvolver uma verso generalizada
da recursividade. Em 1936, o lgico americano Alonzo Church (1903-1995) demonstrar, a
partir dessas pesquisas, a indecidibilidade da lgica de predicados de primeira ordem:
impossvel obter, para a lgica de predicados de primeira ordem, um procedimento geral de
clculo capaz de determinar, para toda frmula, se ela ou no vlida. Seu teorema, conhecido
atualmente como teorema de Church, responde assim negativamente ao problema de
decidibilidade proposto por Hilbert em seu programa: Um problema matemtico dado,
pensava Hilbert, deve admitir, obrigatoriamente, uma soluo exata, seja sob a forma de uma
resposta direta a uma questo colocada, seja pela demonstrao de seu carter insolvel e do
fracasso inevitvel de toda tentativa nesse sentido. Baseados tambm nas pesquisas de Gdel,
os trabalhos de Alan Turing (1912-1954) constituiro o corolrio do teorema de Church em
informtica terica.
De muitos modos o trabalho de Gdel aconteceu tambm em outras reas. Apenas
quatro anos antes dele publicar o seu trabalho, o fsico alemo Werner Heisenberg descobriu
o princpio da incerteza. Assim como existe um limite fundamental nos teoremas que os
189

matemticos poderiam provar, Heisenberg mostrou que havia um limite fundamental nas
propriedades que os fsicos poderiam medir. Por exemplo, se eles queriam medir a posio
exata de um objeto, ento s poderiam medir a velocidade do mesmo com uma preciso
muito pobre. Isto acontece porque para medir a posio do objeto seria preciso ilumin-lo
com ftons de luz, mas, para determinar a localizao exata, os ftons precisariam ter uma
energia enorme. Contudo, se o objeto est sendo bombardeado com ftons de alta energia,
sua prpria velocidade ser afetada e se tornar inerentemente incerta. Portanto, ao exigir o
conhecimento da posio de um objeto, os fsicos teriam de desistir do conhecimento de sua
velocidade.
O princpio da incerteza de Heisenberg s se revela nas escalas atmicas, quando
medidas de alta preciso se tornam crticas. Logo, uma boa parte da fsica pode ser realizada
sem problemas enquanto os fsicos qunticos se preocupam com as questes profundas sobre
os limites do conhecimento. O mesmo acontecia no mundo da matemtica. Enquanto os
lgicos se ocupavam do debate altamente abstrato sobre a indecidibilidade, o resto da
comunidade continuava seu trabalho sem preocupao. Gdel tinha provado que existiam
algumas afirmaes at infinitas que no poderiam ser provadas, mas restava uma outra
quantidade que podiam ser provadas e sua descoberta no invalidava nada que tivesse sido
demostrado no passado. Alm disso, muitos matemticos acreditavam que as declaraes de
indecidibilidade de Gdel seriam encontradas nas regies mais extremas e obscuras da
matemtica e, portanto, talvez nunca tivessem de ser enfrentadas. Afinal, Gdel s dissera que
essas afirmaes indecidveis existam; ele no pudera apontar uma. Ento, em 1963, o
pesadelo terico de Gdel se tornou uma realidade viva.
Paul Cohen, um matemtico de 29 anos, da Universidade de Stanford, desenvolvera
uma tcnica para testar se uma afirmao particular indecidvel. A tcnica s funcionava
para certos casos muito especiais, mas, de qualquer forma, ele foi a primeira pessoa a
descobrir que havia questes de fato que eram indecidveis. Tendo feito sua descoberta,
Cohen imediatamente voou para Princeton, com a demonstrao na mo, de modo que fosse
verificada pelo prprio Gdel. Dois dias depois de receber o trabalho, Gdel deu a Cohen
sua aprovao. E o que era particularmente dramtico que algumas dessas questes
indecidveis estavam no centro da matemtica. Ironicamente Cohen provara que uma das
perguntas que David Hilbert colocara entre os 23 problemas mais importantes da matemtica,
a hiptese do continuum, era indecidvel.

190

Anexo - Mquinas de Turing


O processo computacional foi graficamente mostrado no artigo de Turing, On Computable
Numbers with an aplication to the Entscheidungsproblem, quando ele pediu ao leitor que considerasse
um dispositivo que pudesse ler e escrever smbolos em uma fita que estava dividida em
quadrados. Uma cabea de leitura/gravao se moveria em qualquer direo ao longo da fita,
um quadrado por vez, e uma unidade de controle poderia interpretar uma lista de instrues
simples sobre leitura e gravao de smbolos nos quadrados, movendo-se ou no para a
direita ou esquerda. O quadrado que "lido" em cada etapa conhecido como "quadrado
ativo". A regra que est sendo executada determina o que se convencionou chamar 'estado' da
mquina. A fita potencialmente infinita (ver figura).

h
q2

q0
q1

Imagine os smbolos "A" e "#"(branco). Suponha que o dispositivo possa limpar


qualquer um deles quando os l em um quadrado ativo e troc-lo por outro (i.., apagar "A" e
substituir por "#" e vice-versa). Lembre-se que o dispositivo pode mover a cabea de
leitura/gravao para a direita ou esquerda, de acordo com instrues interpretadas pela
unidade de controle. As instrues podem limpar um smbolo, escrev-lo ou deix-lo como
est, de acordo com o smbolo lido.
Qualquer tipo de "jogo" pode ser elaborado usando estas regras, no tendo
necessariamente algum significado. Uma das primeiras coisa que Alan Turing demonstrou foi
que alguns "jogos" construdos sob essas regras podem ser sofisticados, em contraste com a
simplicidade destas operaes primitivas.
Dado um quadrado que seja uma posio inicial de uma seo da fita preenchida por
quaisquer caracteres ou brancos, o dispositivo executa aes especificadas por uma lista de
regras, seguindo-as uma por vez at chegar quela que force sua parada (se no h uma
instruo explcita na tabela para uma determinada configurao da fita, ento no h nada
que a mquina possa fazer quando alcana aquela configurao, encerrando a execuo
portanto).
Cada instruo ou regra estabelece uma ao a ser executada se houver
determinado smbolo no quadrado ativo no tempo em que lido. No nosso caso vamos
estabelecer 4 diferentes tipos de regra:
191

(a)
(b)
(c)
(d)

Substituir #(branco) por smbolo


Substituir smbolo por branco(#)
Ir um quadrado para a direita
Ir um quadrado para a esquerda

Um exemplo de instruo seria: Se houver um A no quadrado ativo, substitua-o


por #. Esta instruo faz a mquina executar a segunda ao da lista acima. Para se elaborar
um "jogo" preciso fazer uma lista que especifique o nmero da regra que se deve observar
no momento atual, e, de alguma forma, qual ser a prxima. Cada regra desta lista ser
composta pela seguinte seqncia: o nmero da regra estado da mquina , um caracter ou
branco(#) para comparao, prximo estado e ao (novo smbolo que ir para o quadrado
ou movimentar para direita(>)/esquerda(<) a cabea de leitura/gravao).
Segue abaixo uma lista de regras cdigo e descrio que diro a uma mquina de
Turing como desenvolver um determinado "jogo":
1A2#
Estado 1: se h um A no quadrado ativo, substitua-o por # e v para estado 2;
2#3>
Estado 2: se h um # no quadrado ativo, v para estado 3 e ande um quadrado a direita;
3A3>
Estado 3: se h um A no quadrado ativo, v para estado 3 e ande um quadrado a direita;
3#4>
Estado 3: se h um # no quadrado ativo, v para estado 4 e ande um quadrado a direita;
4A4>
Estado 4: se h um A no quadrado ativo, v para estado 4 e ande um quadrado a direita;
4#5A
Estado 4: se h um # no quadrado ativo, substitua-o por A v para estado 5;
5A5>
Estado 5: se h um A no quadrado ativo, v para estado 5 e ande um quadrado a direita;
5#6A
Estado 5: se h um # no quadrado ativo, substitua-o por A v para estado 6;
6A6<
Estado 6: se h um A no quadrado ativo, v para estado 6 e ande um quadrado a esquerda;
6#7<
Estado 6: se h um # no quadrado ativo, v para estado 7 e ande um quadrado a esquerda;
7A8<

192

Estado 7: se h um A no quadrado ativo, v para estado 8 e ande um quadrado a esquerda;


8I8<
Estado 8: se h um A no quadrado ativo, v para estado 8 e ande um quadrado a esquerda;
8#1>
Estado 8: se h um # no quadrado ativo, v para estado 1 e ande um quadrado a direita;

Note que se houver um # no quadrado ativo quando os estados forem 1 ou 7, ou se


h um A no quadrado ativo quando o estado da mquina 2, ela pra, pois no saberia o que
fazer.
O jogo neste caso duplicar uma seqncia de A's que estejam na fita. Se a fita
contiver AAAA, no final conter AAAAAAAA. Para se jogar (em termos mais tcnicos
diramos executar o programa descrito na lista de regras) necessrio especificar uma
configurao inicial na fita, qual o quadrado inicial ativo e o estado inicial da mquina.
Quando a mquina comear a executar, ela, a partir do estado inicial e do quadrado ativo
seguir a seqncia (lgica) de regras que daro o produto final.
Provavelmente poder ser comentado que parecem coisas mecnicas demais, mas
era precisamente isto o que Turing estava procurando. A lista de instrues pode ser seguida
por um dispositivo mecnico.
Em sua essncia, toda mquina de Turing move-se ou move smbolos, de uma
posio para outra em uma fita, da mesma maneira que no exemplo dado acima. Nos dias de
hoje estes smbolos podem ser impulsos eletrnicos em um microcircuito e a fita uma srie de
endereos de memria em um chip, mas a idia a mesma. Turing provou que sua hipottica
mquina uma verso automatizada de um sistema formal especificado por uma combinao
inicial de smbolos (o conjunto de "A"s na fita no incio do processo) e as regras (aquelas
instrues escritas). Os movimentos so mudanas de 'estado' da mquina que correspondem
a especficos passos de computao.
Os modernos computadores e inclusive este PC no qual est sendo escrito este livro
parecem ser bem mais complicados na sua estrutura e muito mais poderosos
computacionalmente do que uma MT. Mas no se trata de questo, pois o que Turing
demonstrou que qualquer algoritmo (programa) executvel em qualquer computador, pode
ser processado usando uma verso particular de sua mquina, conhecida como Mquina de
Turing Universal. Exceto pela velocidade, que algo dependente do hardware, no h
procedimento computacional que qualquer computador possa fazer que no possa ser feito
por uma MTU, dados memria e tempo adequados.
O que uma MTU? Turing a idealizou ao compreender que alm dos dados de
entrada armazenados na fita, tambm o prprio 'programa' as regras do jogo poderia ser
codificado para ser lido como uma entrada pela MTU. Com esta idia Turing construiu um
programa que poderia simular a ao de qualquer programa P quando P colocado como
parte da entrada. Isto , Turing elaborou uma MTU.
Como funciona isto? Suponha que se tenha um programa P para uma mquina de
Turing. O nico necessrio agora escrever este programa na fita da MTU, junto com os
dados de entrada sobre os quais atuar o programa P. Em seguida a MTU ir simular a ao
193

de P sobre os dados. Isto quer dizer tambm que durante o processamento no haver
diferena entre o que seria rodar o programa P na sua mquina original ou o atual
processamento da MTU simulando P.

194

Anexo - Astrolbio

Figura 41: Astrolbio

Sua origem data de 200 a.C. na Grcia Clssica, e existem referncias de que Apollonius
estudou os princpios da projeo estereogrfica (mtodo de representao espacial usado no
astrolbio). Contudo, quem mais influiu na teoria da projeo espacial foi Hipparchus,
nascido em Nicia, na sia Menor (agora Iznik na Turquia), aproximadamente 180 a.C. Ele,
que teve grande influncia no desenvolvimento da trigonometria, redefiniu e formalizou a
projeo como um mtodo para resolver problemas astronmicos.
As primeiras evidncias do uso da projeo estereogrfica em uma mquina est na
escritura do autor romano e arquiteto, Vitruvius (88 - 26 a.C.), o qual, na obra De architectura,
descreve um relgio (provavelmente de gua) feito por Ctesibius em Alexandria.
Aparentemente, o relgio de Ctesibius tinha um campo giratrio de estrelas atrs de uma
armao de arame que indicava a hora do dia. A armao de arame foi construda com base
na projeo estereogrfica. H suspeitas de que o primeiro astrolbio tenha sido construdo
por Claudius Ptolomeu (150 d.C.), pois em diversas partes de seus escritos deixa a impresso
de que possua um instrumento com as caractersticas de um astrolbio. Ptolomeu escreveu
extensivamente sobre a projeo estereogrfica em seu trabalho conhecido como Planisferium.
Contudo a primeira descrio de um astrolbio datada do sculo VI e foi feita por John
Filoponos.
Durante muito tempo o uso do astrolbio ficou restrito aos povos persas e islmicos.
No sculo XI, foi introduzido na Europa atravs da Espanha, e no sculo XIII j se
encontrava popularizado. O astrolbio s caiu em desuso a partir do sculo XVII, devido
popularizao de instrumentos como o relgio e o telescpio.
Funcionamento do Astrolbio
O astrolbio baseia-se no princpio da projeo estereogrfica. Trata-se de um mtodo
que permite traar o mapa do cu em um plano, sem perder suas informaes
tridimensionais, processo anlogo criao de um mapa da Terra. Esta projeo
195

acompanhada de vrias linhas e eixos (ver a 2a figura) de referncia que determinam a direo
(azimuth) e a altitude das estrelas (altitude, ngulo que fazem com o horizonte), o ngulo de
viso do observador (horizonte) e posio em que este se encontra (Zenith).
Partes do Astrolbio
Os astrolbios mais recentes (ver a 1a figura abaixo) possuem a parte me (mater) na
qual esto marcadas informaes temporais, zodiacais e espaciais, esta parte serve de suporte
para todas as outras peas e funciona como um mostrador de clculo. Aps vrios ajustes,
ponteiros exibem informaes computadas pelo astrolbio. Encaixados na face superior da
parte me existem vrios pratos (ver a 2a figura abaixo) que trazem a projeo estereogrfica
do cu para determinada latitude durante o dia ou noite. Alguns astrolbios possuem vrios
pratos que podem ser trocados de acordo com a latitude em que o observador se encontra.
Foram fabricados astrolbios com mecanismos que permitiam o ajuste da latitude, mas estes
no se tornaram populares devido ao seu custo e complexidade de uso.
Acima destes pratos estereogrficos est disposto um componente chamado rete (ver a
a
3 figura baixo), que permite o ajuste do astrolbio ao movimento da Terra, atravs de setas
que apontam para estrelas de referncias. Tambm encontramos no rete a projeo do
caminho do sol.
Atrs do astrolbio h uma rgua, utilizada para ver a altitude do objeto celeste. O
astrolbio deve ser suspenso perpendicularmente ao solo, e a rgua posta na direo do
objeto: uma escala exibe o ngulo deste com o solo. Muitos astrolbios foram feitos com
escalas trigonomtricas para auxiliar os clculos astronmicos.
Ajuste do Astrolbio
Com o astrolbio na vertical, ajusta-se a latitude de uma das estrelas de referncia do
rete com a rgua, localizada na parte de traz do astrolbio. Ento se dispe o astrolbio na
horizontal, com o rete para cima, e orienta-se a seta correspondente estrela de referncia em
sua direo. Desta forma, obtm-se o mapa estereogrfico do cu no momento. Alguns
ponteiros marcam a hora e a data correspondentes ao ajuste. O processo inverso tambm
pode ser efetuado, conhecendo-se a data e a hora configura-se o astrolbio para obter o mapa
do cu.
Usos do Astrolbio
No sculo 10, Abd Al-Rahmn B. Umar Al-Suf escreveu um tratado no qual descrevia
1000 usos para o astrolbio. A partir desta informao pode-se ter idia da flexibilidade que
fornece este instrumento. Muitos problemas que requerem matemtica sofisticada podem ser
resolvidos apenas conhecendo-se o seu funcionamento. Dentre os usos mais simples, pode-se
citar: determinao da hora; localizao de corpos celestes; clculo da durao do dia; etc.
interessante lembrar que, durante a Idade Mdia, a Astrologia tinha grande influncia
no cotidiano das pessoas e por este motivo a grande maioria dos astrolbios tinha funes
196

ligadas ao zodaco, para facilitar a criao de horscopos. Entre os Islmicos o astrolbio era
muito utilizado para determinar o horrio das oraes, e a direo de Meca (as oraes
Islmicas so feitas nessa direo), sendo que algumas variaes incluam funes e rguas
que facilitavam estas determinaes. Por exemplo, para se determinar a hora atual:
1. A altitude do Sol ou de uma estrela determinada utilizando-se a rgua da parte de
trs do instrumento.
2. A posio do Sol na elipse achada fixando a rgua angular mvel na data do dia e
lendo a longitude do Sol na escala do zodaco.
3. Na frente do astrolbio, a rgua girada at que cruze a elipse na longitude atual do
Sol. O ponto onde a rgua cruza a elipse a posio atual do Sol.
4. So girados o rete e a rgua at que o Sol ou ponteiro da estrela esteja na altitude
medida.
5. A rgua aponta para a hora solar aparente no membro. Tempo solar aparente o
tempo como mostrado em um relgio de sol e diferente para cada longitude.

Figura 42: Astrolbio - 1

197

Figura 43: Astrolbio - 2

Figura 44: Astrolbio - 3

198

Anexo - Turing e a Mquina Enigma *


Antes da guerra os alemes tinham dispendido um esforo considervel no
desenvolvimento de um melhor sistema de codificao, e isto era motivo de grande
preocupao para o Servio Secreto Britnico, que no passado conseguira decifrar as
mensagens do inimigo com relativa facilidade. A histria oficial da guerra publicada, pelo
HMSO (Servio Britnico de Informaes na Segunda Guerra Mundial), descreve a situao
na dcada de 1930:
Por volta de 1937 ficou estabelecido que, ao contrrio dos japoneses e
italianos, o exrcito alemo, sua marinha e provavelmente a sua fora
area, junto com organizaes estatais, como as das ferrovias e a SS,
usavam para tudo, exceto nas comunicaes tticas, diferentes verses
do mesmo sistema cifrado. A mquina Enigma tinha sido colocada no
mercado na dcada de 1920, mas os alemes a tinham tornado mais
segura atravs de modificaes progressivas. Em 1937, a Escola de
Cifras e Cdigos do Governo tinha quebrado o cdigo do modelo
menos modificado e seguro dessa mquina, que estava sendo usado
pelos alemes, italianos e pelas foras nacionalistas espanholas. Mas,
fora isto, a Enigma ainda resistia ao ataque e parecia que ia continuar
assim.

A mquina Enigma consistia de um teclado, ligado a uma unidade codificadora. O


codificador tinha trs rotores separados e as posies dos rotores determinavam como cada
letra no teclado seria codificada. O que tornava o cdigo da Enigma to difcil de quebrar era
o enorme nmero de modos nos quais a mquina podia ser regulada. Em primeiro lugar, os
trs rotores na mquina eram escolhidos de uma seleo de cinco que podia ser mudada e
trocada para confundir os adversrios. Em segundo lugar, cada rotor podia ser posicionado
em 26 modos diferentes. Isto significava que a mquina podia ser regulada em milhes de
modos diferentes. E alm das permutaes permitidas pelos rotores, as conexes no quadro
de chaveamento, na parte detrs da mquina, podiam ser mudadas manualmente para
fornecer um total de 150 trilhes de regulagens possveis. E para aumentar ainda mais a
segurana, os trs rotores mudavam de orientao continuamente, de modo que, cada vez que
uma letra era transmitida, a regulagem da mquina, e portanto o cdigo, iria mudar de uma
letra para outra. Assim, se algum batesse "DODO" no teclado iria gerar a mensagem
FGTB: o D e o 0 eram transmitidos duas vezes, mas codificados de modo diferente a
cada vez.
As mquinas Enigma foram fornecidas ao Exrcito, Marinha e Fora Area da
Alemanha, e eram at mesmo operadas pelas ferrovias e outros departamentos do governo.
Mas, como acontecia com os sistemas de cdigo usados naquela poca, a fraqueza da Enigma
consistia em que o receptor tinha que conhecer a regulagem da mquina que emitira a
*

Conforme [Sin99]

199

mensagem. Para manter a segurana os ajustes da Enigma eram mudados diariamente. Um


dos meios que os transmissores de mensagens tinham de mudar a regulagem diariamente,
enquanto mantinham os receptores informados, era publicar as regulagens num livro secreto
de cdigos. O risco desta abordagem que os britnicos podiam capturar um submarino e
obter o livro-cdigo com os ajustes dirios da mquina para o ms seguinte. A abordagem
alternativa, que foi adotada durante a maior parte da guerra, consistia em transmitir a
regulagem do dia no princpio da mensagem principal, usando o cdigo do dia anterior.

Figura 45: A mquina Enigma

A criptografia uma batalha intelectual entre o criador do cdigo e aquele que tenta
decifr-lo. O desafio para o codificador misturar a mensagem at um ponto em que ela seja
indecifrvel se for interceptada pelo inimigo. Contudo, existe um limite na quantidade
possvel de manipulao matemtica devido necessidade de enviar as mensagens de modo
rpido e eficiente. A fora do cdigo alemo da Enigma consistia em que a mensagem
passava por vrios nveis de codificao a uma velocidade muito alta. O desafio para o
decifrador do cdigo era pegar uma mensagem interceptada e quebrar o cdigo quanto o
contedo da mensagem ainda fosse relevante.
Turing liderou uma equipe de matemticos que tentou construir rplicas da mquina
Enigma. Ele incorporou nesses engenhos as suas idias abstratas, anteriores guerra. A idia
era verificar todos os ajustes possveis da Enigma at que o cdigo fosse descoberto. As
200

mquinas britnicas tinham dois metros de altura e eram igualmente largas, empregando rels
eletromecnicos para verificar todos os ajustes possveis da Enigma. O constante tiquetaquear
das mquinas deu-lhes o apelido de bombas. Apesar da sua velocidade, era impossvel que as
bombas verificassem cada uns dos 150 trilhes de ajustes possveis da Enigma dentro de um
tempo razovel. Por isso a equipe de Turing teve de procurar meios de reduzir
significativamente o nmero de permutaes extraindo toda a informao que pudesse das
mensagens enviadas.
Um dos grandes saltos em direo ao sucesso aconteceu quando os britnicos
perceberam que a mquina Enigma no podia codificar uma letra nela mesma. Ou seja, se o
emissor teclasse R, ento, dependendo do ajuste, a mquina poderia transmitir todo tipo de
letra, menos R. Este fato, aparentemente incuo, era tudo o que necessitavam para reduzir
drasticamente o tempo necessrio para decifrar as mensagens. Os alemes contra-atacaram
limitando o comprimento das mensagens que enviavam.
Todas as mensagens,
inevitavelmente, continham indcios para a equipe de decifradores do cdigo, e quanto maior
a mensagem, mais pistas ela continha. Ao limitar as mensagens a um mximo de 250 letras,
os alemes esperavam compensar a relutncia da Enigma em codificar uma letra como a
mesma.
Com o fim de quebrar os cdigos, Turing freqentemente tentava adivinhar palavras
chaves nas mensagens. Caso acertasse, isto aceleraria enormemente a decodificao do resto
da mensagem. Por exemplo, se os decodificadores suspeitavam de que uma mensagem
continha um relatrio meteorolgico (um tipo freqente de relatrio codificado), ento eles
supunham que a mensagem conteria palavras como neblina ou velocidade do vento. Se
estivessem certos, podiam decifrar rapidamente a mensagem e, portanto, deduzir o ajuste da
Enigma para aquele dia em particular. E pelo resto do dia outras mensagens, mais valiosas,
seriam decifradas facilmente. Quando fracassavam na adivinhao de palavras ligadas ao
tempo, os britnicos tentavam se colocar na posio dos operadores alemes da Enigma para
deduzir outras palavras chaves. Um operador descuidado poderia chamar o receptor pelo
primeiro nome ou ele poderia desenvolver idiossincrasias conhecidas pelos decifradores.
Quando tudo o mais falhava e o trfego alemo de mensagens flua sem ser decifrado, a
Escola Britnica de Cdigos podia at mesmo, dizem, recorrer ao recurso extremo de pedir
RAF (Fora Area Britnica) para que minasse um determinado porto alemo. Imediatamente
o supervisar do porto atacado iria enviar uma mensagem codificada que seria interceptada
pelos britnicos. Os decodificadores teriam certeza ento de que a mensagem conteria
palavras como "mina", evite" e "mapa de referncias". Tendo decodificado esta mensagem,
Turing teria os ajustes da Enigma para aquele dia e quaisquer mensagens posteriores seriam
vulnerveis rpida decodificao.
No dia 1o de fevereiro de 1942 os alemes acrescentaram uma quarta roda s
mquinas Enigma usadas para enviar mensagens particularmente importantes. Esta foi a
maior escalada no nvel de codificao durante a guerra, mas finalmente a equipe de Turing
respondeu aumentando a eficincia das bombas. Graas Escola de Cdigos, os aliados
sabiam mais sobre seu inimigo do que os alemes poderiam suspeitar. O impacto da ao dos
submarinos no Atlntico foi grandemente reduzido e os britnicos tinham um aviso prvio
dos ataques da Luftwaffe. Os decodificadores tambm interceptavam e decifravam a posio
201

exata dos navios de suprimentos alemes, permitindo que os destriers britnicos os


encontrassem e afundassem.
Mas o tempo todo as foras aliadas tinham que ter cuidado para que suas aes
evasivas e ataques precisos no revelassem sua habilidade de decodificar as comunicaes
alems. Se os alemes suspeitassem de que o cdigo da Enigma fora quebrado, eles iriam
aumentar seu nvel de codificao mandando os britnicos para a estaca zero. Por isso houve
ocasies em que a Escola de Cdigos informou aos aliados sobre um ataque iminente e o
comando preferiu no tomar medidas extremas de defesa. Existem mesmo boatos de que
Churchill sabia que Coventry seria o alvo de um bombardeio devastador mas preferiu no
tomar precaues especiais para evitar que os alemes suspeitassem. Stuart Milner Barry, que
trabalhou com Turing, nega o boato. Ele diz que a mensagem relevante sobre Coventry s
foi decifrada quando j era tarde demais. Este uso contido da informao codificada
funcionou perfeitamente. Mesmo quando os britnicos usavam as mensagens interceptadas
para causar perdas pesadas no inimigo, os alemes no suspeitaram de que o cdigo Enigma
fora quebrado. Eles pensavam que seu nvel de codificao era to alto que seria totalmente
impossvel quebrar os cdigos. As perdas excepcionais eram atribudas ao de agentes
britnicos infiltrados.

Figura 46: Uma bombe, mquina inicialmente usada para tentar


decifrar cdigo

202

Figura 47: Computador COLOSSUS, que substituiu as bombes

203

ndice de Figuras
Figura 1: O desenvolvimento de sistemas atravs de especificaes formais _____________________ 25
Figura 2: Sistema numrico clssico de adio egpcio baseado em hierglifos [Wil97]____________ 30
Figura 3: Mais antigo manuscrito europeu com numerais indo-arbicos, cfr. [Ifr89] ______________ 32
Figura 4: Aristteles ________________________________________________________________ 38
Figura 5: Representao de Euclides ___________________________________________________ 40
Figura 6: Representao de Al-Kharazmi ________________________________________________ 44
Figura 7: Desenho de Raimundo Llio __________________________________________________ 45
Figura 8: Figuras representando mecanismo elaborado por Llio para automatizar o raciocnio ____ 48
Figura 9: Leibniz ___________________________________________________________________ 50
Figura 10: Blaise Pascal _____________________________________________________________ 51
Figura 11: Mquinas calculadoras de Leibniz e Pascal _____________________________________ 52
Figura 12: George Cantor ____________________________________________________________ 55
Figura 13: George Boole _____________________________________________________________ 56
Figura 14: Frege ___________________________________________________________________ 60
Figura 15: Peano ___________________________________________________________________ 61
Figura 16: Professor David Hilbert_____________________________________________________ 66
Figura 17: Kurt Gdel ______________________________________________________________ 73
Figura 18: Alan Mathison Turing ______________________________________________________ 74
Figura 19: Alonzo Church ____________________________________________________________ 82
Figura 20: Relacionamento entre mundos formal, matemtico e computacional (cfr. [Cas97])_______ 84
Figura 21: Desenho de Charles Babbage ________________________________________________ 87
Figura 22: Mquina Diferencial de Babbage construda pelo Museu de Londres _________________ 89
Figura 23: Tear de Jacquard__________________________________________________________ 90
Figura 24: Mquina Diferencial de George Scheutz ________________________________________ 92
Figura 25: Tabuladora de Hollerith ____________________________________________________ 92
Figura 26: Dispositivo analgico simples ________________________________________________ 93
Figura 27: Dispositivo analgico de Lord Kelvin __________________________________________ 96
Figura 28: Analisador harmnico de Michelson ___________________________________________ 97
Figura 29: Claude E. Shannon ________________________________________________________ 99
Figura 30: Konrad Zuse por volta dos anos 70 ___________________________________________ 101
Figura 31: ENIAC, sua programao era feita com fios ("hard wired")________________________ 106
Figura 32:Colossus, da Inglaterra. Sua programao tambm era feita com fios.________________ 106
Figura 33:da esquerda para a direita, Patsy Simmers, segurando uma placa do ENIAC, Gail Taylor,
segurando uma placa do EDVAC, Milly Beck, segurando uma placa do ORDVAC, Norma Stec, segurando
uma placa do BRLESC-I (ateno para o tamanho das placas) ______________________________ 107
Figura 34: Desenvolvimento do hardware e software nos primeiros tempos da Computao _______ 108
Figura 35: Um exemplo de um diagrama de fluxos________________________________________ 114
Figura 36: Computador IAS, 1952 ____________________________________________________ 115
Figura 37: John von Neumann _______________________________________________________ 117
Figura 38: Von Neumann e o computador IAS ___________________________________________ 120
Figura 39: Gargalo de von Neumann __________________________________________________ 126
Figura 40: Donald E. Knuth _________________________________________________________ 133
Figura 41: Astrolbio ______________________________________________________________ 195
Figura 42: Astrolbio - 1 ____________________________________________________________ 197
Figura 43: Astrolbio - 2 ____________________________________________________________ 198
Figura 44: Astrolbio - 3 ____________________________________________________________ 198
Figura 45: A mquina Enigma _______________________________________________________ 200
Figura 46: Uma bombe, mquina inicialmente usada para tentar decifrar cdigo _______________ 202
Figura 47: Computador COLOSSUS, que substituiu as bombes______________________________ 203

204

You might also like