4 de abril de 2008

Verificação Lógica em Texto Digital

Verificação automática de coerência lógica em dados complexos de computador no formato de texto, em tempo real de leitura e digitação

Autor: Claydson Guimarães Cova - cgcova@vm.uff.br - (Niterói, RJ, Brasil, agosto de 2007)
Engenheiro do quadro permanente do Governo Federal, lotado no CTC/Universidade Federal Fluminense - UFF
Graduado no curso pleno de Engenharia Civil da Escola de Engenharia da UFF em julho de 1981


i - Comentários

Neste trabalho foram apresentados todos os elementos conceituais necessários para demonstrar a plena viabilidade de se alcançar o intento da verificação automática de coerência em textos. Todos os requisitos formais foram apontados de forma simples e discreta. Foram apresentadas todas as minúcias da implementação de um sistema capaz de realizar a tarefa de verificação automática de coerência lógica em dados complexos de computador no formato de texto em tempo real de leitura e digitação. Especificamente, e segundo recomenda a metodologia, foram omitidos os detalhes da análise do sistema, o paradigma, as técnicas e as linguagens de programação, porque este conhecimento é muito específico e mutável, e além disso, trata-se de uma inovação tecnológica. A revelação do conteúdo pleno de uma inovação tecnológica na área de sistemas, sem proteção de direito de patente, mas apenas proteção de direitos autorais, no mundo real, exige um protocolo de apresentação legal, institucional e juridicamente orientado para proteger a segurança de eventuais investimentos financeiros.

ii - Resumo

Há uma grande massa de informações no formato de texto que não é usada devidamente, embora esteja disponível nos computadores das pessoas e das corporações. Atualmente, apenas os cérebros humanos trabalham essas informações de forma primitiva e isolada. O computador não tem ainda inteligência autônoma própria, mas a solução de muitos tipos de problemas pode ser perfeitamente automatizada e colocada sob o comando de um programa de computador. Já existe conhecimento e tecnologia para representar perfeitamente na máquina o conhecimento e o bom senso, que permitem realizar facilmente a verificação de coerência lógica em textos. Uma grande parte do ferramental de Informática já existe, o que faltava era apenas auxiliar o computador a superar o problema da barreira semântica.
A inteligência combinada tem sido a solução para automação da análise de muitos problemas complexos, porque não seria também a solução para processar toda essa informação mal utilizada?
Este trabalho analisa rapidamente este problema e aponta o caminho conceitual para processar as informações no formato de texto, através de um sistema de verificação automática de coerência lógica em dados complexos de computador no formato de texto. São apresentadas as razões e os argumentos para demonstrar e concluir, que, pelo menos conceitualmente, é perfeitamente possível, implementar sistemas para realizar as tarefas de verificação de coerência lógica em dados complexos de computador no formato de texto.
Finalmente, apontar, que este fato aqui demonstrado abre uma janela para um novo universo de possibilidades de aplicação em computador, capazes de solucionar problemas relevantes em todas as áreas do interesse humano.

iii - Agradecimentos

Agradecemos a todos que não nos compreenderam, por sinalizar o nosso rumo, auxiliando-nos a encontrar o nosso melhor caminho. Agradecemos ao Universo pela virtude da vida, pela fortuna, riqueza, abundância, amor e felicidade. Agradecemos as virtudes daqueles que ofendemos e ainda assim nos compreenderam e nos perdoaram. Agradecemos e dedicamos estas linhas a nossa filha Hanna, que inunda nossa alma com amor, enleva o nosso espírito e renova continuamente a nossa paciência e a nossa força de vontade. Finalmente, nunca ficaremos satisfeitos de agradecer a todos aqueles nos estenderam as mãos, nos corrigiram, incentivaram e orientaram.

Sumário

