operadores booleanos

18
Operadores Booleanos UNIVERSIDADE LUSÓFONA DO PORTO Claudia Garcia Psicopedagoga Clínica Porto, 31 de Março de 2009

Upload: carbgarcia

Post on 05-Jun-2015

2.213 views

Category:

Travel


4 download

TRANSCRIPT

Operadores Booleanos

UNIVERSIDADE LUSÓFONA DO PORTO

Claudia GarciaPsicopedagoga Clínica

Porto, 31 de Março de 2009

Origem• Boolean Operators, Boole e álgebra de Boole• George Boole: matemático inglês, séc. XIX (1815-64)• Criou um sistema de álgebra• Foi um dos precursores da lógica moderna• Criou um modo de conduzir o raciocínio utilizando algumas expressões simples e monossilábicas que algumas expressões simples e monossilábicas que ficaram conhecidas como operadores booleanos• Publicou em 1854 os princípios da lógica booleana, onde as variáveis assumem apenas valores 0 e 1 (verdadeiro e falso)• A dificuldade de implementar um dígito decimal (um número inteiro entre 0 e 9) em componentes eléctricos determinaram o uso da base 2 em computadores• A lógica booleana foi usada na implementação dos circuitos eléctricos internos a partir do século XX

Origem• Matemática e Ciência da Computação: as álgebras booleanas (ou Álgebra de Boole) são estruturas algébricas que "capturam a essência" das operações lógicas E, OU e NÃO, bem como das operações da teoria de conjuntos soma, produto e complemento• É o fundamento da matemática computacional, baseada • É o fundamento da matemática computacional, baseada em números binários• A álgebra booleana foi uma tentativa de utilizar técnicas algébricas para lidar com expressões no cálculo proposicional• Hoje, as álgebras booleanas têm muitas aplicações na electrónica• Foram pela primeira vez aplicadas a interruptores por Claude Shannon, no século XX

Características• As suas designações foram retiradas da linguagem humana vulgar• Permitem efectuar uma pesquisa que envolve 2 ou mais termos independentes, que tais operadores permitem ligar numa só interrogação• O motor de pesquisa ignora determinadas palavras, que • O motor de pesquisa ignora determinadas palavras, que são frequentemente utilizadas na língua inglesa, mas que são ignoradas quando efectuamos uma pesquisa• Palavras “vazias”: a, and, are, as, at, be, but, by, for, if, in, into, is, it, no, not, of, on, or, such, the, to, was• É frequente serem simplesmente escritos como E, OU ou NÃO (são mais comuns os seus equivalentes em inglês: AND, OR e NOT)

Características• Na descrição de circuitos também podem ser utilizados NAND (NOT AND), NOR (NOT OR) e XOR (OR exclusivo)• Os matemáticos usam com frequência + para OU e . para E (visto que sob alguns aspectos estas operações são análogas à adição e multiplicação noutras estruturas algébricas)algébricas)• Representam NÃO com uma linha traçada sobre a expressão que está a ser negada.• Aqui iremos usar outra notação comum: ∧ (ou ^) para E, ∨ (ou v) para OU e ¬ (ou ~) para NÃO

Listado• Operadores de inserção: E, AND, +, &• Descrição: a resposta deve conter obrigatoriamente quer A quer B (ambos os termos)• Utiliza-se o sinal + antes de uma palavra se se deseja que ela esteja presente nos resultados da pesquisa• Exemplo: educar+gatos• Resultado: a palavra “educar” é opcional, mas a palavra “gato” deverá constar necessariamente no resultado

Listado• Operadores de união: OU, OR, |, !• Descrição: a resposta deve conter ou A ou B (pelo menos um dos dois termos)• Exemplo: educar OU gatos• Resultado: pelo menos um dos termos deverá aparecer • Resultado: pelo menos um dos termos deverá aparecer nos resultados

Listado• Operadores de exclusão: NÃO, NOT, -• Descrição: a resposta deve conter A e não deve conter B• Utiliza-se o sinal - antes de uma palavra se deseja que ela não esteja presente nos resultados da pesquisa -assim, poder-se-ão eliminar documentos não desejados dos resultados da pesquisados resultados da pesquisa• Exemplo: educar-gatos• Resultado: encontra os documentos que contêm a palavra “educar”, excepto aqueles que contêm também a palavra “gatos”

