Notação Z - Predicados. Formas de montar predicados em Z

Documentos relacionados
Métodos Formais. Notação Z - Revisão

Notação Z - Decoração

Funções, Seqüências, Cardinalidade

Capítulo 8: Abstrações de dados

Apostila 01 Fundamentação da Teoria da Computação e Linguagens Formais

Resumo. Sistemas e Sinais Conjuntos e Funções. Conjuntos. Aula de Hoje

Algoritmos. Algoritmos e Linguagem de Programação - Prof Carlos Vetorazzi

MATEMÁTICA AULA 4 ÁLGEBRA CONJUNTOS. Conjunto é um conceito primitivo, e portanto, não tem definição.

Introdução à Computação

Introdução à Computação

Fábio Rodrigues / Israel Lucania

Fundamentos de Bancos de Dados 3 a Prova

1 FUNÇÃO - DEFINIÇÃO. Chama-se função do 1. grau toda função definida de por f(x) = ax + b com a, b e a 0.

PORTUGUÊS ESTRUTURADO: INTRODUÇÃO INTRODUÇÃO À PROGRAMAÇÃO PROF. ALEXANDRO DOS SANTOS SILVA

Teoria da Computação

Paradigmas de Linguagens

Login na VM VirtualBox

Noções de algoritmos - Aula 1

Aula 01 Conceito de Banco de Dados e SGBD

Lista 6 - Bases Matemáticas

Alfabeto, Cadeias, Operações e Linguagens

Um alfabeto é um conjunto de símbolos indivisíveis de qualquer natureza. Um alfabeto é geralmente denotado pela letra grega Σ.

Prof. Adriano Maranhão COMPILADORES

Introdução. Conceitos Básicos. Conceitos Básicos. Conceitos Básicos

APLICAÇÕES IMAGEM DIRETA - IMAGEM INVERSA. Professora: Elisandra Bär de Figueiredo

Noções de algoritmos - Aula 1

Por meio de uma figura fechada, dentro da qual podem-se escrever seus elementos. Diagrama de Venn-Euler.

Teoria dos Conjuntos. Matemática Discreta. Teoria dos Conjuntos - Parte I. Profa. Sheila Morais de Almeida DAINF-UTFPR-PG.

Aulas 10 e 11 / 18 e 20 de abril

Organização e Arquitetura de Computadores I

CAPÍTULO 2 TIPO DE DADOS

Exercícios: Arquivos

Instruções, dados e expressões

Relações. George Darmiton da Cunha Cavalcanti CIn - UFPE

Revisando Banco de Dados. Modelo Relacional

Introdução às Funções

Teoria Elementar dos Conjuntos

Banco de Dados Biológicos conceitos básicos, indexação, VSTree

Curso: Ciência da Computação Turma: 6ª Série. Teoria da Computação. Aula 2. Conceitos Básicos da Teoria da Computação

Linguagens Formais e Autômatos

Linguagens Formais e Autômatos

António Rocha Nuno Melo e Castro

Teoria dos Conjuntos. Teoria dos Conjuntos. Teoria dos Conjuntos. Teoria dos Conjuntos. Teoria dos Conjuntos. Teoria dos Conjuntos

Conceitos básicos de algoritmos

Existem conjuntos em todas as coisas e todas as coisas são conjuntos de outras coisas.

ALGORITMOS 3ª Aula. 3. Introdução Tipos de dados, variáveis e operadores Tipos de dados

Matéria Introdutória. Banco de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri

Banco de Dados I Parte II a: Abordagem Entidade-Relacionamento

V Workshop de Álgebra UFG-CAC. Só Funções. Francismar Ferreira Lima. Universidade Tecnológica Federal do Paraná (UTFPR) 09 de novembro de / 43

Fundamentos de Matemática

Teoria dos Conjuntos. Prof. Jorge

Conceitos de Linguagens de Programação

Algoritmos e Lógica de Programação Introdução e formas de representação

Banco de Dados. Introdução. Profa. Flávia Cristina Bernardini

Teoria Elementar dos Conjuntos

