:- use_module( library( cplfd )).


% dados de teste

% Example Timetabling Problem 2
% (Luis Paulo Reis - 1 Dez de 2002)

% problem(nevents,nrooms,nfeatures,nstudents).
problem(15, 3, 2, 15).
% slots(ndaYS,ntimes,nslots).
slots(2,3,6).
% room(room, Room_Size, List_Features).
room(1, 5, []).
room(2, 8, [1]).
room(3, 5, [1,2]).
% event(event,List_Students, List_Features).
event(1, [1,2,3,4,6], [1]).
event(2, [1,2,3,4,5], [1]).
event(3, [1,2,3,4,5], []).
event(4, [1,2,3,4,6], []).
event(5, [1,2,3,4], []).
event(6, [1,2,3,4], []).
event(7, [5,7,8,9,10,11,12], [1]).
event(8, [5,7,8,9,10,11,12], [1]).
event(9, [5,7,8,9,10,11,12], []).
event(10,[5,8,9,10,12], []).
event(11,[8,10,11], []).
event(12,[6,7,8,9,10], [1,2]).
event(13,[13,14,15], []).
event(14,[13,15], [1,2]).
event(15,[13,14,15], [2]).


sala_diferente

estudante_sobreposto

capacidade

caracteristicas( CaracNecLst, AvailableLst ) +:
	
	


% time tabeling

/*n_dias( 5 ).
n_blocos( 9 ). % cada bloco corresponde a uma hora
duracao( 1 ).  % em horas

blocos( N_dias, N_blocos, Dur_bloco ) :-
	n_dias( N_dias ).
	n_blocos( N_blocos ),
	duracao_bloco( Dur_bloco ),*/

%sala( N_sala, Capaci, Lista_caract ).

%estudante( N_estudante, Lista_eventos ) +:
%all_different( Lista_eventos ).
%obrigar a que lista_eventos seja diferente,
%cada elemento de Lista_eventos tem o numero de um evento

%evento( N_evento, Lista_caract, Lista_blocos, Lista_estudantes ) +:
%all_different( Lista_Blocos ),

%horario
%( Lista_eventos, Lista_horas_eventos, Lista_salas_eventos ).
