penta(N,N1):-!,N1 is N*(3*N-1)//2. hex(N,N1):-!,N1 is N*(2*N-1). search(P,H):- penta(P,N5), hex(H,N6), N5=:=N6, !, write(N5). search(P,H):- penta(P,N5), hex(H,N6), N5<N6, !, P1 is P+1, search(P1,H). search(P,H):- H1 is H+1, !, search(P,H1). main:- search(165,144).