Tipos de provedores de teoremas automatizados


20

Estou aprendendo sozinho os provedores de teoremas automatizados / solucionadores de SMT / assistentes de prova e postar uma série de perguntas sobre o processo, começando aqui .

Quais são os provadores de teoremas automatizados relevantes? Encontrei uma revisão dos provedores de teoremas

Ainda está atual?

Quais ainda estão muito ativos, ou seja, quais são usados ​​atualmente além do grupo que o criou?

Encontre a próxima pergunta da série aqui .

Respostas:


15

A categorização nessa lista certamente ainda é atual.

Talvez tenha surgido uma nova categoria, a saber, linguagens de programação de tipo dependente . São provadores de teoremas essencialmente automatizados, onde o objetivo principal não é provar teoremas, mas programar. Devido à correspondência de Curry-Howard , esses dois conceitos estão fortemente interligados. O objetivo final dessas linguagens de programação é escrever programas que tenham garantias muito mais fortes do que as linguagens de programação comuns digitadas. As pessoas também as usam para provar o teorema. Alguns novos sistemas que se enquadram nessa categoria incluem Agda e Epigram. Uma das principais características dessas linguagens é que elas se esforçam muito para tornar mais fácil para os programadores definir famílias indutivas de tipos de dados. Um exemplo simples é um vetor, que depende de números naturais (definidos indutivamente).

Quanto a quais ainda são muito ativos, acho que todos são. Coq , Isabelle , Twelf e PVS são muito utilizados na comunidade de linguagens de programação. Maude é amplamente utilizado em sistemas de modelagem. (Pessoalmente, eu usei Coq e Maude .)

Eu nunca tinha ouvido falar de alguns deles. No pdf ao qual você vincula, há links para os provadores de teoremas. Alguns links são atuais, outros estão quebrados. Gandalf agora parece ser algum tipo de bruxo barbudo.

Os provadores de teoremas mencionados em "Uma revisão dos provedores de teoremas" são:

  • ALF : subsidiado pela ALFA, Coq e Agda.
  • ALFA : parece não ter mais suporte.
  • COQ : com suporte ativo.
  • MetaPRL : parece não ser mais suportado.
  • NuPRL : com suporte ativo.
  • HOL : suportado ativamente.
  • PVS : suportado ativamente.
  • Isabelle : ativamente apoiada.
  • DOZE : suporte ativo.
  • ACL2 : suporte ativo.
  • INKA : parece não ser mais suportado.
  • GANDALF : parece não ser mais suportado.
  • TPS : ainda pode estar ativo, mas possui apenas um pequeno número de seguidores.
  • OTTER : pode não ser mais suportado.
  • SETHEO : substituído por E-SETHEO, que parece não ser mais suportado.
  • SPASS : parece ainda estar ativo.
  • EQP : parece não ser mais suportado.
  • MAUDE : com suporte ativo.
  • OMEGA : parece não ser mais suportado.
  • Mizar : suportado ativamente.

Sem dúvida, há muitos novos provadores de teoremas automatizados que não foram mencionados nesta lista.

Para garantir a integridade, conforme sugerido por Raphael , existem provas de arquivamento de sites feitas usando várias ferramentas. Por exemplo:


2
Provavelmente é útil vincular a (listas de) provas em que as respectivas ferramentas foram usadas, por exemplo, Arquivo de Provas Formais para Isabelle.
Raphael

@ BuyCoder: Por algum motivo, suas adições foram removidas. Eu os adicionei de volta.
Dave Clarke

“Alguns novos sistemas que se enquadram nessa categoria incluem Agda e Epigram.”: Parece ter desaparecido. Existe um novo local para o Eprigram? Ou uma alternativa próxima?
Hibou57

1
“Quanto a quais ainda são muito ativos, acho que todos são. Coq, Isabelle, Twelf e PVS ”: sabe-se que o PVS possui bugs de solidez. Ao contrário de Isabelle e Coq, o PVS não segue a arquitetura do microcernel. Pesquise sobre o critério De Bruijn para saber por que ele é importante.
Hibou57

1
Junto a Agda e (? Extinto) Epigram, há os ATS linguagem de programação , que de acordo com a sua lista de discussão, parece ser-se ativo agora em 2014.
Hibou57
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.