Aplicação do Algoritmo de Grover para Problemas NP-Completos

Tamanho: px
Começar a partir da página:

Download "Aplicação do Algoritmo de Grover para Problemas NP-Completos"

Transcrição

1 Aplicação do Algoritmo de Grover para Problemas NP-Completos Luis Antonio Kowada 1, Celina M.. de Figueiredo 2, Renato Portugal 3, Carlile Lavor 4 1 Universidade Federal Fluminense (IM-UFF) Rua Mário Santos Braga S/N, , Niterói - RJ, Brasil 2 Universidade Federal do Rio de Janeiro (COPPE-UFRJ) CP 68511, , Rio de Janeiro - RJ, Brasil 3 Laboratório Nacional de Computação Científica (LNCC) rua Getúlio Vargas 333, , Petrópolis - RJ, Brasil 4 Universidade Estadual de Campinas (IMECC-UNICAMP) CP 665, , Campinas - SP, Brasil kowada@ufrj.br,celina@cos.ufrj.br,portugal@lncc.br,clavor@ime.unicamp.br Abstract. Although Grover Algorithm has been analyzed in great details, there are problems regarding its utility and implementation. In this paper, we show how Grover algorithm can be used to solve an NP-complete problem with quadratic speed-up over the classical algorithm. Resumo. O algoritmo de Grover tem sido bastante analisado e discutido, mas restam algumas dúvidas quanto a sua utilidade e implementação. Neste texto, mostramos, em detalhes, como o algoritmo de Grover pode ser usado para resolver um problema NP-completo com ganho quadrático em relação aos algoritmos clássicos. 1. Introdução Os dois algoritmos quânticos mais famosos são: algoritmo para fatoração de Shor [Shor 1994] e o algoritmo para busca de Grover [Grover 1997]. No caso do algoritmo de Grover, são comuns alguns questionamentos [Ambainis 24]. Um destes se refere à sua utilidade: "é útil um algoritmo de busca em uma lista não-ordenada, com N elementos com custo computacional O( N)? Não é mais fácil trabalhar classicamente com estruturas de dados especiais, como árvores vermelho-preto [Cormen et al. 21], e realizar a mesma operação com custo da ordem de O(log N)?". E principalmente entre os que estão se iniciando na área, é comum a seguinte indagação: "em uma lista não-ordenada, com N elementos, como é possível encontrar um elemento com O( N) operações? Não é necessário pelo menos N comparações? Será que o oráculo é possível de ser implementado?". Estas questões serão discutidas, através de um exemplo concreto. O algoritmo de Grover foi desenvolvido inicialmente para a busca em uma lista não-ordenada [Grover 1997], mas segundo a opinião de diversos autores, o seu uso mais

2 eficiente não será desta forma, mesmo porque o hardware para isso necessita de Ω(N) chaves quânticas [Ambainis 24, Nielsen and Chuang 2]. A aplicação mais viável seria um ganho quadrático sobre a complexidade de diversas operações computacionais. Mas para quais aplicações se obtém este ganho? E como fazer isto? Neste texto, é mostrado como o algoritmo de Grover pode ser implementado em termos de operadores unitários elementares para um problema NP-completo específico. 2. Problema de busca De um modo geral, todo procedimento computacional pode ser visto como um conjunto de operações aplicadas sobre uma seqüência de bits retornando outra seqüência de bits, conforme modelado por Alan Turing em 1936 [Turing 1936]. Na prática, tanto a entrada quanto a saída possuem um tamanho limitado. Suponha que haja no máximo n bits de entrada e m bits de saída. Neste caso, este procedimento computacional pode ser descrito por uma função f : {, 1} n {, 1} m, sendo que o cálculo de f possui um custo associado ao número de operações necessárias para retornar o resultado para cada entrada possível. Um problema bastante importante em Computação é o seguinte: "Dada uma função f conforme a descrição acima e um valor k, como encontrar uma possível entrada x tal que f(x) = k?". Se a função considerada é bijetora, o problema consiste em avaliar a função inversa f 1 (k). Mas no caso geral, podem haver várias soluções possíveis, sendo que qualquer uma delas é válida. Para se ter uma idéia da importância deste problema, denominado aqui problema de busca, os problemas NP-completos podem ser reduzidos a este. Por exemplo, o problema de decisão 3-Satisfabilidade, mais conhecido como 3-Sat, consiste em, dados um conjunto U de variáveis lógicas e uma coleção C de cláusulas disjuntivas sobre U, cada uma contendo exatamente 3 literais, saber se há uma combinação de valores para as variáveis em U, que satisfaça todas as cláusulas em C [Garey and Johnson 1979]. É fácil construir um procedimento que receba como entrada os valores das variáveis e retorne 1 caso todas as clásulas sejam verdadeiras, e caso contrário. Supondo que haja n variáveis lógicas, este procedimento pode ser visto como uma função f 3sat : {, 1} n {, 1}. A avaliação de f para cada entrada particular é simples, basta substituir os valores das variáveis nas cláusulas correspondentes. O custo da avaliação de f 3sat é proporcional ao número de cláusulas. O número máximo possível de cláusulas diferentes com 3 literais distintos para n variáveis é C n,3 = n(n 1)(n 2) 6 Θ(n 3 ). (1) O problema 3-sat pode ser reduzido a descobrir um valor x tal que f 3sat (x) = 1. Outro campo de aplicação para problemas de busca é a criptografia, mais precisamente a criptoanálise. A criptografia consiste basicamente em codificar uma mensagem X(chamado de texto claro) utilizando uma outra informação k, chamada de chave criptográfica, resultando em texto codificado Y. Para cada valor de k, há uma correspondência de 1-para-1 entre cada mensagem e sua possível codificação, ou seja, a função f k (X) = Y é bijetora. Tanto o cálculo de f quanto da sua inversa é computacionalmente eficiente,

3 desde que seja conhecido o valor de k. Um problema fundamental da criptoanálise consiste em, dada a função e o valor codificado Y, encontrar k ou X. á outras variações como a criptografia de chave pública, na qual a chave de codificação é distinta da chave de decodificação, ou codificação usando funções de espalhamento (hash function), que não possuem inversa. Não vamos aprofundar nisto, pois foge do escopo deste trabalho. Mais informações podem ser encontradas, por exemplo, em [Stinson 22, Terada 2]. Caso não seja conhecida nenhuma estrutura ou propriedade interna da função como, por exemplo, distribuição das soluções ou quais são as entradas com mais chance de terem sido escolhidas, a única forma de resolver o problema de busca é percorrendo todo o domínio da função e comparando os resultados. No caso da criptoanálise, este procedimento é conhecido como ataque de força bruta. No caso do problema 3-Sat com n variáveis, há O(2 n ) entradas possíveis e custo de avaliação de cada entrada é O(n 3 ), conforme visto antes. Logo, o procedimento de busca trivial possui complexidade O(2 n n 3 ). Para este problema em particular, existe um procedimento clássico probabilístico que resolve o problema com complexidade Õ(1, 33 n ) [Riege and Rothe 26]. Mas para muitos problemas o melhor procedimento clássico é a busca exaustiva. 3. Método de Grover para busca 3.1. Descrição do algoritmo O algoritmo de Grover foi projetado para encontrar um elemento dentro de uma lista não-ordenada. A seguir, é mostrado como ele pode ser implementado para encontrar um elemento do domínio de uma função, dada uma possível imagem da mesma. e um valor k. Suponha que se tenha um problema de busca definido por uma função f : {, 1} n {, 1} m (2) O procedimento geral do algoritmo de Grover é mostrado no Algoritmo 3.1. O símbolo x significa o inteiro mais próximo de x. O valor que aparece após o símbolo, indica o número de bits que formam este ket. O operador U g será descrito adiante. Algoritmo 3.1 Algoritmo de Grover 1) Preparação do estado inicial: ψ e = n k m 1 1 2) ψ 1 : Superposição de todos os estados da base computacional, no primeiro registrador, necessários para representar o domínio de f e aplicação de adamard no último registrador sobre o estado ψ e. 3) para j 1 até π 4 N faça 4) Aplicação do Oráculo: ψ 2j = U g ψ (2j 1) 5) Inversão sobre a média: ψ 2j+1 = (2 ψ 1 ψ 1 I) ψ 2j 6) fim para 7) Observe o estado do primeiro registrador A partir de f, pode-se construir um procedimento reversível : x k x k f(x), representando o operador XOR aplicado bit-a-bit.

