Library prosa.classic.analysis.global.jitter.interference_bound_fp
Require Import prosa.classic.util.all.
Require Import prosa.classic.model.priority.
Require Import prosa.classic.model.schedule.global.workload.
Require Import prosa.classic.model.schedule.global.jitter.schedule prosa.classic.model.schedule.global.jitter.interference.
Require Import prosa.classic.analysis.global.jitter.workload_bound prosa.classic.analysis.global.jitter.interference_bound.
From mathcomp Require Import ssreflect ssrbool eqtype ssrnat seq fintype bigop.
Module InterferenceBoundFP.
Import ScheduleWithJitter WorkloadBoundJitter Priority Interference.
Export InterferenceBoundJitter.
Section Definitions.
Context {sporadic_task: eqType}.
Variable task_cost: sporadic_task → time.
Variable task_period: sporadic_task → time.
Variable task_deadline: sporadic_task → time.
Variable task_jitter: sporadic_task → time.
Variable tsk: sporadic_task.
Let task_with_response_time := (sporadic_task × time)%type.
Variable R_prev: seq task_with_response_time.
Variable delta: time.
Variable higher_eq_priority: FP_policy sporadic_task.
Let total_interference_bound := interference_bound_generic task_cost task_period task_jitter tsk delta.
Definition total_interference_bound_fp :=
\sum_((tsk_other, R_other) <- R_prev)
total_interference_bound (tsk_other, R_other).
End Definitions.
End InterferenceBoundFP.
Require Import prosa.classic.model.priority.
Require Import prosa.classic.model.schedule.global.workload.
Require Import prosa.classic.model.schedule.global.jitter.schedule prosa.classic.model.schedule.global.jitter.interference.
Require Import prosa.classic.analysis.global.jitter.workload_bound prosa.classic.analysis.global.jitter.interference_bound.
From mathcomp Require Import ssreflect ssrbool eqtype ssrnat seq fintype bigop.
Module InterferenceBoundFP.
Import ScheduleWithJitter WorkloadBoundJitter Priority Interference.
Export InterferenceBoundJitter.
Section Definitions.
Context {sporadic_task: eqType}.
Variable task_cost: sporadic_task → time.
Variable task_period: sporadic_task → time.
Variable task_deadline: sporadic_task → time.
Variable task_jitter: sporadic_task → time.
Variable tsk: sporadic_task.
Let task_with_response_time := (sporadic_task × time)%type.
Variable R_prev: seq task_with_response_time.
Variable delta: time.
Variable higher_eq_priority: FP_policy sporadic_task.
Let total_interference_bound := interference_bound_generic task_cost task_period task_jitter tsk delta.
Definition total_interference_bound_fp :=
\sum_((tsk_other, R_other) <- R_prev)
total_interference_bound (tsk_other, R_other).
End Definitions.
End InterferenceBoundFP.