Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
P
PROSA - Formally Proven Schedulability Analysis
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Terms and privacy
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
RT-PROOFS
PROSA - Formally Proven Schedulability Analysis
Merge requests
!9
Complete proof of Abstract RTA
Code
Review changes
Check out branch
Download
Patches
Plain diff
Merged
Complete proof of Abstract RTA
sbozhko/rt-proofs:abstract_rta_merge
into
master
Overview
35
Commits
14
Pipelines
0
Changes
18
Merged
Sergey Bozhko
requested to merge
sbozhko/rt-proofs:abstract_rta_merge
into
master
6 years ago
Overview
35
Commits
14
Pipelines
0
Changes
2
Expand
You can check a pdf-version of this
here
.
Edited
6 years ago
by
Sergey Bozhko
0
0
Merge request reports
Compare
version 2
version 13
64347cf5
5 years ago
version 12
74a96a1a
5 years ago
version 11
ff966b65
5 years ago
version 10
92000641
5 years ago
version 9
e916e2b7
5 years ago
version 8
0fc3be84
6 years ago
version 7
e7975e4b
6 years ago
version 6
342cbcc2
6 years ago
version 5
b5ed199d
6 years ago
version 4
9819c137
6 years ago
version 3
0bc3fe60
6 years ago
version 2
6b226983
6 years ago
version 1
051b3bbd
6 years ago
master (base)
and
version 3
latest version
3fd984a4
14 commits,
5 years ago
version 13
64347cf5
14 commits,
5 years ago
version 12
74a96a1a
15 commits,
5 years ago
version 11
ff966b65
15 commits,
5 years ago
version 10
92000641
15 commits,
5 years ago
version 9
e916e2b7
15 commits,
5 years ago
version 8
0fc3be84
13 commits,
6 years ago
version 7
e7975e4b
13 commits,
6 years ago
version 6
342cbcc2
13 commits,
6 years ago
version 5
b5ed199d
13 commits,
6 years ago
version 4
9819c137
13 commits,
6 years ago
version 3
0bc3fe60
13 commits,
6 years ago
version 2
6b226983
12 commits,
6 years ago
version 1
051b3bbd
17 commits,
6 years ago
Show latest version
2 files
+
183
−
0
Inline
Compare changes
Side-by-side
Inline
Show whitespace changes
Show one file at a time
Files
2
Search (e.g. *.vue) (Ctrl+P)
model/arrival/curves/bounds.v
0 → 100644
+
63
−
0
Options
Require
Import
rt
.
util
.
all
.
Require
Import
rt
.
model
.
arrival
.
basic
.
arrival_sequence
rt
.
model
.
arrival
.
basic
.
task_arrival
.
From
mathcomp
Require
Import
ssreflect
ssrbool
eqtype
ssrnat
seq
div
.
(* In this section, we define the notion of arrival curves, which
can be used to reason about the frequency of job arrivals. *)
Module
ArrivalCurves
.
Import
ArrivalSequence
TaskArrival
.
Section
DefiningArrivalCurves
.
Context
{
Task
:
eqType
}
.
Context
{
Job
:
eqType
}
.
Variable
job_task
:
Job
->
Task
.
(* Consider any job arrival sequence... *)
Variable
arr_seq
:
arrival_sequence
Job
.
(* ...and let tsk be any task to be analyzed. *)
Variable
tsk
:
Task
.
(* Recall the job arrivals of tsk in a given interval [t1, t2). *)
Let
arrivals_of_tsk
:=
arrivals_of_task_between
job_task
arr_seq
tsk
.
Let
num_arrivals_of_tsk
:=
num_arrivals_of_task
job_task
arr_seq
tsk
.
(* First, we define what constitutes an arrival bound for task tsk. *)
Section
ArrivalBound
.
(* Let max_arrivals denote any function that takes an interval length and
returns the associated number of job arrivals of tsk.
(This corresponds to the eta+ function in the literature.) *)
Variable
max_arrivals
:
time
->
nat
.
(* Then, we say that num_arrivals is an arrival bound iff, for any interval [t1, t2),
(num_arrivals (t2 - t1)) bounds the number of jobs of tsk that arrive in that interval. *)
Definition
is_arrival_bound
:=
forall
t1
t2
,
t1
<=
t2
->
num_arrivals_of_tsk
t1
t2
<=
max_arrivals
(
t2
-
t1
)
.
End
ArrivalBound
.
(* Next, we define the notion of a separation bound for task tsk, i.e., the smallest
interval length in which a certain number of jobs of tsk can be spawned. *)
Section
SeparationBound
.
(* Let min_length denote any function that takes a number of jobs and
returns an associated interval length.
(This corresponds to the delta- function in the literature.) *)
Variable
min_length
:
nat
->
time
.
(* Then, we say that min_length is a separation bound iff, for any number of jobs
of tsk, min_separation lower-bounds the minimum interval length in which that number
of jobs can be spawned. *)
Definition
is_separation_bound
:=
forall
t1
t2
,
t1
<=
t2
->
min_length
(
num_arrivals_of_tsk
t1
t2
)
<=
t2
-
t1
.
End
SeparationBound
.
End
DefiningArrivalCurves
.
End
ArrivalCurves
.
Loading