O algoritmo GSAT é, em grande parte, direto: você obtém uma fórmula na forma normal conjuntiva e inverte os literais das cláusulas até encontrar uma solução que satisfaça a fórmula ou atingir o limite max_tries / max_flips e não encontra solução. Estou implementando o seguinte...