sábado, 21 de novembro de 2009

Origens da ideia

Esta ideia já existia de certa forma

Licença GPL

Esta ideia já existia de certa forma

Existe várias fontes de inspiração, sendo umas mais determinantes do que outras. Não é típico de um cientista basear-se em religião para explicar as coisas, portanto tiveram de aparecer várias perspectivas. No entanto muito do conhecimento teve várias fases começando no mundo mítico, depois um mundo filosófico de transição, depois um mundo filosófico e mais tarde finalmente a ciência.
Certas pessoas falam de criador ou criadores do universo. Por mim não adianta debater esses assuntos tal como no livro "Deus e a nova física" de Paul Davies (li e foi aborrecido), o que tornaria o tema demasiado complexo. É certo que existem novos declínios mentais num mundo ofuscamente religioso. Este livro não é nem ateu, nem agnóstico e nem religioso. Não é isso que está em causa. O que está em causa é uma ideia.
Algo que não deixei de lutar é um tema interessante para um livro. Um livro de reflexões à minha pessoa.
Posso é gabar que capa deste livro é espectacular e que nada melhor que a figura do famoso velho de barbas ao computador( é só para dar estilo ao assunto que trata) e a criação de um tema que seja interessante e poderosíssimo. Poderosíssimo por causa que nada vai além de um universo que obedece a todos e quaisquer comandos. O interessante já viram e vão ver mais.
Que a força esteja contigo, pois vais achar um novo horizonte a explorar e que não ficará por aqui. Algo é certo: haverá sempre uma fantasia ou muitas; mas nada deixa o homem sonhar e alcançar algo que seja excelente, mesmo que não consiga mais.
Um dos focos da inspiração vem do génesis que por momentos pensei que tudo aquilo eram ordens. Imagine uma linguagem de programação cria água e assim se fez; cria terra e assim se fez, e “venha a haver luz” e assim se fez… Pode correr um script de arranque do sistema operativo da realidade que vai executando aplicações de arranque tal como o kernel load para que tudo esteja pronto para o surgimento do homem. O 'assim se fez' pode ser visto como o '[ok]' em cada mensagem do arranque.
O que está na génesis pode ter sido escrito inocentemente, mas não se sabe…
Outro foco da inspiração e o mais determinante foi uma edição da revista American Scientific que dizia: "Será o universo um holograma?". Nela era dita a possibilidade de tudo ser um universo a 2D, só que o nosso cérebro fazia a 3D. Loucuras filosóficas certamente.
Devemos lembrar-nos que a matemática ou lógica permitem prever o futuro. Também devemos lembrar que muitos resultados matemáticos são uma aproximação e como tal deve existir um sistema que nunca falhe seja qual for o comportamento do meio ambiente. Em que medida vêm estas falhas? Será que podemos evitá-las?
Afinal não somos nem mais nem menos que as outras pessoas. A ira ai vem. Principalmente a natureza.
A grande matéria deste livro já existia de uma forma vaga no senso comum, religião ou ciência.
Uma vez um ex-professor de moral meu disse:
-Olhem só como isto está bem definido e programado… – claro que disse naturalmente e de forma inocente, uma vez que não adivinha qual é a abundância de conhecimento para que tudo isto exista ou funcione. E não é só ele que pode admitir isso, as outras pessoas também. Sabe-se lá de quantas coisas seremos capazes de dizer e que podem ser de uma importância extrema ou não? É claro que muitas das afirmações do senso comum (um conhecimento vulgar) não têm importância e podem não ter qualquer veracidade; mas o senso comum é o passo essencial para a preparação para outros tipos de conhecimento como a filosofia e a ciência. Não é de estranhar que as ideais dos filósofos são influenciadas pela sua vivência; mas são escritas de forma consciencializada, profunda, pormenorizada e de uma forma atenciosa ás captações do real. Eles lá sabem.
Mas o lado cientifico disto tudo e que me chamou mais à atenção foi uma versão da revista “American Scientific”.
Essa versão (como já referi) questionava-se na capa se o universo é um holograma. Até mostrou várias teorias acerca das dimensões do universo, entropia e um esquema de um buraco negro com zeros e uns desenhados.
Ora a informação dos computadores é zeros e uns (programas, ficheiros, etc). Se não só os buracos negros, mas também o universo é zeros e uns; então será mesmo o universo executável ou um sistema operativo? Wheeler propôs uma vez que o universo era composto por partículas mínimas chamadas bits e na mesma versão da revista “American Scientific” o universo era considerado informação; mas a física ainda não tem bases lógicas e só tem poucas centenas de anos. Temos de ter esperança em acreditar que um dia teremos conhecimento suficiente para determinar aquilo que nos faz falta ou nos entretenham e melhoram o mundo que nos rodeia. Até quando um assunto deixará de ser ciência de ponta que nada se sabe até perceber-se perfeitamente? Podemos ter por exemplo aquilo que pode ou não o acelerador de partículas CERN dizer-nos. Não esquecer que a tenra idade da ciência já fez muitas maravilhas e desgraças.
Há sempre formas de encarar tudo e o esquema da informação associada ao universo é uma boa forma de representação do real se explicar mais do que qualquer outro esquema. Na realidade não existem referencias cartesianos na natureza. Eles apenas servem para descrever coisas do real. Já alguma vez tocou num? Podemos considerar infinitos e nenhum tem forma física.