i Comentários
ii Resumo
iii Agradecimentos
I - Introdução
1.1 - A linguagem humana
1.2 - A linguagem matemática
1.3 - A linguagem da máquina
1.4 - A mente humana
II - Apresentação
2.1 - O problema técnico relevante
2.2 - A nossa questão fundamental
2.3 - A causa objetiva do problema
2.4 - Como vem sendo tratado o problema
2.5 - O mote
2.6 - A inteligência combinada
2.7 - A demarcação conceitual do caminho para automação
2.8 - A solução conceitual do problema
2.9 - Conclusão, relevância e expectativas

I - Introdução

1.1 - A linguagem humana

A linguagem humana se multiplica numa variedade de línguas vivas de uso corrente no mundo real. Todas as línguas faladas podem transmitir mais informação que as correspondentes linguagens escritas. Toda linguagem humana tem uma escrita formal cuja complexidade é uma exigência natural para sobreviver, e portanto, apenas um reflexo da sua realidade existencial como um todo. Assim, toda linguagem humana é sempre misteriosa e simbólica; as palavras ou vocábulos da língua são termos que simbolizam os objetos, os atos e os fatos do mundo real. Além desta carga de significado objetivo, a linguagem carrega um misterioso conteúdo subjetivo emocional, que é de interesse de estudos humanos, filosóficos, artísticos e sociais. A parte misteriosa da linguagem humana surge em potência para expressar coisas não faladas, as intenções subjetivas não declaradas dentre outras revelações possíveis.

1.2 - A linguagem matemática

A linguagem matemática, apesar de genérica e variada, é essencialmente simbólica; os símbolos matemáticos caracteres e números são representações de classes, que são conjuntos uniformes de elementos-objetos; os símbolos das operações matemáticas são os verbos desta linguagem sintética, os quantificadores estatísticos são os seus adjetivos. Mas a linguagem matemática não pode dispensar o seu enunciado em linguagem corrente para se completar. Só com esta ajuda da linguagem científica corrente a linguagem matemática pode transmitir plenamente o seu conteúdo informacional.

Quando falamos de Lógica podemos estar nos referindo ao método lógico de análise racional da Filosofia, ou da Lógica Matemática, ou do Cálculo Sentencial, ou da Lógica Jurídica, ou da Lógica de Classes, ou da Lógica Simbólica, ou da Lógica Booleana ou do Cálculo de Predicados. Qualquer que seja o método de análise racional acima, todos eles sempre exigem a definição unívoca da identidade de cada objeto do discurso, da definição dos seus atributos e suas relações, antes de poder realizar eficazmente quaisquer operações lógicas. A lógica interna do computador não poderia ser diferente.

1.3 - A linguagem da máquina

Os computadores comerciais da atualidade são aparelhos complexos, que incluem circuitos lógicos digitais e dispositivos eletromecânicos digitais ou analógicos, que funcionam como periféricos.

As impurezas das matérias primas, os limites físicos das ferramentas fabris e dos instrumentos de medida, as variações de valor por mudanças na temperatura interna e externa dos dispositivos, são fatores que geram incertezas no valor eficaz de todos os componentes eletrônicos. Muitas outras influências convergem para gerar aleatoriamente oscilações da polaridade, da voltagem e da corrente elétrica. Decerto que alguns destes problemas podem ser evitados, reduzidos, controlados e minimizados, no uso, na aplicação em projeto, como por exemplo, aumentando os circuitos sensores, que elevam custos de produção. Os fatores naturais de variação de estado podem ser reduzidos e contornados mas nunca eliminados.

Assim, é muito mais fácil e barato detectar, se um dispositivo está simplesmente ativado ou desativado, ligado ou desligado, do que medir exatamente sua voltagem, corrente ou o quanto ele está realizando efetivamente de trabalho na sua função. Estes, dentre inúmeros outros motivos, praticamente determinaram o uso da base numérica binária, a lógica binária booleana dos interruptores como sendo a mais adequada para a construção econômica, padronizada e simples das máquinas digitais de estado finito.

As mesmas regras da linguagem matemática são implementadas na construção dos circuitos lógicos. Numa calculadora digital, o limite dos valores numéricos é igual ao número de dígitos do visor de cristal líquido. Internamente, os circuitos digitais da calculadora são idênticos aos circuitos digitais de um computador. O limite destes mesmos valores numéricos corresponde ao número de saídas em paralelo dos circuitos interruptores digitais internos do processador.

