Novas técnicas de instanciação e produção de demonstrações para a resolução SMT

Detalhes bibliográficos
Autor(a) principal: Barbosa, Haniel Moreira
Data de Publicação: 2017
Tipo de documento: Tese
Idioma: por
Título da fonte: Repositório Institucional da UFRN
Texto Completo: https://repositorio.ufrn.br/jspui/handle/123456789/24497
Resumo: Em muitas aplicações de métodos formais, como verificação formal, síntese de programas, testes automáticos e análise de programas, é comum depender de solucionadores de satisfatibilidade módulo teorias (SMT) como backends para resolver automaticamente condições que precisam ser verificadas e fornecer certificados de seus resultados. Nesta tese, objetivamos melhorar a eficiência dos solucionadores SMT e aumentar sua confiabilidade. Nossa primeira contribuição é fornecer um arcabouço uniforme e eficiente para raciocinar com fórmulas quantificadas em solucionadores SMT, em que, geralmente, várias técnicas de instanciação são empregadas para lidar com quantificadores. Mostramos que as principais técnicas de instanciação podem ser lançadas neste arcabouço unificador para lidar com fórmulas quantificadas com igualdade e funções não interpretadas. O arcabouço baseia-se no problema de E-ground (dis)unificação, uma variação do problema clássico de E-unificação rígida. Apresentamos um cálculo correto e completo para resolver esse problema na prática: Fechamento de Congruência com Variáveis Livres (CCFV). Uma avaliação experimental é apresentada, na qual medimos o impacto das otimizações e técnicas de instanciação baseadas no CCFV nos solucionadores SMT veriT e CVC4. Mostramos que nossas implementações exibem melhorias em relação às abordagens de última geração em várias bibliotecas de referência, decorrentes de aplicações do mundo real. Nossa segunda contribuição é uma estrutura para o processamento de fórmulas ao mesmo tempo que produz demonstrações detalhadas. Nosso objetivo é aumentar a confiabilidade nos resultados de solucionadores SMT e sistemas de raciocínio automatizado similares, fornecendo justificativas que podem ser verificadas com eficiência de forma independente e para melhorar sua usabilidade por aplicativos externos. Os assistentes de demonstração, por exemplo, geralmente requerem a reconstrução da justificação fornecida pelo solucionador em uma determinada obrigação de prova. Os principais componentes da nossa estrutura de produção de demonstrações são um algoritmo genérico de recursão contextual e um conjunto extensível de regras de inferência. Clausificação, Skolemização, simplificações específicas de teorias e expansão das expressões "let" são exemplos dessa estrutura. Com estruturas de dados adequadas, a geração de demonstrações cria apenas uma sobrecarga de tempo linear, e as demonstrações podem ser verificadas em tempo linear. Também implementamos a abordagem em veriT. Isso nos permitiu simplificar drasticamente a base do código, aumentando o número de problemas para os quais demonstrações detalhadas podem ser produzidas.
id UFRN_5cf9fc53b06d41634700c6667d5abe1f
oai_identifier_str oai:https://repositorio.ufrn.br:123456789/24497
network_acronym_str UFRN
network_name_str Repositório Institucional da UFRN
repository_id_str
spelling Barbosa, Haniel Moreirahttps://orcid.org/0000-0003-0188-2300http://lattes.cnpq.br/6657126741011519http://lattes.cnpq.br/2985658685449858Reynolds, AndrewDubois, CatherineÁbrahám, ErikaAlmeida, João Marcos dehttps://orcid.org/0000-0003-2601-8164http://lattes.cnpq.br/3059324458238110Fontaine, PascalRümmer, PhilippMerz, StephanDeharbe, David Boris Paul2017-12-13T18:11:52Z2017-12-13T18:11:52Z2017-09-05BARBOSA, Haniel Moreira. Novas técnicas de instanciação e produção de demonstrações para a resolução SMT. 2017. 138f. Tese (Doutorado em Ciência da Computação) - Centro de Ciências Exatas e da Terra, Universidade Federal do Rio Grande do Norte, Natal, 2017.https://repositorio.ufrn.br/jspui/handle/123456789/24497Em muitas aplicações de métodos formais, como verificação formal, síntese de programas, testes automáticos e análise de programas, é comum depender de solucionadores de satisfatibilidade módulo teorias (SMT) como backends para resolver automaticamente condições que precisam ser verificadas e fornecer certificados de seus resultados. Nesta tese, objetivamos melhorar a eficiência dos solucionadores SMT e aumentar sua confiabilidade. Nossa primeira contribuição é fornecer um arcabouço uniforme e eficiente para raciocinar com fórmulas quantificadas em solucionadores SMT, em que, geralmente, várias técnicas de instanciação são empregadas para lidar com quantificadores. Mostramos que as principais técnicas de instanciação podem ser lançadas neste arcabouço unificador para lidar com fórmulas quantificadas com igualdade e funções não interpretadas. O arcabouço baseia-se no problema de E-ground (dis)unificação, uma variação do problema clássico de E-unificação rígida. Apresentamos um cálculo correto e completo para resolver esse problema na prática: Fechamento de Congruência com Variáveis Livres (CCFV). Uma avaliação experimental é apresentada, na qual medimos o impacto das otimizações e técnicas de instanciação baseadas no CCFV nos solucionadores SMT veriT e CVC4. Mostramos que nossas implementações exibem melhorias em relação às abordagens de última geração em várias bibliotecas de referência, decorrentes de aplicações do mundo real. Nossa segunda contribuição é uma estrutura para o processamento de fórmulas ao mesmo tempo que produz demonstrações detalhadas. Nosso objetivo é aumentar a confiabilidade nos resultados de solucionadores SMT e sistemas de raciocínio automatizado similares, fornecendo justificativas que podem ser verificadas com eficiência de forma independente e para melhorar sua usabilidade por aplicativos externos. Os assistentes de demonstração, por exemplo, geralmente requerem a reconstrução da justificação fornecida pelo solucionador em uma determinada obrigação de prova. Os principais componentes da nossa estrutura de produção de demonstrações são um algoritmo genérico de recursão contextual e um conjunto extensível de regras de inferência. Clausificação, Skolemização, simplificações específicas de teorias e expansão das expressões "let" são exemplos dessa estrutura. Com estruturas de dados adequadas, a geração de demonstrações cria apenas uma sobrecarga de tempo linear, e as demonstrações podem ser verificadas em tempo linear. Também implementamos a abordagem em veriT. Isso nos permitiu simplificar drasticamente a base do código, aumentando o número de problemas para os quais demonstrações detalhadas podem ser produzidas.In many formal methods applications it is common to rely on SMT solvers to automatically discharge conditions that need to be checked and provide certificates of their results. In this thesis we aim both to improve their efficiency of and to increase their reliability. Our first contribution is a uniform framework for reasoning with quantified formulas in SMT solvers, in which generally various instantiation techniques are employed. We show that the major instantiation techniques can be all cast in this unifying framework. Its basis is the problem of E-ground (dis)unification, a variation of the classic rigid E-unification problem. We introduce a decision procedure to solve this problem in practice: Congruence Closure with Free Variables (CCFV). We measure the impact of optimizations and instantiation techniques based on CCFV in the SMT solvers veriT and CVC4, showing that our implementations exhibit improvements over state-of-the-art approaches in several benchmark libraries stemming from real world applications. Our second contribution is a framework for processing formulas while producing detailed proofs. The main components of our proof producing framework are a generic contextual recursion algorithm and an extensible set of inference rules. With suitable data structures, proof generation creates only a linear-time overhead, and proofs can be checked in linear time. We also implemented the approach in veriT. This allowed us to dramatically simplify the code base while increasing the number of problems for which detailed proofs can be produced.porCNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::SISTEMAS DE COMPUTACAOInstanciação de quantificadoresProdução de demonstraçõesAutomatização de demonstraçõesResolução SMTVerificação formaNovas técnicas de instanciação e produção de demonstrações para a resolução SMTinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/doctoralThesisPROGRAMA DE PÓS-GRADUAÇÃO EM SISTEMAS E COMPUTAÇÃOUFRNBrasilinfo:eu-repo/semantics/openAccessreponame:Repositório Institucional da UFRNinstname:Universidade Federal do Rio Grande do Norte (UFRN)instacron:UFRNORIGINALHanielMoreiraBarbosa_TESE.pdfHanielMoreiraBarbosa_TESE.pdfapplication/pdf2255052https://repositorio.ufrn.br/bitstream/123456789/24497/1/HanielMoreiraBarbosa_TESE.pdf3afa79d6d77457424f15c83d543840fdMD51TEXTHanielMoreiraBarbosa_TESE.pdf.txtHanielMoreiraBarbosa_TESE.pdf.txtExtracted texttext/plain336747https://repositorio.ufrn.br/bitstream/123456789/24497/2/HanielMoreiraBarbosa_TESE.pdf.txt4efd0f9c233fce50d640995bac6fcea2MD52THUMBNAILHanielMoreiraBarbosa_TESE.pdf.jpgHanielMoreiraBarbosa_TESE.pdf.jpgIM Thumbnailimage/jpeg1710https://repositorio.ufrn.br/bitstream/123456789/24497/3/HanielMoreiraBarbosa_TESE.pdf.jpgf3bebbc6a68e75a7ccdda81d2f083038MD53123456789/244972022-05-20 17:32:24.572oai:https://repositorio.ufrn.br:123456789/24497Repositório de PublicaçõesPUBhttp://repositorio.ufrn.br/oai/opendoar:2022-05-20T20:32:24Repositório Institucional da UFRN - Universidade Federal do Rio Grande do Norte (UFRN)false
dc.title.pt_BR.fl_str_mv Novas técnicas de instanciação e produção de demonstrações para a resolução SMT
title Novas técnicas de instanciação e produção de demonstrações para a resolução SMT
spellingShingle Novas técnicas de instanciação e produção de demonstrações para a resolução SMT
Barbosa, Haniel Moreira
CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::SISTEMAS DE COMPUTACAO
Instanciação de quantificadores
Produção de demonstrações
Automatização de demonstrações
Resolução SMT
Verificação forma
title_short Novas técnicas de instanciação e produção de demonstrações para a resolução SMT
title_full Novas técnicas de instanciação e produção de demonstrações para a resolução SMT
title_fullStr Novas técnicas de instanciação e produção de demonstrações para a resolução SMT
title_full_unstemmed Novas técnicas de instanciação e produção de demonstrações para a resolução SMT
title_sort Novas técnicas de instanciação e produção de demonstrações para a resolução SMT
author Barbosa, Haniel Moreira
author_facet Barbosa, Haniel Moreira
author_role author
dc.contributor.authorID.none.fl_str_mv https://orcid.org/0000-0003-0188-2300
dc.contributor.authorLattes.pt_BR.fl_str_mv http://lattes.cnpq.br/6657126741011519
dc.contributor.advisorLattes.pt_BR.fl_str_mv http://lattes.cnpq.br/2985658685449858
dc.contributor.referees1.none.fl_str_mv Reynolds, Andrew
dc.contributor.referees2.none.fl_str_mv Dubois, Catherine
dc.contributor.referees3.none.fl_str_mv Ábrahám, Erika
dc.contributor.referees4.none.fl_str_mv Almeida, João Marcos de
dc.contributor.referees4ID.none.fl_str_mv https://orcid.org/0000-0003-2601-8164
dc.contributor.referees4Lattes.pt_BR.fl_str_mv http://lattes.cnpq.br/3059324458238110
dc.contributor.referees5.none.fl_str_mv Fontaine, Pascal
dc.contributor.referees6.none.fl_str_mv Rümmer, Philipp
dc.contributor.referees7.pt_BR.fl_str_mv Merz, Stephan
dc.contributor.author.fl_str_mv Barbosa, Haniel Moreira
dc.contributor.advisor1.fl_str_mv Deharbe, David Boris Paul
contributor_str_mv Deharbe, David Boris Paul
dc.subject.cnpq.fl_str_mv CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::SISTEMAS DE COMPUTACAO
topic CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::SISTEMAS DE COMPUTACAO
Instanciação de quantificadores
Produção de demonstrações
Automatização de demonstrações
Resolução SMT
Verificação forma
dc.subject.por.fl_str_mv Instanciação de quantificadores
Produção de demonstrações
Automatização de demonstrações
Resolução SMT
Verificação forma
description Em muitas aplicações de métodos formais, como verificação formal, síntese de programas, testes automáticos e análise de programas, é comum depender de solucionadores de satisfatibilidade módulo teorias (SMT) como backends para resolver automaticamente condições que precisam ser verificadas e fornecer certificados de seus resultados. Nesta tese, objetivamos melhorar a eficiência dos solucionadores SMT e aumentar sua confiabilidade. Nossa primeira contribuição é fornecer um arcabouço uniforme e eficiente para raciocinar com fórmulas quantificadas em solucionadores SMT, em que, geralmente, várias técnicas de instanciação são empregadas para lidar com quantificadores. Mostramos que as principais técnicas de instanciação podem ser lançadas neste arcabouço unificador para lidar com fórmulas quantificadas com igualdade e funções não interpretadas. O arcabouço baseia-se no problema de E-ground (dis)unificação, uma variação do problema clássico de E-unificação rígida. Apresentamos um cálculo correto e completo para resolver esse problema na prática: Fechamento de Congruência com Variáveis Livres (CCFV). Uma avaliação experimental é apresentada, na qual medimos o impacto das otimizações e técnicas de instanciação baseadas no CCFV nos solucionadores SMT veriT e CVC4. Mostramos que nossas implementações exibem melhorias em relação às abordagens de última geração em várias bibliotecas de referência, decorrentes de aplicações do mundo real. Nossa segunda contribuição é uma estrutura para o processamento de fórmulas ao mesmo tempo que produz demonstrações detalhadas. Nosso objetivo é aumentar a confiabilidade nos resultados de solucionadores SMT e sistemas de raciocínio automatizado similares, fornecendo justificativas que podem ser verificadas com eficiência de forma independente e para melhorar sua usabilidade por aplicativos externos. Os assistentes de demonstração, por exemplo, geralmente requerem a reconstrução da justificação fornecida pelo solucionador em uma determinada obrigação de prova. Os principais componentes da nossa estrutura de produção de demonstrações são um algoritmo genérico de recursão contextual e um conjunto extensível de regras de inferência. Clausificação, Skolemização, simplificações específicas de teorias e expansão das expressões "let" são exemplos dessa estrutura. Com estruturas de dados adequadas, a geração de demonstrações cria apenas uma sobrecarga de tempo linear, e as demonstrações podem ser verificadas em tempo linear. Também implementamos a abordagem em veriT. Isso nos permitiu simplificar drasticamente a base do código, aumentando o número de problemas para os quais demonstrações detalhadas podem ser produzidas.
publishDate 2017
dc.date.accessioned.fl_str_mv 2017-12-13T18:11:52Z
dc.date.available.fl_str_mv 2017-12-13T18:11:52Z
dc.date.issued.fl_str_mv 2017-09-05
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/doctoralThesis
format doctoralThesis
status_str publishedVersion
dc.identifier.citation.fl_str_mv BARBOSA, Haniel Moreira. Novas técnicas de instanciação e produção de demonstrações para a resolução SMT. 2017. 138f. Tese (Doutorado em Ciência da Computação) - Centro de Ciências Exatas e da Terra, Universidade Federal do Rio Grande do Norte, Natal, 2017.
dc.identifier.uri.fl_str_mv https://repositorio.ufrn.br/jspui/handle/123456789/24497
identifier_str_mv BARBOSA, Haniel Moreira. Novas técnicas de instanciação e produção de demonstrações para a resolução SMT. 2017. 138f. Tese (Doutorado em Ciência da Computação) - Centro de Ciências Exatas e da Terra, Universidade Federal do Rio Grande do Norte, Natal, 2017.
url https://repositorio.ufrn.br/jspui/handle/123456789/24497
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.publisher.program.fl_str_mv PROGRAMA DE PÓS-GRADUAÇÃO EM SISTEMAS E COMPUTAÇÃO
dc.publisher.initials.fl_str_mv UFRN
dc.publisher.country.fl_str_mv Brasil
dc.source.none.fl_str_mv reponame:Repositório Institucional da UFRN
instname:Universidade Federal do Rio Grande do Norte (UFRN)
instacron:UFRN
instname_str Universidade Federal do Rio Grande do Norte (UFRN)
instacron_str UFRN
institution UFRN
reponame_str Repositório Institucional da UFRN
collection Repositório Institucional da UFRN
bitstream.url.fl_str_mv https://repositorio.ufrn.br/bitstream/123456789/24497/1/HanielMoreiraBarbosa_TESE.pdf
https://repositorio.ufrn.br/bitstream/123456789/24497/2/HanielMoreiraBarbosa_TESE.pdf.txt
https://repositorio.ufrn.br/bitstream/123456789/24497/3/HanielMoreiraBarbosa_TESE.pdf.jpg
bitstream.checksum.fl_str_mv 3afa79d6d77457424f15c83d543840fd
4efd0f9c233fce50d640995bac6fcea2
f3bebbc6a68e75a7ccdda81d2f083038
bitstream.checksumAlgorithm.fl_str_mv MD5
MD5
MD5
repository.name.fl_str_mv Repositório Institucional da UFRN - Universidade Federal do Rio Grande do Norte (UFRN)
repository.mail.fl_str_mv
_version_ 1814833012722892800