>>80 失礼、まちがえました。実行していなかったので・・・
?- push(3,[],L1),push(4,L1,L2),not(empty(L2)),pop(X,L2,L3),write(L3),nl.
[3]
L1 = [3],
L2 = [3,4],
X = 4,
L3 = [3]
yes
?-