Licença GPL

Entendendo o conceito

Linguagem versus universo
Em busca de uma base para começar o código
Pormenores antes de avançar

Licença GPL

Linguagem versus universo

Todos os homens desde os tempos mais antigos têm usado a linguagem para diversos aspectos. Um deles é a descrição de factos que lhes aparecem.
Esses factos têm sido descritos de formas diferentes e cada vez mais complexas (senso comum; filosofia; e ciências como a matemática, a física e a astronomia…).
O homem através da linguagem (seja demonstrativa como a matemática ou de outra forma) vai explicando cada vez mais o universo.
O universo que o Homem procura conhecer é nada mais nada menos que matéria e anti matéria; que estão estruturadas em partículas de átomos, iões e moléculas.
No entanto se quiséssemos estudar-lhes como algoritmos, os casos já seria mais consistentes (não dispensando a matemática).
O estudo do universo algorítmico não ficaria só por este livro e iria dar uma nova fonte de inspiração para muitos intelectuais e para a ficção.
Uma linguagem que é uma lógica poderosa, e que ainda poderá ser mais com o auxílio das máquinas é o tema de “A linguagem 'Assembly' do universo” (se é verdade só o tempo dirá). Agora isto mais parece-se assemelhar a uma saga de Harry Potter, em que eles aplicam comandos e concentração para a execução daquilo que querem. Digo já que actualmente só existem "pequenos Harry Potter" e não gigantes "Harry Potter" que mais parecem ter vindo de um mundo de fantasia. No futuro bem pode haver muitos autênticos "Harry Potter", mas a personagem irá ser destruída.
Mas antes de se fazer uma linguagem computadorizada temos que saber alguns elementos descritivos (quer os objectivos, quer os conceitos de programação), e saber-los aplicar para que o computador siga as ordens correctas.
Assim vai-se tentar criar uma linguagem (descritiva e imperativa), que servirão para a construção lógica final.
Uma linguagem imperativa e descritiva?
Descritiva porque o que se pode dizer acerca do universo é uma descrição.
Imperativa porque em vez de dizer “O átomo segue velozmente.”, Pode-se dizer “Átomo! Segue velozmente.”. Não esquecer que aquilo em que podemos mandar é mais limitado, do que aquilo que podemos descrever. Mas mandar exige uma boa capacidade de descrição, porque tudo que se quer tem de estar claro e bem definido. Não é mandar à toa.
A primeira física lógica pode não passar de comandos, varáveis e constantes; que na realidade são interpretações de partículas e cujo resultado é um mundo físico a interagir entre si.
Mas é claro que não se pode logificar uma pedra só observando a pedra. A física por si é ilógica. Também tem lógica porque a física poderia não ser necessariamente assim se o universo fosse criado de maneira diferente (claro que poderia não haver vida inteligente se assim fosse) e as leis da lógica são inalteráveis (mesmo que tudo fosse diferente a lógica não mudaria).
Agora viu-se aquilo que pode ser mecânica lógica. Na lógica usa-se em aspectos alteráveis, tais como premissas. A mecânica da lógica é que é inalterável. Esses aspectos alteráveis ora são verdade ora são mentira, mas acabam por ter a sua utilidade.
Mas entre o mundo virtual e o mundo físico existe um grande salto e eu só li uns livros de física avançada para o publico em geral. Como tal e como nunca fui devidamente avaliado nesse aspecto sinto-me limitado e devo falar ligeiramente e com cautela.
Os acontecimentos probatórios não se podem logificar nem tornar-lhes matemáticos.
Um truque de lógica é o feito causa vice acontecimento. Por outras palavras as premissas são as causas do acontecimento que influenciam o acontecimento. Segundo Aristóteles (pai da lógica) tudo tem uma causa. A ideia que fiquei com um livro que li foi que nem tudo em física segue isto, como por exemplo a quântica. Aristóteles usou o senso-comum para explicar a física aceite por muitos anos por muitas pessoas, mas que era um desastre.
Mas o que é certo é que a estrutura de um átomo influencia as suas características e sabe-se muitas características de muitos átomos. Desse modo pode-se descrever as características do átomo em função dos seus constituintes. Por outro lado pode-se descrever as características do átomo como influenciados pelos procedimentos efectuados pelos seus constituintes. No fundo o que é jogado aqui é que uma das coisas que a física ensina é que tudo pode seguir leis, sejam elas mais ou menos aleatórias conforme os dados conhecidos do problema.
É possível logificar a pedra sabendo os seus constituintes, desde que não venham com certas histórias do sub-mundo do átomo ou queiram coisas despresáveis. Temos também de perceber que o universo é quântico como dizia o livro "código secreto". Mesmo ao nível da física clássica pode haver a necessidade de saber como algo está configurado para saber o seu comportamento como é o caso do momento de inércia que relaciona-se com o somatório do produto de infinitas massas com infinitas distancias ao centro de massa e que é calculado com integral. Para quem não sabe para que serve o momento de inércia, ele serve para estudar rotações de corpos e relaciona-se com outras grandezas como momento angular e momento da força muito falados nos automóveis.
Podia falar da lei do movimento zero; só que por mais útil que pareça, não consegui por a funcionar como cria e então não posso contar com ela como queria.
O movimento é influenciado por um agente exterior?
Pode-se incluir o agente exterior num sistema e assim determinar o comportamento do sisema (algoritmos de teste)?
Mas o que faço aos constituintes da pedra e do agente exterior? É trabalho de laboratório!
O facto da Terra e a pedra estarem a cair não saberíamos o que provoca a força gravítica, apenas teríamos a descrição. A isso chama-se conhecimento obtido empiricamente que é sempre limitado pelo que se consegue observar. Toda a nossa experiência tem de ser adaptada ao meio e o meio obedece àquilo que conseguimos manipular.
Uma coisa é certa: se não se pode logificar a física quântica da natureza por completo isso não impede que não se possa logificar estruturas feitas pelo homem. Aliás, temos o exemplo do computador.
Podem haver muitas formas de construir comandos com base numa base sólida. Tem de ser sólida, porque um coisa é construir sobre a rocha e outra sobre o areal.
Um comando de interacção entre partículas é escrito num editor de texto pelo programador e depois é passado a interacções de energia e partículas para se comportarem de determinada forma.
Os comandos de interacção entre partículas devem ser restritos.
No fundo uma linguagem de programação destas têm muita física por detrás.
Vamos então às definições dos conceitos fulcrais: programa físico, programa virtual e código híbrido.
O programa físico é regido pelas leis da física e corre no espaço-tempo. Não existe uma máquina capaz de transpor fisicamente o tudo. Só para terem uma ideia se num lugar existe o vazio, então já existe alguma coisa pelo que não existe aí o nada.
O programa virtual é regido pelas leis dos chip-sets ou cpus e corre sobre hardware.
O código híbrido é a mistura de programa físico com programa virtual, mas muito cuidado ao misturar.
Existem várias questões a abordar (diferenças, possibilidades, capacidades, dificuldades, acesso,...). Nem jamais este livro as consegue abordar a todas, mas consegue dar uma ideia bastante geral.