4 Quando a dimensão do domínio de f é potência de 2, a superposição de todas as entradas possíveis de f, passo 2 do Algoritmo 3.1, pode ser feita através do uso de portas adamard em cada linha do 1 o registrador, conforme mostrado na seção 2.3 de [Portugal et al. 24]. Caso não seja potência de 2, deve-se utilizar a Transformada de Fourier Quântica como descrito em [Lomont 24]. A Proposição 1 indica a quantidade de iterações necessárias para maximizar a probabilidade de sucesso. Proposição 1. [Nielsen and Chuang 2, eq.6.17] Dada uma lista L com N elementos, dos quais t N satisfazem a condição de busca do oráculo, um limite superior para 2 a quantidade estimada de execuções do oráculo para obter um elemento marcado, sem nenhuma medição intermediária, é menor ou igual a. Como habitualmente não é conhecido o número de soluções t, são necessárias O( N) iterações, a menos que se use uma variação do algoritmo de Grover, que se encontra em [Boyer et al. 1998] Aplicação do algoritmo de Grover para problemas de busca O operador possui a mesma ordem de complexidade do procedimento irreversível clássico que calcula f [Bennett 1973]. Na formulação original do algoritmo de Grover [Grover 1997], como também é mostrado em [Portugal et al. 24], é utilizada uma função (chamada aqui de g(x, k), para não confundir com f anteriormente definida) que indica se x é solução do problema ou não. No caso da busca em uma lista, indica se k pertence à lista ou não. Em relação ao problema de busca anteriormente definido, esta função pode ser descrita como: π 4 N t g(x,k) = { 1, se f(x) = k, se f(x) k. (3) A partir desta função, é definido um operador unitário denominado de oráculo de Grover. U g : x k ( 1) g(x,k) x k, (4) O operador U g pode ser construído a partir do operador, de acordo com a Figura 1. Cada linha representa um conjunto de q-bits. A linha superior (1 o registrador) é formada por n = log N q-bits, sendo N o tamanho do domínio de f. Este registrador é utilizado para armazenar os valores de entrada. A linha intermediária (2 o registrador) é o conjunto de q-bits que armazena a saída de f, e a linha inferior é formada por um único q-bit auxiliar. É possível construir o operador (e todo o circuito de Grover) sem este q-bit auxiliar, mas sua presença facilita a compreensão do operador (e do circuito de Grover). Se a entrada for um estado projetado, a porta Z controlada pelo 2 o registrador inverte a amplitude do estado, caso o valor do 2 o registrador seja igual a na saída inferior do operador. A porta Z controlada pode ser implementada através de uma porta Toffoli generalizada com o q-bit alvo no estado 1 2. São omitidos outros q-bits auxiliares cujos valores de saída são iguais aos de entrada.

5 Z Figura 1. Circuito que implementa U g a partir de Aplicação do algoritmo de Grover ao problema das Equações Binárias Quadráticas Nesta seção é mostrado o funcionamento do algoritmo de Grover aplicado a um problema concreto, no caso ao problema das Equações Binárias Quadráticas (EBQ). Seja a função: na qual β e γ são números inteiros. f(x) = x 2 mod β, com x γ, (5) Dados f,γ e um valor α, o problema das Equações Binárias Quadráticas consiste em encontrar um valor x {,...,γ}, tal que f(x) = α. Mesmo que seja conhecida a fatoração de β, este problema é NP-completo, conforme pode ser visto em [Garey and Johnson 1979, Manders and Adleman 1978]. Para implementar o operador que calcula f para várias entradas em superposição, deve-se utilizar apenas portas reversíveis. Um possível operador associado ao problema é : x α x α (x 2 mod β). Este operador é facilmente implementável usando um operador multiplicação modular que possui complexidade O(n log 3 ), sendo que n = log β, usando o algoritmo Karatsuba reversível modular [Kowada et al. 26]. Não se pode utilizar o algoritmo de multiplicação modular, descrito por Vedral, Barenco e Ekert [Vedral et al. 1996], pois este operador permite superposição de estados em apenas um dos operandos. Também não se pode utilizar os procedimentos de exponenciação modular projetados para o algoritmo de fatoração de Shor [Shor 1994], que permitem a superposição de estados apenas para o valor expoente. Na Figura 2, é mostrado o circuito MULT-MOD:(N,a,b, ) (N,a,b,ab mod N), desenvolvido pelos autores, que permite a multiplicação modular com os dois operandos podendo estar em superposição a partir da multiplicação e divisão convencional, cujos circuitos podem ser encontrados em [Kowada 26] ou [Nascimento et al. 26]. Na Figura 3 é mostrado como implementar o operador : x α x α (x 2 mod β) a partir do circuito de multiplicação modular reversível, mostrado na Figura 2. O operador U g é construído de acordo com a Figura 1, com o segundo registrador inicialmente no estado 37. É possível projetar o operador de outras formas, como, por exemplo, : x α x (x 2 α) mod β. Em qualquer uma destas formas de implementar, após uma aplicação da mesma, o segundo registrador terá o valor zero para os estados da base computacional (e apenas para estes) que forem solução do problema. Em ambas as formas de implementação de, o circuito projetado para a busca de um valor α 1 não precisa ser modificado para a pesquisa de um novo valor α 2. O

6 MULT DIV DIV MULT MULT-MOD MULT-MOD MULT-MOD a n a b n β n β b 2n 2n n 2n n ab mod β a a b b ab mod β Figura 2. MULT-MOD. Circuito para a multiplicação modular reversível a partir dos circuitos reversíveis da multiplicação e divisão. x x α α (x 2 mod β) Figura 3. Circuito que implementa : x α x α (x 2 mod β) a partir da multiplicação modular. Cada registrador é formado por n bits. A porta C- NOT central representa a aplicação de n C-NOTs distintas onde cada bit do 3 o registrador controla um respectivo bit do 4 o registrador. que difere é o estado inicial do sistema que, em vez de ser ψ e = α 1 1, passa a ser ψ e = α 2 1. A complexidade de portas de é O(n log 3 ), definida pela ordem de complexidade da multiplicação modular. O operador U g possui mesma ordem de complexidade de. Tomando, por exemplo, f(x) = x 2 mod 63 com γ = 15 e α = 37. Isto significa, que se deseja saber se existe x [, 15], tal que f(x) = 37. Considerando que as únicas entradas válidas são as menores do que γ, o número de aplicações necessárias de U g no Algoritmo 3.1 para resolver a função do problema tratado é π 4 γ. No exemplo considerado, a quantidade de entradas é igual a 16, logo são necessárias 3 iterações do algoritmo. Pela Tabela 1, pode-se verificar que o único elemento do domínio de f que satisfaz a condição de busca é x = 1.

7 Tabela 1. tabela com as imagens de f(x) = x 2 mod 63 para x < 16. x f(x) Como todas as entradas da função f são menores do que 16 e as saídas possíveis são menores do que 64, os três registradores principais terão 4, 6 e 1 q-bits, respectivamente. Na Figura 4 é possível visualizar o circuito do algoritmo Grover para o exemplo dado. Para maiores detalhes sobre o circuito referente ao operador Inversão sobre a Média, veja [Portugal et al. 24]. Oráculo U g Inversão sobre a média { { X ii ii X X ii ii X X ii ii X 1 ψ e ψ 1 ψ 2 ψ 3 ψ 4 ψ 5 ψ 6 Figura 4. Circuito que implementa o algoritmo Grover a partir de. No lugar da deve entrar o circuito da Figura 3. O valor da entrada já se refere ao exemplo em concreto (k = 37). O estado inicial é ψ e = (6) Fazendo a superposição de todos os estados da base computacional no primeiro e terceiro registradores (passo 2 do Algoritmo 3.1), tem-se que: ψ 1 = = x= x (7) Aplicando o operador U g, o estado do sistema passa a ser: ψ 2 = 1 4 ( ). (8) Apenas o estado tem a amplitude invertida, pois f(1) = 37. Aparentemente, o segundo registrador não tem seu estado alterado após aplicação de U g, mas, na realidade, há uma mudança durante a aplicação de U g e, em seguida, é

8 restituído o valor original. Como U g = (U f I 1)(I n C n Z)( I 1 ), então, U g x k = (U f I 1)(I n C n Z) x k f(x), (9) sendo que C n Z é a porta Z controlada negativamente e I n é o operador identidade aplicados em n q-bits. Isto implica em que, após a execução de, o segundo registrador passa a guardar k f(x) para cada valor de x. Aplicando em seguida a porta Z controlada, a amplitude dos estados, nos quais o valor no segundo registrador é igual a zero, é invertida. No exemplo considerado, isto acontece apenas com o estado 1, que passa a ser 1, já que 37 f(1) =. Aplicando de forma reversa (último operador de U g ), o valor no segundo registrador passa a ser novamente 37 para todas as entradas. O sinal da amplitude permanece negativo para o estado cujo valor no primeiro registrador é 1 e positivo para os demais estados. O estado ψ 2 pode ser reescrito como: ψ 2 = x= x = ψ (1) Calculando ψ 2 ψ 1, tem-se: ψ 2 ψ 1 = 1 16 (16 2) = 7 8. (11) Aplicando a inversão sobre a média, o estado global passa a ser: ψ 3 = (2 ψ 1 ψ 1 I) ψ 2 = (2 ψ 1 ψ 2 ψ 1 ψ 2 = 14 ψ 8 1 ψ 2 = 7 ψ 4 1 ψ = x= x x=,x 1 x ). = 1 4 (3 4 (12) A amplitude do estado procurado passa de 1 11 para, depois da primeira rodada do algoritmo de Grover. Com isso, a chance deste elemento ser lido é ψ 3 1, 37, 2 = ( )2 = 47, 26%. Na segunda rodada, faz-se novamente a inversão do elemento procurado no algoritmo de Grover, obtendo-se ( ) ψ 4 = x (13) x=,x 1 Como ψ 4 ψ 1 = 1( ) = média, tem-se: = , invertendo o estado anterior sobre a ψ 5 = (2 ψ 1 ψ 1 I) ψ 4 = (2 ψ 1 ψ 4 ψ 1 ψ 4 = 17 ψ 16 1 ψ 4 = x=,x 1 x ). (14)

9 A chance de medição do elemento procurado depois desta rodada é, aproximadamente, 9,8%. Depois da terceira rodada do algoritmo de Grover, o produto escalar ψ 6 ψ 1 = e a amplitude do estado procurado passa para. Com isso, a probabilidade deste elemento ser lido é de aproximadamente 96%. Não adianta aplicar outras rodadas, pois a amplitude da projeção do estado ψ 8 = U g ψ 7 sobre o estado ψ 1 é negativa ( 13 ), assim, a amplitude do estado procurado 256 começa a diminuir caso sejam aplicadas mais iterações do algoritmo. 4. Conclusão Neste artigo, é proposto um circuito completo para resolver um problema NPcompleto a partir de operadores unitários básicos, usando o algoritmo de Grover. O problema considerado é das Equações Binárias Quadráticas, mas as idéias servem para a resolução de outros problemas. Além do circuito, é mostrado passo-a-passo a evolução do estado do sistema durante a execução do algoritmo para um exemplo em particular, esclarecendo dúvidas quanto ao funcionamento do algoritmo de Grover e de sua implementação para obter ganho quadrático em relação aos procedimentos clássicos. Agradecimentos Os autores agradecem às agências de fomento FAPESP, FAPERJ e CNPq pelo auxílio prestado e também agradecem aos revisores pela leitura cuidadosa deste trabalho. Em particular, através de um revisor, tomamos conhecimento de uma dissertação de mestrado [Oliveira 27], cujo tema é relacionado com o presente trabalho. Referências Ambainis, A. (24). Quantum search algorithms. ACM SIGACT News, 35(2): Bennett, C.. (1973). The logical reversibility of computation. IBM J. Res. Develop., 17: Boyer, M., Brassard, G., øyer, P., and Tapp, A. (1998). searching. Fortschritte Der Physik. Cormen, T.., Leiserson, C. E., Rivest, R. L., and Stein, C. (21). Algorithms. MIT Press, 2nd edition. Tight bounds on quantum Introduction to Garey, M. R. and Johnson, D. S. (1979). Computers and Intractability: A Guide to the Theory of NP-Completeness. Freeman. Grover, L. K. (1997). Quantum mechanics helps in searching for a needle in a haystack. Physical Review Letters, 79: Kowada, L. A. B., Portugal, R., and de Figueiredo, C. M.. (26). Reversible Karatsuba s algorithm. Journal of Universal Computer Science, 12(5): Kowada, L. A. B. (26). Construção de Algoritmos Reversíveis e Quânticos. PhD thesis, COPPE-Universidade Federal do Rio de Janeiro. Lomont, C. (24). A quantum fourier transform algorithm. quantph/446.

10 Manders, K. L. and Adleman, L. (1978). NP-Complete decision problems for binary quadratics. Journal of Computer and System Sciences, 16: Nascimento, A. L., Kowada, L. A. B., and de Oliveira, W. R. (26). Uma unidade lógica e aritmética reversível. In anais do WECIQ 26, pages , Pelotas-RS. Nielsen, M. A. and Chuang, I. L. (2). Quantum Computation and Quantum Information. Cambridge Press, Cambrigde - UK. Oliveira, D. S. (27). Comparador quântico de seqüências binárias: Circuitos e aplicações. Master s thesis, Universidade Federal do Ceará. Portugal, R., Lavor, C., Carvalho, L. M., and Maculan, N. (24). Uma Introdução à Computação Quântica, volume 8 of Notas em Matemática Aplicada. SBMAC. Riege, T. and Rothe, J. (26). Improving deterministic and randomized exponentialtime algorithms for the satisfiability, the colorability, and the domatic number problem. Journal of Universal Computer Science, 12(6): Shor, P. (1994). Algorithms of quantum computation: discrete logarithm and factoring. In Proceedings of 35th Annual Symposium on Foundations of Computer Science, pages Stinson, D. R. (22). Cryptography: Theory and Practice, chapter 6. CRC Press Company, 2nd edition. Terada, R. (2). Segurança de Dados. ed. Blücher. Turing, A. M. (1936). On computable numbers, with an application to Entscheidungs problem. In Proc. Lond. Math. Soc. 2, volume 42, page 23. Vedral, V., Barenco, A., and Ekert, A. (1996). Quantum networks for elementary arithmetic operations. Physical Review A, 54(1):

Resíduos Quadráticos e Fatoração: uma aplicação à criptoanálise do RSA

Resíduos Quadráticos e Fatoração: uma aplicação à criptoanálise do RSA Resíduos Quadráticos e Fatoração: uma aplicação à criptoanálise do RSA Charles F. de Barros 20 de novembro de 2008 Resumo Faremos uma breve introdução ao conceito de resíduos quadráticos, descrevendo em

Leia mais

Aritmética Binária e. Bernardo Nunes Gonçalves

Aritmética Binária e. Bernardo Nunes Gonçalves Aritmética Binária e Complemento a Base Bernardo Nunes Gonçalves Sumário Soma e multiplicação binária Subtração e divisão binária Representação com sinal Sinal e magnitude Complemento a base. Adição binária

Leia mais

Disciplina de Projetos e Análise de Algoritmos. Aula 1 - Apresentação aos Algoritmos Computacionais

Disciplina de Projetos e Análise de Algoritmos. Aula 1 - Apresentação aos Algoritmos Computacionais Aula 1 - Apresentação aos Algoritmos Computacionais O que é a Disciplina? Disciplina de Projeto e Análise de Algoritmos Esta é uma disciplina de Algoritmos em nível de Pós-Graduação! Temas a serem abordados:

Leia mais

UMA NOVA DEMONSTRAÇÃO DA COMPLEXIDADE DO ALGORITMO DE GROVER

UMA NOVA DEMONSTRAÇÃO DA COMPLEXIDADE DO ALGORITMO DE GROVER A pesquisa Operacional e os Recursos Renováveis 4 a 7 de novembro de 3, atal-r UMA OVA DEMOSTRAÇÃO DA COMPLEXIDADE DO ALGORITMO DE GROVER Carlile Lavor Universidade do Estado do Rio de Janeiro (IME-UERJ)

Leia mais

CAPÍTULO 3 - TIPOS DE DADOS E IDENTIFICADORES

CAPÍTULO 3 - TIPOS DE DADOS E IDENTIFICADORES CAPÍTULO 3 - TIPOS DE DADOS E IDENTIFICADORES 3.1 - IDENTIFICADORES Os objetos que usamos no nosso algoritmo são uma representação simbólica de um valor de dado. Assim, quando executamos a seguinte instrução:

Leia mais

Cálculo Numérico Aula 1: Computação numérica. Tipos de Erros. Aritmética de ponto flutuante

Cálculo Numérico Aula 1: Computação numérica. Tipos de Erros. Aritmética de ponto flutuante Cálculo Numérico Aula : Computação numérica. Tipos de Erros. Aritmética de ponto flutuante Computação Numérica - O que é Cálculo Numérico? Cálculo numérico é uma metodologia para resolver problemas matemáticos

Leia mais

Matemática - UEL - 2010 - Compilada em 18 de Março de 2010. Prof. Ulysses Sodré Matemática Essencial: http://www.mat.uel.

Matemática - UEL - 2010 - Compilada em 18 de Março de 2010. Prof. Ulysses Sodré Matemática Essencial: http://www.mat.uel. Matemática Essencial Equações do Segundo grau Conteúdo Matemática - UEL - 2010 - Compilada em 18 de Março de 2010. Prof. Ulysses Sodré Matemática Essencial: http://www.mat.uel.br/matessencial/ 1 Introdução

Leia mais

Capítulo 1. x > y ou x < y ou x = y

Capítulo 1. x > y ou x < y ou x = y Capítulo Funções, Plano Cartesiano e Gráfico de Função Ao iniciar o estudo de qualquer tipo de matemática não podemos provar tudo. Cada vez que introduzimos um novo conceito precisamos defini-lo em termos

Leia mais

Aula 4 Pseudocódigo Tipos de Dados, Expressões e Variáveis

Aula 4 Pseudocódigo Tipos de Dados, Expressões e Variáveis 1. TIPOS DE DADOS Todo o trabalho realizado por um computador é baseado na manipulação das informações contidas em sua memória. Estas informações podem ser classificadas em dois tipos: As instruções, que

Leia mais

CÁLCULO DE ZEROS DE FUNÇÕES REAIS

CÁLCULO DE ZEROS DE FUNÇÕES REAIS 15 CÁLCULO DE ZEROS DE FUNÇÕES REAIS Um dos problemas que ocorrem mais frequentemente em trabalhos científicos é calcular as raízes de equações da forma: f() = 0. A função f() pode ser um polinômio em

Leia mais

Arquitetura de Rede de Computadores

Arquitetura de Rede de Computadores TCP/IP Roteamento Arquitetura de Rede de Prof. Pedro Neto Aracaju Sergipe - 2011 Ementa da Disciplina 4. Roteamento i. Máscara de Rede ii. Sub-Redes iii. Números Binários e Máscara de Sub-Rede iv. O Roteador

Leia mais

As fases na resolução de um problema real podem, de modo geral, ser colocadas na seguinte ordem:

As fases na resolução de um problema real podem, de modo geral, ser colocadas na seguinte ordem: 1 As notas de aula que se seguem são uma compilação dos textos relacionados na bibliografia e não têm a intenção de substituir o livro-texto, nem qualquer outra bibliografia. Introdução O Cálculo Numérico

Leia mais

Matemática Financeira Módulo 2

Matemática Financeira Módulo 2 Fundamentos da Matemática O objetivo deste módulo consiste em apresentar breve revisão das regras e conceitos principais de matemática. Embora planilhas e calculadoras financeiras tenham facilitado grandemente

Leia mais

Resolução de problemas e desenvolvimento de algoritmos

Resolução de problemas e desenvolvimento de algoritmos SSC0101 - ICC1 Teórica Introdução à Ciência da Computação I Resolução de problemas e desenvolvimento de algoritmos Prof. Vanderlei Bonato Prof. Cláudio Fabiano Motta Toledo Sumário Análise e solução de

Leia mais

a 1 x 1 +... + a n x n = b,

a 1 x 1 +... + a n x n = b, Sistemas Lineares Equações Lineares Vários problemas nas áreas científica, tecnológica e econômica são modelados por sistemas de equações lineares e requerem a solução destes no menor tempo possível Definição

Leia mais

Representação de Dados

Representação de Dados Representação de Dados Introdução Todos sabemos que existem diferentes tipos de números: fraccionários, inteiros positivos e negativos, etc. Torna-se necessária a representação destes dados em sistema

Leia mais

ULA Sinais de Controle enviados pela UC

ULA Sinais de Controle enviados pela UC Solução - Exercícios Processadores 1- Qual as funções da Unidade Aritmética e Lógica (ULA)? A ULA é o dispositivo da CPU que executa operações tais como: Adição Subtração Multiplicação Divisão Incremento

Leia mais

Curso: Técnico de Informática Disciplina: Redes de Computadores. 1- Apresentação Binária

Curso: Técnico de Informática Disciplina: Redes de Computadores. 1- Apresentação Binária 1- Apresentação Binária Os computadores funcionam e armazenam dados mediante a utilização de chaves eletrônicas que são LIGADAS ou DESLIGADAS. Os computadores só entendem e utilizam dados existentes neste

Leia mais

Capítulo 3. Avaliação de Desempenho. 3.1 Definição de Desempenho

Capítulo 3. Avaliação de Desempenho. 3.1 Definição de Desempenho 20 Capítulo 3 Avaliação de Desempenho Este capítulo aborda como medir, informar e documentar aspectos relativos ao desempenho de um computador. Além disso, descreve os principais fatores que influenciam

Leia mais

Escola Secundária c/3º CEB José Macedo Fragateiro. Curso Profissional de Nível Secundário. Componente Técnica. Disciplina de

Escola Secundária c/3º CEB José Macedo Fragateiro. Curso Profissional de Nível Secundário. Componente Técnica. Disciplina de Escola Secundária c/3º CEB José Macedo Fragateiro Curso Profissional de Nível Secundário Componente Técnica Disciplina de Sistemas Digitais e Arquitectura de Computadores 29/21 Módulo 1: Sistemas de Numeração

Leia mais

Organização de Computadores. Cálculos Binários e Conversão entre Bases Aritmética Binária

Organização de Computadores. Cálculos Binários e Conversão entre Bases Aritmética Binária Organização de Computadores Capítulo 4 Cálculos Binários e Conversão entre Bases Aritmética Binária Material de apoio 2 Esclarecimentos Esse material é de apoio para as aulas da disciplina e não substitui

Leia mais

QUADRADO MÁGICO - ORDEM 4

QUADRADO MÁGICO - ORDEM 4 CONCEITO Partindo da definição original, os QUADRADOS MÁGICOS devem satisfazer três condições: a) tabela ou matriz quadrada (número de igual ao número de ); b) domínio: com elementos assumindo valores

Leia mais

Sistemas Numéricos e a Representação Interna dos Dados no Computador

Sistemas Numéricos e a Representação Interna dos Dados no Computador Capítulo 2 Sistemas Numéricos e a Representação Interna dos Dados no Computador 2.0 Índice 2.0 Índice... 1 2.1 Sistemas Numéricos... 2 2.1.1 Sistema Binário... 2 2.1.2 Sistema Octal... 3 2.1.3 Sistema

Leia mais

1. Introdução ao uso da calculadora

1. Introdução ao uso da calculadora 1. Introdução ao uso da calculadora O uso da calculadora científica no curso de Estatística é fundamental pois será necessário o cálculo de diversas fórmulas com operações que uma calculadora com apenas

Leia mais

AMBIENTE PARA AUXILIAR O DESENVOLVIMENTO DE PROGRAMAS MONOLÍTICOS

AMBIENTE PARA AUXILIAR O DESENVOLVIMENTO DE PROGRAMAS MONOLÍTICOS UNIVERSIDADE REGIONAL DE BLUMENAU CENTRO DE CIÊNCIAS EXATAS E NATURAIS CURSO DE CIÊNCIAS DA COMPUTAÇÃO BACHARELADO AMBIENTE PARA AUXILIAR O DESENVOLVIMENTO DE PROGRAMAS MONOLÍTICOS Orientando: Oliver Mário

Leia mais

Material Teórico - Módulo de Divisibilidade. MDC e MMC - Parte 1. Sexto Ano. Prof. Angelo Papa Neto

Material Teórico - Módulo de Divisibilidade. MDC e MMC - Parte 1. Sexto Ano. Prof. Angelo Papa Neto Material Teórico - Módulo de Divisibilidade MDC e MMC - Parte 1 Sexto Ano Prof. Angelo Papa Neto 1 Máximo divisor comum Nesta aula, definiremos e estudaremos métodos para calcular o máximo divisor comum

Leia mais

¹CPTL/UFMS, Três Lagoas, MS,Brasil, oliveiralimarafael@hotmail.com. ²CPTL/UFMS, Três Lagoas, MS, Brasil.

¹CPTL/UFMS, Três Lagoas, MS,Brasil, oliveiralimarafael@hotmail.com. ²CPTL/UFMS, Três Lagoas, MS, Brasil. Encontro de Ensino, Pesquisa e Extensão, Presidente Prudente, 22 a 25 de outubro, 2012 36 INTRODUÇÃO A CRIPTOGRAFIA RSA Rafael Lima Oliveira¹, Prof. Dr. Fernando Pereira de Souza². ¹CPTL/UFMS, Três Lagoas,

Leia mais

Departamento de Matemática - UEL - 2010. Ulysses Sodré. http://www.mat.uel.br/matessencial/ Arquivo: minimaxi.tex - Londrina-PR, 29 de Junho de 2010.

Departamento de Matemática - UEL - 2010. Ulysses Sodré. http://www.mat.uel.br/matessencial/ Arquivo: minimaxi.tex - Londrina-PR, 29 de Junho de 2010. Matemática Essencial Extremos de funções reais Departamento de Matemática - UEL - 2010 Conteúdo Ulysses Sodré http://www.mat.uel.br/matessencial/ Arquivo: minimaxi.tex - Londrina-PR, 29 de Junho de 2010.

Leia mais

Análise e Complexidade de Algoritmos

Análise e Complexidade de Algoritmos Análise e Complexidade de Algoritmos Uma visão de Intratabilidade, Classes P e NP - redução polinomial - NP-completos e NP-difíceis Prof. Rodrigo Rocha prof.rodrigorocha@yahoo.com http://www.bolinhabolinha.com

Leia mais

Apostila de Fundamentos de Programação I. Prof.: André Luiz Montevecchi

Apostila de Fundamentos de Programação I. Prof.: André Luiz Montevecchi Apostila de Fundamentos de Programação I Prof: André Luiz Montevecchi Introdução O mundo atual é dependente da tecnologia O uso intenso de diversos aparatos tecnológicos é parte integrante do nosso dia-a-dia

Leia mais

Faculdade de Engenharia Optimização. Prof. Doutor Engº Jorge Nhambiu

Faculdade de Engenharia Optimização. Prof. Doutor Engº Jorge Nhambiu 1 Programação Não Linear Aula 25: Programação Não-Linear - Funções de Uma única variável Mínimo; Mínimo Global; Mínimo Local; Optimização Irrestrita; Condições Óptimas; Método da Bissecção; Método de Newton.

Leia mais

Por que o quadrado de terminados em 5 e ta o fa cil? Ex.: 15²=225, 75²=5625,...

Por que o quadrado de terminados em 5 e ta o fa cil? Ex.: 15²=225, 75²=5625,... Por que o quadrado de terminados em 5 e ta o fa cil? Ex.: 15²=225, 75²=5625,... 0) O que veremos na aula de hoje? Um fato interessante Produtos notáveis Equação do 2º grau Como fazer a questão 5 da 3ª

Leia mais

Tabela de símbolos: tabelas de espalhamento

Tabela de símbolos: tabelas de espalhamento Tabela de símbolos: tabelas de espalhamento Marcelo K. Albertini 14 de Janeiro de 2014 2/28 Resumo de complexidades Análises para operação efetuada após N inserções pior caso caso médio keys chave get

Leia mais

Só Matemática O seu portal matemático http://www.somatematica.com.br FUNÇÕES

Só Matemática O seu portal matemático http://www.somatematica.com.br FUNÇÕES FUNÇÕES O conceito de função é um dos mais importantes em toda a matemática. O conceito básico de função é o seguinte: toda vez que temos dois conjuntos e algum tipo de associação entre eles, que faça

Leia mais

E A D - S I S T E M A S L I N E A R E S INTRODUÇÃO

E A D - S I S T E M A S L I N E A R E S INTRODUÇÃO E A D - S I S T E M A S L I N E A R E S INTRODUÇÃO Dizemos que uma equação é linear, ou de primeiro grau, em certa incógnita, se o maior expoente desta variável for igual a um. Ela será quadrática, ou

Leia mais

ARQUITETURA DE COMPUTADORES. Sistemas de Numeração. 1 Arquitetura de Computadores

ARQUITETURA DE COMPUTADORES. Sistemas de Numeração. 1 Arquitetura de Computadores ARQUITETURA DE COMPUTADORES Sistemas de Numeração 1 Sistemas de Numeração e Conversão de Base Sistema Decimal É o nosso sistema natural. Dígitos 0,1,2,3,4,5,6,7,8 e 9. Números superiores a 9; convencionamos

Leia mais

5COP096 TeoriadaComputação

5COP096 TeoriadaComputação Sylvio 1 Barbon Jr barbon@uel.br 5COP096 TeoriadaComputação Aula 14 Prof. Dr. Sylvio Barbon Junior Sumário - Problemas Exponenciais - Algoritmos Exponenciais usando Tentativa e Erro - Heurísticas para

Leia mais

5 Equacionando os problemas

5 Equacionando os problemas A UA UL LA Equacionando os problemas Introdução Nossa aula começará com um quebra- cabeça de mesa de bar - para você tentar resolver agora. Observe esta figura feita com palitos de fósforo. Mova de lugar

Leia mais

Pontifícia Universidade Católica do Rio Grande do Sul Faculdade de Engenharia Disciplina de Lógica Computacional Aplicada. Prof. Dr.

Pontifícia Universidade Católica do Rio Grande do Sul Faculdade de Engenharia Disciplina de Lógica Computacional Aplicada. Prof. Dr. Índice 1. SISTEMAS NUMÉRICOS 1.1 Caracterização dos Sistemas Numéricos 1.2 Sistemas Numéricos em uma Base B Qualquer 1.2.1 Sistema de Numeração Decimal 1.2.2. Sistema de Numeração Binário 1.2.3 Sistema

Leia mais

O ESPAÇO NULO DE A: RESOLVENDO AX = 0 3.2

O ESPAÇO NULO DE A: RESOLVENDO AX = 0 3.2 3.2 O Espaço Nulo de A: Resolvendo Ax = 0 11 O ESPAÇO NULO DE A: RESOLVENDO AX = 0 3.2 Esta seção trata do espaço de soluções para Ax = 0. A matriz A pode ser quadrada ou retangular. Uma solução imediata

Leia mais

Organização e Arquitetura de Computadores I

Organização e Arquitetura de Computadores I Organização e Arquitetura de Computadores I Aritmética Computacional Slide 1 Sumário Unidade Lógica e Aritmética Representação de Números Inteiros Aritmética de Números Inteiros Representação de Números

Leia mais

O Problema do Troco Principio da Casa dos Pombos. > Princípios de Contagem e Enumeração Computacional 0/48

O Problema do Troco Principio da Casa dos Pombos. > Princípios de Contagem e Enumeração Computacional 0/48 Conteúdo 1 Princípios de Contagem e Enumeração Computacional Permutações com Repetições Combinações com Repetições O Problema do Troco Principio da Casa dos Pombos > Princípios de Contagem e Enumeração

Leia mais

Aula 2 Modelo Simplificado de Computador

Aula 2 Modelo Simplificado de Computador Aula 2 Modelo Simplificado de Computador Um computador pode ser esquematizado de maneira bastante simplificada da seguinte forma: Modelo Simplificado de Computador: Memória Dispositivo de Entrada Processador

Leia mais

Dadas a base e a altura de um triangulo, determinar sua área.

Dadas a base e a altura de um triangulo, determinar sua área. Disciplina Lógica de Programação Visual Ana Rita Dutra dos Santos Especialista em Novas Tecnologias aplicadas a Educação Mestranda em Informática aplicada a Educação ana.santos@qi.edu.br Conceitos Preliminares

Leia mais

Hashing. Estruturas de Dados. Motivação

Hashing. Estruturas de Dados. Motivação Estruturas de Dados Hashing Prof. Ricardo J. G. B. Campello Parte deste material é baseado em adaptações e extensões de slides disponíveis em http://ww3.datastructures.net (Goodrich & Tamassia). Motivação

Leia mais

Sistemas de Numerações.

Sistemas de Numerações. Matemática Profº: Carlos Roberto da Silva; Lourival Pereira Martins. Sistema de numeração: Binário, Octal, Decimal, Hexadecimal; Sistema de numeração: Conversões; Sistemas de Numerações. Nosso sistema

Leia mais

FUNÇÃO COMO CONJUNTO R 1. (*)= ou, seja, * possui duas imagens. b) não é uma função de A em B, pois não satisfaz a segunda condição da