Materialmente e internamente, nos circuitos digitais do processador e do coprocessador matemático do computador, cada registrador interno é um simples conjunto de interruptores especiais. Todos eles possuem um estado inicial e podem alterar seu estado segundo um conjunto diversificado de chaves de entrada. Estes interruptores independentes são dispostos em paralelo, como se representando os dígitos binários no visor de uma calculadora.

O estado ligado ou desligado de cada saída elétrica interna de interruptor, corresponde a um dígito binário ou bit. Os dois estados possíveis do bit, ligado ou desligado, correspondem aos algarismos um "1" e zero "0" em linguagem matemática. O maior número operado numa máquina corresponde ao maior número binário que pode ser representado no conjunto paralelo de saídas do circuito digital do computador. No processamento eletrônico interno do computador, o conjunto dos números que podem ser operados matematicamente numa determinada máquina, corresponde ao conjunto de todos os estados possíveis do seu maior registrador. Os valores numéricos colocados nos registros internos servem como operandos nas operações matemáticas dos circuitos digitais. Atualmente os maiores registradores internos dos processadores têm 64 bits, desde que os primeiros computadores pessoais surgiram, os coprocessadores matemáticos trabalham com oitenta bits. Cada bit do registrador é colocado em estados de ligado (1) ou desligado (0), um ao lado do outro, formando uma palavra. As combinações de bits correspondem a todos os possíveis números binários que podem ser escritos com menor ou igual quantidade de bits.

As palavras do código binário podem ser transportadas e recebidas entre dispositivos digitais de duas formas: 1) transporte em série, onde cada bit é enviado através de uma única saída, um depois do outro; 2) transporte em paralelo, um bit ao lado do outro simultâneamente, para multiplicar a velocidade do transporte e do processamento das palavras, através dos barramentos internos e externos do computador.

A simplicidade da máquina Von Newman é extrema, não pode ser mais simples, há dois estados possíveis nos terminais dos circuitos, ligado (1) e desligado (0) através da combinação de três circuitos lógicos digitais básicos, (and, or, not) todos os demais circuitos digitais podem ser construídos.

No andar de baixo da programação dos computadores se encontra o chaveamento eletrônico que permite a construção dos circuitos. Através dos circuitos digitais é possível copiar, inverter e comparar. Os circuitos digitais podem realizar uma única operação aritmética de fato, que é a operação de adição de números binários, todas as demais operações são realizadas através da operação de adição, da inversão de bits ou da complementação, como: complementos de 1, com adição de 1, que dá o complemento 2, como é feito, por exemplo, na subtração digital etc. Portanto, neste nível eletrônico se estabelece uma estreita relação entre a Matemática e os circuitos digitais do computador.

Também é no andar de baixo da programação que se encontra outra profunda relação essencial entre a programação da máquina e a Matemática. Neste nível de programação, no nível das instruções da máquina, os códigos binários das instruções de um programa podem ser interpretados de maneira diferente por cada máquina do mercado. A escolha da linguagem montadora específica de cada tipo de máquina depende da vontade, do projeto de cada fabricante de computador, dificultando a padronização e a portabilidade dos programas entre diferentes plataformas. Por isso, todo programador em linguagem montadora sabe muito bem, que é ele mesmo quem precisa indicar para o computador a maneira correta dele interpretar as instruções em código binário. Tudo que a máquina faz além disso também depende do homem, o programador de aplicativo etc.. As decisões dos programas são verificações matemáticas, efetuadas pelos programas, que na sua maioria são inequações ou comparações aritméticas entre dois números para verificar qual deles é menor, igual, ou maior.

1.4 - A mente humana

A mente humana é sagaz, tanto é capaz de decifrar mínimas variações dos fonemas com algum significado agregado ao contexto do discurso, quanto é capaz de perceber significados especiais simbólicos e analógicos, e assim, estabelecer associações pelo simples posicionamento dos termos, pelo ordenamento da mensagem e pelo rítmo dos fonemas.

