:- use_module(library(clpfd)). schaumalan(SCHAUMLN) :- SCHAUMLN = [S,C,H,A,U,M,L,N], domain([S,A,U,M],1,9), domain([C,H,L,N],0,9), AN #= 10*A + N, SHM #= 100*S + 10*H + M, SSS #= 111*S, UUU #= 111*U, SCHAU #= 10000*S + 1000*C + 100*H + 10*A + U, M * AN #= SHM, A * AN #= SSS, L * AN #= UUU, SCHAU #= 100*SHM + 10*SSS + UUU, labeling([],SCHAUMLN).