Softbound. March 23, Type 2. 2 Env primitives defined functions axioms well-formed environment...

Size: px
Start display at page:

Download "Softbound. March 23, Type 2. 2 Env primitives defined functions axioms well-formed environment..."

Transcription

1 Softbound March 23, 2009 Content 1 Tye 2 2 Env rimitive defined function axiom we-formed environment Syntax 10 4 Semantic 13 5 Proertie 18 A Notationa Convention 21 Lit of Figure 1 Tye Tye Equivaence Tye Converion Tame Pointer Coure We-formed Tye We-formed Environment Syntax We-formed LHS We-formed RHS We-formed CMD Reut Data Cat Aertion Evauation LHS Evauation RHS Evauation RHS - Con Evauation CMD

2 1 Tye Quaifier: Tye: Size of Tye: q ::= afe eq tame Quaifier a ::= atomic tye int int q ointer tye ::= ointer tye a atomic tye anonymou truct tye id named truct tye void void ::= truct tye ni truct ; id:a con truct tab ::= id otion named truct ook-u tabe aize(a) ::= ize() ::= ize() ::= where 1 a = int 1 a = q where aize(a) = a ize() = ize() = n tab n = ome 1 = void where 0 = ize( ) + aize(a) = ; id:a Figure 1: Tye. 2

3 a a a int a int (E-Int) 1 2 q 1 = q 2 1 q 1 a 2 q 2 (E-Pointer) a 1 a a 2 a 1 a 2 (E-Atomic) (E-AStruct) tab n 1 = ome 1 tab n 2 = ome n 1 n 2 (E-NStruct) n n (E-EqName) void void (E-Void) (E-Ni) 1 2 a 1 a a 2 1 ; id 1 :a 1 2 ; id 2 :a 2 (E-Con) Figure 2: Tye Equivaence. 3

4 a a int int (C-Int) q int (C-Ptr-Int) q afe int q (C-Int-Ptr) afe 2 afe (C-SafePtr) afe 2 eq (C-SafeSeqPtr) eq 2 afe (C-SeqSafePtr) eq 2 eq (C-SeqPtr) 1 tame 2 tame (C-TamePtr) Figure 3: Tye Converion. 4

5 a a a int (TC-Int) a tame (TC-Ptr) a a a (TC-Atomic) (TC-AStruct) tab n = ome n (TC-NStruct) void (TC-Void) (TC-Ni) a a ; id:a (TC-Con) Figure 4: Tame Pointer Coure. 5

6 a a a int (WFT-Int) q tame void a q (WFT-NonTamePtr) a tame (WFT-TamePtr) a a a (WFT-Atomic) (WFT-AStruct) tab n = ome n (WFT-NStruct) void (WFT-Void) (WFt-Ni) a a ; id:a (WFT-Con) Figure 5: We-formed Tye. 6

7 2 Env 2.1 rimitive Tabe 1: rimitive Name Function baeaddr N owet uer-acceibe addr maxaddr N max uer-acceibe addr TOP N tack to addr Stack v otion (d a) tack Mem d (b,e) memory TyeInfo a tye information Env (Stack, M em, T yeinf o) environment Vaue N Vaue of Memory Bae N MetaData, Bae of Memory End N MetaData, Bound of Memory Loc N Location of Memory readmem Mem Loc otion V aue read data readmemmeta Mem Loc otion V aue (Bae,End) read data with meta writemem Mem Loc V aue otion Mem write data writememmeta Mem Loc V aue (Bae,End) otion Mem write data with meta maoc Env N otion (Env Loc) memory aocation udateti T yeinfo Loc P trt ye N T yeinfo udating tye information readmem M : read data from the ocation if it i acceibe readmemmeta M : read data with meta from the ocation if it i acceibe writemem M d: write data to the ocation if it i acceibe writememmeta M d (b,e) : write data with meta to the ocation if it i acceibe maoc : memory aocation udateti : udating tye information 2.2 defined function readmembock M ize readmemmetabock M ize writemembock M d ize writememmetabock M d ize coymembock M d ize coymemmetabock M d ize vaidmem M d.readmem M = ome d d. M.writeMem M d = ome M vaidmembock M ize 7

8 2.3 axiom axiom 2.1 (vaidaddrerange) 0 < baeaddr maxaddr axiom 2.2 (vaid memory) 1. (M, ). ( d.readmem M = ome d) ( d. M.writeMem M d). 2. (M, ). ( d (b,e).readmemmeta M = ome d (b,e) ) ( d (b,e). M.writeMemMeta M d (b,e) ). 3. (M, ). ( d.readmem M = ome d) ( d (b,e).readmemmeta M = ome d (b,e) ). 4. (M, ). ( d. M.writeMem M d) ( d (b,e). M.writeMemMeta M d (b,e) ). axiom 2.3 (unique reut) 1. (M, ). ( (d, d ). readmem M = ome d readmem M = ome d d = d ). 2. (M, ). ( (d (b,e), d (b,e ) ). readmemmeta M = ome d (b,e) readmemmeta M = ome d (b,e ) d (b,e) = d (b,e ) ). 3. (M, ). ( (d, d ). M.writeMem M d M.writeMem M d ). 4. (M, ). ( (d (b,e), d (b,e ) ). M.writeMemMeta M d (b,e) M.writeMemMeta M d (b,e ) ). axiom 2.4 (udatetyeinfo inverion) 1. If a q, q tame, ize() > 0 and udatetyeinfo T I ize = T I, then ( [, + ize)). T I ( ) = [( ) mod ize()] t and ( < + ize)). T I( ) = T I ( ). 2. If a tame, ize() > 0 and udatetyeinfo T I ize = T I, then ( [, +ize)). T I ( ) = void tame and ( < + ize)). T I( ) = T I ( ). axiom 2.5 (maoc inverion) If maoc E ize = ome ((M, S, T I ), ), then 1. M, T I.E = (M, S, T I) 2. baeaddr + ize < maxaddr ize > 0 3. (readmemmeta M = ome d (b,e) ). readmemmeta M = ome d (b,e) 4. ( < + ize). readmemmeta M = none readmemmeta M = none 5. ( < + ize). readmemmeta M = none readmemmeta M = ome 0 (0,0) 6. ( < + ize). T I( ) = T I ( ) 7. ( < + ize). T I ( ) = int axiom 2.6 (writemem Inverion) 1. If writememmeta M d (b,e) = ome M, then (a) readmemmeta M = ome d (b,e) (b) If ( ). readmemmeta M = d, then readmemmeta M = d (c) If. readmemmeta M = none, then readmemmeta M = none 2. If writemem M d = ome M, then (a) If readmemmeta M = ome d (b,e), then readmemmeta M = ome d (b,e) (b) If ( ). readmemmeta M = d, then readmemmeta M = d (c) If. readmemmeta M = none, then readmemmeta M = none 2.4 we-formed environment 8

