liste11
/* ese12.pro */ /* GOAL :verticale(S)..orizzontale(S) */
nowarnings domains punto = punto(integer,integer) segmento = segmento(punto,punto)
predicates verticale(segmento) orizzontale(segmento) clauses
verticale(segmento(punto(1,1),punto(1,8))). verticale(segmento(punto(5,1),punto(5,9))). orizzontale(segmento(punto(1,1),punto(9,1))). orizzontale(segmento(punto(5,1),punto(15,1))).
/* ese11.mar */
nowarnings domains punto = punto(integer,integer) segmento = segmento(punto,punto) triangolo= triangolo(punto,punto,punto)
predicates disegnap(punto) disegnas(segmento) disegnat(triangolo) clauses
disegnap(punto(2,1)). disegnap(punto(1,4)). disegnas(segmento(punto(2,1),punto(1,4))). disegnat(triangolo(punto(3,2), punto(7,1),punto(6,5))).
/* ese10.pro */
/* GOAL :frase(X,Y) */
nowarnings domains nome,articolo,verbo = symbol nominale = nominale(articolo,nome) verbale = verbale(verbo,nominale)
predicates frase(nominale,verbale)
clauses frase(nominale(un,cane), verbale(mangia,nominale(un,osso))). frase(nominale(il,gatto), verbale(mangia,nominale(un,topo))). frase(nominale(una,rondine), verbale(vola,nominale(in,cielo))).