>>23

混在の閾値(3/13).

森は、いろいろな種類の樹木が混ざった状態(_森) :-
    list(_森),
    混在の閾値(N1/N2),
    length(L0,N2),
    先頭から全ての連続した一定要素の中に閾値以上の混在が見られる(N1/N2,L0,_森).

先頭から全ての連続した一定要素の中に閾値以上の混在が見られる(N1/N2,L0,L) :-
    length(L,Len),
    Len < N2,!.
先頭から全ての連続した一定要素の中に閾値以上の混在が見られる(N1/N2,L0,_森) :-
    append(L0,L1,_森),
    setof(_樹木,member(_樹木,L0),L),
    length(L,Len),
    Len < N1,!,fail.
先頭から全ての連続した一定要素の中に閾値以上の混在が見られる(N1/N2,L0,[_|R]) :-
    先頭から全ての連続した一定要素の中に閾値以上の混在が見られる(N1/N2,L0,R).