# Fio de Ariadne (lógica)

O Fio de Ariadne, assim chamado devido à lenda de Ariadne, é o termo usado para descrever a resolução de um problema em que se podem usar diversas maneiras óbvias (como exemplo: um labirinto físico, um quebra-cabeça de lógica ou um dilema ético), através de uma aplicação exaustiva da lógica por todos os meios disponíveis. É o método singular utilizado que permite seguir completamente os vestígios das pistas ou assimilar gradativa e seguidamente uma série de verdades encontradas em um evento inesperado, ordenando a pesquisa, até que se atinja o ponto de vista final desejado. Este processo pode assumir o método de um registro mental, uma marcação física ou mesmo um debate filosófico.

## Implementação: como colocar em prática

O elemento chave para aplicar a linha de Ariadne a um problema é a criação e manutenção de um processo que permita regressar (ou fazer um backtracking), isto é, voltar a uma decisão anterior e tentar outras alternativas. Dado o registro, aplicando-se o algoritmo a seguir:
* A todo instante que há uma escolha a ser feita, escolha uma arbitrariamente daquelas não marcadas como fracassadas, e siga logicamente até onde possível.
* Se resultar em contradição, volta à última decisão feita, marque-a como fracassada, e tenta outra decisão do mesmo ponto. Caso nenhuma outra opção exista, volte até a uma existente no registro, marque o fracasso àquele nível, e prossiga.
Este algoritmo terminará ou achando uma solução ou marcando todas as escolhas iniciais como fracassadas; neste caso, não há solução alguma. Caso tenha se chegado a uma solução, ainda se faz necessário uma revisão por completo: pode-se regressar a alguma decisão anterior, marcada como bem sucedida, e continuar como se nenhuma solução fosse achada; o algoritmo irá esgotar todas as decisões e achará todas as soluções.

## Distinção de Tentativa-e-Erro

Os termos "Fio de Ariadne" e "Tentativa-e-Erro" são freqüentemente usados como sendo a mesma lógica, o que não é verdade. Distinguem-se de duas formas:
* O termo "Tentativa e Erro" sugere que cada "tentativa" rende um pouco de valor particular a ser estudado e melhorado, removendo "erros" de cada repetição até atingir um melhor qualidade de tentativas futuras. Já a linha de Ariadne não tem esse sistema metódico, e toma todas as decisões de forma arbitrária. Por exemplo, o método científico utiliza tentativas-e-erros; mas a solução de um quebra-cabeça faz-se através da linha de Ariadne.
* As realizações de tentativa-e-erro estão raramente preocupadas com quantas soluções podem existir para um problema, na verdade, assume freqüentemente só uma solução correta (como em uma fórmula científica). A linha de Ariadne não faz tal suposição, e é capaz de localizar todas as possíveis soluções para um problema puramente lógico.
Em resumo, tentativa-e-erro procura uma solução desejada; enquanto a linha de Ariadne esgota o espaço de procura por completo, e acha todas e quaisquer soluções. Cada um tem seus usos distintos e apropriados; mas podem ser empregados em conjunto, por exemplo: embora editar um artigo na Wikipedia é discutivelmente um processo de tentativa-e-erro (determinando como teoricamente se aproxima de um estado ideal), os históricos dos artigos provêem o registro para o qual a linha de Ariadne pode ser aplicada, podendo ser revertida uma edição prejudicial e restabelecendo o artigo anterior para a mais recente versão livre de erros, a partir da qual podem ser tentadas outras opções.

## Aplicações

Obviamente, a linha de Ariadne pode ser aplicada à solução de labirintos reais, da mesma maneira que a lenda; uma linha de verdade pode ser usada como o "registro" ou, então, um giz ou um marcador semelhante podem ser aplicados para etiquetar passagens. Se o labirinto está no papel, a linha pode bem ser um lápis.
Podem ser solucionados problemas de lógica de todas as naturezas pela linha de Ariadne, o labirinto é apenas um exemplo. Atualmente, a mais notável aplicação é a solução do quebra-cabeça Sudoku, usado para obter valores por celas não-solucionadas. O meio utilizado para se resolver um enigma pode variar amplamente, de um lápis a um programa de computador, mas todos realizam a mesma tarefa. (Note que: como a compilação da linha de Ariadne é um processo indutivo, e devido a falta de um estudo atual, é largamente visto com desagrado como um método de resolução, apenas sendo empregado como último recurso quando os métodos dedutivos falham).
A inteligência artificial é fortemente dependente na linha de Ariadne quando em jogadores virtuais, notavelmente em programas que jogam xadrez; os possíveis movimentos são as decisões; os jogos ganhos determinam as soluções, e jogos perdidos, os fracassos. Devido ao grande volume de processos executados na maioria dos jogos, quase todos os algoritmos não podem suportar aplicar a linha de Ariadne, completamente, em todo movimento, devido a restrições de tempo; portanto, trabalham em conjunto com um método heurístico que avalia o estado do jogo e limita uma busca em largura (ou breadth-first search) apenas àqueles que são mais provavelmente vantajosos, um processo de tentativa-e-erro.
Até mesmo circunstâncias onde o conceito de "solução" não é tão bem definido tiveram a "linha de Ariadne" aplicada a eles, como: navegar na Web, fazendo compreensão da lei de patente, e em filosofia. "Linha de Ariadne" é um nome popular para websites de muitos propósitos, mas principalmente para aqueles com característica de debate filosófico ou ético.