compress2(L,C).
compress2([],[]).
compress2([a],[(a,1)]).
compress2([b,b],[(b,2)]).
compress2([c,d],[(c,1),(d,1)]).
compress2([e,e,e],[(e,3)]).
compress2([f,f,g],[(f,2),(g,1)]).
compress2([h,i,h],[(h,2),(i,1)]).
compress2([j,k,k],[(j,1),(k,2)]).
compress2([l,m,n],[(l,1),(m,1),(n,1)]).

compress2([X],[(X,1)]).
compress2([X,Y],[(X,2)]) :- X=Y.
compress2([X,Y],[(X,1),(Y,1)]) :- X\=Y.
compress2([X,Y,Z],[(X,3)]) :- X=Y , Y=Z.
compress2([X,Y,Z],[(X,2),(Y,1)]) :- X\=Y , X=Z.
compress2([X,Y,Z],[(X,2),(Z,1)]) :- X=Y , Y\=Z.
compress2([X,Y,Z],[(X,1),(Y,2)]) :- X\=Y , Y=Z.
compress2([X,Y,Z],[(X,1),(Y,1),(Z,1)]) :- X\=Y , Y\=Z , X\=Z.
# more exs should be given to illustrate the last 5 props !?

