Utilize este identificador para referenciar este registo:
https://hdl.handle.net/1822/91568
Registo completo
Campo DC | Valor | Idioma |
---|---|---|
dc.contributor.advisor | Neves, Renato Jorge Araújo | por |
dc.contributor.author | Carvalho, Rui Carlos Azevedo | por |
dc.date.accessioned | 2024-05-28T08:32:28Z | - |
dc.date.available | 2024-05-28T08:32:28Z | - |
dc.date.issued | 2023-09-07 | - |
dc.date.submitted | 2023-08 | - |
dc.identifier.uri | https://hdl.handle.net/1822/91568 | - |
dc.description | Dissertação de mestrado em Informatics Engineering | por |
dc.description.abstract | In this dissertation we cover the implementation in Haskell of an interpreter for a while-language capable of handling both hybrid and probabilistic effects. The interpreter is supported by both operational and denotational semantics which were devised in this dissertation as well. We started by studying a pre-existing syntax and operational semantics of a programming language capable of performing wait calls and probabilistic choices through a random-number-generator. We then redefined this semantics to another one that is more suitable for statistical analysis in programming. Next we performed another iteration over these two semantics, more specifically we extended them to support full hybrid behaviour, traditionally used to encode interactions between digital devices and physical processes such as movement and time. We also devised two denotational semantics corresponding to the operational semantics mentioned before, as a way of providing a mathematical abstraction, through the use of monads, to the programs of our language. Not only this, we also implemented a domain specific language embedded into Haskell, which thus provides to the hybrid programmer all the expressive power that Haskell offers in addition to a palette of combinators designed specifically for the hybrid domain. Such gives rise to an expressivity power much greater than what the aforementioned while-language can provide. Lastly, we presented and analysed several deterministic hybrid programs, such as cruise controllers, and added subtle probabilistic elements to them that reflect certain real-word scenarios. Such an addition lead from one possible execution to several possible executions; and most notably some of the latter revealed safety issues introduced by the probabilistic elements. All in all this dissertation has both theoretical and practical contributions that form a stepping stone towards a rigorous engineering discipline of probabilistic hybrid systems. | por |
dc.description.abstract | Através desta dissertação descrevemos uma implementação em Haskell de um interpretador para uma linguage while capaz de lidar tanto com o efeito híbrido como com o efeito probabilístico. O interpretador é suportado por semânticas operacionais e denotacionais que foram definidas também nesta dissertação. Primeiramente, abordamos uma sintaxe e semântica operacional pré-existentes de uma linguagem capaz de realizar chamadas de espera e escolhas probabilísticas, através de um gerador de números aleatórios. De seguida, redefinimos esta semântica numa outra que é mais apropriada para a análise estatística dos programas. Consequentemente, realizamos uma outra iteração sobre estas semânticas sendo que as estendemos para suportarem totalmente o comportamento híbrido, tradicionalmente utilizado para representar interações entre dispositivos digitais e físicos, tais como movimento e tempo. Criámos também duas semânticas denotacionais, correspondentes às semânticas anteriores, de modo a fornecer uma abstração matemática, através da utilização de mónadas, para os possíveis programas da nossa linguagem. Para além disto, foi implementada uma domain specific language incorporada em Haskell, o que providencia ao programador híbrido todo o poder que o Haskell oferece conjugado com combinadores definidos especialmente para o domínio híbrido. Tal dá origem a um poder expressivo muito maior do que aquele que a linguagem while supramencionada pode providenciar. Por fim, abordaram-se vários exemplos de programas híbridos determinísticos, tais como sistemas de cruise control, aos quais foram adicionados elementos probabilísticos subtis que refletem cenários do mundo real. Esta adição fez com que fossemos de uma execução para uma variedade de execuções possíveis; e mais notávelmente alguns dos sistemas revelaram problemas relacionados com a segurança quando os elementos probabílisticos foram introduzidos. Em suma, esta dissertação apresenta contribuições teóricas e práticas que se traduzem num passo em direção a uma dísciplina de engenharia rigorosa sobre sístemas híbridos probabilísticos. | por |
dc.description.sponsorship | This work was financed by National Funds through FCT - Fundação para a Ciência e a Tecnologia, I.P. (Portuguese Foundation for Science and Technology) within the project IBEX, with reference PTDC/CCI-COM/4280/2021. | por |
dc.description.sponsorship | The author was also financed by National Funds through the Portuguese funding agency, FCT - Fundação para a Ciência e a Tecnologia, within project LA/P/0063/2020. | por |
dc.language.iso | eng | por |
dc.relation | info:eu-repo/grantAgreement/FCT/3599-PPCDT/PTDC%2FCCI-COM%2F4280%2F2021/PT | por |
dc.relation | LA/P/0063/2020 | por |
dc.rights | openAccess | por |
dc.rights.uri | http://creativecommons.org/licenses/by/4.0/ | por |
dc.subject | Formal methods | por |
dc.subject | Hybrid systems | por |
dc.subject | Cyber-physical systems | por |
dc.subject | Theory of Programming Languages | por |
dc.subject | Functional programming | por |
dc.subject | Métodos formais | por |
dc.subject | Sistemas híbridos | por |
dc.subject | Sistemas ciber-físicos | por |
dc.subject | Teoria das Linguagens de Programação | por |
dc.subject | Programação funcional | por |
dc.title | Adding uncertainty to real-time programming | por |
dc.type | masterThesis | eng |
dc.identifier.tid | 203561775 | por |
thesis.degree.grantor | Universidade do Minho | por |
sdum.degree.grade | 19 valores | por |
sdum.uoei | Escola de Engenharia | por |
dc.subject.fos | Engenharia e Tecnologia::Engenharia Eletrotécnica, Eletrónica e Informática | por |
Aparece nas coleções: | BUM - Dissertações de Mestrado DI - Dissertações de Mestrado |
Ficheiros deste registo:
Ficheiro | Descrição | Tamanho | Formato | |
---|---|---|---|---|
Rui Carlos Azevedo Carvalho.pdf | Dissertação de mestrado | 3,38 MB | Adobe PDF | Ver/Abrir |
Este trabalho está licenciado sob uma Licença Creative Commons