FUNÇÃO COMO CONJUNTO R 1. (*)= ou, seja, * possui duas imagens. b) não é uma função de A em B, pois não satisfaz a segunda condição da FUNÇÃO COMO CONJUNTO Definição 4.4 Seja f uma relação de A em B, dizemos que f é uma função de A em B se as duas condições a seguir forem satisfeitas: i) D(f) = A, ou seja, o domínio de f é o conjunto

Leia mais

Sistemas Computacionais II Professor Frederico Sauer

Sistemas Computacionais II Professor Frederico Sauer Sistemas Computacionais II Professor Frederico Sauer Livro-texto: Introdução à Organização de Computadores 4ª edição Mário A. Monteiro Livros Técnicos e Científicos Editora. Atenção: Este material não

Leia mais

3 Sistemas de Numeração:

3 Sistemas de Numeração: 3 Sistemas de Numeração: Os computadores eletrônicos têm como base para seu funcionamento a utilização de eletricidade. Diferente de outras máquinas que a presença ou ausência de eletricidade apenas significam

Leia mais

Uma lei que associa mais de um valor y a um valor x é uma relação, mas não uma função. O contrário é verdadeiro (isto é, toda função é uma relação).

Uma lei que associa mais de um valor y a um valor x é uma relação, mas não uma função. O contrário é verdadeiro (isto é, toda função é uma relação). 5. FUNÇÕES DE UMA VARIÁVEL 5.1. INTRODUÇÃO Devemos compreender função como uma lei que associa um valor x pertencente a um conjunto A a um único valor y pertencente a um conjunto B, ao que denotamos por

