Ciência da Computação
|
Processamento de funções, Reconhecimento de Linguagens e Solucionabilidade de problemas, Organização e Busca da informação, Compreensão das Imagens, Raciocionio e Robótica |
As relações entre elementos e conjuntos são: persistencia, sub conjuntos, igualdade de conjuntos. As operações de conjuntos são: união (+), interseção (*), complemento (não), diferença (-) (derivada da da composição complemento e interseção), conjunto de partes e produto cartesiano. União ![]() Interseção ![]() A relação sobre dois conjuntos A e B é definida como um subconjunto de A x B. Uma função é um mapeamento que associa elementos de um conjunto denominado domínio e elementos de outro conjunto chamado de contradominio. Caracteristicas: 1. Solução de um problema 2. Tem descrição finita e não ambigua 3. É intuitivo 4. Deve consistir de passos discretos, executáveis mecanicamente em um tempo finito. Ex.: Problema: Mostar o fatorial de um número de 1 a 9 Solução: fatorial = 1; Assim cada identificador de operação e teste interpretado pela máquina deve ser associado a uma transformação na estrutura de memória e a uma função verdade, respectivamente. Nore-se que:
Os computadores atuais, seguem a máquina de Turing (1950) . Usam linguagem recursivamente enumeravel e sensivel ao contexto. O ponto de partida de Turing foi analisar a situação na qual uma pessoa, equipada com um instrumento de escrita e um apagador , realiza cálculos em uma folha de papel , organizada em quadrados.O trabalho da pessoa é :
A maquina é constituida de 3 partes:
Os simbolos podem:
![]() Hierarquia das classes de máquina: ![]() ----------------> menor poder computacional de 5.1 para 5.1.2.1.1.1 O modelo mais utilizado como formalização de algoritimo é a máquina de Turing, proposta em 1936 (20 anos antes do primeiro computador digital). É um mecanismo simples em que uma pessoa realiza calculos, usando um instrumento de escrita e um apagador. O modelo formal é baseado em uma fita (usada para entrada, saida e rascunho) uma unidade de controle e um programa. Na verdade a maquina de Touring é um programa para a maquina Universal.. Os seguintes modelos são equivalentes a maquina de Turing:
Os mecanismos de geração formal de linguagem comumente usados para descrever a léxica, sintaxe, semantica e blocos de construção são chamados de gramatica.. ![]() Semântica é o significado destes três. Ex.: sintaxe do if if (<expr>) <instrução> semântica do if se o valor da expressão for verdadeiro, a instrução será selecionada Método mais comum para descrever a sintaxe: a gramatica livre de contexto (também conhecida como Forma de Backus-Naur BNF). A gramática de atributos pode ser usada para descrever tanto a sintaxe como a semantica estatica das linguagens de programação. Métodos formais para descrever a semâtica - operacional, axiomática e denotacional. ![]() ----------------> mais restritas 6.2.1 para 6.2.1.1.1.1.1 Exemplos de automatas finito com saida: Hipertexto, Hipemidia, Animação Ferramentas para otimização podem ser: Tabela de decisões, máquinas de estado e grafos. logica combinacional ==> estados de transição Lógica é o estudo dos principios e métodos usados para destinguir das sentenças as verdadeiras e sentenças falsas. Proposição é uma construção (sentença, frase, pensamento) a que se pode atribuir juizo. O tipo de juizo é verdadeiro ou falso. Condição 1 |Condição 2 |Condição 3 e Condição 4 S S S ação 1 N N N ação 2 N S - ação 3 ação 4 Ex.: ![]() Finalidade: atomatas finitos com saida reconhecedores de linguagem Elementos: automata finito - Saida limitada a ligica binária (aceita / rejeita). Gera uma palavra de saida. saidas - (são indicadas na transição - maquina de mealy) (são indicadas no estado - maquina de Moore) - não pode ser lida ou seja não pode ser usada como memória auxiliar. estado - armazena informações sôbre o passado. Armazena as mudanças desde a entrada num estado até o presente momento. É representado por um texto ou número circulado. transições - indica uma mudança de estado. É descrita por uma condição. ações - é a descrição de uma atividade que deve ser realizada em determinado momento. Ação de entrada (no estado) executa a ação quando entra no estado. Ação de saida : executa quando sai do estado.. Ação de transição: executa quando ocorre uma determinda transição. diagrama de estado - representa uma máquina de estado finita. Processo de construção: determinação do grafico de estado (forma de grafo) construir tabela de estado a partir do gráfico eliminação de estados equivalentes designação de estados auxiliares desenhar mapas de transição (tabelas de estado e de estados auxiliares) desenhar mapas de entrada (mapas de transiçaõ e das tabelas de entrada) desenhar mapa de saida (estados auxiliares e tabela de estado) ![]() É um conjunto não vazio de nós (vertices, ex.: 1,2,3,4,5) e um conjunto de arcos (arestas ex.:a1,a2,a3,a4,a5,a6) tais que uma função associa a cada arco um par ordenado de nós. O arco pode ser uma seta (p. ex Pert, diagrama de fluxo) ou não (mapa de estrada). São constituidos de operações (composição sequencial, não deterministica e concorrente) e testes, e portanto não incluem funções de entrada e saida. A estruturas de programa podem ser: FLUXOGRAMA ----------------> programas mais gerais de 9.1 para 9.2.1 Ex.: Programa em Html/Javascript para implentar o algoritimo para mostrar fatorial de um número variando de 1 a 9 . <html xmlns="http://www.w3.org/1999/xhtml"> </body> ![]()
|