Modelagem de dados usando o modelo Entidade- Relacionamento (ER)

Conceito de Campos e Tabelas

Análise Estruturada. Modelagem de Software Prof. Flávio de Oliveira Silva, Ph.D.

O Modelo e a Álgebra Relacional

Banco de Dados? Banco de Dados Professor Vanderlei Frazão

Modelos. Banco de dados. Professor: Jarbas Araújo CENTRO EDUCACIONAL RADIER.

Já falamos que, na Matemática, tudo se baseia em axiomas. Já estudamos os números inteiros partindo dos seus axiomas.

LÓGICA DE PROGRAMAÇÃO. Algoritmos Computacionais. Sérgio Carlos Portari Júnior

MULT x ::= ACC ACC * MEM[x] DIV x ::= ACC ACC / MEM[x] (Divisão inteira) REM x ::= ACC ACC % MEM[x] (Resto da divisão inteira) INV ::= ACC

Conceitos Básicos de Algoritmos

INF P4-12/12/09 Questão 1 Nome:

Introdução. Conceitos Básicos. Conceitos Básicos. Conceitos Básicos

Generalidades sobre conjuntos

Semana 2. Primitivas. Conjunto das partes. Produto cartesiano. 1 Teoria ingênua dos conjuntos. 2 Axiomática ZFC de conjuntos. 4 Conjuntos numéricos

ALGORITMOS E LÓGICA DE PROGRAMAÇÃO PRÉ AULA PRÉ AULA 31/08/2015

Generalidades sobre conjuntos

Conceitos Básicos de Algoritmos

Considerando essas regras, quais as senhas correspondentes aos códigos: 23099, 14378, 52349, e VIII OMABC NÍVEL 1

LFA. Aula 04. Sintaxe e Semântica. Conceitos Básicos Alfabeto Palavra Linguagem

Aula 4: Elementos da Teoria de Conjuntos

SISTEMA DE INFORMAÇÃO Modelo Conceitual. Prof. Luiz Fernando Laguardia Campos FMS

Universidade Federal de Alfenas

Tipos de Dados. Profa. Renata de Matos Galante

Unidade I MATEMÁTICA. Prof. Celso Ribeiro Campos

Linguagens Regulares. Prof. Daniel Oliveira

Capítulo 0: Conjuntos, funções, relações

Prof.ª Dr.ª Donizete Ritter. MÓDULO III PARTE I: Conjuntos e Diagramas Lógicos

MATEMÁTICA DISCRETA CONCEITOS PRELIMINARES

Linguagens Formais e Problemas de Decisão

Modelagem de Dados (Estrutura Relacional)

Problema A Codificação Símbolos Dado um inteiro n, n é N representação de inteiros 0,1,...,b - 1 numa base b Dado um grafo G, G é conexo?

Aula 5 Oficina de Programação Introdução ao C. Profa. Elaine Faria UFU

Operações Fechadas sobre LR s Aplicações

BANCO DE DADOS INSTITUTO PERNAMBUCANO DE ENSINO SUPERIOR IPESU

Fundamentos 1. Lógica de Predicados

Uma linguagem de especificação formal simplificada

Conjuntos Contáveis e Não Contáveis / Contagem

Centro de Informática UFPE

ALGORITMOS E LÓGICA DE PROGRAMAÇÃO

Universidade Veiga de Almeida

01/08/2011. Tipos de dados Numéricos Alfanuméricos Lógicos. Numéricos. Tipos de dados. Dados Numéricos Inteiros. Dados Numéricos Reais.

LINGUAGENS FORMAIS E AUTÔMATOS

Estrutura de Condição, Escolha e Repetição

Transcrição:

Notação Z - Predicados Formas de montar predicados em Z = 1

Operações sobre tipos primitivos Z N + < - > * div mod.. N1 succ

Operações sobre conjuntos - pertence - união - intersecção \ - diferença # - cardinalidade - subconjunto - subconjunto próprio

Operações sobre conjuntos = - igualdade U - união generalizada P - powerset