Leia mais

Aulas de PHP Criptografia com Cifra de César. Paulo Marcos Trentin paulo@paulotrentin.com.br http://www.paulotrentin.com.br

Aulas de PHP Criptografia com Cifra de César. Paulo Marcos Trentin paulo@paulotrentin.com.br http://www.paulotrentin.com.br Aulas de PHP Criptografia com Cifra de César Paulo Marcos Trentin paulo@paulotrentin.com.br http://www.paulotrentin.com.br Cifra de César com ISO-8859-1 A cifra de Cesar existe há mais de 2000 anos. É

Leia mais

Possui como idéia central a divisão de um universo de dados a ser organizado em subconjuntos mais gerenciáveis.

Possui como idéia central a divisão de um universo de dados a ser organizado em subconjuntos mais gerenciáveis. 3. Tabelas de Hash As tabelas de hash são um tipo de estruturação para o armazenamento de informação, de uma forma extremamente simples, fácil de se implementar e intuitiva de se organizar grandes quantidades

Leia mais

Algoritmos e Estrutura de Dados III. Árvores

Algoritmos e Estrutura de Dados III. Árvores Algoritmos e Estrutura de Dados III Árvores Uma das mais importantes classes de estruturas de dados em computação são as árvores. Aproveitando-se de sua organização hierárquica, muitas aplicações são realizadas

