-
Notifications
You must be signed in to change notification settings - Fork 6
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
função para medir tamanho de fórmula #23
Comments
Enviei um pull request, juntamente com o Rafael @rkatz36368. |
versão inicial ainda não testada em 5d6a10c |
versão com recursão de cauda em 6903ec2 |
@paulodt tente explicar sua idéia neste issue antes de reimplementar. Descreva como vc espera que sua função trabalhe com uma dada entrada, o passo-a-passo. |
Passo a passo: a função avalia o primeiro elemento da fórmula. Caso ele seja atômico, ela testa se ele está contido na lista dos conectivos binários (and or implies equiv). Se estiver, incrementa o contador (n) em 1 unidade e continua a recursão em cauda. Caso não, ele continua a recursão sem incrementar. Porém, se o elemento não for atômico, há o problema: em quanto eu devo incrementar o contador em quantas unidades? Para isso, a forma mais simples que encontrei foi aplicar a recursão, em cauda, sobre essa lista. O valor que a recursão retornar eu adiciono ao contador e continuo minha recursão principal. |
Fechar quando tivermos alguns testes, vide #37 |
Testes com casos que antes causavam ou causariam problema e agora estão solucionados: LENGTH-FORM KRR-USER[12]> (run! 'length-form) Running test LENGTH-FORM .... NIL" |
O |
Seguindo as idéia de http://link.springer.com/article/10.1007/BF01531029. podemos implementar uma função que calcula o
length
de uma formula:"By the length of a formula we mean the number of binary connectives in the formula..."
The text was updated successfully, but these errors were encountered: