Treba definirati predikat dot/3 ciji je prvi argument lista elemenata prvog vektora, drugi argument lista drugog vektora a treci argumenat je dot-product.
dot(Vektor1,vektor2,DotProduct).
?-dot([2,5,6],[3,4,1],Rezultat).
Rezultat=32. // (2*3+5*4+6*1)