Library prosa.model.schedule.preemption_time
Preemption Times on a Uniprocessor
 Consider any type of jobs, ... 
... any preemption model, ... 
... any arrival sequence, ... 
... any processor model, ... 
... and any schedule. 
We say that a time t is a preemption time iff the job that is currently
      scheduled at t, if any, can be preempted according to the predicate
      job_preemptable (which encodes the preemption model). An idle instant
      is always a preemption time. 
  Definition preemption_time (t : instant) :=
if (scheduled_job_at arr_seq sched t) is Some j then
job_preemptable j (service sched j t)
else true.
End PreemptionTime.
if (scheduled_job_at arr_seq sched t) is Some j then
job_preemptable j (service sched j t)
else true.
End PreemptionTime.