Este entendimento humano sofisticado das mensagens de uma linguagem complexa somente é possível, porque tais informações são perceptíveis pela acuidade da mente humana, que tem as capacidades naturais de memorização, observação, associação, comparação e reflexão. A mente humana cria, repassa e ensaia seus mecanismos abstratos, até à sua satisfação, usando raciocínio combinado com imaginação e intuição.

A mente humana pode gerar hipóteses, questões ou "abertos lógicos", guardando secretamente as informações na sua memória biológica, enquanto aguarda a chegada de outras informações para estabelecer todas as associações declaradas no texto sob análise. E somente então, poderá realizar alguma inferência lógica, um raciocínio, e talvez, possa concluir incisivamente numa única resposta, se a inferência lógica efetuada se verificar como sendo válida.

II - Apresentação

2.1 - O problema técnico relevante

Há uma grande massa de informações no formato de texto que não é processada, embora esteja disponível nos computadores das corporações. Apenas os cérebros humanos trabalham essas informações de forma primitiva e isolada. Atualmente, o computador não tem inteligência autônoma própria, mas a solução, para muitos tipos de problemas, pode ser perfeitamente automatizada e colocada sob o comando de um programa de computador.

Computador sem programa não resolve problema. O computador não dispõe de inteligência autônoma própria para resolver problemas, ele apenas automatiza os cálculos para ajudar na solução dos problemas já resolvidos pelo homem. É preciso antes, que a inteligência humana sim, e somente ela, desenvolva uma solução, e concomitantemente transforme esta solução em um programa de computador e num sistema como um todo.

O fruto da mente humana, o programa de computador, este sim, não tem limites de inteligência, como tem a máquina. Os programas inteligentes decidem de forma acertada em grande número de casos, desde problemas muito complexos, como as operações no mercado de capitais, até as decisões muitos sutis, como a seleção de frutos e grãos para indústria de alimentos, obtendo estatísticas excelentes, e tomando decisões de forma relativamente autônoma.

O computador é muito eficiente e rápido na solução dos cálculos numéricos e manipulação de "strings" de caracteres, que são os tipos de dados abstratos mais simples que ele é capaz de operar, também chamados de dados uniformes. Como já vimos acima, o processamento da lógica dos dados complexos no formato texto já é uma barreira intransponível para os computadores.

Apesar da grande utilidade dos computadores atuais e seus aplicativos, a complexidade da informação contida na linguagem corrente estabelece uma barreira intransponível para o nosso computador modelo Von Newman. Por isso ele não pode processar nem realizar muitas aplicações úteis com dados complexos de computador no formato de texto.

Decorrem desta impossibilidade a séria dificuldade na qualidade da tradução mecanizada da linguagem e a impossibilidade de realizar a verificação da coerência lógica em dados complexos de computador no formato de texto, que abriria uma janela para um novo universo de computação.

2.2 - A nossa questão fundamental

Quais são os procedimentos necessários para realizar a operação de verificação de coerência lógica em dados complexos de computador no formato de texto?

Na verdade, apesar do avançado estado atual da arte da computação, ainda não está resolvido este problema, considerando que o computador conta somente com os recursos da lógica booleana, que é usada na construção física e lógica das máquinas modelo Von Newman.

2.3 - A causa objetiva do problema

Os diversos níveis semânticos associados à linguagem humana corrente criam abertos lógicos no processamento, que impedem a construção indispensável de uma máquina de estado finito no computador modelo Von Newman. Sem uma tal máquina de estado finito, o computador não é capaz de retornar de forma confiável, para cada vocábulo de entrada, um e apenas um termo, dentre vários possíveis, na saída. Ou, expressando de outro modo: sem isso, o computador não tem como encontrar a decisão unívoca para realizar a perfeita tradução do significado de cada vocábulo.