9 M ; T I S S baeaddr T OP maxaddr (v,, a). (v (, a)) S (T OP ) (( + aize(a)) < maxaddr) (v,, a). (v (, a)) S (v,, a ). (v (, a )) S ( ( + aize(a))) ( ( + aize(a ))) M ; T I S S (WF-Stack) M ; T I D d (b,e) : a M ; T I D d (b,e) : int true (WFD-Int) M ; T I D d (b,e) : a afe (d = 0) (WFD-ASafe) ((baeaddr d) (d + 1 < maxaddr) (vaidmem M d) (T I(d) = a)) M ; T I D d (b,e) : afe (d = 0) (WFD-SSafe) ((ize() > 0) (baeaddr d) (d + ize() < maxaddr) ( (i [0, ize())). (vaidmem M d + i (T I(d + i) = [i]))) M ; T I D d (b,e) : n afe (d = 0) (WFD-NSafe) (. tab n = ome (ize() > 0) (baeaddr d) (d + ize() < maxaddr) ( (i [0, ize())). (vaidmem M d + i (T I(d + i) = [i]))) M ; T I D d (b,e) : void afe fae (WFD-VSafe) M ; T I D d (b,e) : eq (b = 0) (WFD-Seq) ((b 0) (baeaddr b e < maxaddr) ( (i [b, e)). (vaidmem M i (T I(i) = [(i d) mod ize()]))) M ; T I D d (b,e) : tame (b = 0) (WFD-Tame) ((b 0) (baeaddr b e < maxaddr) ( (i [b, e)). (vaidmem M i q.t I(i) = q tame)) M M ; T I (, d, b, e). readmemmeta M = d (b,e) M ; T I D M M ; T I d (b,e) : T I() (WF-MemTI) E E M E.M ; E.T I E.M ; E.T I S E.S (v,, a). (v (, a)) E.S vaidmem E.M E.T I() = a E E (WF-Env) Figure 6: We-formed Environment. 9

10 3 Syntax Syntax: h ::= rh ::= c ::= h exreion v variabe h dereference h id truct o h n id name o rh exreion i int contant h h exreion (a q)&h reference rh + rh addition (a)rh cat (izeof)a ize (a q)maoc rh aoc command ki ki c ; c equence h = rh aignment Figure 7: Syntax. 10

11 S h:a (v (, a)) S a a S v :a (WFL-Var) S h:a q S h:a (WFL-Def) S h: q [id] = a S h id:a (WFL-StructPo) S h:n q tab n = ome [id] = a S h n id:a (WFL-NamePo) S!tame h:a (v (, a)) S a a S v :a (WFLNT-Var) S!tame h: q q tame [id] = a S!tame h id:a S!tame h:n q q tame tab n = ome [id] = a S!tame h n id:a (WFLNT-StructPo) (WFLNT-NamePo) S tame h:a (v (, void tame)) S S tame v :void tame (WFLT-Var) S tame h: tame [id] = void tame S tame h id:void tame (WFLT-StructPo) S tame h:n tame tab n = ome [id] = void tame S tame h n id:void tame (WFLT-NamePo) Figure 8: We-formed LHS. 11

12 S r rh:a S r i:int (WFR-Cont) S h:a S r h:a (WFR-Lh) S!tame h:a a a afe S r (a afe)&h:a afe (WFR-RefSafe) S!tame h:a a a eq S r (a eq)&h:a eq S tame h:a a a tame S r (a tame)&h:a tame (WFR-RefSeq) (WFR-RefTame) S r rh 1 :int S r rh 2 :int S r rh 1 + rh 2 :int (WFR-Add) S r rh 1 : q q afe S r rh 2 :int S r rh 1 + rh 2 : q (WFR-AddPtr) S r rh:a a a S r (a )rh:a (WFR-Cat) a a S r izeof(a):int (WFR-Size) S r rh:int a q ize() > 0 S r ( q)maoc rh: q (WFR-Aoc) Figure 9: We-formed RHS. S c c S c ki (WFC-Ski) S c c 1 S c c 2 S c c 1 ; c 2 (WFC-Seq) S h:a S r rh:a r a r a S c h = rh (WFC-Aign) Figure 10: We-formed CMD. 12

13 4 Semantic Annotation USAGE d (b,e) d with meta (b, e) d id (b,e) d with meta (b, e), id i the name of d ub fied [id] off the offet ub fied id [id] t the tye ub fied id Reut: r ::= err ::= reut ok Succ ocation (d (b,e), a) data with meta Abort Abort OutOf M em OutOfMem error Abort Abort OutOf M em OutOfMem Figure 11: Reut. datacat: from to aertion (d (b,e), q) (d (b,e), int) (d (b,e), int) (0 (0,0), afe) d = 0 (d (b,e), int) (d (0,0), eq) (d (b,e), int) (d (0,0), tame) (d (b,e), eq) (d (b,e), afe) (d (b,e), afe) (d (d,d+ize()), eq) (v = 0) (b 0 b d <= (e ize())) (d (b,e), ) (d (b,e), ) Figure 12: Data Cat. Aertion: aert d (b,e) a afe d 0 aert d (b,e) a eq b 0 b d d + aize(a) <= e aert d (b,e) a tame b 0 b d d + aize(a) <= e aert d id (b,e) afe d 0 aert d id (b,e) eq b 0 b d + [id] off + aize([id] t ) <= e aert d id (b,e) tame b 0 b d + [id] off + aize([id] t ) <= e Figure 13: Aertion. 13

14 E h r :a (v (, a)) E.S E v :a (Ev-Var) E h :a q readmem E.M = ome (b,e ) aert (b,e ) a q E h :a (Ev-Def) E h e:a E h e:a (Ev-Def-ErrorPro) E h :a q readmem E.M = ome (b,e ) aert (b,e ) a q E h Abort:a (Ev-Def-Abort) E h : q readmem E.M = ome (b,e ) aert id (b,e ) q E h id + [id] off :[id] t E h e:a E h id e:a (Ev-StructPo-ErrorPro) (Ev-StructPo) E h : q readmem E.M = ome (b,e ) aert id (b,e ) q E h id Abort:[id] t (Ev-StructPo-Abort) E h :n q tab n = ome readmem E.M = ome (b,e ) aert (b id,e ) q E h n id + [id] off :[id] t (Ev-NamePo) E h e:a E h n id e:a (Ev-NamePo-ErrorPro) E h :n q tab n = ome readmem E.M = ome (b,e ) aert (b id,e ) q E h n id Abort:[id] t (Ev-NamePo-Abort) Figure 14: Evauation LHS. 14

15 E r rh r :a r E E r i (i (0,0), int):int r E (Ev-Cont) E h :a readmemmeta E.M = ome d (b,e) E r h d (b,e), E.T I():a r E (Ev-Lh) E h e:a E r h e:a r E (Ev-Lh-ErrorPro) a a afe E.S!tame h:a E h :a E r (a afe)&h ( (0,0), a afe):a afe r E (Ev-RefSafe) a a afe E.S!tame h:a E h :a E r (a eq)&h ( (,+aize(a)), a eq):a eq r E (Ev-RefSeq) a a afe E.S tame h:a E h :a E r (a tame)&h ( (,+aize(a)), a tame):a tame r E (Ev-RefTame) E h e:a E r &h e:a r E (Ev-Ref-ErrorPro) E r rh 1 (d 1(b1,e 1), a 1 ):int r E E r rh 2 (d 2(b2,e 2), a 2 ):int r E E r rh 1 + rh 2 (d 1 + d 2(0,0), int):int r E (Ev-Add) E r rh 1 e:a r E E r rh 1 + rh 2 e:a r E (Ev-Add-ErrorPro1) E r rh 1 (d 1(b1,e 1), a 1 ):int r E E r rh 2 e:a r E E r rh 1 + rh 2 e:a r E (Ev-Add-ErrorPro2) E r rh 1 (d 1(b1,e 1), a 1 ): q r E E r rh 2 (d 2(b2,e 2), a 2 ):int r E E r rh 1 + rh 2 (d 1 + d 2 ize() (b1,e 1), q): q r E (Ev-AddPtr) E r rh 1 e:a r E E r rh 1 + rh 2 e:a r E (Ev-AddPtr-ErrorPro1) E r rh 1 (d 1(b1,e 1), a 1 ): q r E E r rh 2 e:a r E E r rh 1 + rh 2 e:e r E (Ev-AddPtr-ErrorPro2) Figure 15: Evauation RHS. 15

16 E r rh r :a r E E r rh (d (b,e), a 0 ):a r E datacat d (b,e) a a = d (b,e ) E r (a )rh (d (b,e ), a 0):a r E (Ev-Cat) E r rh e:a r E E r (a )rh e:a r E (Ev-Cat-ErrorPro) E r rh (d (b,e), a 0 ):a r E datacat d (b,e) a a = d (b,e ) E r (a )rh Abort:a r E (Ev-Cat-Abort) E r izeof(a) (aize(a) (0,0), int):int r E (Ev-Size) E r rh (d (b,e), a):int r E d ize() maoc E d = ome (E, ) E r ( afe)maoc rh ( (0,0), afe): afe r (E.M, E.S, udatetyeinfo E.T I d) (Ev-AocSafe) E r rh (d (b,e), a):int r E maoc E d = ome (E, ) E r ( eq)maoc rh ( (,+d), eq): eq r (E.M, E.S, udatetyeinfo E.T I d) (Ev-AocSeq) E r rh (d (b,e), a):int r E maoc E d = ome (E, ) E r ( tame)maoc rh ( (,+d), tame): tame r (E.M, E.S, udatetyeinfo E.T I d) (Ev-AocTame) E r rh e:a r E E r ( q)maoc rh e:a r E (Ev-Aoc-ErrorPro) E r rh (d (b,e), a):int r E maoc E d = none E r ( q)maoc rh OutofMem:a r (E (Ev-Aoc-OutofMem) E r rh (d (b,e), a):int r E d < ize() E r ( afe)maoc rh Abort:a r (E ) (Ev-AocSafe-Abort) Figure 16: Evauation RHS - Con. 16

17 E c c r c E E c ki ok c E (Ev-Ski) E c c 1 ok c E E c c 2 ok c E E c c 1 ; c 2 ok c E (Ev-Seq) E c c 1 e c E E c c 1 ; c 2 e c E (Ev-Seq-ErrorPro1) E c c 1 ok c E E c c 2 e c E E c c 1 ; c 2 e c E (Ev-Seq-ErrorPro2) E h : q E r rh (d (b,e), ):a r r E datacat d (b,e) q a r writememmeta E.M d (b,e) = ome M E c h = rh ok c (M, E.S, E.T I) (Ev-Aign-Ptr) E h :int E r rh (d (b,e), ):a r r E datacat d (b,e) int a r writemem E.M d = ome M E c h = rh ok c (M, E.S, E.T I) (Ev-Aign-NPtr) E h e:a E c h = rh e c E (Ev-Aign-ErrorPro1) E h :a E r rh e:a r r E E c h = rh e c E (Ev-Aign-ErrorPro2) E h : q E r rh (d (b,e), ):a r r E datacat d (b,e) q a r E c h = rh Abort c E (Ev-Aign-Ptr-Abort) Figure 17: Evauation CMD. 17

18 5 Proertie Lemma 5.1 (tack invariance) 1. If E E, E.S r rh:a and E r rh r :a r E, then E.S = E.S. 2. If E E, E.S c c and E c c r c E, then E.S = E.S. Proof: Part 1 i by induction on E r rh r :a r E, art 2 i by induction on E c c r c E. Lemma 5.2 (h inverion) If E E and E h : a, then vaidmem E.M and 0 baeaddr + aize(a) < maxaddr. Proof: By induction on E h :a. Lemma 5.3 (h tr inverion) If E E and E h :a, then 1. If a = afe, then E.T I() = afe 2. If a = eq, then E.T I() = eq 3. If a = tame, then.e.t I() = tame Lemma 5.4 (rh tr inverion) If E E and E r rh (d (b,e), a ):a r E, then 1. If a = eq and a = int, then b = e = 0 or d = b = 0 2. If a = afe, then a int or a = int d = b = 0 3. If a = tame, a = q and q tame, then b = e = 0 4. If a = tame, a = int, then b = e = 0 5. If a = afe, a = eq, then d = 0 or b 0 b d < e ize() 6. If a = afe, a = tame, then d = If a = eq, a = tame, then d = 0 or b = e = If a = afe, a = eq, then d = b = e = 0 or d = b e = b + ize(). Lemma 5.5 (rh inverion) If E E and E r rh (d (b,e), a ) : a r E, then E.M ; E.T I d (b,e) : a. D Proof: By h tr inverion 5.3, rh tr inverion 5.4. Theorem 5.1 (rh we-formed environment invariance) If E E, E.S r rh:a and E r rh r :a r E, then E E. Proof: By induction on E r rh r :a r E, other cae are trivia excet Ev-AocSafe, Ev- AocSeq and Ev-AocTame. 1. Ev-AocSafe: E r rh (d (b,e), a):int r E and maoc E d = ome (E, ). t.. W F Env(E.M, E.S, udatetyeinfo E.T I d). It i ufficient to how (a) E.M ; udatetyeinfo E.T I d S inverion 2.4. E.S: By maoc inverion 2.5 and udatetyeinfo 18

19 (b) M E.M ; udatetyeinfo E.T I d: By definition, it i to how (, d, b, e ). readmemmeta E.M = d (b,e ) E.M ; udatetyeinfo E.T I d d (b,e ) : (udatetyeinfo E.T I d)( ). i. +d < : By udatetyeinfo inverion 2.4, E.T I( ) = (udatetyeinfo E.T I d)( ). By detruct E.T I( ), each cae i by maoc inverion 2.5 and udatetyeinfo inverion 2.4. ii. < + d: By maoc inverion 2.5 and udatetyeinfo inverion Ev-AocSeq,Ev-AocTame: imiar to Ev-AocSafe. D Theorem 5.2 (cmd we-formed environment invariance) If E E, E.S c c and E c c r c E, then E E. Proof: By induction on E c c r c E, 1. Ev-Aign-Ptr: By rh inverion other: immediate. Theorem 5.3 (h rogre) If E E and E.S h : a, then.e h : a or E h Abort:a. Proof: By induction on E.S h:a, 1. WFL-Var: Immediate. 2. WFL-Def: E.S h 0 :a 0 q with h = h 0 and a = a 0. t.. E.S h 0 :a 0. By IH, (a) E h 0 : a 0 : By h inverion 5.2, we have readmemmeta E.M = ome (b,e ). The reut foow by that aert (b,e ) a 0 q i decidabe. (b) E h 0 Abort:a 0 : Immediate by Ev-Def-ErrorPro. 3. WFL-StructPo and WFL-NamePo: imiar to Cae WFL-Def. Theorem 5.4 (rh rogre) If E E and E.S r rh:a, then (d (b,e), a ), E.E r rh (d (b,e), a ): a r E or E, a.e r rh OutofMem:a r E or E, a.e r rh Abort:a r E. Proof: By induction on E.S r rh:a, 1. WFR-Cont: Immediate. 2. WFR-Lh: E.S h:a with rh = h and a = a. By h rogre 5.3, (a) E h : a : By h inverion 5.2, we have readmemmeta E.M = ome (b,e ). The reut foow by Ev-Lh. (b) E h Abort:a : Immediate by Ev-Lh-ErrorPro. 3. WFR-Ref-Safe: E!tame h:a with rh = &h and a = a afe. We have E h:a becaue E!tame h:a E h:a. By h rogre WFR-Ref-Seq: imiar to Ev-Ref-Safe. 19

20 5. WFR-Ref-Tame: imiar to Ev-Ref-Safe, but by E tame h:a E h:a. 6. WFR-Add: S r rh 1 : int and S r rh 2 : int with rh = rh 1 + rh 2 and a = int. By IH of rh 1, (a) E r rh 1 (d (b,e), a ) : a r E : By rh we-formed environment invariance 5.1, E E. By tack invariance 5.1, E.S = E.S. The deired reut i by IH of rh 2. (b) ee: By Ev-Add-ErrorPro1. 7. WFR-AddPtr: imiar to Cae WFR-Add. 8. WFR-Cat: S r rh :a with rh = (a)rh and a = a. By IH, (a) E r rh (d (b,e), a ):a r E : If datacat d (b,e) a a hod, then the reut i by Ev-Cat, ee it i by Ev-Cat-Abort. (b) ee: By Ev-Cat-ErrorPro. 9. WFR-Size: Immediate. 10. WFR-Aoc:S r rh :int with rh = ( q)maoc rh and a = q. By IH, (a) E r rh (d (b,e), a):int r E : i. maoc E d = ome (E, ): If q afe, then the reut i by Ev-Aoc-Seq and Ev- Aoc-Tame. Otherwie, if d ize(), the reut i by Ev-Aoc-Safe, ee by Ev-Aoc- SafeAbort. ii. maoc E d = none:by Ev-Aoc-OutofMem. (b) ee: By Ev-Aoc-ErrorPro. Theorem 5.5 (cmd rogre) If E E and E.S c c, then E.E c c ok c E or E.E c c OutofMem c E or E.E c c Abort c E. Proof: By induction on E.S c c, 1. WFC-Ski: Immediate. 2. WFC-Seq: S c c 1 and S c c 2 with c = c 1 ; c 2. By IH of c 1, (a) E c c 1 ok c E : By cmd we-formed environment invariance 5.2, W F EnvE. By tack invariance 5.1, E.S = E.S. The deired reut i by IH of c 2. (b) ee: By Ev-Seq-ErrorPro1. 3. WFC-Aign: S h:a, S r rh:a r and a r a where c = h = rh. By h rogre 5.3, (a) E h :a : By rh rogre 5.4, i. E rh (d (b,e), a r):a r E : A. a = int : By h inverion 5.2, writemem E.M d = ome M. In cae, datacat d (b,e) int a r hod. The reut i by Ev-Aign-NPtr. B. a = q : By h inverion 5.2, writememmeta E.M d(b, e) = ome M. In cae, the reut i by the decidabiity of datacat d (b,e) q a r ii. ee: By Ev-Aign-ErrorPro2. (b) ee: By Ev-Aign-ErrorPro1. 20

21 A Notationa Convention TEXT a b c d e err E i id h rh M n q r S t TI v USAGE atomic tye bae command vaue end error Environment int contant identity ocation eft hand ide exreion right hand ide exreion Memory named truct ointer tye quaifier reut anonymou truct Stack tye Tye Information variabe 21

0.1 Random useful facts. 0.2 Language Definition

0.1 Random useful facts. 0.2 Language Definition 0.1 Random useful facts Lemma double neg : P : Prop, {P} + { P} P P. Lemma leq dec : n m, {n m} + {n > m}. Lemma lt dec : n m, {n < m} + {n m}. 0.2 Language Definition Definition var := nat. Definition

More information

Reference counting:

Reference counting: Invariant: Reference counting: Reference counting: 2 0 3 2 0 2 2 0 2 2 2 2 2 white gray r r r black do not ;; init-allocator : -> void? (define (init-allocator) (for ([i (in-range 0 (heap-size))])

More information

Roy L. Crole. Operational Semantics Abstract Machines and Correctness. University of Leicester, UK

Roy L. Crole. Operational Semantics Abstract Machines and Correctness. University of Leicester, UK Midlands Graduate School, University of Birmingham, April 2008 1 Operational Semantics Abstract Machines and Correctness Roy L. Crole University of Leicester, UK Midlands Graduate School, University of

More information

T h e C S E T I P r o j e c t

T h e C S E T I P r o j e c t T h e P r o j e c t T H E P R O J E C T T A B L E O F C O N T E N T S A r t i c l e P a g e C o m p r e h e n s i v e A s s es s m e n t o f t h e U F O / E T I P h e n o m e n o n M a y 1 9 9 1 1 E T

More information

Bayesian Learning, Randomness and Logic. Marc Snir

Bayesian Learning, Randomness and Logic. Marc Snir Bayeian Learning, Randomne and Logic Marc Snir Background! 25 year old work, far from my current reearch! why preent now?! Becaue it wa done when I wa Eli tudent! Becaue it i about the foundation of epitemology!

More information

Research Article Simplicity and Commutative Bases of Derivations in Polynomial and Power Series Rings

Research Article Simplicity and Commutative Bases of Derivations in Polynomial and Power Series Rings ISRN Agebra Voume 2013 Artice ID 560648 4 page http://dx.doi.org/10.1155/2013/560648 Reearch Artice Simpicity and Commutative Bae of Derivation in Poynomia and Power Serie Ring Rene Batazar Univeridade

More information

List Coloring Graphs

List Coloring Graphs Lit Coloring Graph February 6, 004 LIST COLORINGS AND CHOICE NUMBER Thomaen Long Grotzch girth 5 verion Thomaen Long Let G be a connected planar graph of girth at leat 5. Let A be a et of vertice in G

More information

Executive Committee and Officers ( )

Executive Committee and Officers ( ) Gifted and Talented International V o l u m e 2 4, N u m b e r 2, D e c e m b e r, 2 0 0 9. G i f t e d a n d T a l e n t e d I n t e r n a t i o n a2 l 4 ( 2), D e c e m b e r, 2 0 0 9. 1 T h e W o r

More information

Verified Characteristic Formulae for CakeML. Armaël Guéneau, Magnus O. Myreen, Ramana Kumar, Michael Norrish April 18, 2017

Verified Characteristic Formulae for CakeML. Armaël Guéneau, Magnus O. Myreen, Ramana Kumar, Michael Norrish April 18, 2017 Verified Characteristic Formulae for CakeML Armaël Guéneau, Magnus O. Myreen, Ramana Kumar, Michael Norrish April 18, 2017 CakeML Has: references, modules, datatypes, exceptions, a FFI,... Doesn t have:

More information

Program Verification Using Separation Logic

Program Verification Using Separation Logic Program Verification Using Separation Logic Cristiano Calcagno Adapted from material by Dino Distefano Lecture 1 Goal of the course Study Separation Logic having automatic verification in mind Learn how

More information

Software Process Models there are many process model s in th e li t e ra t u re, s om e a r e prescriptions and some are descriptions you need to mode

Software Process Models there are many process model s in th e li t e ra t u re, s om e a r e prescriptions and some are descriptions you need to mode Unit 2 : Software Process O b j ec t i ve This unit introduces software systems engineering through a discussion of software processes and their principal characteristics. In order to achieve the desireable

More information

EE1. Solutions of Problems 7

EE1. Solutions of Problems 7 EE1 Soution of Probem 7 1. a) Appy the Ratio Tet. Puta n = n th term. a n = x n. Fix x 0. = x n+1 x n = x x a n. By the Ratio Tet the erie x n converge if the at imit x i < 1 1) n=0 and diverge if the

More information

Divide and Conquer Algorithms

Divide and Conquer Algorithms Divide and Conquer Algorithms T. M. Murali March 17, 2014 Divide and Conquer Break up a problem into several parts. Solve each part recursively. Solve base cases by brute force. Efficiently combine solutions

More information

Erasable Contracts. Abstract. 1. Introduction. Harvard University {jchinlee,

Erasable Contracts. Abstract. 1. Introduction. Harvard University {jchinlee, Erasable Contracts Jao-ke Chin-Lee Louis Li Harvard University {jchinlee, louisli}@college.harvard.edu Abstract Contract programming is a design approach that allows programmers to design formal specifications

More information

Alles Taylor & Duke, LLC Bob Wright, PE RECORD DRAWINGS. CPOW Mini-Ed Conf er ence Mar ch 27, 2015

Alles Taylor & Duke, LLC Bob Wright, PE RECORD DRAWINGS. CPOW Mini-Ed Conf er ence Mar ch 27, 2015 RECORD DRAWINGS CPOW Mini-Ed Conf er ence Mar ch 27, 2015 NOMENCLATURE: Record Draw ings?????? What Hap p ened t o As- Built s?? PURPOSE: Fur n ish a Reco r d o f Co m p o n en t s Allo w Locat io n o

More information

Abstracting Definitional Interpreters. David Van Horn

Abstracting Definitional Interpreters. David Van Horn Abstracting Definitional Interpreters David Van Horn Abstracting Definitional Interpreters David Van Horn Northeastern University Definitional interpreters written in monadic style can express a wide variety

More information

Well-Posedness of Feedback Loop:

Well-Posedness of Feedback Loop: ntena Stabiity We-oedne of Feedback Loop: onide the foowing feedback ytem - u u p d i d y Let be both pope tanfe function. Howeve u n d di 3 3 ote that the tanfe function fom the extena igna n d d to u

More information

Program verification. 18 October 2017

Program verification. 18 October 2017 Program verification 18 October 2017 Example revisited // assume(n>2); void partition(int a[], int n) { int pivot = a[0]; int lo = 1, hi = n-1; while (lo

More information

CIS 500 Software Foundations Midterm II Answer key November 17, 2004

CIS 500 Software Foundations Midterm II Answer key November 17, 2004 CIS 500 Software Foundations Midterm II Answer key November 17, 2004 Simply typed lambda-calculus The following questions refer to the simply typed lambda-calculus with booleans and error. The syntax,

More information

Structuring the verification of heap-manipulating programs

Structuring the verification of heap-manipulating programs Structuring the verification of heap-manipulating programs Aleksandar Nanevski (IMDEA Madrid) Viktor Vafeiadis (MSR / Univ. of Cambridge) Josh Berdine (MSR Cambridge) Hoare/Separation Logic Hoare logic

More information

Pairwise RNA Edit Distance

Pairwise RNA Edit Distance Pairwise RNA Edit Distance In the foowing: Sequences S 1 and S 2 associated structures P 1 and P 2 scoring of aignment: different edit operations arc atering arc removing 1) ACGUUGACUGACAACAC..(((...)))...

More information

Statically Detecting Uninitialized Array Element Usage in Perl Program

Statically Detecting Uninitialized Array Element Usage in Perl Program ROPAS RESEARCH ON PROGRAM ANALYSIS SYSTEM NATIONAL CREATIVE RESEARCH INITIATIVE CENTER 1998-2003 PROGRAMMING RESEARCH LABORATORY, SCHOOL OF COMPUTER SCIENCE & ENGINEERING SEOUL NATIONAL UNIVERSITY ROPAS

More information

Inductive Definitions with Inference Rules 1 / 27

Inductive Definitions with Inference Rules 1 / 27 Inductive Definitions with Inference Rules 1 / 27 Outline Introduction Specifying inductive definitions Inference rules in action Judgments, axioms, and rules Reasoning about inductive definitions Direct

More information

The Lifting Lemma. Ralf Hinze

The Lifting Lemma. Ralf Hinze The Lifting Lemma Ralf Hinze Computing Laboratory, University of Oxford Wolfson Building, Parks Road, Oxford, OX1 3QD, England ralf.hinze@comlab.ox.ac.uk http://www.comlab.ox.ac.uk/ralf.hinze/ June 2009

More information

Syntax and semantics of a GPU kernel programming language

Syntax and semantics of a GPU kernel programming language Syntax and semantics of a GPU kernel programming language John Wickerson April 17, 2016 Abstract This document accompanies the article The Design and Implementation of a Verification Technique for GPU

More information

Predicate Logic. Xinyu Feng 09/26/2011. University of Science and Technology of China (USTC)

Predicate Logic. Xinyu Feng 09/26/2011. University of Science and Technology of China (USTC) University of Science and Technology of China (USTC) 09/26/2011 Overview Predicate logic over integer expressions: a language of logical assertions, for example x. x + 0 = x Why discuss predicate logic?

More information

Divide and Conquer Algorithms

Divide and Conquer Algorithms Divide and Conquer Algorithms T. M. Murali February 19, 2013 Divide and Conquer Break up a problem into several parts. Solve each part recursively. Solve base cases by brute force. Efficiently combine

More information

Foundations of Programming Languages and Software Engineering

Foundations of Programming Languages and Software Engineering Foundations of Programming Languages and Software Engineering Jan-Georg Smaus (Peter Thiemann) Universität Freiburg July 2011 Abstract Data Types Foundations of Programming Languages and Software Engineering

More information

Principles of AI Planning

Principles of AI Planning Principles of 5. Planning as search: progression and regression Malte Helmert and Bernhard Nebel Albert-Ludwigs-Universität Freiburg May 4th, 2010 Planning as (classical) search Introduction Classification

More information

Program Verification using Separation Logic Lecture 0 : Course Introduction and Assertion Language. Hongseok Yang (Queen Mary, Univ.

Program Verification using Separation Logic Lecture 0 : Course Introduction and Assertion Language. Hongseok Yang (Queen Mary, Univ. Program Verification using Separation Logic Lecture 0 : Course Introduction and Assertion Language Hongseok Yang (Queen Mary, Univ. of London) Dream Automatically verify the memory safety of systems software,

More information

How To Do Piecewise Exponential Survival Analysis in Stata 7 (Allison 1995:Output 4.20) revised

How To Do Piecewise Exponential Survival Analysis in Stata 7 (Allison 1995:Output 4.20) revised WM Mason, Soc 213B, S 02, UCLA Page 1 of 15 How To Do Piecewise Exponential Survival Analysis in Stata 7 (Allison 1995:Output 420) revised 4-25-02 This document can function as a "how to" for setting up

More information

I M P O R T A N T S A F E T Y I N S T R U C T I O N S W h e n u s i n g t h i s e l e c t r o n i c d e v i c e, b a s i c p r e c a u t i o n s s h o

I M P O R T A N T S A F E T Y I N S T R U C T I O N S W h e n u s i n g t h i s e l e c t r o n i c d e v i c e, b a s i c p r e c a u t i o n s s h o I M P O R T A N T S A F E T Y I N S T R U C T I O N S W h e n u s i n g t h i s e l e c t r o n i c d e v i c e, b a s i c p r e c a u t i o n s s h o u l d a l w a y s b e t a k e n, i n c l u d f o l

More information

Predicate Logic. Xinyu Feng 11/20/2013. University of Science and Technology of China (USTC)

Predicate Logic. Xinyu Feng 11/20/2013. University of Science and Technology of China (USTC) University of Science and Technology of China (USTC) 11/20/2013 Overview Predicate logic over integer expressions: a language of logical assertions, for example x. x + 0 = x Why discuss predicate logic?

More information

Online Appendix to: Types for Atomicity: Static Checking and Inference for Java

Online Appendix to: Types for Atomicity: Static Checking and Inference for Java Online Appendix to: Types for Atomicity: Static Checking and Inference for Java CORMAC FLANAGAN University of California at Santa Cruz STEPHEN N. FREUND and MARINA LIFSHIN Williams College and SHAZ QADEER

More information

Functional Big-step Semantics

Functional Big-step Semantics Functional Big-step Semantics FM talk, 11 Mar 2015 Magnus Myréen Books Big-step semantics are defined as inductively defined relation. Functions are better! me Context: CakeML verified compiler Old compiler:

More information

Hoare Logic (I): Axiomatic Semantics and Program Correctness

Hoare Logic (I): Axiomatic Semantics and Program Correctness Hoare Logic (I): Axiomatic Semantics and Program Correctness (Based on [Apt and Olderog 1991; Gries 1981; Hoare 1969; Kleymann 1999; Sethi 199]) Yih-Kuen Tsay Dept. of Information Management National Taiwan

More information

Reasoning about Trace Properties of Higher-order Programs

Reasoning about Trace Properties of Higher-order Programs Reasoning about Trace Properties of Higher-order Programs Limin Jia Joint work with Deepak Garg and Anupam Datta CyLab University Goal: Compositional security S 1 ψ 1 + ϕ S 2 ψ 2! Do S 1 + S 2 satisfy

More information

CSE 505, Fall 2008, Midterm Examination 29 October Please do not turn the page until everyone is ready.

CSE 505, Fall 2008, Midterm Examination 29 October Please do not turn the page until everyone is ready. CSE 505, Fall 2008, Midterm Examination 29 October 2008 Please do not turn the page until everyone is ready. Rules: The exam is closed-book, closed-note, except for one side of one 8.5x11in piece of paper.

More information

Solutions to EoPL3 Exercises

Solutions to EoPL3 Exercises Solutions to EoPL3 Exercises Release 0.1.0 Cheng Lian May 16, 2017 Contents 1 Contents 3 2 Overview 29 i ii Author Cheng Lian Contents 1 2 Contents CHAPTER 1 Contents Chapter 1.

More information

CSE20: Discrete Mathematics

CSE20: Discrete Mathematics Spring 2018 Summary Today: Induction, Program Correctness Reading: Chap. 5 Division Theorem Theorem: For every integer a and positive integer d 1, there exist integers q, r such that a = qd + r and 0 r

More information

Collecting garbage concurrently (but correctly)

Collecting garbage concurrently (but correctly) Collecting garbage concurrently (but correctly) Kamal Lodaya The Institute of Mathematical Sciences, Chennai Joint work with Kalpesh Kapoor (IIT, Guwahati) and Uday Reddy (U. Birmingham) 1 First order

More information

A Short Introduction to Hoare Logic

A Short Introduction to Hoare Logic A Short Introduction to Hoare Logic Supratik Chakraborty I.I.T. Bombay June 23, 2008 Supratik Chakraborty (I.I.T. Bombay) A Short Introduction to Hoare Logic June 23, 2008 1 / 34 Motivation Assertion checking

More information

H STO RY OF TH E SA NT

H STO RY OF TH E SA NT O RY OF E N G L R R VER ritten for the entennial of th e Foundin g of t lair oun t y on ay 8 82 Y EEL N E JEN K RP O N! R ENJ F ] jun E 3 1 92! Ph in t ed b y h e t l a i r R ep u b l i c a n O 4 1922

More information

Predicate Logic. x. x + 0 = x. Predicate logic over integer expressions: a language of logical assertions, for example. Why discuss predicate logic?

Predicate Logic. x. x + 0 = x. Predicate logic over integer expressions: a language of logical assertions, for example. Why discuss predicate logic? Predicate Logic Predicate logic over integer expressions: a language of logical assertions, for example x. x + 0 = x Why discuss predicate logic? It is an example of a simple language It has simple denotational

More information

Hoare Logic: Reasoning About Imperative Programs

Hoare Logic: Reasoning About Imperative Programs Hoare Logic: Reasoning About Imperative Programs COMP1600 / COMP6260 Dirk Pattinson Australian National University Semester 2, 2018 Programming Paradigms Functional. (Haskell, SML, OCaml,... ) main paradigm:

More information

A B CDE F B FD D A C AF DC A F

A B CDE F B FD D A C AF DC A F International Journal of Arts & Sciences, CD-ROM. ISSN: 1944-6934 :: 4(20):121 131 (2011) Copyright c 2011 by InternationalJournal.org A B CDE F B FD D A C A BC D EF C CE C A D ABC DEF B B C A E E C A

More information

CIS 500 Software Foundations. Final Exam. May 9, Answer key. Hoare Logic

CIS 500 Software Foundations. Final Exam. May 9, Answer key. Hoare Logic CIS 500 Software Foundations Final Exam May 9, 2011 Answer key Hoare Logic 1. (7 points) What does it mean to say that the Hoare triple {{P}} c {{Q}} is valid? Answer: {{P}} c {{Q}} means that, for any

More information

Use precise language and domain-specific vocabulary to inform about or explain the topic. CCSS.ELA-LITERACY.WHST D

Use precise language and domain-specific vocabulary to inform about or explain the topic. CCSS.ELA-LITERACY.WHST D Lesson eight What are characteristics of chemical reactions? Science Constructing Explanations, Engaging in Argument and Obtaining, Evaluating, and Communicating Information ENGLISH LANGUAGE ARTS Reading

More information

Software Engineering

Software Engineering Software Engineering Lecture 07: Design by Contract Peter Thiemann University of Freiburg, Germany 02.06.2014 Table of Contents Design by Contract Contracts for Procedural Programs Contracts for Object-Oriented

More information

Applied Logic. Lecture 1 - Propositional logic. Marcin Szczuka. Institute of Informatics, The University of Warsaw

Applied Logic. Lecture 1 - Propositional logic. Marcin Szczuka. Institute of Informatics, The University of Warsaw Applied Logic Lecture 1 - Propositional logic Marcin Szczuka Institute of Informatics, The University of Warsaw Monographic lecture, Spring semester 2017/2018 Marcin Szczuka (MIMUW) Applied Logic 2018

More information

Compiling Techniques

Compiling Techniques Lecture 11: Introduction to 13 November 2015 Table of contents 1 Introduction Overview The Backend The Big Picture 2 Code Shape Overview Introduction Overview The Backend The Big Picture Source code FrontEnd

More information

COSE212: Programming Languages. Lecture 1 Inductive Definitions (1)

COSE212: Programming Languages. Lecture 1 Inductive Definitions (1) COSE212: Programming Languages Lecture 1 Inductive Definitions (1) Hakjoo Oh 2017 Fall Hakjoo Oh COSE212 2017 Fall, Lecture 1 September 4, 2017 1 / 9 Inductive Definitions Inductive definition (induction)

More information

Static Program Analysis

Static Program Analysis Static Program Analysis Lecture 16: Abstract Interpretation VI (Counterexample-Guided Abstraction Refinement) Thomas Noll Lehrstuhl für Informatik 2 (Software Modeling and Verification) noll@cs.rwth-aachen.de

More information

P a g e 3 6 of R e p o r t P B 4 / 0 9

P a g e 3 6 of R e p o r t P B 4 / 0 9 P a g e 3 6 of R e p o r t P B 4 / 0 9 p r o t e c t h um a n h e a l t h a n d p r o p e r t y fr om t h e d a n g e rs i n h e r e n t i n m i n i n g o p e r a t i o n s s u c h a s a q u a r r y. J

More information

Chapter 4. The Laplace Transform Method

Chapter 4. The Laplace Transform Method Chapter 4. The Laplace Tranform Method The Laplace Tranform i a tranformation, meaning that it change a function into a new function. Actually, it i a linear tranformation, becaue it convert a linear combination

More information

P ( N m=na c m) (σ-additivity) exp{ P (A m )} (1 x e x for x 0) m=n P (A m ) 0

P ( N m=na c m) (σ-additivity) exp{ P (A m )} (1 x e x for x 0) m=n P (A m ) 0 MA414 STOCHASTIC ANALYSIS: EXAMINATION SOLUTIONS, 211 Q1.(i) Firt Borel-Cantelli Lemma). A = lim up A n = n m=n A m, o A m=na m for each n. So P (A) P ( m=na m ) m=n P (A m ) (n ) (tail of a convergent

More information

A CONSTRUCTION OF ARITHMETIC PROGRESSION-FREE SEQUENCES AND ITS ANALYSIS

A CONSTRUCTION OF ARITHMETIC PROGRESSION-FREE SEQUENCES AND ITS ANALYSIS A CONSTRUCTION OF ARITHMETIC PROGRESSION-FREE SEQUENCES AND ITS ANALYSIS BRIAN L MILLER & CHRIS MONICO TEXAS TECH UNIVERSITY Abstract We describe a particular greedy construction of an arithmetic progression-free

More information

OH BOY! Story. N a r r a t iv e a n d o bj e c t s th ea t e r Fo r a l l a g e s, fr o m th e a ge of 9

OH BOY! Story. N a r r a t iv e a n d o bj e c t s th ea t e r Fo r a l l a g e s, fr o m th e a ge of 9 OH BOY! O h Boy!, was or igin a lly cr eat ed in F r en ch an d was a m a jor s u cc ess on t h e Fr en ch st a ge f or young au di enc es. It h a s b een s een by ap pr ox i ma t ely 175,000 sp ect at

More information

arxiv: v4 [math.co] 21 Sep 2014

arxiv: v4 [math.co] 21 Sep 2014 ASYMPTOTIC IMPROVEMENT OF THE SUNFLOWER BOUND arxiv:408.367v4 [math.co] 2 Sep 204 JUNICHIRO FUKUYAMA Abtract. A unflower with a core Y i a family B of et uch that U U Y for each two different element U

More information

COMP2111 Glossary. Kai Engelhardt. Contents. 1 Symbols. 1 Symbols 1. 2 Hoare Logic 3. 3 Refinement Calculus 5. rational numbers Q, real numbers R.

COMP2111 Glossary. Kai Engelhardt. Contents. 1 Symbols. 1 Symbols 1. 2 Hoare Logic 3. 3 Refinement Calculus 5. rational numbers Q, real numbers R. COMP2111 Glossary Kai Engelhardt Revision: 1.3, May 18, 2018 Contents 1 Symbols 1 2 Hoare Logic 3 3 Refinement Calculus 5 1 Symbols Booleans B = {false, true}, natural numbers N = {0, 1, 2,...}, integers

More information

MP 5 Program Transition Systems and Linear Temporal Logic

MP 5 Program Transition Systems and Linear Temporal Logic MP 5 Program Transition Systems and Linear Temporal Logic CS 477 Spring 2018 Revision 1.0 Assigned April 10, 2018 Due April 17, 2018, 9:00 PM Extension extend48 hours (penalty 20% of total points possible)

More information

CHBE320 LECTURE V LAPLACE TRANSFORM AND TRANSFER FUNCTION. Professor Dae Ryook Yang

CHBE320 LECTURE V LAPLACE TRANSFORM AND TRANSFER FUNCTION. Professor Dae Ryook Yang CHBE3 ECTURE V APACE TRANSFORM AND TRANSFER FUNCTION Profeor Dae Ryook Yang Spring 8 Dept. of Chemical and Biological Engineering 5- Road Map of the ecture V aplace Tranform and Tranfer function Definition

More information

P a g e 5 1 of R e p o r t P B 4 / 0 9

P a g e 5 1 of R e p o r t P B 4 / 0 9 P a g e 5 1 of R e p o r t P B 4 / 0 9 J A R T a l s o c o n c l u d e d t h a t a l t h o u g h t h e i n t e n t o f N e l s o n s r e h a b i l i t a t i o n p l a n i s t o e n h a n c e c o n n e

More information

Agenda Rationale for ETG S eek ing I d eas ETG fram ew ork and res u lts 2

Agenda Rationale for ETG S eek ing I d eas ETG fram ew ork and res u lts 2 Internal Innovation @ C is c o 2 0 0 6 C i s c o S y s t e m s, I n c. A l l r i g h t s r e s e r v e d. C i s c o C o n f i d e n t i a l 1 Agenda Rationale for ETG S eek ing I d eas ETG fram ew ork

More information

Use precise language and domain-specific vocabulary to inform about or explain the topic. CCSS.ELA-LITERACY.WHST D

Use precise language and domain-specific vocabulary to inform about or explain the topic. CCSS.ELA-LITERACY.WHST D Lesson seven What is a chemical reaction? Science Constructing Explanations, Engaging in Argument and Obtaining, Evaluating, and Communicating Information ENGLISH LANGUAGE ARTS Reading Informational Text,

More information

Homework 5 Solutions

Homework 5 Solutions Stat 310B/Math 230B Theory of Probabiity Homework 5 Soutions Andrea Montanari Due on 2/19/2014 Exercise [5.3.20] 1. We caim that n 2 [ E[h F n ] = 2 n i=1 A i,n h(u)du ] I Ai,n (t). (1) Indeed, integrabiity

More information

176 5 t h Fl oo r. 337 P o ly me r Ma te ri al s

176 5 t h Fl oo r. 337 P o ly me r Ma te ri al s A g la di ou s F. L. 462 E l ec tr on ic D ev el op me nt A i ng er A.W.S. 371 C. A. M. A l ex an de r 236 A d mi ni st ra ti on R. H. (M rs ) A n dr ew s P. V. 326 O p ti ca l Tr an sm is si on A p ps

More information

EDA045F: Program Analysis LECTURE 10: TYPES 1. Christoph Reichenbach

EDA045F: Program Analysis LECTURE 10: TYPES 1. Christoph Reichenbach EDA045F: Program Analysis LECTURE 10: TYPES 1 Christoph Reichenbach In the last lecture... Performance Counters Challenges in Dynamic Performance Analysis Taint Analysis Binary Instrumentation 2 / 44 Types

More information

S-P wave phase shift extraction procedure in D + K - π + e + ν decay channel ( & c.c.) with BaBar João Costa, LAL Orsay

S-P wave phase shift extraction procedure in D + K - π + e + ν decay channel ( & c.c.) with BaBar João Costa, LAL Orsay S-P wave hae hift extraction rocedure in D + - π + e + ν decay channe ( & c.c. with BaBar João Cota, LAL Oray LNF Sring Schoo Bruno Touchek What are you going to hear now? S P wave hift? How ha thi hae

More information

The Interval Shapley Value for Type-2 Interval Games

The Interval Shapley Value for Type-2 Interval Games Research Journa of Appied ciences, Engineering Technoogy 4(): 334-342, 22 IN: 24-7467 Maxwe cientific rganization, 22 ubmitted: December 23, 2 Accepted: January 2, 22 Pubished: May 5, 22 The Interva hapey

More information

c. What is the average rate of change of f on the interval [, ]? Answer: d. What is a local minimum value of f? Answer: 5 e. On what interval(s) is f

c. What is the average rate of change of f on the interval [, ]? Answer: d. What is a local minimum value of f? Answer: 5 e. On what interval(s) is f Essential Skills Chapter f ( x + h) f ( x ). Simplifying the difference quotient Section. h f ( x + h) f ( x ) Example: For f ( x) = 4x 4 x, find and simplify completely. h Answer: 4 8x 4 h. Finding the

More information

Homework 05 - H Atom and Electron Configuration

Homework 05 - H Atom and Electron Configuration HW05 - H Atom and Eectron Configuration This is a preview of the pubished version of the quiz Started: Sep 25 at 6pm Quiz Instructions Homework 05 - H Atom and Eectron Configuration Question 1 Which of

More information

Exercises for lectures 19 Polynomial methods

Exercises for lectures 19 Polynomial methods Exercie for lecture 19 Polynomial method Michael Šebek Automatic control 016 15-4-17 Diviion of polynomial with and without remainder Polynomial form a circle, but not a body. (Circle alo form integer,

More information

Algebraic theories in the presence of binding operators, substitution, etc.

Algebraic theories in the presence of binding operators, substitution, etc. Algebraic theories in the presence of binding operators, substitution, etc. Chung Kil Hur Joint work with Marcelo Fiore Computer Laboratory University of Cambridge 20th March 2006 Overview First order

More information

Suggestions - Problem Set (a) Show the discriminant condition (1) takes the form. ln ln, # # R R

Suggestions - Problem Set (a) Show the discriminant condition (1) takes the form. ln ln, # # R R Suggetion - Problem Set 3 4.2 (a) Show the dicriminant condition (1) take the form x D Ð.. Ñ. D.. D. ln ln, a deired. We then replace the quantitie. 3ß D3 by their etimate to get the proper form for thi

More information

Principles of Program Analysis: A Sampler of Approaches

Principles of Program Analysis: A Sampler of Approaches Principles of Program Analysis: A Sampler of Approaches Transparencies based on Chapter 1 of the book: Flemming Nielson, Hanne Riis Nielson and Chris Hankin: Principles of Program Analysis Springer Verlag

More information

A Brief History of Shared memory C M U

A Brief History of Shared memory C M U A Brief History of Shared memory S t e p h e n B r o o k e s C M U 1 Outline Revisionist history Rational reconstruction of early models Evolution of recent models A unifying framework Fault-detecting

More information

Completeness of Pointer Program Verification by Separation Logic

Completeness of Pointer Program Verification by Separation Logic ISSN 1346-5597 NII Technical Report Completeness of Pointer Program Verification by Separation Logic Makoto Tatsuta, Wei-Ngan Chin, and Mahmudul Faisal Al Ameen NII-2009-013E June 2009 Completeness of

More information

Connected Graphs and Spanning Trees

Connected Graphs and Spanning Trees Connected Graphs and Spanning Trees GAINA, Daniel January 9, 2014 1 / 22 Describing the problem I G = (V, E) - graph 1 V - set of vertices 2 E - (multi)set of edges Example: 1 2 3 4 5 6 7 8 9 V = {1,...,

More information

Program verification. Hoare triples. Assertional semantics (cont) Example: Semantics of assignment. Assertional semantics of a program

Program verification. Hoare triples. Assertional semantics (cont) Example: Semantics of assignment. Assertional semantics of a program Program verification Assertional semantics of a program Meaning of a program: relation between its inputs and outputs; specified by input assertions (pre-conditions) and output assertions (post-conditions)

More information

Homework 05 - H Atom and Electron Configuration

Homework 05 - H Atom and Electron Configuration HW05 - H Atom and Eectron Configura!on! This is a preview of the pubished version of the quiz Started: Sep 18 at 12:47pm Quiz Instruc!ons Homework 05 - H Atom and Eectron Configuration Question 1 Which

More information

Hoare Logic for Realistically Modelled Machine Code

Hoare Logic for Realistically Modelled Machine Code Hoare Logic for Realistically Modelled Machine Code Magnus O. Myreen, Michael J. C. Gordon TACAS, March 2007 This talk Contribution: A mechanised Hoare logic for machine code with emphasis on resource

More information

Table of C on t en t s Global Campus 21 in N umbe r s R e g ional Capac it y D e v e lopme nt in E-L e ar ning Structure a n d C o m p o n en ts R ea

Table of C on t en t s Global Campus 21 in N umbe r s R e g ional Capac it y D e v e lopme nt in E-L e ar ning Structure a n d C o m p o n en ts R ea G Blended L ea r ni ng P r o g r a m R eg i o na l C a p a c i t y D ev elo p m ent i n E -L ea r ni ng H R K C r o s s o r d e r u c a t i o n a n d v e l o p m e n t C o p e r a t i o n 3 0 6 0 7 0 5

More information

Secure Information Flow Based on Data Flow Analysis

Secure Information Flow Based on Data Flow Analysis SSN 746-7659, Engand, UK Journa of nformation and Computing Science Vo., No. 4, 007, pp. 5-60 Secure nformation Fow Based on Data Fow Anaysis Jianbo Yao Center of nformation and computer, Zunyi Norma Coege,

More information

CHE302 LECTURE V LAPLACE TRANSFORM AND TRANSFER FUNCTION. Professor Dae Ryook Yang

CHE302 LECTURE V LAPLACE TRANSFORM AND TRANSFER FUNCTION. Professor Dae Ryook Yang CHE3 ECTURE V APACE TRANSFORM AND TRANSFER FUNCTION Profeor Dae Ryook Yang Fall Dept. of Chemical and Biological Engineering Korea Univerity CHE3 Proce Dynamic and Control Korea Univerity 5- SOUTION OF

More information

Principles of Program Analysis: Control Flow Analysis

Principles of Program Analysis: Control Flow Analysis Principles of Program Analysis: Control Flow Analysis Transparencies based on Chapter 3 of the book: Flemming Nielson, Hanne Riis Nielson and Chris Hankin: Principles of Program Analysis. Springer Verlag

More information

Concurrent separation logic and operational semantics

Concurrent separation logic and operational semantics MFPS 2011 Concurrent separation logic and operational semantics Viktor Vafeiadis Max Planck Institute for Software Systems (MPI-SWS), Germany Abstract This paper presents a new soundness proof for concurrent

More information

Generalized Bell polynomials and the combinatorics of Poisson central moments

Generalized Bell polynomials and the combinatorics of Poisson central moments Generaized Be poynomias and the combinatorics of Poisson centra moments Nicoas Privaut Division of Mathematica Sciences Schoo of Physica and Mathematica Sciences Nanyang Technoogica University SPMS-MAS-05-43,

More information

VIII. Addition of Angular Momenta

VIII. Addition of Angular Momenta VIII Addition of Anguar Momenta a Couped and Uncouped Bae When deaing with two different ource of anguar momentum, Ĵ and Ĵ, there are two obviou bae that one might chooe to work in The firt i caed the

More information

Designing Control Loops for Linear and Switching Power Supplies: A Tutorial Guide Christophe Basso October 2012 Last update March 3 rd 2014

Designing Control Loops for Linear and Switching Power Supplies: A Tutorial Guide Christophe Basso October 2012 Last update March 3 rd 2014 Deigning Control Loo for Linear and Switching Power Sulie: A Tutorial Guide Chritohe Bao October Lat udate March 3 rd 4 Correction of tyo, mitake and error found by reader or by the author himelf. Secial

More information

Lecture 6: Resonance II. Announcements

Lecture 6: Resonance II. Announcements EES 5 Spring 4, Lecture 6 Lecture 6: Reonance II EES 5 Spring 4, Lecture 6 Announcement The lab tart thi week You mut how up for lab to tay enrolled in the coure. The firt lab i available on the web ite,

More information

Theoretical Computer Science. Optimal algorithms for online scheduling with bounded rearrangement at the end

Theoretical Computer Science. Optimal algorithms for online scheduling with bounded rearrangement at the end Theoretical Computer Science 4 (0) 669 678 Content lit available at SciVere ScienceDirect Theoretical Computer Science journal homepage: www.elevier.com/locate/tc Optimal algorithm for online cheduling

More information

Spring 2016 Program Analysis and Verification. Lecture 3: Axiomatic Semantics I. Roman Manevich Ben-Gurion University

Spring 2016 Program Analysis and Verification. Lecture 3: Axiomatic Semantics I. Roman Manevich Ben-Gurion University Spring 2016 Program Analysis and Verification Lecture 3: Axiomatic Semantics I Roman Manevich Ben-Gurion University Warm-up exercises 1. Define program state: 2. Define structural semantics configurations:

More information

ECEN 651: Microprogrammed Control of Digital Systems Department of Electrical and Computer Engineering Texas A&M University

ECEN 651: Microprogrammed Control of Digital Systems Department of Electrical and Computer Engineering Texas A&M University ECEN 651: Microprogrammed Control of Digital Systems Department of Electrical and Computer Engineering Texas A&M University Prof. Mi Lu TA: Ehsan Rohani Laboratory Exercise #4 MIPS Assembly and Simulation

More information

CONGRUENCES. 1. History

CONGRUENCES. 1. History CONGRUENCES HAO BILLY LEE Abstract. These are notes I created for a seminar tak, foowing the papers of On the -adic Representations and Congruences for Coefficients of Moduar Forms by Swinnerton-Dyer and

More information

Appendix. Proof of relation (3) for α 0.05.

Appendix. Proof of relation (3) for α 0.05. Appendi. Proof of relation 3 for α.5. For the argument, we will need the following reult that follow from Lemma 1 Bakirov 1989 and it proof. Lemma 1 Let g,, 1 be a continuouly differentiable function uch

More information

Analysis-directed semantics

Analysis-directed semantics Analysis-directed semantics Dominic Orchard Imperial College London work in progress Syntax directed e.g. (untyped) λ-calculus to reduction relation (λx. e 1 ) e 2 e 1 [x/e 2 ] e 1 e 1 e 1 e 2 e 1 e 2

More information

Specification of Chemical Formulæ in XL with Operator Overloading

Specification of Chemical Formulæ in XL with Operator Overloading Formulæ in with Specification of Formulæ in with University of Göttingen 28 February 2012 Formulæ in with Outline 1 2 3 4 5 Formulæ in with ultimately we want to specify reactions like 2H 2 + O 2 k f kb

More information

DESIGN SPECTRA FOR BURIED PIPELINES

DESIGN SPECTRA FOR BURIED PIPELINES th Word Conference on Earthquae Engineering Vancouver, B.C., Canada Augut -6, 4 Paper o. 94 DEIG PECTRA FOR BURIED PIPEIE i-ing HOG and Tzuchien CHE UMMARY For a buried pipeine ytem, the imum repone aong

More information

Lecture 21. The Lovasz splitting-off lemma Topics in Combinatorial Optimization April 29th, 2004

Lecture 21. The Lovasz splitting-off lemma Topics in Combinatorial Optimization April 29th, 2004 18.997 Topic in Combinatorial Optimization April 29th, 2004 Lecture 21 Lecturer: Michel X. Goeman Scribe: Mohammad Mahdian 1 The Lovaz plitting-off lemma Lovaz plitting-off lemma tate the following. Theorem

More information