Elsa Carvalho BEGIN  := id; b:=true; S:=[,..., ] WHILE (S  AND b)DO := top(S); S:=pop(S); := ; IF s e v são da forma f(t 1,... t n ), g(r 1,..., r m.

Slides:



Advertisements
Apresentações semelhantes
RECORTE DE FIGURAS Algoritmo proposto para Recorte de Segmentos (atribuído a Ivan Sutherland e Dan Cohen) Para o entendimento do algoritmo a ser proposto,
Advertisements

Complexidade de Algoritmos Recursivos
SISTEMAS OPERACIONAIS (SO) Aula 5 Luciana A. F. Martimiano 2002
Estruturas de Controle
Data: 10 a 12 de fevereiro de 2009 e
Introdução à Programação uma Abordagem Funcional Programação I Prof.ª Claudia Boeres CT VII - Sala 34 Departamento de Informática Centro.
Estrutura Condicional
Elsa Carvalho 241 Universidade da Madeira Departamento de Matemática Programação em Lógica e Funcional (2000/01) (Actualizado em 2004/05) Interpretação.
Elsa Carvalho 49 Universidade da Madeira Departamento de Matemática e Engenharias Programação em Lógica e Funcional (2000/01) (Actualizado em 2005/06)
Elsa Carvalho 163 Universidade da Madeira Departamento de Matemática Programação em Lógica e Funcional (2000/01) (Actualizado em 2004/05) Teoria dos Modelos.
Elsa Carvalho 112 Universidade da Madeira Departamento de Matemática Programação em Lógica e Funcional (2000/01) (Actualizado em 2004/05) Existe também.
©Silberschatz, Korth and Sudarshan (modificado)1Database System Concepts result := {R}; done := false; calcular F+; while (not done) do if (há um esquema.
LIMITE DE UMA FUNÇÃO II Nice Maria Americano Costa Pinto.
VHDL Linguagem de Descrição e Síntese de Circuitos Digitais Sistemas Digitais.
VHDL Linguagem de Descrição e Síntese de Circuitos Digitais Sistemas Digitais.
Teste de Software Parte 3.
Introdução à Computação - Jorge Macêdo
Universidade Federal do Pará Serviço Público Federal Centro de Ciências Exatas e Naturais Departamento de Informática Abril/2001.
Variáveis Dinâmicas Caixas de Nós
Algoritmos com seleção
Estrutura de Repetição
Algoritmos com seleção
Laboratório de Programação de Computadores II 2S/2009.
Laboratório de Programação de Computadores II Aula 1 2S/2009.
Robson Godoi / Sandra Siebra
O Portal do Estudante de Computação
Elsa Carvalho 28 Universidade da Madeira Departamento de Matemática e Engenharias Programação em Lógica e Funcional (2000/01) (Actualizado em 2005/06)
Paradigmas de programação
João Lucas de Oliveira Torres
Estruturas de Controlo em Pascal
Algoritmos de Ordenação 4
LISTAS DUPLAMENTE ENCADEADAS
Material Didático Proposto 1 Universidade Federal de Ouro Preto - UFOP Departamento de Computação - DECOM Comissão para Coordenação das Atividades Pedagógicas.
Listas duplamente encadeadas Estrutura: tDado = integer; { ou real, char, etc.} tPtNo = ^tNo; tNo = record Ant: tPtNo Dado: tDado; Prox: tPtNo; end; var.
Linguagem de Programação JAVA Técnico em Informática Professora Michelle Nery.
Semana 03 Comandos de desvio de fluxo. Expressões lógicas.
O Portal do Estudante de Computação
Profº Cláudio Barbosa VBScript – Estrutura condicional  Estrutura condicional simples Sintaxe if condição then comando.
Geração de Código Intermediário
Mergesort Katia Guimarães.
Estrutura de Decisão e Repetição
Elsa Carvalho 186 Universidade da Madeira Departamento de Matemática Programação em Lógica e Funcional (2000/01) (Actualizado em 2004/05) Aplicação e Composição.
Algoritmos e Estruturas de Dados RECURSIVIDADE. O que é recursividade? Recursividade significa algo ser definido em termos de sí próprio. Em termos de.
Material Didático Proposto 1 Universidade Federal de Ouro Preto - UFOP Departamento de Computação - DECOM Comissão para Coordenação das Atividades Pedagógicas.
Compiladores.
Conversão de Tipos Exemplo: x + i, onde x é do tipo real e i é do tipo integer. A especificação da linguagem deve indicar se a linguagem suporta este tipo.
Elsa Carvalho 18 Universidade da Madeira Departamento de Matemática Programação em Lógica e Funcional (2000/01) (Actualizado em 2004/05) Estruturas de.
Estruturas de Controlo Repetitivas
94 Elsa Carvalho Universidade da Madeira Departamento de Matemática e Engenharias Programação em Lógica e Funcional (2000/01) (Actualizado em 2005/06)
Computação Eletrônica
Algoritmos e Estrutura de Dados I
©Silberschatz, Korth and Sudarshan (modificado)7.3.1Database System Concepts Capítulo 7: Design de Bases de Dados 1ª Forma Normal Objectivos com Design.
Comando CASE Desvio por seleção múltipla
INE Fundamentos de Matemática Discreta para a Computação
©Silberschatz, Korth and Sudarshan (modificado)7.3.1Database System Concepts Capítulo 7: Design de Bases de Dados 1ª Forma Normal Objectivos com Design.
Elsa Carvalho 262 Universidade da Madeira Departamento de Matemática Programação em Lógica e Funcional (2000/01) (Actualizado em 2004/05) Negação Com os.
Programação de Computadores - 1
Elsa Carvalho 203 Universidade da Madeira Departamento de Matemática Programação em Lógica e Funcional (2000/01) (Actualizado em 2004/05) Resolução (com.
Elsa Carvalho 18 Universidade da Madeira Departamento de Matemática Programação em Lógica e Funcional (2000/01) (Actualizado em 2004/05) Programação recursiva.
Introdução à Programação
Prof: Adriano A. Ribeiro
Semântica em Linguagens de Programação Semântica Denotacional
Profa. Maria Augusta Constante Puget
Andréa Iabrudi 1 Universidade Federal de Ouro Preto - UFOP Departamento de Computação - DECOM Programação de Computadores I.
Interpretação do Teorema de Herbrand
Laço ou loop e repetição
Programação Computacional Profa. Madeleine Medrano
ALGORITMOS Profº Antonio Carlos Marcelino de Paula 1.
1Unidade 04 – Estruturas de Repetição Algoritmos e Linguagens de Programação Estruturas de Repetição Prof.: Guilherme Baião S. Silva
Expressões Lógicas e Comandos de Decisão
Transcrição da apresentação:

Elsa Carvalho BEGIN  := id; b:=true; S:=[,..., ] WHILE (S  AND b)DO := top(S); S:=pop(S); := ; IF s e v são da forma f(t 1,... t n ), g(r 1,..., r m ) com (f,n) e (g, m) distintos (n,m  0) THEN b:= false ELSE IF s e v são da forma f(t 1,... t n ), f(r 1,..., r n ) THEN S:= push(, push(..., push(,S)...) ELSE IF s ou v é uma variável que ocorre estritamente no outra THEN b:= false ELSE IF s é uma variável THEN  :=   {s/v} ELSE IF v é uma variável THEN  :=   {v/s} ELSE b:= false END Unificação - Algoritmo 200 Universidade da Madeira Departamento de Matemática Programação em Lógica e Funcional (2000/01) (Actualizado em 2004/05)

Elsa Carvalho Unificação - OCCUR CHEK ELSE IF s ou s é uma variável que ocorre estritamente no outra THEN b:= false O objectivo desta validação é detectar situações de auto-referência. p(f(X), f(f(X)))p(Y,Y) A substituição X/f(X) seria obtida na ausência do teste anterior. Corresponde a substituir X pelo termo infinito f(f(f(...)), o qual não pertence à linguagem de 1ª ordem. A verificação da condição é ‘cara’ pois exige que a estrutura do termo seja examinada para detectar a ocorrência da variável, por isso é frequentemente omitida nas implementações. 201 Universidade da Madeira Departamento de Matemática Programação em Lógica e Funcional (2000/01) (Actualizado em 2004/05)

202 Elsa Carvalho Universidade da Madeira Departamento de Matemática Unificador mais geral para p(f(f(X)), X, a) ep(f(Y), g(Z), Z) Exemplo =  = {Z/a}  =  =  = {Z/a, X/g(a)} = =  = {Z/a, X/g(a), Y/f(g(a))} Programação em Lógica e Funcional (2000/01) (Actualizado em 2004/05)