木がバランスが取れているかどうかを教えてくれるプログラムを書きたいです。この場合、バランスが取れているとは、同じ高さまたは高低差が 1 であることを意味します。
ここまで書いてきたのですが、身長差1ではうまくいきません。
balanced(l(_)).
balanced(b(B1, B2)):-
height(B1,H),
height(B2,H),
balanced(B1),
balanced(B2).
balanced(b(B1,B2)):-
height(B1,H + 1),
height(B2,H),
balanced(B1),
balanced(B2).
balanced(b(B1,B2)):-
height(B1,H),
height(B2,H + 1),
balanced(B1),
balanced(B2).