Os problemas de interpretação surgem, porque a linguagem humana corrente é complexa e não atende aos três princípios fundamentais da Lógica. Os cinco níveis de semântica complexa da língua não se encaixam ao princípio da identidade; alusões metafóricas e interpretação de texto não atendem ao princípio do terceiro excluído; nem os paradoxos ao princípio da não contradição. O resultado é que todos os textos, traduzidos por essas máquinas de tradução mecanizada, apresentam elevado número de erros, e ainda precisam da correção humana adicional.

2.4 - Como vem sendo tratado o problema

O problema da barreira semântica, na área técnica da tradução mecanizada, foi atacado, certamente, por muitas vias diferentes, desde a computação estatística da presença dos vocábulos e termos no texto analisado, até ensaios de associação semântica por aproximação na tabela de termos, estatísticas de uso etc.

Os tradutores mecanizados de linguagem foram desenvolvidos para fazer traduções em tempo real de leitura e digitação de texto. Mas, como tudo depende da máquina e os modelos de computadores atuais, do tipo Von Newman, só funcionam com lógica booleana, que é a lógica dos circuitos elétricos, eles não conseguem resolver os problemas da semântica que se apresentam na língua escrita corrente.

A inteligência artificial entrou no problema de interpretação da linguagem e avançou no rumo dos cálculos de lógica complexa, aplicando o cálculo de predicados na solução desses problemas, mas ninguém pode, até hoje, confiar nos resultados obtidos, de modo que as aplicações não foram ainda muito adiante, embora sejam usadas na programação de robôs "inteligentes", permitindo que eles possam decidir, responder ou mesmo comentar algumas perguntas típicas.

2.5 - O mote

O planejamento das atividades profissionais de estudo e pesquisa, contribui para manter o profissional atualizado sobre os fatos relevantes da realidade num mínimo tempo possível. As atividades profissionais da engenharia, em geral, exigem detalhado planejamento de todas as suas atividades, e o acompanhamento muito atento da realidade mundial como um todo. Tal propósito requer muita disciplina e organização. O computador é a biblioteca, o arquivo, a pena, o papel, a caneta, os instrumentos de desenho e a régua de cálculo do engenheiro moderno, o ideal seria, se tal análise da realidade complexa pudesse ser feita e refeita de forma automática pela máquina.

2.6 - A inteligência combinada

Até hoje, ninguém costuma ressaltar isso, talvez porque seja óbvio, mas, somente a inteligência combinada entre homens e máquinas tem permitido encontrar a solução de problemas realmente complexos, que exigem muitos cálculos, como os que ocorrem na estatística multivariada, que é muito aplicada em Biologia, Meteorologia, Astronomia, e simulações de explosões estelares na Astrofísica etc.

A inteligência combinada para corporações evoluiu muito com o uso das redes de computadores, que permitiu a automação de muitos aspectos do trabalho em grupo, "groupware", de onde se originaram as técnicas de trabalho em equipes virtuais, e os conceitos de Intranet, e sistemas corporativos como o Lotus Notes, originalmente lançado no mercado pela empresa fornecedora da planilha eletrônica Lotus 123.

2.7 - A demarcação conceitual do caminho para automação

Muitas idéias novas surgiram quando repassamos a metodologia do trabalho científico, onde se aplicam as regras da redação científica para simplificar a linguagem corrente e transformá-la em linguagem técnica. Essa nova linguagem deve ser consistente, estruturada, coerente, direta, objetiva, clara, sem adjetivações e despojada de emoções, de modo a reduzir drasticamente os recursos semânticos que inserem adereços de poesia meramente alegóricos.

Logo, o primeiro passo para alcançar o nosso objetivo é realizar um procedimento indispensável, que é a simplificação racional da linguagem corrente. A dificuldade da interpretação das figuras de retórica, recursos de linguagem, adjetivações e indefinições de termos, são drasticamente eliminados através da aplicação das regras e técnicas da redação científica.

