Semântica Axiomática
|
|
- Vítor Gabriel Cabral Medina
- 5 Há anos
- Visualizações:
Transcrição
1 Semântica Axiomática
2 O estilo axiomático presta-se particularmente à prova e raciocínio sobre propriedades dos programas, e à sua verificação, i.e. à prova de correcção dos programas face às suas especificações. A ferramenta semântica que estudaremos é a Lógica de Floyd-Hoare
3 Correcção Parcial A Lógica de Floyd-Hoare lida com triplos de correcção parcial da forma {P} C {Q} em que C é um programa e P e Q são propriedades do programa. P designa-se por pré-condição e Q por pós-condição.
4 Correcção Parcial Significado de {P} C {Q}: se C termina quando executado a partir de um estado S em que P se verifica, então, se C terminar, Q verifica-se. O que esta asserção não especifica: que C termine a partir do estado S o que acontece se C não terminar daí a parcialidade desta noção de correcção.
5 Linguagem Lógica {P} C {Q} Qual a sintaxe e poder expressivo da linguagem utilizada para descrever as propriedades P e Q? A linguagem lógica deverá conter pelo menos as conectivas disponíveis na linguagem em estudo.
6 mas precisaremos agora de conectivas lógicas como conjunção, disjunção, e negação: L ::= b E bop E L lop L lop {,,, } Asserções poderão ainda conter quantificadores,
7 Regras de Inferência para a Correcção Parcial {P }skip{p } {P }C 1 {Q} {Q}C 2 {R} {P }C 1 ; C 2 {R}
8 {P B}C 1 {Q} {P B}C 2 {Q} {P }if B then C 1 else C 2 {Q} {Q[E/l]} l := E {Q}
9 Invariantes de ciclo Uma propriedade P diz-se um invariante do ciclo while B do C se puder ser inferido. {P B}C{P } A que se deve a presença de B na pré-condição?
10 Note-se que se o ciclo while B do C terminar, P é verdadeiro depois da sua execução, e B só pode ser falso. {P B}C{P } {P }while B do C{P B} Porque não se inclui B na pré-condição?
11 Regras Lógicas: Consequência P = P {P }C{Q } Q = Q {P }C{Q} Permite fortalecer a pré-condição e/ou enfraquecer a pós-condição
12 Correcção da Semântica Axiomática Dados um comando C e predicados P e Q tais que o triplo de correcção parcial seguinte {P }C{Q} é derivável na Lógica de Hoare, seja s um estado que satisfaz P, e C [C ](s) = s., Então s satisfaz Q.
13 Interpretação de Asserções A semântica de uma linguagem lógica de predicados é bem conhecida de outras disciplinas. Identificando-se estados e valorações, a interpretação das asserções será uma extensão da interpretação das expressões booleanas da linguagem. Exemplo: [!l 1 =!l 2 ]s = (E [!l 1 ](s) = E [!l 2 ](s))
14 Interpr. de Triplos de Hoare [{P }C{Q}] = true se para todos os estados s e s tais que [P ](s) = true e C [C ](s) = s se tem [Q](s ) = true. [{P }C{Q}] = false em todos os outros casos
15 Correcção da Semântica Axiomática (v.2) Dados um comando C e predicados P e Q tais que o triplo de correcção parcial seguinte {P }C{Q} é derivável na Lógica de Hoare, então [{P }C{Q}] = true. (prova indutiva nas regras da Lógica de Hoare)
16 Lógica de Floyd-Hoare Complementos
17 Asserções Especiais Naturalmente, para uma dada pós-condição Q, temos interesse em saber qual a pré-condição mais fraca que garante essa pós-condição, uma vez que ela pode depois ser fortalecida. Caso extremo: {true} C {Q} significa que sempre que C termina, Q é satisfeito. A pré-condição é a mais fraca possível.
18 Asserções Especiais Simetricamente, para uma pré-condição P temos interesse em conhecer a pós-condição mais forte por ela garantida, que pode depois ser enfraquecida. Caso extremo {P} C {false} quando executado a partir de um estado em que P se verifica, C não termina. A pós-condição é a mais forte possível.
19 Asserções Especiais {P} C {true} e {false} C {Q} Asserções axiomaticamente válidas, correspondem à pós-condição mais fraca possível, e à pré-condição mais forte possível
20 Variáveis Auxiliares É útil poder referir numa pós-condição o valor que uma variável tinha no início do programa. Por exemplo para especificar o comportamento de um programa swap que troca os valores de duas variáveis: {!l1=x!l2=y} swap {!l1=y!l2=x} As variáveis auxiliares x e y permitem exprimir isto. Ex: escrever swap e provar a validade da asserção
21 Especificações Complexas A especificação de programas com alguma complexidade leva-nos à introdução de predicados e/ou funções na linguagem de asserções. Um exemplo típico é o do cálculo de uma grandeza matemática definida recursivamente, como a exponenciação: exp (n,0) = 1 exp (n,k+1) = n * exp (n, k)
22 {!l 2 0} calcexp {!l 3 = exp (!l 1,!l 2 )} Exercício: escrever calcexp e provar a sua correcção PROBLEMA: existe uma solução trivial! A especificação acima deve ser corrigida
23 {!l 2 0} calcexp {!l 3 = exp (!l 1,!l 2 )} Exercício: escrever calcexp e provar a sua correcção PROBLEMA: existe uma solução trivial! A especificação acima deve ser corrigida: {!l1=x!l2=y!l2 0} calcexp {!l 3 = exp (!l 1,!l 2 )!l 1 =x!l 2 =y}
24 Correcção Total Questão: quais as dificuldades inerentes ao tratamento de uma noção de correcção total? A única forma de se definir uma regra de inferência para lidar com a terminação de um ciclo é através da introdução de um variante de ciclo uma grandeza numérica não-negativa e decrescente em todas as iterações do ciclo.
25 Correcção Total As asserções de correcção total escrevem-se normalmente como [P] C [Q] [P B V=n] C [P V<n] P B V 0 [P] while B do C [P B] As restantes regras são iguais às de correcção parcial.
26 Se já se provou a correcção parcial, para provar a correcção total basta provar que o programa termina, ou seja [P] C [true] Exercício: Provar a correcção total do programa que calcula a exponenciação
Nelma Moreira. Departamento de Ciência de Computadores da FCUP. Aula 12
Fundamentos de Linguagens de Programação Nelma Moreira Departamento de Ciência de Computadores da FCUP Fundamentos de Linguagens de Programação Aula 12 Nelma Moreira (DCC-FC) Fundamentos de Linguagens
Leia maisComo podemos provar que este programa termina com x = 100. Correr o programa seguindo a sua semântica operacional é uma opção.
Verificação Automática de Programas Consideremos o seguinte programa para calcular 100 m=1 m: x:=0; y:=1; (while y!=101 do x:=x+y;y:=y+1) Como podemos provar que este programa termina com x = 100 m=1 m.
Leia maisSemântica Operacional
Semântica Conceitos Semântica é o estudo do significado. Incide sobre a relação entre significantes, tais como palavras, frases, sinais e símbolos, e o que eles representam, a sua denotação. Semântica
Leia maisSEMÂNTICA 02/09/2013. Conceitos de LPs - Semântica
UNIVERSIDADE ESTADUAL DE SANTA CRUZ CURSO: CIÊNCIA DA COMPUTAÇÃO DISCIPLINA: CONCEITOS DE LINGUAGENS DE PROGRAMAÇÃO DOCENTE: ROGÉRIO VARGAS DISCENTE: MARIANNA NOVAES Semântica SEMÂNTICA Semântica é a área
Leia maisLógica de Hoare. Abordagem que usaremos: aplicar o método de Hoare sobre uma linguagem de programação imperativa simplificada.
Lógica de Hoare Método axiomático para provar que determinados programas são corretos. Introduzido em 1969 por Charles Antony Richard Hoare. Também utilizado para especificar a semântica de linguagens
Leia mais3 Cálculo de Hoare. 3.1 Semântica Axiomática de Linguagens de Programação
Cálculo de Hoare 31 3 Cálculo de Hoare 3.1 Semântica Axiomática de Linguagens de Programação As técnicas para as semânticas operacional e denotacional de linguagens de programação são fundamentadas na
Leia maisSEMÂNTICA. Rogério Rocha. rode = program simples = var x : int := 3 in x := x + 5 end.
SEMÂNTICA program simples = var x : int := 3 in x := x + 5 end. rode =? Rogério Rocha Roteiro Introdução Sintaxe Semântica Dinâmica (Métodos formais) Operacional Axiomática Denotacional Estática Conclusão
Leia mais1 Lógica de primeira ordem
1 Lógica de primeira ordem 1.1 Sintaxe Para definir uma linguagem de primeira ordem é necessário dispor de um alfabeto. Este alfabeto introduz os símbolos à custa dos quais são construídos os termos e
Leia maisSintaxe e Semântica. George Darmiton da Cunha Cavalcanti.
Sintaxe e Semântica George Darmiton da Cunha Cavalcanti (gdcc@cin.ufpe.br) Tópicos Introdução O problema de descrever a sintaxe Métodos formais para descrever a sintaxe Gramáticas de atributos Descrevendo
Leia maisIntegridade e Completude Para o sistema dedutivo de Hoare, vamos considerar duas propriedades usuais em sistemas lógicos:
Integridade e Completude Para o sistema dedutivo de Hoare, vamos considerar duas propriedades usuais em sistemas lógicos: Integridade: Cada regra deve preservar validade. O que implica (por indução nas
Leia mais5 Implementação do Corretor de Programas
Implementação do Corretor de Programas 67 5 Implementação do Corretor de Programas 5.1 Introdução Para validar as idéias expostas anteriormente, faz-se necessário implementar um corretor de programas com
Leia maisAfirmações Matemáticas
Afirmações Matemáticas Na aula passada, vimos que o objetivo desta disciplina é estudar estruturas matemáticas, afirmações sobre elas e como provar essas afirmações. Já falamos das estruturas principais,
Leia maisFundamentos 1. Lógica de Predicados
Fundamentos 1 Lógica de Predicados Predicados e Quantificadores Estudamos até agora a lógica proposicional Predicados e Quantificadores Estudamos até agora a lógica proposicional A lógica proposicional
Leia maisLógica Computacional
Lógica Computacional Lógica de Operadores Booleanos Interpretações Tautológicas, Lógicas e Analíticas Funcionalidade / Tabelas de Verdade dos Operadores Booleanos Consequências Tautológica, Lógica e Analítica
Leia maisLinguagem com sintaxe e semântica precisas: lógica. Mecanismo de inferência: derivado da sintaxe e da
istemas de Apoio à Decisão Clínica, 09-1 1 Linguagem com sintaxe e semântica precisas: lógica. Mecanismo de inferência: derivado da sintaxe e da semântica. Importante: distinguir entre os fatos e sua representação
Leia maisLógica. Professor Mauro Cesar Scheer
Lógica Professor Mauro Cesar Scheer Objetivos Reconhecer e manipular com os símbolos formais que são usados no Cálculo Proposicional (CPC) e Cálculo de Predicados (CP). Determinar o valor de verdade de
Leia maisCálculo proposicional
O estudo da lógica é a análise de métodos de raciocínio. No estudo desses métodos, a lógica esta interessada principalmente na forma e não no conteúdo dos argumentos. Lógica: conhecimento das formas gerais
Leia maisProgramas em L1 pertencem ao conjunto de árvores de sintaxe abstrata definido pela gramática abstrata abaixo:
1 Semântica Operacional e Sistemas de Tipos Vamos definir a semântica operacional de uma série de linguagens no estilo conhecido por semântica operacional estrutural chamado também de semântica operacional
Leia maisMatemática discreta e Lógica Matemática
AULA 1 - Lógica Matemática Prof. Dr. Hércules A. Oliveira UTFPR - Universidade Tecnológica Federal do Paraná, Ponta Grossa Departamento Acadêmico de Matemática Ementa 1 Lógica Sentenças, representação
Leia maisLinguagens de Programação
Linguagens de Programação Fabio Mascarenhas - 2015.2 http://www.dcc.ufrj.br/~fabiom/lp Introdução Quais das expressões abaixo têm o mesmo significado? (vector-ref a 42) Introdução Quais das expressões
Leia maisIndução. Método de Prova por Indução. Jon Barwise e John Etchemendy, Capítulo: 16
Indução Método de Prova por Indução Referência: Capítulo: 16 Language, Proof and Logic Jon Barwise e John Etchemendy, 2008 1 Indução Métodos de prova já vistos relacionam-se diretamente com as propriedades
Leia maisJavaScript (Elementos de Programação e Programação Básica)
Linguagem de Programação para Web JavaScript (Elementos de Programação e Programação Básica) Prof. Mauro Lopes 1 Objetivos Iniciaremos aqui o nosso estudo sobre a Linguagem de Programação JavaScript. Apresentaremos
Leia maisFormas Normais para Lógicas Modais
GoBack Formas Normais para Lógicas Modais Cláudia Nalon http://www.cic.unb.br/docentes/nalon nalon@{cic.unb.br, unb.br} Universidade de Brasília Instituto de Ciências Exatas Departamento de Ciência da
Leia maisLinguagens Lógicas. Aluno: Victor Rocha
Linguagens Lógicas Aluno: Victor Rocha Roteiro Introdução Cálculo de Predicados Proposições Conectores Lógicos Variáveis Tipos de Cláusulas fatos regras Banco de Dados Prolog Fatos em Prolog Questões Unificação
Leia maisFundamentos 1. Lógica de Predicados
Fundamentos 1 Lógica de Predicados Predicados Estudamos até agora a lógica proposicional Predicados Estudamos até agora a lógica proposicional A lógica proposicional têm possibilidade limitada de expressão.
Leia maisNesta aula... Iteração indefinida. 1 Decisões em Python. 2 Funções lógicas. 3 Recursão. 4 Iteração. 5 Ciclo for ou while?
Nesta aula... 1 2 3 4 indefinida 5 Valores lógicos: booleanos Tipo do Python para guardar os valores lógicos, verdadeiro e falso: booleano (George Bool, matemático inglês) Valores lógicos podem ter apenas
Leia maisIntrodução ao Curso. Área de Teoria DCC/UFMG 2019/01. Introdução à Lógica Computacional Introdução ao Curso Área de Teoria DCC/UFMG /01 1 / 22
Introdução ao Curso Área de Teoria DCC/UFMG Introdução à Lógica Computacional 2019/01 Introdução à Lógica Computacional Introdução ao Curso Área de Teoria DCC/UFMG - 2019/01 1 / 22 Introdução: O que é
Leia maisLFA. Provas formais; Indução; Sintaxe e Semântica Teoria dos Conjuntos
LFA Provas formais; Indução; Sintaxe e Semântica Teoria dos Conjuntos Técnicas de Demonstração Um teorema é uma proposição do tipo: p q a qual, prova-se, é verdadeira sempre que: p q Técnicas de Demonstração
Leia maisLógica proposicional. Capítulo 1
Capítulo 1 Lógica proposicional 1.1 Introdução A lógica proposicional, à qual este capítulo é dedicado, pode ser vista como a parte da lógica que se ocupa do estudo do comportamento dos conectivos lógicos
Leia maisintrodução de um novo valor semântico de erro; e A[E 2 ]s 0 erro erro se B [b]s = erro
Propriedades de segurança Na semântica que consideramos todas as expressões avaliam para um determinado valor e os comandos executam sem provocarem s. Vamos considerar algumas alterações que aproximem
Leia maisLógica Computacional
Lógica Computacional Frases Quantificadas Quantificadores e Variáveis Fórmulas Bem Formadas: Sintaxe e Semântica Formas Aristotélicas 21 Outubro 2013 Lógica Computacional 1 Frases Quantificadas - Existem
Leia maisVerificação Formal de Software Aula 22
Verificação Formal de Software Sandra Alves & Nelma Moreira Verificação Formal de Software Aula 22 Contratos e Recursão mútua Até este ponto não distinguimos programas de comandos; Vamos definir formalmente
Leia maisIntrodução à Programação em Python Notebook 12 - Verificação de programas
Introdução à Programação em Python Notebook 12 - Verificação de programas Carlos Caleiro, Jaime Ramos Dep Matemática, IST - 2016 6 de Dezembro de 2016 Verificação de programas imperativos Averificaçãodeprogramaséumtópicoabsolutamentecrucialeminúmerasaplicaçõescujocorrectofuncionamento
Leia maisApresentação do curso
Folha 1 Matemática Básica Humberto José Bortolossi Departamento de Matemática Aplicada Universidade Federal Fluminense Apresentação do curso Parte 1 Parte 1 Matemática Básica 1 Parte 1 Matemática Básica
Leia maisIntrodução. História. História 18/03/2012. Lógica para Ciência da Computação. O que é Lógica?
IFMG-Formiga Introdução Lógica para Ciência da Computação O que é Lógica? É a formalização de linguagem e raciocínio, além de meios para expressar (dar significado) a essas formalizações. Profª. Danielle
Leia maisLÓGICA I ANDRÉ PONTES
LÓGICA I ANDRÉ PONTES 4. Lógica Proposicional A Linguagem da Lógica Proposicional Letras Proposicionais: P, Q, R, S, T,... Conectivos Lógicos: Símbolos auxiliares: (, ), = Conectivo Leitura Símbolo Símbolos
Leia maisProgramação Orientada a Objetos
Programação Orientada a Objetos Professor: Diego Oliveira Conteúdo 05: Linguagem Java Conteúdo da Aula Linguagem Java Tipos Primitivos Operadores Aritiméticos Operadores Lógicos Precedência de Operadores
Leia maisUNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: CIÊNCIA DA COMPUTAÇÃO. Prof.ª Danielle Casillo
UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: CIÊNCIA DA COMPUTAÇÃO Prof.ª Danielle Casillo Diferentes computadores podem ter diferentes arquiteturas e os diversos tipos de linguagem de programação.
Leia maisCAPÍTULO 4 - OPERADORES E EXPRESSÕES
CAPÍTULO 4 - OPERADORES E EXPRESSÕES 4.1 - OPERADORES ARITMÉTICOS Os operadores aritméticos nos permitem fazer as operações matemáticas básicas, usadas no cálculo de expressões aritméticas. A notação usada
Leia maisConhecimento e Raciocínio Lógica Proposicional
Conhecimento e Raciocínio Lógica Proposicional Agente Baseado em Conhecimento ou Sistema Baseado em Conhecimento Representa conhecimento sobre o mundo em uma linguagem formal (KB) Raciocina sobre o mundo
Leia maisLógica de Predicados. Quantificadores
Lógica de Predicados Quantificadores Conteúdo Correção de Exercícios Operações Lógicas Quantificadores Rosen (pg 33) Tradução Português Lógica Rosen (pg 42) Exercícios Determinar o conjunto verdade em
Leia maisNotas Sobre Correcção de Algoritmos
Notas Sobre Correcção de Algoritmos José Bernardo Barros Departamento de Informática Universidade do Minho 1 Introdução Um programa pode ser definido como um mecanismo (ou máquina) de transformação de
Leia maisSistemas Inteligentes
Sistemas Inteligentes Aula 21/10 Agentes Lógicos Agente Baseado em Conhecimento Agentes Baseados em Conhecimento ou Agentes Lógicos. Podem lidar mais facilmente com ambientes parcialmente observáveis.
Leia maisLinguagem de Programação I Prof. Tiago Eugenio de Melo.
Linguagem de Programação I Prof. Tiago Eugenio de Melo tmelo@uea.edu.br www.tiagodemelo.info 1 Sumário Introdução Conceitos preliminares Introdução Variáveis Comandos Condicionais 2 Por que aprender a
Leia maisMódulo: PYTHON. Felipe Oliveira
Módulo: PYTHON Felipe Oliveira Tudo Blzinha? https://pip.pypa.io/en/stable/installing/ Ctrl + S Variáveis Palavras reservadas! Operadores Aritméticos Operadores básicos Operação Operador adição +
Leia maisSemântica Denotacional
Semântica Denotacional Uma introdução ISBN 0-321-19362-8 Semântica denotacional é um método formal para definir a semântica de linguagens de programação. Interessa a: projetista de linguagens, quem escreve
Leia maisIntrodução à Programação I
Introdução à Programação I Programação Estruturada Álgebra Booleana e Expressões Compostas Material da Prof. Ana Eliza Definição: Chama-se proposição todo o conjunto de palavras ou símbolos que exprimem
Leia maisProgramação em Lógica. UCPEL/CPOLI/BCC Lógica para Ciência da Computação Luiz A M Palazzo Maio de 2010
Programação em Lógica UCPEL/CPOLI/BCC Lógica para Ciência da Computação Luiz A M Palazzo Maio de 2010 Roteiro Introdução Conceitos Básicos Linguagens Lógicas Semântica de Modelos Semântica de Prova Programação
Leia maisUSANDO UM MÉTODO INDUTIVO PARA RESOLVER PROBLEMAS. Bruno Maffeo Departamento de Informática PUC-Rio
USANDO UM MÉTODO INDUTIVO PARA RESOLVER PROBLEMAS Bruno Maffeo Departamento de Informática PUC-Rio MÉTODO INDUTIVO O método indutivo para resolver problemas aqui empregado inspira-se na formulação mais
Leia maisAula Prática 2. Paradigmas da Programação I / Programação Funcional
Aula Prática 2 Paradigmas da Programação I / Programação Funcional ESI/MCC 1 o ano (2005/2006) Nesta aula pretende-se introduzir os conceitos seguintes: valores e expressões; tipos básicos e tipos compostos;
Leia maisFundamentos 1. Lógica de Predicados
Fundamentos 1 Lógica de Predicados Predicados Estudamos até agora a lógica proposicional Predicados Estudamos até agora a lógica proposicional A lógica proposicional têm possibilidade limitada de expressão.
Leia maisAgentes Baseados em Conhecimento
Raciocínio Lógico Agentes Baseados em Conhecimento Conhecem alguma coisa sobre o mundo. Podem raciocinar para decidir sobre suas possíveis ações. São capazes de aceitar novas tarefas metas explícitas.
Leia mais3 AULA. Valorações e Tabelas de Verdade LIVRO. META: Apresentar tabelas de verdade para classificar proposições lógicas.
1 LIVRO Valorações e Tabelas de Verdade META: Apresentar tabelas de verdade para classificar proposições lógicas. OBJETIVOS: Ao fim da aula os alunos deverão ser capazes de: Aplicar valorações de um conjunto
Leia maisTécnicas de projeto de algoritmos: Indução
Técnicas de projeto de algoritmos: Indução ACH2002 - Introdução à Ciência da Computação II Delano M. Beder Escola de Artes, Ciências e Humanidades (EACH) Universidade de São Paulo dbeder@usp.br 08/2008
Leia maisCálculo de Predicados
Cálculo de Predicados (Lógica da Primeira Ordem) Prof. Tiago Semprebom, Dr. Eng. Instituto Federal de Educação, Ciência e Tecnologia Santa Catarina - Campus São José tisemp@ifsc.edu.br 18 de maio de 2013
Leia mais3 Cálculo Proposicional
3 Cálculo Proposicional O Cálculo Proposicional é um dos tópicos fundamentais da Lógica e consiste essencialmente da formalização das relações entre sentenças (ou proposições), de nidas como sendo frases
Leia mais01/09/2014. Capítulo 1. A linguagem da Lógica Proposicional
Capítulo 1 A linguagem da Lógica Proposicional 1 Introdução O estudo da Lógica é fundamentado em: Especificação de uma linguagem Estudo de métodos que produzam ou verifiquem as fórmulas ou argumentos válidos.
Leia maisConceitos básicos de programação
Constantes class Exemplo { static void Main() { float fahr, celsius; int lower, upper, step; lower = 0; /* limite inferior da tabela de temperaturas */ upper = 300; /* limite superior */ step = 20; /*
Leia maisLógica Computacional
Lógica Computacional Consequência Tautológica e Lógica em Frases Quantificadas Leis de de Morgan Separação de Quantificadores Consequências Analíticas e Método Axiomático 24 Outubro 2017 Lógica Computacional
Leia mais1 TEORIA DOS CONJUNTOS
1 TEORIA DOS CONJUNTOS Definição de Conjunto: um conjunto é uma coleção de zero ou mais objetos distintos, chamados elementos do conjunto, os quais não possuem qualquer ordem associada. Em outras palavras,
Leia maisLógica Computacional
Lógica Computacional Consequência Tautológica e Lógica em Frases Quantificadas Leis de de Morgan Separação de Quantificadores Consequências Analíticas e Método Axiomático 3 Novembro 2016 Lógica Computacional
Leia maisAgenda. Complexidade Não Determinista A classe NP. A classe Co-NP Reduções de tempo polinomial. Definida por. Exemplos em:
A Classe NP Agenda Complexidade Não Determinista A classe NP Definida por aceitação em tempo polinomial por NTM s instâncias positivas com provas de tamanho polinomial aceitação por verificadores em tempo
Leia mais2 AULA. Conectivos e Quantificadores. lógicas. LIVRO. META: Introduzir os conectivos e quantificadores
1 LIVRO Conectivos e Quantificadores Lógicos META: Introduzir os conectivos e quantificadores lógicos. OBJETIVOS: Ao fim da aula os alunos deverão ser capazes de: Compreender a semântica dos conectivos
Leia maisAPÊNDICE B ESPECIFICAÇÃO ALGÉBRICA DEFINIÇÕES E NOTAÇÃO
APÊNDICE B ESPECIFICAÇÃO ALGÉBRICA DEFINIÇÕES E NOTAÇÃO APÊNDICE B: Especificação Algébrica: Definições e Notação. 342 Def. B.1 : Família Indexada. Uma família F de conjuntos A indexada por I é uma função
Leia maisProgramação I Apresentação
Programação I Apresentação Prof. Carlos Alberto carlos.batista@facape.br carlos36_batista@yahoo.com.br Referências JUNIOR, D. P.; NAKAMITI, G. S.; ENGELBRECHT, A. de M. E.; BIANCHI, F. Algoritmos e Programação
Leia maisMATEMÁTICA DISCRETA CONCEITOS PRELIMINARES
MATEMÁTICA DISCRETA CONCEITOS PRELIMINARES Newton José Vieira 21 de agosto de 2007 SUMÁRIO Teoria dos Conjuntos Relações e Funções Fundamentos de Lógica Técnicas Elementares de Prova 1 CONJUNTOS A NOÇÃO
Leia maisInteligência Artificial. Prof. Tiago A. E. Ferreira Aula 15 Agentes que Raciocinam Logicamente
Inteligência Artificial Prof. Tiago A. E. Ferreira Aula 15 Agentes que Raciocinam Logicamente 1 Bem-vindos ao Mundo do Wumpus Wumpus Agente caçador de tesouros 2 Codificação do Mundo do Wumpus 4 3 fedor
Leia maisanti-simétrica, com elemento mínimo e tal que, dados n, n, n N, se
1 Sistema dedutivo T 1.1 Árvores e árvores etiquetadas Informalmente, uma árvore é uma estrutura constituída por um conjunto de elementos, designados nós, ordenados de um modo particular. Quando se faz
Leia maisLógica proposicional
Lógica proposicional Sintaxe Proposição: afirmação que pode ser verdadeira ou falsa Proposições podem ser expressas como fórmulas Fórmulas são construídas a partir de símbolos: De verdade: true (verdadeiro),
Leia maisIME, UFF 10 de dezembro de 2013
Lógica IME, UFF 10 de dezembro de 2013 Sumário.... Considere o seguinte argumento Um problema de validade (1) p q q r r s s t p t (1) é válido ou não? A resposta é sim... Uma demonstração Uma demonstração
Leia maisI1, I2 e In são instruções simples ou estruturadas da linguagem Pascal.
Capítulo 4 TESTES, ESCOLHAS E MALHAS DE REPETIÇÃO 1. INTRODUÇÃO Em muitos exemplos e exercícios realizados nos capítulos anteriores, não foram raras as vezes em que fizemos uso de elementos disponíveis
Leia maisLÓGICA FUZZY. Adão de Melo Neto
LÓGICA FUZZY Adão de Melo Neto INTRODUÇÃO CONCEITO OBJETIVO PRINCÍPIO LÓGICAS: CLÁSSICA x DIFUSA CONJUNTO FUZZY GRAU DE PERTINÊNCIA FUNÇÃO DE PERTINÊNCIA MODIFICADORES TERMINOLOGIA OPERAÇÕES SOBRE CONJUNTOS
Leia maisLógica Computacional Frequência. Universidade da Beira Interior
Lógica Computacional Frequência Duração: 2 horas Universidade da Beira Interior Segunda-Feira 9 de Janeiro de 2017 Prova sem consulta de material pedagógico. É proibido o uso de calculadora e de telemóvel.
Leia maisProgramação Introdução
PROGRAMAÇÃO Programação Introdução Prof. Dr. Adriano Mauro Cansian 1 Introdução Para armazenar um algoritmo na memória de um computador e para que ele possa, em seguida, comandar as operações a serem executadas,
Leia maisIntrodução O problema geral de descrever sintaxe Métodos formas de descrever sintaxe Gramática de atributos Semântica dinâmica
Capítulo 3 Descrevendo sintaxe e semântica ISBN 0-321-19362-8 Tópicos Introdução O problema geral de descrever sintaxe Métodos formas de descrever sintaxe Gramática de atributos Semântica dinâmica Copyright
Leia maisNHI Lógica Básica (Lógica Clássica de Primeira Ordem)
NHI2049-13 (Lógica Clássica de Primeira Ordem) página da disciplina na web: http://professor.ufabc.edu.br/~jair.donadelli/logica O assunto O que é lógica? Disciplina que se ocupa do estudo sistemático
Leia maisLógica e Metodologia Jurídica
Lógica e Metodologia Jurídica Argumentos e Lógica Proposicional Prof. Juliano Souza de Albuquerque Maranhão julianomaranhao@gmail.com Quais sentenças abaixo são argumentos? 1. Bruxas são feitas de madeira.
Leia maisAula 7 Estruturas de Repetição Cleverton Hentz
Aula 7 Estruturas de Repetição Cleverton Hentz Sumário de Aula Estruturas de Repetições while do for 2 Introdução Nesta aula iremos introduzir outra tipo de estrutura importante na descrição de um algoritmos,
Leia maisAula prática 4. Comandos de Desvio. Resumo. 1 Comandos de Desvio Condições mutuamente exclusivas... 2
Programação de Computadores I UFOP DECOM 2013 2 Aula prática 4 Comandos de Desvio Resumo Nesta aula você irá resolver problemas que requerem uma decisão com base em um teste, ou condição. Para implementar
Leia maisCES-11. Noções de complexidade de algoritmos. Complexidade de algoritmos. Avaliação do tempo de execução. Razão de crescimento desse tempo.
CES-11 Noções de complexidade de algoritmos Complexidade de algoritmos Avaliação do tempo de execução Razão de crescimento desse tempo Notação O Exercícios COMPLEXIDADE DE ALGORITMOS Importância de análise
Leia maisLógica Computacional
Aula Teórica 5: Semântica da Lógica Proposicional António Ravara Simão Melo de Sousa Departamento de Informática, Faculdade de Ciências e Tecnologia, Universidade Nova de Lisboa Departamento de Informática,
Leia maisIntuição da sintaxe de L2 (35)
2.2 A Linguagem L2 2.2 A Linguagem L2 A linguagem L2 é uma extensão de L1 com funções recursivas, memória (acesso e atualização de variáveis), sequência de comandos ( ; ) e laço de repetição while. Primeiro,
Leia maisLógica Computacional
Aula Teórica 13: Dedução Natural em Lógica Proposicional António Ravara Simão Melo de Sousa Departamento de Informática, Faculdade de Ciências e Tecnologia, Universidade Nova de Lisboa Departamento de
Leia maisLógica. Cálculo Proposicional. Introdução
Lógica Cálculo Proposicional Introdução Lógica - Definição Formalização de alguma linguagem Sintaxe Especificação precisa das expressões legais Semântica Significado das expressões Dedução Provê regras
Leia maisAula 2, 2014/2 Sintaxe da Lógica dos Conectivos
Notas de aula de Lógica para Ciência da Computação Aula 2, 2014/2 Sintaxe da Lógica dos Conectivos Renata de Freitas e Petrucio Viana Departamento de Análise, IME UFF 27 de agosto de 2014 Sumário 1 Sintaxe
Leia maisAlfabeto da Lógica Proposicional
Ciência da Computação Alfabeto da Lógica Sintaxe e Semântica da Lógica Parte I Prof. Sergio Ribeiro Definição 1.1 (alfabeto) - O alfabeto da é constituído por: símbolos de pontuação: (, ;, ) símbolos de
Leia maisAula 2: Linguagem Proposicional
Lógica para Computação Primeiro Semestre, 2015 Aula 2: Linguagem Proposicional DAINF-UTFPR Prof. Ricardo Dutra da Silva Linguagens naturais, como o nosso Português, podem expressar ideias ambíguas ou imprecisas.
Leia mais2 Lógica Fuzzy. 2 Lógica Fuzzy. Sintaxe da linguagem
2 Lógica Fuzzy 2.1 Cálculo proposicional (lógica proposicional) 2.2 Lógica de Predicados 2.3 Lógica de múltiplos valores 2.4 Lógica Fuzzy Proposições fuzzy Inferência a partir de proposições fuzzy condicionais
Leia mais15/03/2018. Professor Ariel da Silva Dias Aspectos sintáticos e semânticos básicos de linguagens de programação
Professor Ariel da Silva Dias Aspectos sintáticos e semânticos básicos de linguagens de programação Conjunto de regras que definem a forma da linguagem; Como as sentenças podem ser formadas como sequências
Leia maisCálculo proposicional
O estudo da lógica é a análise de métodos de raciocínio. No estudo desses métodos, a lógica esta interessada principalmente na forma e não no conteúdo dos argumentos. Lógica: conhecimento das formas gerais
Leia maisResolução De Problemas Em Informática. Docente: Ana Paula Afonso Resolução de Problemas. 1. Analisar o problema
ALGORITMIA Resolução De Problemas Em Informática Docente: Ana Paula Afonso 2000-2001 Resolução de Problemas 1. Analisar o problema Conhecer o bem o problema Descrever o problema: subdividir, detalhar 2.
Leia maisFundamentos de programação
Fundamentos de programação Expressões lógicas Operadores lógicos e relacionais Edson Moreno edson.moreno@pucrs.br http://www.inf.pucrs.br/~emoreno Controle de execução Até o momento, nossos algoritmos
Leia maisMatemática para Ciência de Computadores
Matemática para Ciência de Computadores 1 o Ano - LCC & ERSI Luís Antunes lfa@ncc.up.pt DCC-FCUP Complexidade 2002/03 1 Teoria de Conjuntos Um conjunto é uma colecção de objectos/elementos/membros. (Cantor
Leia maisRaciocínio Lógico. Negação da Conjunção e Disjunção Inclusiva (Lei de Morgan) Professor Edgar Abreu.
Raciocínio Lógico Negação da Conjunção e Disjunção Inclusiva (Lei de Morgan) Professor Edgar Abreu www.acasadoconcurseiro.com.br Raciocínio Lógico NEGAÇÃO DE UMA PROPOSIÇÃO COMPOSTA Agora vamos aprender
Leia maisLógica Computacional DCC/FCUP 2017/18
2017/18 Raciocínios 1 Se o André adormecer e alguém o acordar, ele diz palavrões 2 O André adormeceu 3 Não disse palavrões 4 Ninguém o acordou Será um raciocínio válido? Raciocínios Forma geral do raciocínio
Leia maisIntrodução à Logica Computacional. Aula: Lógica Proposicional -Sintaxe e Representação
Introdução à Logica Computacional Aula: Lógica Proposicional -Sintaxe e Representação Agenda Resolução de exercício da aula 1 Definições Proposição simples Conectivos Proposição composta Sintaxe Exercício
Leia maisLógica Computacional
Aula Teórica 9: Forma Normal Conjuntiva Departamento de Informática 21 de Março de 2011 O problema Como determinar eficazmente a validade de uma fórmula? Objectivo Determinar a validade de raciocínios
Leia maisVerificação Formal de Software Aula 18
Verificação Formal de Software Nelma Moreira Verificação Formal de Software Aula 18 Cálculo de Correção parcial H [skip p ] [ass p ] {φ} skip {φ} [comp p ] {φ[e/x]} x := E {φ} [if p ] {φ} C 1 {η} {η} C
Leia maisSumário. Os Enigmas de Sherazade I Ele fala a verdade ou mente? I I Um truque com os números... 14
Sumário Os Enigmas de Sherazade... 13 I Ele fala a verdade ou mente?... 13 I I Um truque com os números... 14 Capítulo 1 Lógica de Primeira Ordem-Proposicional... 15 Estruturas Lógicas... 15 I Sentenças...
Leia mais