Licença GPL

Em busca de uma base para começar o código

Todos nós sabemos que o computador não quântico só conhece zeros e uns.
A primeira linguagem de computação do mundo era só zeros e uns. Depois passou a ser menomónicas da linguagem máquina, a chamada linguagem Assembly. Na altura a arquitectura era CISC (complex instruction set computer), é mais complicada de programar do que a RISC (reduced instruction set computer) da maioria dos computadores actuais. Os comandos realizados pelo processador são sempre limitados.
Actualmente programa-se quase sempre em linguagem de alto nível que são ainda mais fáceis como o C, Fortran, Java...
Também nós sabemos que a matéria do universo é energia, e que essas “nuvens” de energia de cada átomo ocupam um espaço. Ora porque é que não se havia criar um esquema parecido com base na existência ou não de vultos de energia assim como se fez com os bits do computador?
Na realidade estamos caminhando para computadores quânticos que guardam qubits (o bit quântico) átomo a átomo, mas o mesmo não se pode dizer de níveis inferiores.
Será que só é possível sabendo as propriedades de um vulto de energia, e a relação entre dois vultos de energia?
Se calhar teremos de atacar o problema de outra forma?
Nada diz que seja impossível, mas são coisas pequeníssimas que facilmente são afectadas pelo ambiente em redor.
O nível quântico está cheio de comportamentos aleatórios o que irá dificultar tudo.
Para além das actividades experimentais é preciso prever, avaliar e conseguir montar.
Será que super-computadores poderão ser os instrumentos indicados quer para detectar esses inumeráveis vultos de energia de um átomo e quem sabe poderão construir o código fonte (de baixo e alto nível) de um átomo e construir fórmulas matemáticas com base em relações? Tudo isso seria óptimo como muitos algoritmos, mas será realizável como esses algoritmos ou não? Temos de perceber os limites dos computadores e do mundo físico. Existe por exemplo um teorema para programas dos computadores, mas não programas do mundo físico que diz: "Não é possível determinar através de um algoritmo (mais concretamente, através de uma máquina de Turing) se uma fórmula em L é válida ou não. Formalmente, este problema diz-se indefinível.". Temos de distinguir programas do mundo físico dos do mundo virtual, sendo que suas funções deveriam na minha opinião ser diferentes e separadas (como a ideia daquele homem que separou os programas dos ficheiros onde se guardam outros dados sem ser programas); embora pudessem comunicar e resultarem em híbridos ou códigos híbridos.
Mas só isto não é suficiente. Tem-se de arranjar artifícios de construção de código; para que os comportamentos aleatórios não nos impeça de lidar com a estrutura e que condiga com aquilo que queremos. É isso o que os físicos procuram, uma maneira de tornar as coisas mais previsíveis.
Não se está a falar só de computadores quânticos, mas de todas as máquinas produzidas por eles.
Deve-se começar com um número limitado de comandos. Esses comandos são a base; mas poderá-se usar-los através de outros, quando se quer traduzir de um nível alto para um mais baixo.
A física actual é difícil de aprender para a maior parte dos alunos do secundário (claro que não aprendem quântica), mas mesmo a clássica é um começo a pegar. Será que se pode estabelecer um código para facilitar isto tudo?
Tudo isto é maravilhoso, só que a informática tem de evoluir muito mais do que aquilo que é hoje.
Há uma questão importante: até que ponto pode-se definir tudo como estados? Poderia-se construir n e mais n diagramas de estados do UML(linguagem de modelação unificada, trata-se de um linguagem que serve para especificar sistemas, sendo que os programadores ficam assim ou de outras formas sabendo o que o cliente quer), acerca do mundo físico, típicas de uma disciplina como análise e modelação de sistemas de um curso de informática? Em informática ninguém faz diagramas de estados UML que envolvam tudo de um programa em Assembly. A documentação ficaria demasiado pesadíssima. Isso só serve para determinados casos em programação de alto-nível. Possas! Este parágrafo conseguiu ser técnico.

