Formal Formal Component Component Models Models for for Context Context Awareness Awareness
FMCO2008 22.10.2008
Deploy FP7 MatsNeovius andKaisaSere
1 ÅboAkademi– FacultyofTechnology, DepartmentofInformationTechnologies.
Formal Formal Component Component Models Models for for Context - - PowerPoint PPT Presentation
Formal Formal Component Component Models Models for for Context Context Awareness Awareness Deploy FP7 MatsNeovius andKaisaSere FMCO2008 boAkademi FacultyofTechnology, 1 22.10.2008
FMCO2008 22.10.2008
Deploy FP7 MatsNeovius andKaisaSere
1 ÅboAkademi– FacultyofTechnology, DepartmentofInformationTechnologies.
2 FMCO2008 22.10.2008 ÅboAkademi– FacultyofTechnology, DepartmentofInformationTechnologies.
3 FMCO2008 22.10.2008 ÅboAkademi– FacultyofTechnology, DepartmentofInformationTechnologies.
4 FMCO2008 22.10.2008 ÅboAkademi– FacultyofTechnology, DepartmentofInformationTechnologies.
5 FMCO2008 22.10.2008 ÅboAkademi– FacultyofTechnology, DepartmentofInformationTechnologies.
6 FMCO2008 22.10.2008 ÅboAkademi– FacultyofTechnology, DepartmentofInformationTechnologies.
Accelerate ok(given speeding isprohibited)? acquire :velocity∧ speed_limit improve :velocity >speed_limit → speeding :=true provide :speeding
7 FMCO2008 22.10.2008 ÅboAkademi– FacultyofTechnology, DepartmentofInformationTechnologies.
8 FMCO2008 22.10.2008 ÅboAkademi– FacultyofTechnology, DepartmentofInformationTechnologies.
9 FMCO2008 22.10.2008 ÅboAkademi– FacultyofTechnology, DepartmentofInformationTechnologies.
10 FMCO2008 22.10.2008 ÅboAkademi– FacultyofTechnology, DepartmentofInformationTechnologies.
Inspired by: Henricksen andIndulska,”Modelling andUsing Imperfect Context Information”,CoMoRea 2004. Shehzad,Ngo,Pham,Lee”Formal modeling inContext aware systems” CAMUSframework andContextual informtaion hierarchy 11 FMCO2008 22.10.2008 ÅboAkademi– FacultyofTechnology, DepartmentofInformationTechnologies.
12 FMCO2008 22.10.2008 ÅboAkademi– FacultyofTechnology, DepartmentofInformationTechnologies.
=|[ import imp_list; export exp_list :=e0; var var_list :=v0; proc list ofpr.name (par.name.list)=<{impl}>; dog1 → S1[]…[]gn → Sn od ]|
13 FMCO2008 22.10.2008 ÅboAkademi– FacultyofTechnology, DepartmentofInformationTechnologies.
ℬ =|[ context c import j; export f :=f0; read_only r; publish p:=p0; var w:=w0; proc ; dog1 → S1 []…[]gn → Sn od ]|
14 FMCO2008 22.10.2008 ÅboAkademi– FacultyofTechnology, DepartmentofInformationTechnologies.
ℬutiliser =|[ import j; export f :=f0; var w:=w0; proc ; dog1 → S1@T []…[]gn → Sn …od ]|@interface
ℬutiliser =|[
15 FMCO2008 22.10.2008 ÅboAkademi– FacultyofTechnology, DepartmentofInformationTechnologies.
interface =|[ read_only rr; import ir; export er; var vr; procProc_name (par.name.list) ={<impl>}; do… T: gT →ST
ℬutiliser =|[ import j; export f :=f0; var w:=w0; proc ; dog1 → S1@T []…[]gn → Sn …od ]|@interface
ℐ =|[contextε; importλ; read_only x; exportq; publishy; var b; procnonce(x)=f (x):x’; ≔ =|[contextε; importD; read_only y; exports; publishz; var h; proc ; ≔ =|[contextc; importϕ; read_only m; exportt; publishx; var a; proc ;
16 FMCO2008 22.10.2008 ÅboAkademi– FacultyofTechnology, DepartmentofInformationTechnologies.
procnonce(x)=f2(x):x’; do ω→y≔ f1(nonce(x))λ []¬ω →V []γ
]| proc ; do ψ →z ≔ f(y) []¬ψ →U []δ
]| proc ; do g →S (x :=E) []¬g →T []β
]|
||ℐ|| =|[ contextc ⋃ ε; import(ϕ ∪ λ∪ D \ e); read_only m; exporte :=t ∪ q ∪ s; publishz; ∪ ∪ ∪ ∪
17 FMCO2008 22.10.2008 ÅboAkademi– FacultyofTechnology, DepartmentofInformationTechnologies.
∪ ∪ publishz; var v:=a ∪ b ∪ h ∪ x ∪ y; procnonce(x)=<{impl}>; … do β[] γ []δ[]T[]V[]U[]B1 [] B2 []…[]Bn;
]|
18 FMCO2008 22.10.2008 ÅboAkademi– FacultyofTechnology, DepartmentofInformationTechnologies.
=|[import j; export f :=f0; read_only ; var w:=w0; proc ; do A []g →S @Acc[]…[]A
19 FMCO2008 22.10.2008 ÅboAkademi– FacultyofTechnology, DepartmentofInformationTechnologies.
A1 []g2→S2@Acc[]…[]An
=|[ procSpeeding(vel:Int,spLi:Int)= vel ≤spLi →return:=true read_only velocity,speedLimit; var vel ≔ velocity,spLi ≔ speedLimit; do … Acc:Speeding(vel,spLi)=true→skip
ℰ||ℐ|| =|[… context c; publishvelocity; read_only k; var v; … ProcCalcVel(rpm:Int,rim:Int,tyre:Int)
tyre_height ∈ {k∪ c}
20 FMCO2008 22.10.2008 ÅboAkademi– FacultyofTechnology, DepartmentofInformationTechnologies.
ProcCalcVel(rpm:Int,rim:Int,tyre:Int) =v:=rpm*π*(rim+tyre) do CalcVel(wheel_rpm,rim_dia, tyre_height)→ velocity ≔ v; …
]|
21 FMCO2008 22.10.2008 Åbo Akademi – FacultyofTechnology, DepartmentofInformationTechnologies.
22 FMCO2008 22.10.2008 ÅboAkademi– FacultyofTechnology, DepartmentofInformationTechnologies.