Primeiramente, gostaria de agradecer aos meus incríveis pais, Ubijacira e Marcos, que nunca mediram esforços para me oferecer boas condições de estudo e de vida. Eu amo vocês incondicionalmente e serei eternamente grato por tudo que fizeram e que fazem por mim. Saibam que tudo que conquistei foi para vocês e por causa de vocês.Em seguida, agradeço a todos meus familiares, em especial aos meus avós maternos Wilson e Maria, e meus avós paternos João (in memoriam) e Maria, pelo amor, apoio e incentivo que sempre recebi. Agradeço também à minha companheira, Camila, que tem sido meu braço direito há tanto tempo que já não consigo contar. Eu te amo e te admiro por ser uma pessoa tão extraordinária.Aos meus mentores Prof. Rezende e Prof. Cid, expresso o meu mais sincero agradecimento por todo o conhecimento que compartilharam comigo, pelo zelo e paciência e pela confiança que em mim depositaram. Também agradeço ao Prof. Usberti por suas contribuições e solicitude e ao Prof. Breno Piva por ter me conduzido nos primeiros passos da minha trajetória acadêmica.Agradeço aos meus queridos Jônatas, Letícya, Alisson e Hugo pela amizade, companheirismo e por nossos episódios de diversão; ao senhor Natanael por ser tão prestativo e compadecido para com a minha pessoa; e aos meus colegas do LOCo, Elisa, Ana, Renato, Fred, Deyvisson, Alonso, Enoque, Ota, João, Vitor, Welverton e Olímpio pela parceria, ajuda e pelos bons momentos.Agradeço aos servidores e demais professores do Instituto de Computação da Unicamp, que fazem do IC uma instituição acadêmica de excelência.Finalmente, agradeço ao Conselho Nacional de Desenvolvimento Científico e Tecnológico -CNPq (processo 130838/2019-5) e à Fundação de Amparo à Pesquisa do Estado de São Paulo -FAPESP (processo 2019/22297-1) pelo apoio financeiro que tornou possível a realização dessa pesquisa.