Abordagem algébrica à igualdade observacional

Detalhes bibliográficos
Autor(a) principal: Madeira, Alexandre Leite de Castro
Data de Publicação: 2008
Tipo de documento: Dissertação
Idioma: por
Título da fonte: Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
Texto Completo: http://hdl.handle.net/10773/2907
Resumo: A especificação algébrica de sistemas de software é um importante tópico dos denominados métodos formais de desenvolvimento de software. Neste contexto, modelam-se programas por álgebras e as suas computações por termos, recorrendo-se aos resultados da Álgebra Universal e da Lógica, como ferramentas de verificação e apoio ao processo de implementação. Em grande parte dos trabalhos sobre o tema presentes na literatura, usa-se a Lógica Equacional como lógica de suporte a estes processos. Contudo, esta lógica mostra-se limitada para a especificação de programas Orientados a Objectos, nomeadamente na especificação de programas com dados encapsulados. A separação entre os aspectos internos e externos do sistema induz uma nova perspectiva do conceito de modelação, segundo a qual, um objecto se considera como sendo uma realização correcta do sistema, se satisfaz os seus requisitos observacionalmente, isto é, se os resultados das computações sobre si executadas satisfazem esses requisitos, podendo não os satisfazer em sentido estrito. Seguindo esta linha de ideias, dois objectos de software são considerados equivalentes quando se comportam da mesma forma perante todas as possíveis computações. Este paradigma é denominado por Abordagem Observacional de Sistemas. Uma forma de adequar a Lógica Equacional a esta abordagem, é pela substituição da igualdade estrita pela relação de Igualdade Observacional, segundo a qual dois elementos se consideram iguais quando se comportam da mesma forma perante qualquer computação, isto é, se produzem os mesmos outputs perante as mesmas computações. Neste trabalho estuda-se a abordagem observacional de sistemas segundo diferentes grupos de investigação, com especial atenção aos trabalhos da Lógica Escondida (por Goguen-Rosu), Lógica Comportamental e Observacional (por Bidoit-Hennicker) e da Lógica Algébrica (por Pigozzi- Martins). Um ponto central do texto é a generalização do processo de desenvolvimento de software por Refinamento Passo-a-Passo a este paradigma. Aprofundam-se aqui algumas variantes deste tópico, incluindo o caso onde se admitem encapsulamentos e desencapsulamentos de dados durante o processo de refinamento. Numa primeira fase do texto o assunto é apresentado ao nível mais geral das especificações algébricas estruturadas (e não exclusivamente do caso das especificações flat) e das igualdades comportamentais (congruências parciais arbitrárias). ABSTRACT: The algebraic specification of software systems is an important topic of socalled formal methods of software development. In this context, programmes are modelled by algebras and computations executed over them by terms, using up the results from Universal Algebra and Logic, as verification and support tools for the implementation process. In a large majority of the works about this subject, it uses the Equational Logic as support logic for these processes. However, this logic is too restrictive for the specification of objectoriented programs, namely, in the programs specification with encapsulated data. The split between the internal and external aspects of the system, induces a new perspective of the modelling concept, whereby an object is considered a correct realization of the system if satisfies observationally their requirements, that is, if the results of computations over it executed satisfies these requirements and being able not to satisfy them in the strict sense. Following this principle, two software objects are considered equivalent when behave the same way at all possible computations. This paradigm is called Observational Approach of Systems. One way to adjust the Equational Logic to the observational approach is by replacing the strict equality by the relation of Observational Equality, according to which two elements are considered equal when behave the same way at the same computations, i.e., if they produce the same outputs before the same computations. We follow this approach according to different research groups, with special attention to the work of Behavioural and Observational Logic (by Bidoit- Hennicker), the Hidden Logic (by Goguen-Rosu) and Abstract Algebraic Logic (by Pigozzi-Martins). A central point of the text is the generalization of the software development process by stepwise refinement to this paradigm. Here some variants of this topic are explored including the case where encapsulated and desencapsulated data are allowed during the refinement process. In a first stage of the text, the subject is presented to a more general level of structured specifications (and not exclusively the case of flat specifications) and the Behavioural Equalities (arbitrary partial congruence).
id RCAP_30cfbb291a442d6cd4b5051bc95014f5
oai_identifier_str oai:ria.ua.pt:10773/2907
network_acronym_str RCAP
network_name_str Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
repository_id_str 7160
spelling Abordagem algébrica à igualdade observacionalMatemáticaComputação matemáticaÁlgebra universalLógica simbólica e matemáticaDesenvolvimento de softwareA especificação algébrica de sistemas de software é um importante tópico dos denominados métodos formais de desenvolvimento de software. Neste contexto, modelam-se programas por álgebras e as suas computações por termos, recorrendo-se aos resultados da Álgebra Universal e da Lógica, como ferramentas de verificação e apoio ao processo de implementação. Em grande parte dos trabalhos sobre o tema presentes na literatura, usa-se a Lógica Equacional como lógica de suporte a estes processos. Contudo, esta lógica mostra-se limitada para a especificação de programas Orientados a Objectos, nomeadamente na especificação de programas com dados encapsulados. A separação entre os aspectos internos e externos do sistema induz uma nova perspectiva do conceito de modelação, segundo a qual, um objecto se considera como sendo uma realização correcta do sistema, se satisfaz os seus requisitos observacionalmente, isto é, se os resultados das computações sobre si executadas satisfazem esses requisitos, podendo não os satisfazer em sentido estrito. Seguindo esta linha de ideias, dois objectos de software são considerados equivalentes quando se comportam da mesma forma perante todas as possíveis computações. Este paradigma é denominado por Abordagem Observacional de Sistemas. Uma forma de adequar a Lógica Equacional a esta abordagem, é pela substituição da igualdade estrita pela relação de Igualdade Observacional, segundo a qual dois elementos se consideram iguais quando se comportam da mesma forma perante qualquer computação, isto é, se produzem os mesmos outputs perante as mesmas computações. Neste trabalho estuda-se a abordagem observacional de sistemas segundo diferentes grupos de investigação, com especial atenção aos trabalhos da Lógica Escondida (por Goguen-Rosu), Lógica Comportamental e Observacional (por Bidoit-Hennicker) e da Lógica Algébrica (por Pigozzi- Martins). Um ponto central do texto é a generalização do processo de desenvolvimento de software por Refinamento Passo-a-Passo a este paradigma. Aprofundam-se aqui algumas variantes deste tópico, incluindo o caso onde se admitem encapsulamentos e desencapsulamentos de dados durante o processo de refinamento. Numa primeira fase do texto o assunto é apresentado ao nível mais geral das especificações algébricas estruturadas (e não exclusivamente do caso das especificações flat) e das igualdades comportamentais (congruências parciais arbitrárias). ABSTRACT: The algebraic specification of software systems is an important topic of socalled formal methods of software development. In this context, programmes are modelled by algebras and computations executed over them by terms, using up the results from Universal Algebra and Logic, as verification and support tools for the implementation process. In a large majority of the works about this subject, it uses the Equational Logic as support logic for these processes. However, this logic is too restrictive for the specification of objectoriented programs, namely, in the programs specification with encapsulated data. The split between the internal and external aspects of the system, induces a new perspective of the modelling concept, whereby an object is considered a correct realization of the system if satisfies observationally their requirements, that is, if the results of computations over it executed satisfies these requirements and being able not to satisfy them in the strict sense. Following this principle, two software objects are considered equivalent when behave the same way at all possible computations. This paradigm is called Observational Approach of Systems. One way to adjust the Equational Logic to the observational approach is by replacing the strict equality by the relation of Observational Equality, according to which two elements are considered equal when behave the same way at the same computations, i.e., if they produce the same outputs before the same computations. We follow this approach according to different research groups, with special attention to the work of Behavioural and Observational Logic (by Bidoit- Hennicker), the Hidden Logic (by Goguen-Rosu) and Abstract Algebraic Logic (by Pigozzi-Martins). A central point of the text is the generalization of the software development process by stepwise refinement to this paradigm. Here some variants of this topic are explored including the case where encapsulated and desencapsulated data are allowed during the refinement process. In a first stage of the text, the subject is presented to a more general level of structured specifications (and not exclusively the case of flat specifications) and the Behavioural Equalities (arbitrary partial congruence).Universidade de Aveiro2011-04-19T14:29:54Z2008-01-01T00:00:00Z2008info:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisapplication/pdfhttp://hdl.handle.net/10773/2907porMadeira, Alexandre Leite de Castroinfo:eu-repo/semantics/openAccessreponame:Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)instname:Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informaçãoinstacron:RCAAP2024-02-22T11:01:27Zoai:ria.ua.pt:10773/2907Portal AgregadorONGhttps://www.rcaap.pt/oai/openaireopendoar:71602024-03-20T02:41:13.657673Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) - Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informaçãofalse
dc.title.none.fl_str_mv Abordagem algébrica à igualdade observacional
title Abordagem algébrica à igualdade observacional
spellingShingle Abordagem algébrica à igualdade observacional
Madeira, Alexandre Leite de Castro
Matemática
Computação matemática
Álgebra universal
Lógica simbólica e matemática
Desenvolvimento de software
title_short Abordagem algébrica à igualdade observacional
title_full Abordagem algébrica à igualdade observacional
title_fullStr Abordagem algébrica à igualdade observacional
title_full_unstemmed Abordagem algébrica à igualdade observacional
title_sort Abordagem algébrica à igualdade observacional
author Madeira, Alexandre Leite de Castro
author_facet Madeira, Alexandre Leite de Castro
author_role author
dc.contributor.author.fl_str_mv Madeira, Alexandre Leite de Castro
dc.subject.por.fl_str_mv Matemática
Computação matemática
Álgebra universal
Lógica simbólica e matemática
Desenvolvimento de software
topic Matemática
Computação matemática
Álgebra universal
Lógica simbólica e matemática
Desenvolvimento de software
description A especificação algébrica de sistemas de software é um importante tópico dos denominados métodos formais de desenvolvimento de software. Neste contexto, modelam-se programas por álgebras e as suas computações por termos, recorrendo-se aos resultados da Álgebra Universal e da Lógica, como ferramentas de verificação e apoio ao processo de implementação. Em grande parte dos trabalhos sobre o tema presentes na literatura, usa-se a Lógica Equacional como lógica de suporte a estes processos. Contudo, esta lógica mostra-se limitada para a especificação de programas Orientados a Objectos, nomeadamente na especificação de programas com dados encapsulados. A separação entre os aspectos internos e externos do sistema induz uma nova perspectiva do conceito de modelação, segundo a qual, um objecto se considera como sendo uma realização correcta do sistema, se satisfaz os seus requisitos observacionalmente, isto é, se os resultados das computações sobre si executadas satisfazem esses requisitos, podendo não os satisfazer em sentido estrito. Seguindo esta linha de ideias, dois objectos de software são considerados equivalentes quando se comportam da mesma forma perante todas as possíveis computações. Este paradigma é denominado por Abordagem Observacional de Sistemas. Uma forma de adequar a Lógica Equacional a esta abordagem, é pela substituição da igualdade estrita pela relação de Igualdade Observacional, segundo a qual dois elementos se consideram iguais quando se comportam da mesma forma perante qualquer computação, isto é, se produzem os mesmos outputs perante as mesmas computações. Neste trabalho estuda-se a abordagem observacional de sistemas segundo diferentes grupos de investigação, com especial atenção aos trabalhos da Lógica Escondida (por Goguen-Rosu), Lógica Comportamental e Observacional (por Bidoit-Hennicker) e da Lógica Algébrica (por Pigozzi- Martins). Um ponto central do texto é a generalização do processo de desenvolvimento de software por Refinamento Passo-a-Passo a este paradigma. Aprofundam-se aqui algumas variantes deste tópico, incluindo o caso onde se admitem encapsulamentos e desencapsulamentos de dados durante o processo de refinamento. Numa primeira fase do texto o assunto é apresentado ao nível mais geral das especificações algébricas estruturadas (e não exclusivamente do caso das especificações flat) e das igualdades comportamentais (congruências parciais arbitrárias). ABSTRACT: The algebraic specification of software systems is an important topic of socalled formal methods of software development. In this context, programmes are modelled by algebras and computations executed over them by terms, using up the results from Universal Algebra and Logic, as verification and support tools for the implementation process. In a large majority of the works about this subject, it uses the Equational Logic as support logic for these processes. However, this logic is too restrictive for the specification of objectoriented programs, namely, in the programs specification with encapsulated data. The split between the internal and external aspects of the system, induces a new perspective of the modelling concept, whereby an object is considered a correct realization of the system if satisfies observationally their requirements, that is, if the results of computations over it executed satisfies these requirements and being able not to satisfy them in the strict sense. Following this principle, two software objects are considered equivalent when behave the same way at all possible computations. This paradigm is called Observational Approach of Systems. One way to adjust the Equational Logic to the observational approach is by replacing the strict equality by the relation of Observational Equality, according to which two elements are considered equal when behave the same way at the same computations, i.e., if they produce the same outputs before the same computations. We follow this approach according to different research groups, with special attention to the work of Behavioural and Observational Logic (by Bidoit- Hennicker), the Hidden Logic (by Goguen-Rosu) and Abstract Algebraic Logic (by Pigozzi-Martins). A central point of the text is the generalization of the software development process by stepwise refinement to this paradigm. Here some variants of this topic are explored including the case where encapsulated and desencapsulated data are allowed during the refinement process. In a first stage of the text, the subject is presented to a more general level of structured specifications (and not exclusively the case of flat specifications) and the Behavioural Equalities (arbitrary partial congruence).
publishDate 2008
dc.date.none.fl_str_mv 2008-01-01T00:00:00Z
2008
2011-04-19T14:29:54Z
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/masterThesis
format masterThesis
status_str publishedVersion
dc.identifier.uri.fl_str_mv http://hdl.handle.net/10773/2907
url http://hdl.handle.net/10773/2907
dc.language.iso.fl_str_mv por
language por
dc.rights.driver.fl_str_mv info:eu-repo/semantics/openAccess
eu_rights_str_mv openAccess
dc.format.none.fl_str_mv application/pdf
dc.publisher.none.fl_str_mv Universidade de Aveiro
publisher.none.fl_str_mv Universidade de Aveiro
dc.source.none.fl_str_mv reponame:Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
instname:Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação
instacron:RCAAP
instname_str Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação
instacron_str RCAAP
institution RCAAP
reponame_str Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
collection Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
repository.name.fl_str_mv Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) - Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação
repository.mail.fl_str_mv
_version_ 1799137460560592896