universe(['Stu'],[s0]).
universe(['Key'],[r0,r1]).
universe(['Cou'],[c16,c10]).

type(stu,[s0]).
type(reg,[r0,r1]).
type(cou,[c16,c10]).
type(gr,[1,4]).
type(dif,[h,l]).
type(ran,[h,l]).

mode(registration(reg,cou,stu)).
mode(registration_grade(reg,gr)).
mode(registration_course(reg,cou)).
mode(registration_student(reg,stu)).
mode(course_difficulty(cou,dif)).
mode(student_ranking(stu,ran)).

