Lògica Computacional - 20360
4 de Febrer del 2002

  1. Donat l'enunciat: "Cap ànima que vola, arribarà al horizon", en CP1 la/les formalizació(ns) sera(n):
     x ( vola(x) ^ arriba_horizon(x) )
     x ( vola(x) ^ arriba_horizon(x) )
     x ( vola(x) -> arriba_horizon(x) )
       a) y d)
       No contesto...
 
  2. Donat el seguent programa en Prolog:

p(X):-p(Y). p(X):-p(Z). p(Y).

i la pregunta:

?-p(Y).

l'arrel de l'arbre de derivacions tindrà:
     una branca cap els seus fills
     tres branques cap els seus fills
     dues branques cap els seus fills
       cap de les anteriors
       No contesto...
 
  3. Donat el programa en Prolog:

sort([L],[L]).
sort(L,[X,R1|R]):-...
names([[r,a,u,l],[a,l,i,c,i,a],[a,r,t,u,r]]).

i davant la questió:

?-names(M),sort(M,[X,[a,r,t,u,r]|P])

s'unificarà amb alguna expressió E2 de les clàusules. Determina E2 i respòn:
     E1 és més general que E2
     E2 és la IMG de E1
     E1 és la UMG de E2
       Són unificables
       No contesto...
 
  4. Determina la resposta correcta:
     pxp(x) es una fórmula de CP1
     p(t), on t és un terme, és una fórmula de CP0
     xyp(x,y) és semànticament equivalent a yxp(x,y)
       Les respostes anteriors són falses
       No contesto...
 
  5. El enunciat Si plou, em mullo. Per tant, si no plou, no em mullo es formalitza com:
     plou -> mullo plou -> mullo
     plou mullo -> plou mullo
     plou -> mullo plou -> mullo
       Totes les anteriors són falses
       No contesto...
 
  6. Donat el predicat seguent:

nat(X).
nat(Y):-Y is X+1, nat(X).
     És incorrecte perquè té un nombre infinit de solucions
     Es pot utilitzar únicament amb preguntes ?- nat(Z). amb la variable Z instanciada
     És incorrecte perquè en les dues clàusules els caps tenen diferents variables
       Cap de les anteriors
       No contesto...
 
  7. Una estratègia de resolució:
     És sòlida si aplicada sobre qualsevol fórmula insatisfactible és capaç de trobar la clàusula buid
     Sempre pretén trobar tots els resolvents
     Quan l'intèrpret de ProLog respon yes, significa que ha trobat una refutació
       Les estratègies de resolució són regles d'inferència per arribar a la clàusula buida
       No contesto...
 
  8. Donat el seguent programa en Prolog:

substring([X|L],[X|R]):-!, incluit(L,R).
substring(X,[_|R]):-substring(X,R).
incluit([ ],_).
incluit([X|L],[X|M]):-incluit(L,M).


i davant la questió:

?-substring([s,o,p,a],[n,o,m,e,g,u,s,t,a,l,a,s,s,o,p,a,a,a,a,a,a]).

Prolog respon:
     no perquè falta un cut en el predicat incluit
     no perquè el cut en la primera clàusula ha de anar al final
     si
       Cap de les anteriors
       No contesto...
 

Check...