Leia mais

Somatórias e produtórias

Somatórias e produtórias Capítulo 8 Somatórias e produtórias 8. Introdução Muitas quantidades importantes em matemática são definidas como a soma de uma quantidade variável de parcelas também variáveis, por exemplo a soma + +

Leia mais

Vamos exemplificar o conceito de sistema posicional. Seja o número 1303, representado na base 10, escrito da seguinte forma:

Vamos exemplificar o conceito de sistema posicional. Seja o número 1303, representado na base 10, escrito da seguinte forma: Nova bibliografia: Título: Organização e projeto de computadores a interface Hardware/Software. Autor: David A. Patterson & John L. Hennessy. Tradução: Nery Machado Filho. Editora: Morgan Kaufmmann Editora

Leia mais

Feature-Driven Development

Feature-Driven Development FDD Feature-Driven Development Descrição dos Processos Requisitos Concepção e Planejamento Mais forma que conteúdo Desenvolver um Modelo Abrangente Construir a Lista de Features Planejar por

Leia mais

Sumário. 5COP096 Teoria da Computação Aula 8 Pesquisa em Memória Primária

Sumário. 5COP096 Teoria da Computação Aula 8 Pesquisa em Memória Primária 5COP096 Teoria da Computação Aula 8 Prof. Dr. Sylvio Barbon Junior Sylvio Barbon Jr barbon@uel.br 1 Sumário 1) Introdução à Pesquisa em Memória Primária 2) Pesquisa Sequencial 3) Pesquisa Binária 4) Árvore

Leia mais

A lógica de programação ajuda a facilitar o desenvolvimento dos futuros programas que você desenvolverá.

A lógica de programação ajuda a facilitar o desenvolvimento dos futuros programas que você desenvolverá. INTRODUÇÃO A lógica de programação é extremamente necessária para as pessoas que queiram trabalhar na área de programação, seja em qualquer linguagem de programação, como por exemplo: Pascal, Visual Basic,

Leia mais

Exercícios Teóricos Resolvidos

Exercícios Teóricos Resolvidos Universidade Federal de Minas Gerais Instituto de Ciências Exatas Departamento de Matemática Exercícios Teóricos Resolvidos O propósito deste texto é tentar mostrar aos alunos várias maneiras de raciocinar

Leia mais

computador-cálculo numérico perfeita. As fases na resolução de um problema real podem, de modo geral, ser colocadas na seguinte ordem:

computador-cálculo numérico perfeita. As fases na resolução de um problema real podem, de modo geral, ser colocadas na seguinte ordem: 1 UNIVERSIDADE FEDERAL DE VIÇOSA Departamento de Matemática - CCE Cálculo Numérico - MAT 271 Prof.: Valéria Mattos da Rosa As notas de aula que se seguem são uma compilação dos textos relacionados na bibliografia

Leia mais

FACULDADE CAMPO LIMPO PAULISTA MESTRADO EM CIÊNCIA DA COMPUTAÇÃO. Projeto e Análise de Algoritmos II Lista de Exercícios 2

FACULDADE CAMPO LIMPO PAULISTA MESTRADO EM CIÊNCIA DA COMPUTAÇÃO. Projeto e Análise de Algoritmos II Lista de Exercícios 2 FACULDADE CAMPO LIMPO PAULISTA MESTRADO EM CIÊNCIA DA COMPUTAÇÃO Projeto e Análise de Algoritmos II Lista de Exercícios 2 Prof. Osvaldo. 1. Desenvolva algoritmos para as operações abaixo e calcule a complexidade

Leia mais

objetivo Exercícios Meta da aula Pré-requisitos Aplicar o formalismo quântico estudado neste módulo à resolução de um conjunto de exercícios.

objetivo Exercícios Meta da aula Pré-requisitos Aplicar o formalismo quântico estudado neste módulo à resolução de um conjunto de exercícios. Exercícios A U L A 10 Meta da aula Aplicar o formalismo quântico estudado neste módulo à resolução de um conjunto de exercícios. objetivo aplicar os conhecimentos adquiridos nas Aulas 4 a 9 por meio da

Leia mais

Sistemas de Numeração. Engenharia da Computação 3 Período Alex Vidigal Bastos