Relações e funções Relações binárias modelam objetos que relacionam membros de dois conjuntos A B = P(A x B) r : A B

Funções total parcial total injetora parcial sobrejetora parcial bijetora total bijetora parcial injetora total sobrejetora

Operadores em relações e funções dom ran relação binária maplet domínio contra-domínio 9 composição relacional q:x Y,r:Y Z => X Z º volta da composição relacional

Operadores em relações e funções restrição de domínio Conj Relação restrição de contra-domínio subtração de domínio subtração de contra-domínio ~ inverso relação _ ( _ ) imagem relacional Relação ( Conj ) => A<-->B X PA --> PB

Sequência Tipos são definidos a partir dos símbolos e S1 = a, b, c, d Variáveis são especificadas: Sequência vazia - palavra chave seq Sequência não vazia - palavra chave seq₁ Sequência com elementos duplicados - palavra iseq

Operações sobre sequências # tamanho concatenação rev reverso da sequência head primeiro elemento last último elemento tail sequência sem o primeiro elemento front sequência sem o último elemento

Operações sobre sequência / concatenação distribuída sequência de sequência - /q prefix prefixo suffix sufixo in segmento subsequência = índice + sequência subsequência = sequência + elementos

Coleções (Bags) Conjunto contendo a quantidade de cada elementos armazenado Definido a partir de uma função parcial nos naturais BagX == X N1 TipoFicha == {vermelho, amarelo, azul} BagFicha == {vermelho 3, amarelo 5} São especificados através da palavra reservada bag

Operações em 'bags' count ou # quantidade de um elemento no bag elemento que aparece 'n' vezes em um bag pertence + U união - U diferença está contido

Notação Z - Exemplos Conta de usuário Um usuário possui nome e senha O nome é diferente da senha A senha não deve ter mais que 8 dígitos Caracter = {a, b, c, d,..., z} Login nome : seq1 Caracter senha : seq1 Caracter nome senha #senha < 8

Notação Z - Exemplos Livro de Aniversário De uma lista de pessoas conhecidas, desejo representar uma agenda que armazene datas de aniversário A agenda deve armazenar nomes e datas de aniversário [NOME, DATA] Agenda lnomes : P NOME aniversarios : NOME DATA lnomes = dom aniversarios

Notação Z - Exemplos Cliente X Servidor Não podem existir 2 servidores com mesmo id Um servidor pode atender até no máximo 5 requisições limite == N limite < 5 Servidor id: N req: limite SisServ lserv : P Servidor s1, s2 lserv s1.id = s2.id s1 = s2

Notação Z - Exemplos Turmas X Alunos Uma turma é formada por um conjunto de disciplinas Cada disciplina pode ter no máximo 30 alunos [DISCIPLINA] Turma lturma : bag DISCIPLINA n : N (n > 30 n lturma = )

Notação Z - Exercícios Represente os tipos (não as operações) do sistema de controle de créditos: Principais dados: cidade, sexo, idade, escolaridade Defina as pesquisas: Clientes que residem em João Pessoa e que são homens com mais de 30 anos Clientes que residem em Campina Grande, que possuem nível superior e que são mulheres etc...

Notação Z - Exercícios Represente os tipos (não as operações) de um sistema computacional: Um processador aloca recursos para execução de processos (não há duplicação de processos) Quando não há recurso disponível, o processo fica em uma fila de espera O processador pode estar em estado de espera ou execução Se um processador está em estado de espera, não há processos a serem alocados ou não há recursos disponíveis

Notação Z - Exercícios Represente os tipos (não as operações) de um sistema de segurança: O sistema mantém uma três níveis de hierarquia e um conjunto de usuários Usuários podem ser cadastrados em diferentes níveis hierárquicos, mas possui somente um nível O nível de hierarquia mais alto pode acessar dados dos níveis de hierarquia inferiores

Notação Z - Exercícios Altere o exemplo de aniversário para que o livro armazene os aniversariantes de hoje [NOME,DATA] Agenda lnomes : P NOME aniverisarios : NOME DATA lnomes = dom aniversarios