Library prosa.analysis.facts.model.ideal.service_of_jobs

Service Received by Sets of Jobs in Uniprocessor Schedules

In this section, we establish a fact about the service received by sets of jobs in the presence of idle times on a fully-consuming uniprocessor model.
Consider any type of tasks ...
  Context {Task : TaskType}.

... and any type of jobs associated with these tasks.
  Context {Job : JobType}.
  Context `{JobTask Job Task}.
  Context `{JobArrival Job}.
  Context `{JobCost Job}.

Allow for any fully-consuming uniprocessor model.
Consider any arrival sequence with consistent arrivals.
Next, consider any schedule of this arrival sequence ...
... where jobs do not execute before their arrival or after completion.
Let P be any predicate over jobs.
  Variable P : pred Job.

We prove that, if the sum of the total blackout and the total service within some time interval [t1,t2) is smaller than t2 - t1, then there is an idle time instant t ∈ [t1,t2).

Service Received by Sets of Jobs in Uniprocessor Ideal-Progress Schedules

Next, we establish a fact about the service received by sets of jobs in the presence of idle times on a uniprocessor under the ideal-progress assumption (i.e., that a scheduled job necessarily receives nonzero service).
Section IdealModelLemmas.

Consider any type of tasks ...
  Context {Task : TaskType}.

... and any type of jobs associated with these tasks.
  Context {Job : JobType}.
  Context `{JobTask Job Task}.
  Context `{JobArrival Job}.
  Context `{JobCost Job}.

Consider any arrival sequence with consistent arrivals.
Allow for any uniprocessor model that ensures ideal progress.
Next, consider any ideal uni-processor schedule of this arrival sequence ...
... where jobs do not execute before their arrival or after completion.
Let P be any predicate over jobs.
  Variable P : pred Job.

We prove that if the total service within some time interval [t1,t2) is smaller than [t2 - t1], then there is an idle time instant t [t1,t2)].