Tese
Reificação de objetos concorrentes
Reification of concurrent objects
Autor
Menezes, Paulo Fernando Blauth
Resumen
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.