Licença GPL

Pormenores antes de avançar

Embora pareça, as ideias deste livro diferem das de Tanenbaum que ele mostra nas figuras 5 e 6.
É bom que eu começa a ganhar experiência na linguagem expressiva, para que seja meio passo para atingir boas teses de mestrado e talvez de doutoramento. A linguagem "Assembly" do universo é um desafio e um tema aliciante. Discutir, capacidade, linguagem, iniciativa, análise e deixa são viragens importantes.
Talvez não consiga tudo. Também não quero ser gozado; mas que deixem lutar pela vida, lutar por aquilo que apesar de muitos dizerem que é impossível. Mas dentro do possível e do impossível o universo físico nunca poderá ser 100% como um computador; mas tem características parecidas ou muitas aproximações possíveis consoante o caso, ou até coisas iguais. As parecenças dependem daquilo que os cientistas descobrem.
Algo que custa acreditar nestas viragens é o facto de há muito tempo atrás não se acreditar que podia-se descrever a física com números e hoje conseguimos fazer isso. Pode ser que a evolução da linguagem, tal como a numérica mude muita coisa. Talvez um dia os nossos filhos e netos defendam a nossa galáxia via-láctea com super armas de hacker. Entre essas super armas está a programação de campos de forças, definição de políticas, etc.
Algo que define o linguagem "Assembly" do universo é que é a versão da física segundo programadores, assim como existe a versão dos "Os Lusíadas" versão programador. Nos "Lusíadas" versão programador em vez de mouros tem-se algo como bugs e blue-screens, em vez de barões tem-se algo como impressoras e tinteiros ou compiladores,...
Isto é apenas só um começo.




Fig 5)



Fig 6)

Licença GPL

A matemática

Já agora que vamos entrar na parte lírica divirtam-se cantar esta disciplina ao ritmo do "evolution to the worst", algo de terror a que muitos estudantes tremem. Podia andar aqui com uma palestra, mas não. Não quero um livro aborrecido.

Acidentalmente acidental
Ritmo académico fenomenal
Meu dilema
Perde-se no Lema
Isto é mesmo um problema

Quando as notas saem
Todas as morais caem
Mas estuda meu irmão
Para seres um campeão

À parte é trabalho bem feito
Onde tudo é perfeito
Não é atrasado
É avançado
A vontade de um eleito.


Licença GPL