Sistemas de Numeração. Engenharia da Computação 3 Período Alex Vidigal Bastos UNIPAC Sistemas Digitais Sistemas de Numeração Engenharia da Computação 3 Período Alex Vidigal Bastos 1 Agenda Objetivos Introdução Sistema Binário Sistema Octal Sistema Hexadecimal Aritméticas no Sistema

Leia mais

Correlação e Regressão Linear

Correlação e Regressão Linear Correlação e Regressão Linear A medida de correlação é o tipo de medida que se usa quando se quer saber se duas variáveis possuem algum tipo de relação, de maneira que quando uma varia a outra varia também.

Leia mais

UM CONCEITO FUNDAMENTAL: PATRIMÔNIO LÍQUIDO FINANCEIRO. Prof. Alvaro Guimarães de Oliveira Rio, 07/09/2014.

UM CONCEITO FUNDAMENTAL: PATRIMÔNIO LÍQUIDO FINANCEIRO. Prof. Alvaro Guimarães de Oliveira Rio, 07/09/2014. UM CONCEITO FUNDAMENTAL: PATRIMÔNIO LÍQUIDO FINANCEIRO Prof. Alvaro Guimarães de Oliveira Rio, 07/09/2014. Tanto as pessoas físicas quanto as jurídicas têm patrimônio, que nada mais é do que o conjunto

Leia mais

Função. Definição formal: Considere dois conjuntos: o conjunto X com elementos x e o conjunto Y com elementos y. Isto é:

Função. Definição formal: Considere dois conjuntos: o conjunto X com elementos x e o conjunto Y com elementos y. Isto é: Função Toda vez que temos dois conjuntos e algum tipo de associação entre eles, que faça corresponder a todo elemento do primeiro conjunto um único elemento do segundo, ocorre uma função. Definição formal:

Leia mais

UNIVERSIDADE CATÓLICA DE PETRÓPOLIS CENTRO DE ENGENHARIA E COMPUTAÇÃO

UNIVERSIDADE CATÓLICA DE PETRÓPOLIS CENTRO DE ENGENHARIA E COMPUTAÇÃO UNIVERSIDADE CATÓLICA DE PETRÓPOLIS CENTRO DE ENGENHARIA E COMPUTAÇÃO Amanda 5ª Atividade: Codificador e codificação de linha e seu uso em transmissão digital Petrópolis, RJ 2012 Codificador: Um codoficador

Leia mais

Tópico 11. Aula Teórica/Prática: O Método dos Mínimos Quadrados e Linearização de Funções

Tópico 11. Aula Teórica/Prática: O Método dos Mínimos Quadrados e Linearização de Funções Tópico 11. Aula Teórica/Prática: O Método dos Mínimos Quadrados e Linearização de Funções 1. INTRODUÇÃO Ao se obter uma sucessão de pontos experimentais que representados em um gráfico apresentam comportamento

Leia mais

MÓDULO 6 INTRODUÇÃO À PROBABILIDADE

MÓDULO 6 INTRODUÇÃO À PROBABILIDADE MÓDULO 6 INTRODUÇÃO À PROBBILIDDE Quando estudamos algum fenômeno através do método estatístico, na maior parte das vezes é preciso estabelecer uma distinção entre o modelo matemático que construímos para

Leia mais

1 Máquina URM, comandos e programas URM

1 Máquina URM, comandos e programas URM 1 Máquina URM, comandos e programas URM Definição 1 : Máquina URM (Unlimited Register Machine) Uma máquina URM é constituída por uma sucessão de registos 2 < R i > i IN. Cada registo pode conter um valor

Leia mais

Contagem. Prof. Dr. Leandro Balby Marinho. Matemática Discreta. Fundamentos Inclusão/Exclusão Princípio da Casa dos Pombos Permutações Combinações

Contagem. Prof. Dr. Leandro Balby Marinho. Matemática Discreta. Fundamentos Inclusão/Exclusão Princípio da Casa dos Pombos Permutações Combinações Contagem Prof. Dr. Leandro Balby Marinho Matemática Discreta Prof. Dr. Leandro Balby Marinho 1 / 39 UFCG CEEI Motivação Contagem e combinatória são partes importantes da matemática discreta. Se resumem

Leia mais

Sistema de Numeração e Conversão entre Sistemas. Prof. Rômulo Calado Pantaleão Camara. Carga Horária: 60h

Sistema de Numeração e Conversão entre Sistemas. Prof. Rômulo Calado Pantaleão Camara. Carga Horária: 60h Sistema de Numeração e Conversão entre Sistemas. Prof. Rômulo Calado Pantaleão Camara Carga Horária: 60h Representação de grandeza com sinal O bit mais significativo representa o sinal: 0 (indica um número

Leia mais

Exemplo de Subtração Binária

Exemplo de Subtração Binária Exemplo de Subtração Binária Exercícios Converta para binário e efetue as seguintes operações: a) 37 10 30 10 b) 83 10 82 10 c) 63 8 34 8 d) 77 8 11 8 e) BB 16 AA 16 f) C43 16 195 16 3.5.3 Divisão binária:

Leia mais

Construção de tabelas verdades

Construção de tabelas verdades Construção de tabelas verdades Compreender a Lógica como instrumento da ciência e como estrutura formal do pensamento, conhecendo e compreendendo as operações com os principais conceitos proposicionais

Leia mais

O endereço de sua estação de trabalho é 201.252.203.107, e você esta usando a máscara de subrede: 255.255.255.248.

O endereço de sua estação de trabalho é 201.252.203.107, e você esta usando a máscara de subrede: 255.255.255.248. Cálculo de endereços de rede Quais os hosts da rede 10.12.148.0 IP: 00001010.00001100.100101xx.xxxxxxxx Mask:11111111.11111111.11111100.00000000 Rede:00001010.00001100.10010100.00000000 Assim, podemos

Leia mais

SISTEMAS DE NUMERAÇÃO

SISTEMAS DE NUMERAÇÃO Atualizado em Prof. Rui Mano E mail: rmano@tpd.puc rio.br SISTEMAS DE NUMERAÇÃO Sistemas de Numer ação Posicionais Desde quando se começou a registrar informações sobre quantidades, foram criados diversos

Leia mais

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA INTRODUÇÃO À ORGANIZAÇÃO DE COMPUTADORES

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA INTRODUÇÃO À ORGANIZAÇÃO DE COMPUTADORES LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA INTRODUÇÃO À ORGANIZAÇÃO DE COMPUTADORES Prof. Dr. Daniel Caetano 2012-1 Objetivos Apresentar o funcionamento do computador Apresentar a função da memória e dos dispositivos

Leia mais

Uma Heurística para o Problema de Redução de Padrões de Corte

Uma Heurística para o Problema de Redução de Padrões de Corte Uma Heurística para o Problema de Redução de Padrões de Corte Marcelo Saraiva Limeira INPE/LAC e-mail: marcelo@lac.inpe.br Horacio Hideki Yanasse INPE/LAC e-mail: horacio@lac.inpe.br Resumo Propõe-se um

Leia mais

SESSÃO 5: DECLINAÇÃO SOLAR AO LONGO DO ANO

SESSÃO 5: DECLINAÇÃO SOLAR AO LONGO DO ANO SESSÃO 5: DECLINAÇÃO SOLAR AO LONGO DO ANO Respostas breves: 1.1) 9,063 N 1.2) norte, pois é positiva. 1.3) São José (Costa Rica). 2) Não, porque Santa Maria não está localizada sobre ou entre os dois

Leia mais

Endereçamento IP 09/05/2014. Endereçamento IP CLASSE B CLASSE A CLASSE A CLASSE C

Endereçamento IP 09/05/2014. Endereçamento IP CLASSE B CLASSE A CLASSE A CLASSE C Endereçamento IP Endereçamento IP Prof. Marcel Santos Silva marcel@magres.com.br É uma sequência de números composta de 32 bits. Esse valor consiste num conjunto de quatro grupos de 8 bits. Cada conjunto

Leia mais

PROCESSO DE DESENVOLVIMENTO DE SOFTWARE. Modelos de Processo de Desenvolvimento de Software

PROCESSO DE DESENVOLVIMENTO DE SOFTWARE. Modelos de Processo de Desenvolvimento de Software PROCESSO DE DESENVOLVIMENTO DE SOFTWARE Introdução Modelos de Processo de Desenvolvimento de Software Os modelos de processos de desenvolvimento de software surgiram pela necessidade de dar resposta às

