Library prosa.analysis.facts.edf
In this section, we prove a few properties about EDF policy. 
Consider any type of tasks with relative deadlines ... 
 ... and any type of jobs associated with these tasks. 
  Context {Job : JobType}.
Context `{JobTask Job Task}.
Context `{JobArrival Job}.
Context `{JobCost Job}.
Context `{JobTask Job Task}.
Context `{JobArrival Job}.
Context `{JobCost Job}.
Consider any arrival sequence. 
EDF respects sequential tasks hypothesis. 
  Lemma EDF_respects_sequential_tasks:
policy_respects_sequential_tasks.
Proof.
intros j1 j2 TSK ARR.
move: TSK ⇒ /eqP TSK.
unfold hep_job, EDF, job_deadline, job_deadline_from_task_deadline; rewrite TSK.
by rewrite leq_add2r.
Qed.
End PropertiesOfEDF.
policy_respects_sequential_tasks.
Proof.
intros j1 j2 TSK ARR.
move: TSK ⇒ /eqP TSK.
unfold hep_job, EDF, job_deadline, job_deadline_from_task_deadline; rewrite TSK.
by rewrite leq_add2r.
Qed.
End PropertiesOfEDF.
We add the above lemma into a "Hint Database" basic_facts, so Coq
    will be able to apply them automatically. 
Hint Resolve EDF_respects_sequential_tasks : basic_facts.