Prolog

  • Hallo an alle! Ich weiss, dass kommt in einem Forum nicht sehr gut an, aber ich habe morgen eine Klausur in PROLOG und habe auch schon in etwa eine Aufgabe, wo ich mir sicher bin, dass sie dran kommt. War zu der Vorlesung leider krank und allein konnt ichs mir nicht beibringen.
    Hat evtl. jemand ein paar Tipps, wie es zu lösen ist?
    Danke schon mal an alle!

    Analysieren Sie folgendes Programm:

    domains
    list=integer*
    predicates
    p(integer,list)
    clauses
    p(0,[])
    p(Z[E|Y]):-E<=0,p(S,Y), Z=S-E
    p(Z[E|Y]):-E>0,p(S,Y), Z=S+E

    Welche Systemantworten erfolgen auf folgende Goal-Anfragen?

    p(1,[2])
    p(R,[0])
    p(R,[])
    p(T,[-1, 0,9])
    p(S,[-0])
    p(R,[-8, 1,4])
    p(E,[-0, 0,0])
    p(0,[])
    X=8,p(L,[3,X,3,3])