Spelling suggestions: "subject:"deoria : categorias"" "subject:"deoria : ategorias""
21 |
Estudo dos espaços coerentes do ponto de vista da teoria dos topos / A study of coherent spaces from the point of view of the theory of toposCosta, Simone Andre da January 2001 (has links)
Este trabalho propõe o estudo dos espaços coerentes do ponto de vista da teoria dos topos, ou seja, consiste em uma análise, em termos de topos, das principais categorias de espaços coerentes. Os espaços coerentes constituem um tipo de domínio que apresenta algumas particularidades que o distinguem dos demais, por exemplo, considera admissíveis no conjunto de funções somente aquelas que, além de contínuas no sentido de Scott - preservam supremos de conjuntos dirigidos, também são estáveis e lineares. Um topos e uma categoria Cartesiana fechada com classificador de subobjetos. Isso faz com que todo topos se comporte como Set (conjuntos como objetos e funções como morfismos), ou seja, uma categoria na qual as interpretações de suas construções básicas seguem a Teoria dos Conjuntos. Entre as categorias de Espaços Coerentes, tem-se a categoria STAB, cujos objetos são os espaços coerentes e os morfismos são funções estáveis entre esses espaços, que é uma categoria cartesiana fechada. Isto significa que STAB é uma categoria especial no sentido computacional: além de possuir o produto binário para todos os seus objetos, STAB apresenta objeto exponencial e morfismo de avaliação, garantindo significado para processos computacionais. A subcategoria LIN da categoria STAB, cujos morfismos são as funções lineares, não é uma categoria cartesiana fechada. Entretanto, LIN é uma categoria monoidal simétrica que e fechada. Este, condição e suficiente para que em LIN também se tenha a garantia de se obter significado para processos computacionais. Apresenta-se então, uma interpretação computacional da estrutura destas categorias e uma análise das mesmas do ponto de vista de topos, isto é, da existência ou não de classificador de subobjetos. / This work proposes the study of coherent spaces from the point of view of the Topos Theory, that is, it consists of an analysis of the main categories of coherent spaces in terms of topos. The coherent spaces make up a kind of domain which presents some peculiarities that separate it from the rest, for example, in the complex whole of the functions it only considers permissible, those which, apart from being continuous in the sense of Scott - preserving supremo of directed sets, it is also stable and linear. A topos is a Cartesian closed with subobject classifier. This makes topos behaves like Set (sets as objects and functions as morphisms), that is, a category in which the interpretations of its basic constructions follow the Theory of Sets. Among the categories of Coherent Spaces, there is the STAB category, a closed Cartesian category, the objects of which are the coherent spaces, having morphisms as stable functions among these spaces. This means that STAB is a special category in the computational sense: apart from having a binary product for all its objects, STAB presents an exponential object and a morphism of evaluation, ensuring meaning for computational processes. The subcategory LIN of the STAB category, the morphisms of which are linear functions, is not a closed Cartesian category. However, LIN is a symmetrical monoidal category which is closed. This condition is sufficient to also have in LIN the guarantee of obtaining meaning for computational processes. Thus, a computational interpretation of the structure of these categories will be presented, as well as an analysis of them from the point of view of the Topos Theory, that is, if subobject classifier exists or not.
|
22 |
Estudo dos espaços coerentes do ponto de vista da teoria dos topos / A study of coherent spaces from the point of view of the theory of toposCosta, Simone Andre da January 2001 (has links)
Este trabalho propõe o estudo dos espaços coerentes do ponto de vista da teoria dos topos, ou seja, consiste em uma análise, em termos de topos, das principais categorias de espaços coerentes. Os espaços coerentes constituem um tipo de domínio que apresenta algumas particularidades que o distinguem dos demais, por exemplo, considera admissíveis no conjunto de funções somente aquelas que, além de contínuas no sentido de Scott - preservam supremos de conjuntos dirigidos, também são estáveis e lineares. Um topos e uma categoria Cartesiana fechada com classificador de subobjetos. Isso faz com que todo topos se comporte como Set (conjuntos como objetos e funções como morfismos), ou seja, uma categoria na qual as interpretações de suas construções básicas seguem a Teoria dos Conjuntos. Entre as categorias de Espaços Coerentes, tem-se a categoria STAB, cujos objetos são os espaços coerentes e os morfismos são funções estáveis entre esses espaços, que é uma categoria cartesiana fechada. Isto significa que STAB é uma categoria especial no sentido computacional: além de possuir o produto binário para todos os seus objetos, STAB apresenta objeto exponencial e morfismo de avaliação, garantindo significado para processos computacionais. A subcategoria LIN da categoria STAB, cujos morfismos são as funções lineares, não é uma categoria cartesiana fechada. Entretanto, LIN é uma categoria monoidal simétrica que e fechada. Este, condição e suficiente para que em LIN também se tenha a garantia de se obter significado para processos computacionais. Apresenta-se então, uma interpretação computacional da estrutura destas categorias e uma análise das mesmas do ponto de vista de topos, isto é, da existência ou não de classificador de subobjetos. / This work proposes the study of coherent spaces from the point of view of the Topos Theory, that is, it consists of an analysis of the main categories of coherent spaces in terms of topos. The coherent spaces make up a kind of domain which presents some peculiarities that separate it from the rest, for example, in the complex whole of the functions it only considers permissible, those which, apart from being continuous in the sense of Scott - preserving supremo of directed sets, it is also stable and linear. A topos is a Cartesian closed with subobject classifier. This makes topos behaves like Set (sets as objects and functions as morphisms), that is, a category in which the interpretations of its basic constructions follow the Theory of Sets. Among the categories of Coherent Spaces, there is the STAB category, a closed Cartesian category, the objects of which are the coherent spaces, having morphisms as stable functions among these spaces. This means that STAB is a special category in the computational sense: apart from having a binary product for all its objects, STAB presents an exponential object and a morphism of evaluation, ensuring meaning for computational processes. The subcategory LIN of the STAB category, the morphisms of which are linear functions, is not a closed Cartesian category. However, LIN is a symmetrical monoidal category which is closed. This condition is sufficient to also have in LIN the guarantee of obtaining meaning for computational processes. Thus, a computational interpretation of the structure of these categories will be presented, as well as an analysis of them from the point of view of the Topos Theory, that is, if subobject classifier exists or not.
|
23 |
Mapeamento da linguagem Nautilus para JavaFuzitaki, Claudio Naoto January 2004 (has links)
Este trabalho apresenta um mapeamento centrado nas construções não usuais da linguagem Nautilus, para a linguagem convencional, no caso Java, mantendo propriedades com atomicidade que são requisitos da semântica formal da linguagem. Nautilus é originalmente uma linguagem de especificação baseada em objetos, textual que suporta objetos concorrentes e não deterministas. Desde então a linguagem foi modificada aom extensões como classes e uma notação diagramática, além de se investigar seu uso como linguagem de programação. Suas construções incomuns (reificação, agregação, etc.) são baseados em seu domínio semântico: Automâtos Não Sequenciais. Este domíno satisfaz composição diagonal, i.e refinamentos se compõem (verticalmente) refletindo uma descrição gradual de sistemas, envolvendo múltiplos níveis de abstração, e distribui-se através de combinadores (horizontalmente), o que significa que o refinamento de um sistema composto é a combinação de do refinamento de suas partes.O trabalho inclui um mapeamento inicial de um subconjunto da linguagem(objeto base, reificação, agregação e visão), uma versão ampliada para abranger mais construções( interação e classes), e uma versão refinada mais concorrente e sugestões de modificação na linguagem.
|
24 |
Mapeamento da linguagem Nautilus para JavaFuzitaki, Claudio Naoto January 2004 (has links)
Este trabalho apresenta um mapeamento centrado nas construções não usuais da linguagem Nautilus, para a linguagem convencional, no caso Java, mantendo propriedades com atomicidade que são requisitos da semântica formal da linguagem. Nautilus é originalmente uma linguagem de especificação baseada em objetos, textual que suporta objetos concorrentes e não deterministas. Desde então a linguagem foi modificada aom extensões como classes e uma notação diagramática, além de se investigar seu uso como linguagem de programação. Suas construções incomuns (reificação, agregação, etc.) são baseados em seu domínio semântico: Automâtos Não Sequenciais. Este domíno satisfaz composição diagonal, i.e refinamentos se compõem (verticalmente) refletindo uma descrição gradual de sistemas, envolvendo múltiplos níveis de abstração, e distribui-se através de combinadores (horizontalmente), o que significa que o refinamento de um sistema composto é a combinação de do refinamento de suas partes.O trabalho inclui um mapeamento inicial de um subconjunto da linguagem(objeto base, reificação, agregação e visão), uma versão ampliada para abranger mais construções( interação e classes), e uma versão refinada mais concorrente e sugestões de modificação na linguagem.
|
25 |
Relational approach of graph grammars / Abordagem relacional de gramática de grafosCavalheiro, Simone André da Costa January 2010 (has links)
Gramática de grafos é uma linguagem formal bastante adequada para sistemas cujos estados possuem uma topologia complexa (que envolvem vários tipos de elementos e diferentes tipos de relações entre eles) e cujo comportamento é essencialmente orientado pelos dados, isto é, eventos são disparados por configurações particulares do estado. Vários sistemas reativos são exemplos desta classe de aplicações, como protocolos para sistemas distribuídos e móveis, simulação de sistemas biológicos, entre outros. A verificação de gramática de grafos através da técnica de verificação de modelos já é utilizada por diversas abordagens. Embora esta técnica constitua um método de análise bastante importante, ela tem como desvantagem a necessidade de construir o espaço de estados completo do sistema, o que pode levar ao problema da explosão de estados. Bastante progresso tem sido feito para lidar com esta dificuldade, e diversas técnicas têm aumentado o tamanho dos sistemas que podem ser verificados. Outras abordagens propõem aproximar o espaço de estados, mas neste caso não é possível a verificação de propriedades arbitrárias. Além da verificação de modelos, a prova de teoremas constitui outra técnica consolidada para verificação formal. Nesta técnica tanto o sistema quanto suas propriedades são expressas em alguma lógica matemática. O processo de prova consiste em encontrar uma prova a partir dos axiomas e lemas intermediários do sistema. Cada técnica tem argumentos pró e contra o seu uso, mas é possível dizer que a verificação de modelos e a prova de teoremas são complementares. A maioria das abordagens utilizam verificadores de modelos para analisar propriedades de computações, isto é, sobre a seqüência de passos de um sistema. Propriedades sobre estados alcançáveis só são verificadas de forma restrita. O objetivo deste trabalho é prover uma abordagem para a prova de propriedades de grafos alcançáveis de uma gramática de grafos através da técnica de prova de teoremas. Propõe-se uma tradução (da abordagem Single-Pushout) de gramática de grafos para uma abordagem lógica e relacional, a qual permite a aplicação de indução matemática para análise de sistemas com espaço de estados infinito. Definiu-se gramática de grafos utilizando estruturas relacionais e aplicações de regras com linguagens lógicas. Inicialmente considerou-se o caso de grafos (tipados) simples, e então se estendeu a abordagem para grafos com atributos e gramáticas com condições negativas de aplicação. Além disso, baseado nesta abordagem, foram estabelecidos padrões para a definição, codificação e reuso de especificações de propriedades. O sistema de padrões tem o objetivo de auxiliar e simplificar a tarefa de especificar requisitos de forma precisa. Finalmente, propõe-se implementar definições relacionais de gramática de grafos em estruturas de event-B, de forma que seja possível utilizar os provadores disponíveis para event-B para demonstrar propriedades de gramática de grafos. / Graph grammars are a formal language well-suited to applications in which states have a complex topology (involving not only many types of elements, but also different types of relations between them) and in which behaviour is essentially data-driven, that is, events are triggered basically by particular configurations of the state. Many reactive systems are examples of this class of applications, such as protocols for distributed and mobile systems, simulation of biological systems, and many others. The verification of graph grammar models through model-checking is currently supported by various approaches. Although model-checking is an important analysis method, it has as disadvantage the need to build the complete state space, which can lead to the state explosion problem. Much progress has been made to deal with this difficulty, and many techniques have increased the size of the systems that may be verified. Other approaches propose to over- and/or under-approximate the state-space, but in this case it is not possible to check arbitrary properties. Besides model checking, theorem proving is another wellestablished approach for verification. Theorem proving is a technique where both the system and its desired properties are expressed as formulas in some mathematical logic. A logical description defines the system, establishing a set of axioms and inference rules. The process of verification consists of finding a proof of the required property from the axioms or intermediary lemmas of the system. Each verification technique has arguments for and against its use, but we can say that model-checking and theorem proving are complementary. Most of the existing approaches use model checkers to analyse properties of computations, that is, properties over the sequences of steps a system may engage in. Properties about reachable states are handled, if at all possible, only in very restricted ways. In this work, our main aim is to provide a means to prove properties of reachable graphs of graph grammar models using the theorem proving technique. We propose an encoding of (the Single-Pushout approach of) graph grammar specifications into a relational and logical approach which allows the application of the mathematical induction technique to analyse systems with infinite state-spaces. We have defined graph grammars using relational structures and used logical languages to model rule applications. We first consider the case of simple (typed) graphs, and then we extend the approach to the non-trivial case of attributed-graphs and grammars with negative application conditions. Besides that, based on this relational encoding, we establish patterns for the presentation, codification and reuse of property specifications. The pattern has the goal of helping and simplifying the task of stating precise requirements to be verified. Finally, we propose to implement relational definitions of graph grammars in event-B structures, such that it is possible to use the event-B provers to demonstrate properties of a graph grammar.
|
26 |
Reificação de objetos concorrentes / Reification of concurrent objectsMenezes, Paulo Fernando Blauth January 1997 (has links)
Autômatos não-seqüenciais constituem um domínio semântico categorial do tipo não-intercalação para sistemas reativos, comunicantes e concorrentes.É baseado em sistemas de transições etiquetados, inspirado em "Redes de Petri são Monóides" de Meseguer e Montanari, onde as operações de sincronização e encapsulação são funtoriais e as reificações constituem uma classe de morfismos especiais. Do que se tem conhecimento, é o primeiro modelo de concorrência a satisfazer a composicionalidade diagonal, ou seja, onde as reificações compõem (verticalmente) e distribuem-se sobre a composição paralela (verticalmente). Adjunções entre autômatos não-seqüenciais, redes de Petri e autômatos seqüenciais são introduzidas estendendo a abordagem de Winskel, Nielsen e Sassone onde é proposta uma classificação formal para modelos de concorrência. Dos passos que envolvem a passagem de um modelo para outro, pode-se inferir que os autômatos não-seqüenciais são mais concretos do que as redes de Petri e os autômatos seqüenciais. Para experimentar o domínio semântico proposto, é dada semântica a uma linguagem concorrente, baseada nos objetos, denominada Náutilus. Trata-se de uma versão simplificada e revisada da linguagem de especificação orientada aos objetos GNOME, onde são introduzidos algumas facilidades especiais, inspiradas no domínio semântico, como a reificação e a agregação. Neste contexto, a composicionalidade diagonal é uma propriedade essencial para dar a semântica. / Nonsequential automata constitute a non-interleaving categorial semantic domain for reactive, communicating and concurrent systems. It is based on labeled transition systems, inspired by Meseguer and Montanari's "Petri Nets are Monoids", where synchronization and encapsulation operations are functorial and a class of morphisms stands for reification. It is, for our knowledge, the first model for concurrency which satisfies the diagonal compositionality requirement, i. e., reifications compose (vertical) and distribute over the parallel composition (horizontal). Adjunctions between nonsequential automata, Petri nets and sequential automata are provided extending the approach of Winskel, Nielsen and Sassone where a scene for a formal classification of models for concurrency is set. The steps of abstraction involved in moving between models show that nonsequential automata are more concrete than Petri nets and sequential automata. To experiment with the proposed semantic domain, a semantics for a concurrent, object-based language named Nautilus is given. It is a simplified and revised version of the object-oriented specification language GNOME, introducing some special features inspired by the semantic domain such as reification and aggregation. The diagonal compositionality is an essential property to give semantics in this context.
|
27 |
Relational approach of graph grammars / Abordagem relacional de gramática de grafosCavalheiro, Simone André da Costa January 2010 (has links)
Gramática de grafos é uma linguagem formal bastante adequada para sistemas cujos estados possuem uma topologia complexa (que envolvem vários tipos de elementos e diferentes tipos de relações entre eles) e cujo comportamento é essencialmente orientado pelos dados, isto é, eventos são disparados por configurações particulares do estado. Vários sistemas reativos são exemplos desta classe de aplicações, como protocolos para sistemas distribuídos e móveis, simulação de sistemas biológicos, entre outros. A verificação de gramática de grafos através da técnica de verificação de modelos já é utilizada por diversas abordagens. Embora esta técnica constitua um método de análise bastante importante, ela tem como desvantagem a necessidade de construir o espaço de estados completo do sistema, o que pode levar ao problema da explosão de estados. Bastante progresso tem sido feito para lidar com esta dificuldade, e diversas técnicas têm aumentado o tamanho dos sistemas que podem ser verificados. Outras abordagens propõem aproximar o espaço de estados, mas neste caso não é possível a verificação de propriedades arbitrárias. Além da verificação de modelos, a prova de teoremas constitui outra técnica consolidada para verificação formal. Nesta técnica tanto o sistema quanto suas propriedades são expressas em alguma lógica matemática. O processo de prova consiste em encontrar uma prova a partir dos axiomas e lemas intermediários do sistema. Cada técnica tem argumentos pró e contra o seu uso, mas é possível dizer que a verificação de modelos e a prova de teoremas são complementares. A maioria das abordagens utilizam verificadores de modelos para analisar propriedades de computações, isto é, sobre a seqüência de passos de um sistema. Propriedades sobre estados alcançáveis só são verificadas de forma restrita. O objetivo deste trabalho é prover uma abordagem para a prova de propriedades de grafos alcançáveis de uma gramática de grafos através da técnica de prova de teoremas. Propõe-se uma tradução (da abordagem Single-Pushout) de gramática de grafos para uma abordagem lógica e relacional, a qual permite a aplicação de indução matemática para análise de sistemas com espaço de estados infinito. Definiu-se gramática de grafos utilizando estruturas relacionais e aplicações de regras com linguagens lógicas. Inicialmente considerou-se o caso de grafos (tipados) simples, e então se estendeu a abordagem para grafos com atributos e gramáticas com condições negativas de aplicação. Além disso, baseado nesta abordagem, foram estabelecidos padrões para a definição, codificação e reuso de especificações de propriedades. O sistema de padrões tem o objetivo de auxiliar e simplificar a tarefa de especificar requisitos de forma precisa. Finalmente, propõe-se implementar definições relacionais de gramática de grafos em estruturas de event-B, de forma que seja possível utilizar os provadores disponíveis para event-B para demonstrar propriedades de gramática de grafos. / Graph grammars are a formal language well-suited to applications in which states have a complex topology (involving not only many types of elements, but also different types of relations between them) and in which behaviour is essentially data-driven, that is, events are triggered basically by particular configurations of the state. Many reactive systems are examples of this class of applications, such as protocols for distributed and mobile systems, simulation of biological systems, and many others. The verification of graph grammar models through model-checking is currently supported by various approaches. Although model-checking is an important analysis method, it has as disadvantage the need to build the complete state space, which can lead to the state explosion problem. Much progress has been made to deal with this difficulty, and many techniques have increased the size of the systems that may be verified. Other approaches propose to over- and/or under-approximate the state-space, but in this case it is not possible to check arbitrary properties. Besides model checking, theorem proving is another wellestablished approach for verification. Theorem proving is a technique where both the system and its desired properties are expressed as formulas in some mathematical logic. A logical description defines the system, establishing a set of axioms and inference rules. The process of verification consists of finding a proof of the required property from the axioms or intermediary lemmas of the system. Each verification technique has arguments for and against its use, but we can say that model-checking and theorem proving are complementary. Most of the existing approaches use model checkers to analyse properties of computations, that is, properties over the sequences of steps a system may engage in. Properties about reachable states are handled, if at all possible, only in very restricted ways. In this work, our main aim is to provide a means to prove properties of reachable graphs of graph grammar models using the theorem proving technique. We propose an encoding of (the Single-Pushout approach of) graph grammar specifications into a relational and logical approach which allows the application of the mathematical induction technique to analyse systems with infinite state-spaces. We have defined graph grammars using relational structures and used logical languages to model rule applications. We first consider the case of simple (typed) graphs, and then we extend the approach to the non-trivial case of attributed-graphs and grammars with negative application conditions. Besides that, based on this relational encoding, we establish patterns for the presentation, codification and reuse of property specifications. The pattern has the goal of helping and simplifying the task of stating precise requirements to be verified. Finally, we propose to implement relational definitions of graph grammars in event-B structures, such that it is possible to use the event-B provers to demonstrate properties of a graph grammar.
|
28 |
Reificação de objetos concorrentes / Reification of concurrent objectsMenezes, Paulo Fernando Blauth January 1997 (has links)
Autômatos não-seqüenciais constituem um domínio semântico categorial do tipo não-intercalação para sistemas reativos, comunicantes e concorrentes.É baseado em sistemas de transições etiquetados, inspirado em "Redes de Petri são Monóides" de Meseguer e Montanari, onde as operações de sincronização e encapsulação são funtoriais e as reificações constituem uma classe de morfismos especiais. Do que se tem conhecimento, é o primeiro modelo de concorrência a satisfazer a composicionalidade diagonal, ou seja, onde as reificações compõem (verticalmente) e distribuem-se sobre a composição paralela (verticalmente). Adjunções entre autômatos não-seqüenciais, redes de Petri e autômatos seqüenciais são introduzidas estendendo a abordagem de Winskel, Nielsen e Sassone onde é proposta uma classificação formal para modelos de concorrência. Dos passos que envolvem a passagem de um modelo para outro, pode-se inferir que os autômatos não-seqüenciais são mais concretos do que as redes de Petri e os autômatos seqüenciais. Para experimentar o domínio semântico proposto, é dada semântica a uma linguagem concorrente, baseada nos objetos, denominada Náutilus. Trata-se de uma versão simplificada e revisada da linguagem de especificação orientada aos objetos GNOME, onde são introduzidos algumas facilidades especiais, inspiradas no domínio semântico, como a reificação e a agregação. Neste contexto, a composicionalidade diagonal é uma propriedade essencial para dar a semântica. / Nonsequential automata constitute a non-interleaving categorial semantic domain for reactive, communicating and concurrent systems. It is based on labeled transition systems, inspired by Meseguer and Montanari's "Petri Nets are Monoids", where synchronization and encapsulation operations are functorial and a class of morphisms stands for reification. It is, for our knowledge, the first model for concurrency which satisfies the diagonal compositionality requirement, i. e., reifications compose (vertical) and distribute over the parallel composition (horizontal). Adjunctions between nonsequential automata, Petri nets and sequential automata are provided extending the approach of Winskel, Nielsen and Sassone where a scene for a formal classification of models for concurrency is set. The steps of abstraction involved in moving between models show that nonsequential automata are more concrete than Petri nets and sequential automata. To experiment with the proposed semantic domain, a semantics for a concurrent, object-based language named Nautilus is given. It is a simplified and revised version of the object-oriented specification language GNOME, introducing some special features inspired by the semantic domain such as reification and aggregation. The diagonal compositionality is an essential property to give semantics in this context.
|
29 |
Relational approach of graph grammars / Abordagem relacional de gramática de grafosCavalheiro, Simone André da Costa January 2010 (has links)
Gramática de grafos é uma linguagem formal bastante adequada para sistemas cujos estados possuem uma topologia complexa (que envolvem vários tipos de elementos e diferentes tipos de relações entre eles) e cujo comportamento é essencialmente orientado pelos dados, isto é, eventos são disparados por configurações particulares do estado. Vários sistemas reativos são exemplos desta classe de aplicações, como protocolos para sistemas distribuídos e móveis, simulação de sistemas biológicos, entre outros. A verificação de gramática de grafos através da técnica de verificação de modelos já é utilizada por diversas abordagens. Embora esta técnica constitua um método de análise bastante importante, ela tem como desvantagem a necessidade de construir o espaço de estados completo do sistema, o que pode levar ao problema da explosão de estados. Bastante progresso tem sido feito para lidar com esta dificuldade, e diversas técnicas têm aumentado o tamanho dos sistemas que podem ser verificados. Outras abordagens propõem aproximar o espaço de estados, mas neste caso não é possível a verificação de propriedades arbitrárias. Além da verificação de modelos, a prova de teoremas constitui outra técnica consolidada para verificação formal. Nesta técnica tanto o sistema quanto suas propriedades são expressas em alguma lógica matemática. O processo de prova consiste em encontrar uma prova a partir dos axiomas e lemas intermediários do sistema. Cada técnica tem argumentos pró e contra o seu uso, mas é possível dizer que a verificação de modelos e a prova de teoremas são complementares. A maioria das abordagens utilizam verificadores de modelos para analisar propriedades de computações, isto é, sobre a seqüência de passos de um sistema. Propriedades sobre estados alcançáveis só são verificadas de forma restrita. O objetivo deste trabalho é prover uma abordagem para a prova de propriedades de grafos alcançáveis de uma gramática de grafos através da técnica de prova de teoremas. Propõe-se uma tradução (da abordagem Single-Pushout) de gramática de grafos para uma abordagem lógica e relacional, a qual permite a aplicação de indução matemática para análise de sistemas com espaço de estados infinito. Definiu-se gramática de grafos utilizando estruturas relacionais e aplicações de regras com linguagens lógicas. Inicialmente considerou-se o caso de grafos (tipados) simples, e então se estendeu a abordagem para grafos com atributos e gramáticas com condições negativas de aplicação. Além disso, baseado nesta abordagem, foram estabelecidos padrões para a definição, codificação e reuso de especificações de propriedades. O sistema de padrões tem o objetivo de auxiliar e simplificar a tarefa de especificar requisitos de forma precisa. Finalmente, propõe-se implementar definições relacionais de gramática de grafos em estruturas de event-B, de forma que seja possível utilizar os provadores disponíveis para event-B para demonstrar propriedades de gramática de grafos. / Graph grammars are a formal language well-suited to applications in which states have a complex topology (involving not only many types of elements, but also different types of relations between them) and in which behaviour is essentially data-driven, that is, events are triggered basically by particular configurations of the state. Many reactive systems are examples of this class of applications, such as protocols for distributed and mobile systems, simulation of biological systems, and many others. The verification of graph grammar models through model-checking is currently supported by various approaches. Although model-checking is an important analysis method, it has as disadvantage the need to build the complete state space, which can lead to the state explosion problem. Much progress has been made to deal with this difficulty, and many techniques have increased the size of the systems that may be verified. Other approaches propose to over- and/or under-approximate the state-space, but in this case it is not possible to check arbitrary properties. Besides model checking, theorem proving is another wellestablished approach for verification. Theorem proving is a technique where both the system and its desired properties are expressed as formulas in some mathematical logic. A logical description defines the system, establishing a set of axioms and inference rules. The process of verification consists of finding a proof of the required property from the axioms or intermediary lemmas of the system. Each verification technique has arguments for and against its use, but we can say that model-checking and theorem proving are complementary. Most of the existing approaches use model checkers to analyse properties of computations, that is, properties over the sequences of steps a system may engage in. Properties about reachable states are handled, if at all possible, only in very restricted ways. In this work, our main aim is to provide a means to prove properties of reachable graphs of graph grammar models using the theorem proving technique. We propose an encoding of (the Single-Pushout approach of) graph grammar specifications into a relational and logical approach which allows the application of the mathematical induction technique to analyse systems with infinite state-spaces. We have defined graph grammars using relational structures and used logical languages to model rule applications. We first consider the case of simple (typed) graphs, and then we extend the approach to the non-trivial case of attributed-graphs and grammars with negative application conditions. Besides that, based on this relational encoding, we establish patterns for the presentation, codification and reuse of property specifications. The pattern has the goal of helping and simplifying the task of stating precise requirements to be verified. Finally, we propose to implement relational definitions of graph grammars in event-B structures, such that it is possible to use the event-B provers to demonstrate properties of a graph grammar.
|
30 |
Reificação de objetos concorrentes / Reification of concurrent objectsMenezes, Paulo Fernando Blauth January 1997 (has links)
Autômatos não-seqüenciais constituem um domínio semântico categorial do tipo não-intercalação para sistemas reativos, comunicantes e concorrentes.É baseado em sistemas de transições etiquetados, inspirado em "Redes de Petri são Monóides" de Meseguer e Montanari, onde as operações de sincronização e encapsulação são funtoriais e as reificações constituem uma classe de morfismos especiais. Do que se tem conhecimento, é o primeiro modelo de concorrência a satisfazer a composicionalidade diagonal, ou seja, onde as reificações compõem (verticalmente) e distribuem-se sobre a composição paralela (verticalmente). Adjunções entre autômatos não-seqüenciais, redes de Petri e autômatos seqüenciais são introduzidas estendendo a abordagem de Winskel, Nielsen e Sassone onde é proposta uma classificação formal para modelos de concorrência. Dos passos que envolvem a passagem de um modelo para outro, pode-se inferir que os autômatos não-seqüenciais são mais concretos do que as redes de Petri e os autômatos seqüenciais. Para experimentar o domínio semântico proposto, é dada semântica a uma linguagem concorrente, baseada nos objetos, denominada Náutilus. Trata-se de uma versão simplificada e revisada da linguagem de especificação orientada aos objetos GNOME, onde são introduzidos algumas facilidades especiais, inspiradas no domínio semântico, como a reificação e a agregação. Neste contexto, a composicionalidade diagonal é uma propriedade essencial para dar a semântica. / Nonsequential automata constitute a non-interleaving categorial semantic domain for reactive, communicating and concurrent systems. It is based on labeled transition systems, inspired by Meseguer and Montanari's "Petri Nets are Monoids", where synchronization and encapsulation operations are functorial and a class of morphisms stands for reification. It is, for our knowledge, the first model for concurrency which satisfies the diagonal compositionality requirement, i. e., reifications compose (vertical) and distribute over the parallel composition (horizontal). Adjunctions between nonsequential automata, Petri nets and sequential automata are provided extending the approach of Winskel, Nielsen and Sassone where a scene for a formal classification of models for concurrency is set. The steps of abstraction involved in moving between models show that nonsequential automata are more concrete than Petri nets and sequential automata. To experiment with the proposed semantic domain, a semantics for a concurrent, object-based language named Nautilus is given. It is a simplified and revised version of the object-oriented specification language GNOME, introducing some special features inspired by the semantic domain such as reification and aggregation. The diagonal compositionality is an essential property to give semantics in this context.
|
Page generated in 0.0501 seconds