Mesmo retirando-se os diversos recursos e figuras de retórica da linguagem corrente, aplicando as regras da linguagem técnico-científica, onde cada termo deve ser completa e claramente definido, ainda assim, a variedade e a multiplicidade de significados associados a cada vocábulo da língua formal leva à variedade de termos passíveis de escolha, associados a um mesmo vocábulo, que implica indefinição da identidade do vocábulo como um único termo.

A dificuldade criada pela barreira semântica, a indefinição do termo representado por um vocábulo em determinado texto, não implica perda irremediável da verdadeira identidade do vocábulo, pois ele está inserido num conjunto de alternativas possíveis, e essas alternativas são todas conhecidas e bem definidas. Assim, a nossa primeira alegria foi descobrir que esse valor existe, e de fato é conhecido e está disponível. Em existindo este valor semântico, então ele pode ser resgatado e disponibilizado.

O método científico exige que a tarefa de definir, precisar e fixar os termos do texto científico cabe ao autor, o próprio cientista, e não ao seu computador. Em outras palavras, já cabe ao autor a tarefa de estabelecer a definição precisa de cada termo inserido no texto, especialmente aqueles vocábulos que possam causar algum tipo de problema ao perfeito entendimento do significado, e prejudicar o raciocínio da análise.

Se um estudo da realidade se desenvolver através da linguagem escrita, e todos os vocábulos e símbolos usados forem conhecidos e únicos, então eles atendem ao principio lógico da identidade. Se durante o tratamento do texto nós eliminarmos as figuras de retórica e paradoxos de linguagem e atendermos aos princípios lógicos da não contradição e do terceiro excluído, então nada nos impede de realizar a verificação de coerência lógica neste texto.

Uma vez especificados os termos, os objetos do discurso adquirem a sua identidade perdida e o texto pode ser submetido às técnicas de análise lógica de documentos, bem conhecidas na área acadêmica. O maior refinamento desta análise ocorre na área de Letras e Literatura, onde se analisa até mesmo aspectos subjetivos, ligados ao contexto da época, e ao próprio autor.

Na área de inteligência artificial são conhecidos pelo menos três métodos para representar o conhecimento dos fatos e o bom senso. O cálculo de predicado é um deles, e sua simbologia é muito adequada para automação das tarefas de análise lógica e verificação de coerência.

2.9 - Conclusão, relevância e expectativas

Portanto, se já existe e está disponível a tecnologia para representar na máquina o texto como sendo a representação do conhecimento e o bom senso, e se o nosso texto atender aos três princípios da Lógica, então nada mais impede realizar a tarefa de verificação automática de coerência lógica em dados complexos de computador no formato de texto.

Uma vez que a verificação de coerência lógica é uma preocupação perene e universal dos homens individualmente, e de todas as demais instituições sociais na atualidade, então, um avanço nesta área do conhecimento técnico apresenta relevância humana e relevância contemporânea muito acentuadas. Como a solução deste problema também é algo importantíssimo para o desenvolvimento de todos os campos da Ciência, então, sua relevância operativa também é imensurável.

Logo, a relevância total desta iniciativa é muito grande, e podemos concluir, afirmando, que a possibilidade de realizar esta análise lógica de textos de forma automática abre uma janela de expectativas para um novo universo de análise da realidade e conduz a incontáveis aplicações práticas para a toda a humanidade.


AVDIENS SAPIENS SAPIENTIOR ERIT
que ouvindo o sábio erija experiência

ET INTELLEGENS GVBERNACVLA POSSIDEBIT ANIMADVERTED
e que entenda o prudente: a via de governar,

PARABOLAM ET INTERPRETATIONEM VERBA SAPIENSIVM ET ENIGMATA EORVM
a parábola e a interpretação, a palavra do sábio e seus enigmas


Leitores convidados: David Intersimone, Bill Gates, Linus Benedict Torvalds, Theodor Holm Nelson.

2 comentários:

hanna disse...

q liiinduuu!

Marcelo Ramos disse...

Claydson, o Blog está muito bem estruturado. Parabéns. estou divulgando o link. Abraço. Marcelo Ramos