Listado• Operador de proximidade: NEAR• Descrição: a resposta deve conter A na proximidade de B, tratando-se aqui de uma proximidade física numa dada página, que pode ser definida de modo diferente em motores de pesquisa diferentes (5, 10, 12 palavras, etc…)etc…)• Exemplo: educar NEAR gatos

Listado• Operadores de truncagem: *, $, ?, “”• Descrição: deve utilizar-se o asterisco depois da raiz de uma palavra, para obter os registos que contenham qualquer uma das palavras que começam com essa raiz• O ponto de interrogação representa uma única letra em qualquer parte da palavraqualquer parte da palavra• Exemplo: comput*• Resultado: computação, computacional, computador, computadores, computer, computers…• Exemplo: wom?n• Resultado: women e woman• As aspas servem para pesquisar várias palavras, como uma frase• Exemplo: “(frase ou expressão)”

Listado• Operadores de adjacência: ADJ, SAME• Descrição: este operador implica que as palavras se devem encontrar umas ao lado das outras• As bases de dados tradicionais recorrem à abreviatura ADJ• Os símbolos empregues para designar este operador • Os símbolos empregues para designar este operador booleano varia de motor de busca para motor de busca• ADJ: encontra como resultado todos os documentos que contenham as palavras pesquisadas desde que não haja nenhum termo entre elas• SAME: encontra como resultado todos os documentos que contenham as palavras pesquisadas, desde que não haja mais de dez termos entre elas• As palavras podem ser encontradas em qualquer ordem

Listado• Operador de adjacência e de proximidade: ()• Descrição: permitem a utilização de operadores booleanos de adjacência e de proximidade simultaneamente nas pesquisas complexas• Exemplo: partes do computador (internas)

• Operadores de comparação: <, =, >, <=, >=, <>• Descrição: são aplicáveis a todos os tipos nativos

• Operadores: IS NULL, IS NOT NULL• Descrição: testa se o resultado de uma expressão é nulo ou não

Listado• Operador: LIKE• Descrição: tenta fazer a correspondência entre uma expressão de caracter e um padrão de caracter, que é uma cadeia de caracteres que inclui um ou mais caracteres curinga

• Operador: %• Descrição: corresponde a qualquer número (zero ou mais) de caracteres na posição correspondente na primeira expressão de caracter

• Operador: _• Descrição: corresponde a um caracter na posição correspondente na expressão de caracter

Listado• Operador: BETWEEN• Descrição: testa se o primeiro operando está entre o segundo e o terceiro operandos• O segundo operando deve ser menor que o terceiro operando• Aplicável apenas aos tipos de dado onde se pode aplicar <= e >=

• Operador: IN• Descrição: opera sobre uma sub-consulta a tabela ou uma lista de valores

Listado• Operador: EXISTS• Descrição: opera sobre uma sub-consulta a tabela• Retorna TRUE se a sub-consulta a tabela retornar alguma linha, e FALSE se não retornar nenhuma linha• A subconsulta a tabela pode retornar várias colunas • A subconsulta a tabela pode retornar várias colunas (somente se for utilizado * para indicar várias colunas) e linhas

Listado• Operadores de comparação quantificada: ALL, ANY, SOME• Descrição: é um operador de comparação (<, =, >, <=, >=, <>) com ALL, ANY ou SOME aplicado• ALL: a comparação deverá ser verdade para todos os valores retornados pela sub-consulta a tabela• ANY ou SOME: a comparação deverá ser verdade para pelo menos um valor da subconsulta a tabela• ANY e SOME são equivalentes

Utilidade• Os operadores booleanos permitem modular as questões colocadas a um motor de pesquisa• Servem, de um modo geral, para tornar a interrogação mais específica

Links• http://users.skynet.be/penso.logo.encontro/glossario.htm• http://repositorium.sdum.uminho.pt/about/consulta/estrategia.htm• http://www.quatrocantos.com/tec_web/sist_busca/16BOOL.HTMOL.HTM• http://www.abdir.com.br/doutrina/ver.asp?art_id=431&categoria=Inform%E1tica%20Jur%EDdica• http://www4.fe.uc.pt/fontes/pesquisa_na_internet/pesquisar/pesquisa_booleana.htm• http://pt.wikipedia.org/wiki/%C3%81lgebra_Booleana