Leia mais

REPRESENTAÇÃO DE DADOS EM SISTEMAS DE COMPUTAÇÃO AULA 03 Arquitetura de Computadores Gil Eduardo de Andrade

REPRESENTAÇÃO DE DADOS EM SISTEMAS DE COMPUTAÇÃO AULA 03 Arquitetura de Computadores Gil Eduardo de Andrade REPRESENTAÇÃO DE DADOS EM SISTEMAS DE COMPUTAÇÃO AULA 03 Arquitetura de Computadores Gil Eduardo de Andrade O conteúdo deste documento é baseado no livro Princípios Básicos de Arquitetura e Organização

Leia mais

ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES SISTEMAS DE NUMERAÇÃO: REPRESENTAÇÃO EM PONTO FLUTUANTE. Prof. Dr. Daniel Caetano 2012-1

ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES SISTEMAS DE NUMERAÇÃO: REPRESENTAÇÃO EM PONTO FLUTUANTE. Prof. Dr. Daniel Caetano 2012-1 ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES SISTEMAS DE NUMERAÇÃO: REPRESENTAÇÃO EM PONTO FLUTUANTE Prof. Dr. Daniel Caetano 2012-1 Objetivos Compreender o que é notação em ponto flutuante Compreender a

Leia mais

Lista de Exercícios. Vetores

Lista de Exercícios. Vetores Lista de Exercícios Vetores LINGUAGEM DE PROGRAMAÇÃO PROF. EDUARDO SILVESTRI. WWW.EDUARDOSILVESTRI.COM.BR ATUALIZADO EM: 13/03/2007 Página 1/1 1. Faça um programa que crie um vetor de inteiros de 50 posições

Leia mais

Equações do primeiro grau

Equações do primeiro grau Módulo 1 Unidade 3 Equações do primeiro grau Para início de conversa... Você tem um telefone celular ou conhece alguém que tenha? Você sabia que o telefone celular é um dos meios de comunicação que mais

Leia mais

Aula 4 Estatística Conceitos básicos

Aula 4 Estatística Conceitos básicos Aula 4 Estatística Conceitos básicos Plano de Aula Amostra e universo Média Variância / desvio-padrão / erro-padrão Intervalo de confiança Teste de hipótese Amostra e Universo A estatística nos ajuda a

Leia mais

Manual SAGe Versão 1.2 (a partir da versão 12.08.01)

Manual SAGe Versão 1.2 (a partir da versão 12.08.01) Manual SAGe Versão 1.2 (a partir da versão 12.08.01) Submissão de Relatórios Científicos Sumário Introdução... 2 Elaboração do Relatório Científico... 3 Submissão do Relatório Científico... 14 Operação

Leia mais

Algoritmos e Programação _ Departamento de Informática

Algoritmos e Programação _ Departamento de Informática 5 TIPOS DE DADOS Todo o trabalho realizado por um computador é baseado na manipulação das informações contidas em sua memória. De um modo geral estas informações podem ser classificadas em dois tipos:

Leia mais

UNIVERSIDADE FEDERAL DO ESPÍRITO SANTO PROGRAMA DE EDUCAÇÃO TUTORIAL - MATEMÁTICA PROJETO FUNDAMENTOS DE MATEMÁTICA ELEMENTAR

UNIVERSIDADE FEDERAL DO ESPÍRITO SANTO PROGRAMA DE EDUCAÇÃO TUTORIAL - MATEMÁTICA PROJETO FUNDAMENTOS DE MATEMÁTICA ELEMENTAR UNIVERSIDADE FEDERAL DO ESPÍRITO SANTO PROGRAMA DE EDUCAÇÃO TUTORIAL - MATEMÁTICA PROJETO FUNDAMENTOS DE MATEMÁTICA ELEMENTAR Assuntos: Matrizes; Matrizes Especiais; Operações com Matrizes; Operações Elementares

Leia mais

Entendendo como funciona o NAT

Entendendo como funciona o NAT Entendendo como funciona o NAT Vamos inicialmente entender exatamente qual a função do NAT e em que situações ele é indicado. O NAT surgiu como uma alternativa real para o problema de falta de endereços

Leia mais

Universidade Estadual de Santa Cruz. Departamento de Ciências Exatas e Tecnológicas. Especialização em Matemática. Disciplina: Estruturas Algébricas

Universidade Estadual de Santa Cruz. Departamento de Ciências Exatas e Tecnológicas. Especialização em Matemática. Disciplina: Estruturas Algébricas 1 Universidade Estadual de Santa Cruz Departamento de Ciências Exatas e Tecnológicas Especialização em Matemática Disciplina: Estruturas Algébricas Profs.: Elisangela S. Farias e Sérgio Motta Operações

Leia mais

Sistemas de Numeração. Professor: Rogério R. de Vargas INFORMÁTICA 2014/2

Sistemas de Numeração. Professor: Rogério R. de Vargas INFORMÁTICA 2014/2 INFORMÁTICA Sistemas de Numeração Professor: Rogério R. de Vargas 2014/2 Sistemas de Numeração São sistemas de notação usados para representar quantidades abstratas denominadas números. Um sistema numérico

Leia mais

Algoritmos de Busca em Tabelas

Algoritmos de Busca em Tabelas Dentre os vários algoritmos fundamentais, os algoritmos de busca em tabelas estão entre os mais usados. Considere por exemplo um sistema de banco de dados. As operações de busca e recuperação dos dados

Leia mais

centena dezena unidade 10 2 10 1 10 0 275 2 7 5 200 + 70 + 5 275

centena dezena unidade 10 2 10 1 10 0 275 2 7 5 200 + 70 + 5 275 A. Sistemas de Numeração. Para se entender a linguagem do computador (o Código de Máquina), é necessário conhecer um pouco da teoria dos números. Não é uma tarefa tão difícil quanto pode parecer. Sabendo-se

Leia mais

Lista de Exercícios 4: Soluções Sequências e Indução Matemática

Lista de Exercícios 4: Soluções Sequências e Indução Matemática UFMG/ICEx/DCC DCC Matemática Discreta Lista de Exercícios : Soluções Sequências e Indução Matemática Ciências Exatas & Engenharias o Semestre de 05 O conjunto dos números racionais Q é enumerável, ou seja,

Leia mais

Notas de Cálculo Numérico

Notas de Cálculo Numérico Notas de Cálculo Numérico Túlio Carvalho 6 de novembro de 2002 2 Cálculo Numérico Capítulo 1 Elementos sobre erros numéricos Neste primeiro capítulo, vamos falar de uma limitação importante do cálculo

Leia mais

Em um sistema de numeração de base b qualquer, um número positivo é representado pelo polinômio:

Em um sistema de numeração de base b qualquer, um número positivo é representado pelo polinômio: ELETRÔNICA DIGITAl I 1 SISTEMAS DE NUMERAÇÃO INTRODUÇÃO A base dos sistemas digitais são os circuitos de chaveamento (switching) nos quais o componente principal é o transistor que, sob o ponto de vista

Leia mais

FUNÇÃO DO 1º GRAU. Vamos iniciar o estudo da função do 1º grau, lembrando o que é uma correspondência:

FUNÇÃO DO 1º GRAU. Vamos iniciar o estudo da função do 1º grau, lembrando o que é uma correspondência: FUNÇÃO DO 1º GRAU Vamos iniciar o estudo da função do 1º grau, lembrando o que é uma correspondência: Correspondência: é qualquer conjunto de pares ordenados onde o primeiro elemento pertence ao primeiro

Leia mais

Prof. Rafael Gross. rafael.gross@fatec.sp.gov.br

Prof. Rafael Gross. rafael.gross@fatec.sp.gov.br Prof. Rafael Gross rafael.gross@fatec.sp.gov.br Todo protocolo define um tipo de endereçamento para identificar o computador e a rede. O IP tem um endereço de 32 bits, este endereço traz o ID (identificador)

Leia mais

Informática no Ensino da Matemática

Informática no Ensino da Matemática Informática no Ensino da Matemática Humberto José Bortolossi http://www.professores.uff.br/hjbortol/ Lista de Exercícios 2 ATIVIDADE 1 Para poupar esforço de digitação, você pode usar o tradicional sistema

Leia mais