From: Arnaud Giersch Date: Mon, 22 Mar 2010 09:22:41 +0000 (+0100) Subject: Added book chapter submitted in 2009 and rejected in 2010. X-Git-Url: https://bilbo.iut-bm.univ-fcomte.fr/and/gitweb/fusion.git/commitdiff_plain/cce4c451f1b7723ccd6f1e1578736f7c82b2e02f Added book chapter submitted in 2009 and rejected in 2010. --- cce4c451f1b7723ccd6f1e1578736f7c82b2e02f diff --git a/chapitre-2009/Density.ps b/chapitre-2009/Density.ps new file mode 100644 index 0000000..de94357 --- /dev/null +++ b/chapitre-2009/Density.ps @@ -0,0 +1,755 @@ +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: Density.ps +%%Creator: gnuplot 4.0 patchlevel 0 +%%CreationDate: Tue Feb 5 17:29:59 2008 +%%DocumentFonts: (atend) +%%BoundingBox: 50 50 410 302 +%%Orientation: Portrait +%%EndComments +/gnudict 256 dict def +gnudict begin +/Color false def +/Solid false def +/gnulinewidth 5.000 def +/userlinewidth gnulinewidth def +/vshift -66 def +/dl {10.0 mul} def +/hpt_ 31.5 def +/vpt_ 31.5 def +/hpt hpt_ def +/vpt vpt_ def +/Rounded false def +/M {moveto} bind def +/L {lineto} bind def +/R {rmoveto} bind def +/V {rlineto} bind def +/N {newpath moveto} bind def +/C {setrgbcolor} bind def +/f {rlineto fill} bind def +/vpt2 vpt 2 mul def +/hpt2 hpt 2 mul def +/Lshow { currentpoint stroke M + 0 vshift R show } def +/Rshow { currentpoint stroke M + dup stringwidth pop neg vshift R show } def +/Cshow { currentpoint stroke M + dup stringwidth pop -2 div vshift R show } def +/UP { dup vpt_ mul /vpt exch def hpt_ mul /hpt exch def + /hpt2 hpt 2 mul def /vpt2 vpt 2 mul def } def +/DL { Color {setrgbcolor Solid {pop []} if 0 setdash } + {pop pop pop 0 setgray Solid {pop []} if 0 setdash} ifelse } def +/BL { stroke userlinewidth 2 mul setlinewidth + Rounded { 1 setlinejoin 1 setlinecap } if } def +/AL { stroke userlinewidth 2 div setlinewidth + Rounded { 1 setlinejoin 1 setlinecap } if } def +/UL { dup gnulinewidth mul /userlinewidth exch def + dup 1 lt {pop 1} if 10 mul /udl exch def } def +/PL { stroke userlinewidth setlinewidth + Rounded { 1 setlinejoin 1 setlinecap } if } def +/LTw { PL [] 1 setgray } def +/LTb { BL [] 0 0 0 DL } def +/LTa { AL [1 udl mul 2 udl mul] 0 setdash 0 0 0 setrgbcolor } def +/LT0 { PL [] 1 0 0 DL } def +/LT1 { PL [4 dl 2 dl] 0 1 0 DL } def +/LT2 { PL [2 dl 3 dl] 0 0 1 DL } def +/LT3 { PL [1 dl 1.5 dl] 1 0 1 DL } def +/LT4 { PL [5 dl 2 dl 1 dl 2 dl] 0 1 1 DL } def +/LT5 { PL [4 dl 3 dl 1 dl 3 dl] 1 1 0 DL } def +/LT6 { PL [2 dl 2 dl 2 dl 4 dl] 0 0 0 DL } def +/LT7 { PL [2 dl 2 dl 2 dl 2 dl 2 dl 4 dl] 1 0.3 0 DL } def +/LT8 { PL [2 dl 2 dl 2 dl 2 dl 2 dl 2 dl 2 dl 4 dl] 0.5 0.5 0.5 DL } def +/Pnt { stroke [] 0 setdash + gsave 1 setlinecap M 0 0 V stroke grestore } def +/Dia { stroke [] 0 setdash 2 copy vpt add M + hpt neg vpt neg V hpt vpt neg V + hpt vpt V hpt neg vpt V closepath stroke + Pnt } def +/Pls { stroke [] 0 setdash vpt sub M 0 vpt2 V + currentpoint stroke M + hpt neg vpt neg R hpt2 0 V stroke + } def +/Box { stroke [] 0 setdash 2 copy exch hpt sub exch vpt add M + 0 vpt2 neg V hpt2 0 V 0 vpt2 V + hpt2 neg 0 V closepath stroke + Pnt } def +/Crs { stroke [] 0 setdash exch hpt sub exch vpt add M + hpt2 vpt2 neg V currentpoint stroke M + hpt2 neg 0 R hpt2 vpt2 V stroke } def +/TriU { stroke [] 0 setdash 2 copy vpt 1.12 mul add M + hpt neg vpt -1.62 mul V + hpt 2 mul 0 V + hpt neg vpt 1.62 mul V closepath stroke + Pnt } def +/Star { 2 copy Pls Crs } def +/BoxF { stroke [] 0 setdash exch hpt sub exch vpt add M + 0 vpt2 neg V hpt2 0 V 0 vpt2 V + hpt2 neg 0 V closepath fill } def +/TriUF { stroke [] 0 setdash vpt 1.12 mul add M + hpt neg vpt -1.62 mul V + hpt 2 mul 0 V + hpt neg vpt 1.62 mul V closepath fill } def +/TriD { stroke [] 0 setdash 2 copy vpt 1.12 mul sub M + hpt neg vpt 1.62 mul V + hpt 2 mul 0 V + hpt neg vpt -1.62 mul V closepath stroke + Pnt } def +/TriDF { stroke [] 0 setdash vpt 1.12 mul sub M + hpt neg vpt 1.62 mul V + hpt 2 mul 0 V + hpt neg vpt -1.62 mul V closepath fill} def +/DiaF { stroke [] 0 setdash vpt add M + hpt neg vpt neg V hpt vpt neg V + hpt vpt V hpt neg vpt V closepath fill } def +/Pent { stroke [] 0 setdash 2 copy gsave + translate 0 hpt M 4 {72 rotate 0 hpt L} repeat + closepath stroke grestore Pnt } def +/PentF { stroke [] 0 setdash gsave + translate 0 hpt M 4 {72 rotate 0 hpt L} repeat + closepath fill grestore } def +/Circle { stroke [] 0 setdash 2 copy + hpt 0 360 arc stroke Pnt } def +/CircleF { stroke [] 0 setdash hpt 0 360 arc fill } def +/C0 { BL [] 0 setdash 2 copy moveto vpt 90 450 arc } bind def +/C1 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 90 arc closepath fill + vpt 0 360 arc closepath } bind def +/C2 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 90 180 arc closepath fill + vpt 0 360 arc closepath } bind def +/C3 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 180 arc closepath fill + vpt 0 360 arc closepath } bind def +/C4 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 180 270 arc closepath fill + vpt 0 360 arc closepath } bind def +/C5 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 90 arc + 2 copy moveto + 2 copy vpt 180 270 arc closepath fill + vpt 0 360 arc } bind def +/C6 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 90 270 arc closepath fill + vpt 0 360 arc closepath } bind def +/C7 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 270 arc closepath fill + vpt 0 360 arc closepath } bind def +/C8 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 270 360 arc closepath fill + vpt 0 360 arc closepath } bind def +/C9 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 270 450 arc closepath fill + vpt 0 360 arc closepath } bind def +/C10 { BL [] 0 setdash 2 copy 2 copy moveto vpt 270 360 arc closepath fill + 2 copy moveto + 2 copy vpt 90 180 arc closepath fill + vpt 0 360 arc closepath } bind def +/C11 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 180 arc closepath fill + 2 copy moveto + 2 copy vpt 270 360 arc closepath fill + vpt 0 360 arc closepath } bind def +/C12 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 180 360 arc closepath fill + vpt 0 360 arc closepath } bind def +/C13 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 90 arc closepath fill + 2 copy moveto + 2 copy vpt 180 360 arc closepath fill + vpt 0 360 arc closepath } bind def +/C14 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 90 360 arc closepath fill + vpt 0 360 arc } bind def +/C15 { BL [] 0 setdash 2 copy vpt 0 360 arc closepath fill + vpt 0 360 arc closepath } bind def +/Rec { newpath 4 2 roll moveto 1 index 0 rlineto 0 exch rlineto + neg 0 rlineto closepath } bind def +/Square { dup Rec } bind def +/Bsquare { vpt sub exch vpt sub exch vpt2 Square } bind def +/S0 { BL [] 0 setdash 2 copy moveto 0 vpt rlineto BL Bsquare } bind def +/S1 { BL [] 0 setdash 2 copy vpt Square fill Bsquare } bind def +/S2 { BL [] 0 setdash 2 copy exch vpt sub exch vpt Square fill Bsquare } bind def +/S3 { BL [] 0 setdash 2 copy exch vpt sub exch vpt2 vpt Rec fill Bsquare } bind def +/S4 { BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt Square fill Bsquare } bind def +/S5 { BL [] 0 setdash 2 copy 2 copy vpt Square fill + exch vpt sub exch vpt sub vpt Square fill Bsquare } bind def +/S6 { BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt vpt2 Rec fill Bsquare } bind def +/S7 { BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt vpt2 Rec fill + 2 copy vpt Square fill + Bsquare } bind def +/S8 { BL [] 0 setdash 2 copy vpt sub vpt Square fill Bsquare } bind def +/S9 { BL [] 0 setdash 2 copy vpt sub vpt vpt2 Rec fill Bsquare } bind def +/S10 { BL [] 0 setdash 2 copy vpt sub vpt Square fill 2 copy exch vpt sub exch vpt Square fill + Bsquare } bind def +/S11 { BL [] 0 setdash 2 copy vpt sub vpt Square fill 2 copy exch vpt sub exch vpt2 vpt Rec fill + Bsquare } bind def +/S12 { BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill Bsquare } bind def +/S13 { BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill + 2 copy vpt Square fill Bsquare } bind def +/S14 { BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill + 2 copy exch vpt sub exch vpt Square fill Bsquare } bind def +/S15 { BL [] 0 setdash 2 copy Bsquare fill Bsquare } bind def +/D0 { gsave translate 45 rotate 0 0 S0 stroke grestore } bind def +/D1 { gsave translate 45 rotate 0 0 S1 stroke grestore } bind def +/D2 { gsave translate 45 rotate 0 0 S2 stroke grestore } bind def +/D3 { gsave translate 45 rotate 0 0 S3 stroke grestore } bind def +/D4 { gsave translate 45 rotate 0 0 S4 stroke grestore } bind def +/D5 { gsave translate 45 rotate 0 0 S5 stroke grestore } bind def +/D6 { gsave translate 45 rotate 0 0 S6 stroke grestore } bind def +/D7 { gsave translate 45 rotate 0 0 S7 stroke grestore } bind def +/D8 { gsave translate 45 rotate 0 0 S8 stroke grestore } bind def +/D9 { gsave translate 45 rotate 0 0 S9 stroke grestore } bind def +/D10 { gsave translate 45 rotate 0 0 S10 stroke grestore } bind def +/D11 { gsave translate 45 rotate 0 0 S11 stroke grestore } bind def +/D12 { gsave translate 45 rotate 0 0 S12 stroke grestore } bind def +/D13 { gsave translate 45 rotate 0 0 S13 stroke grestore } bind def +/D14 { gsave translate 45 rotate 0 0 S14 stroke grestore } bind def +/D15 { gsave translate 45 rotate 0 0 S15 stroke grestore } bind def +/DiaE { stroke [] 0 setdash vpt add M + hpt neg vpt neg V hpt vpt neg V + hpt vpt V hpt neg vpt V closepath stroke } def +/BoxE { stroke [] 0 setdash exch hpt sub exch vpt add M + 0 vpt2 neg V hpt2 0 V 0 vpt2 V + hpt2 neg 0 V closepath stroke } def +/TriUE { stroke [] 0 setdash vpt 1.12 mul add M + hpt neg vpt -1.62 mul V + hpt 2 mul 0 V + hpt neg vpt 1.62 mul V closepath stroke } def +/TriDE { stroke [] 0 setdash vpt 1.12 mul sub M + hpt neg vpt 1.62 mul V + hpt 2 mul 0 V + hpt neg vpt -1.62 mul V closepath stroke } def +/PentE { stroke [] 0 setdash gsave + translate 0 hpt M 4 {72 rotate 0 hpt L} repeat + closepath stroke grestore } def +/CircE { stroke [] 0 setdash + hpt 0 360 arc stroke } def +/Opaque { gsave closepath 1 setgray fill grestore 0 setgray closepath } def +/DiaW { stroke [] 0 setdash vpt add M + hpt neg vpt neg V hpt vpt neg V + hpt vpt V hpt neg vpt V Opaque stroke } def +/BoxW { stroke [] 0 setdash exch hpt sub exch vpt add M + 0 vpt2 neg V hpt2 0 V 0 vpt2 V + hpt2 neg 0 V Opaque stroke } def +/TriUW { stroke [] 0 setdash vpt 1.12 mul add M + hpt neg vpt -1.62 mul V + hpt 2 mul 0 V + hpt neg vpt 1.62 mul V Opaque stroke } def +/TriDW { stroke [] 0 setdash vpt 1.12 mul sub M + hpt neg vpt 1.62 mul V + hpt 2 mul 0 V + hpt neg vpt -1.62 mul V Opaque stroke } def +/PentW { stroke [] 0 setdash gsave + translate 0 hpt M 4 {72 rotate 0 hpt L} repeat + Opaque stroke grestore } def +/CircW { stroke [] 0 setdash + hpt 0 360 arc Opaque stroke } def +/BoxFill { gsave Rec 1 setgray fill grestore } def +/BoxColFill { + gsave Rec + /Fillden exch def + currentrgbcolor + /ColB exch def /ColG exch def /ColR exch def + /ColR ColR Fillden mul Fillden sub 1 add def + /ColG ColG Fillden mul Fillden sub 1 add def + /ColB ColB Fillden mul Fillden sub 1 add def + ColR ColG ColB setrgbcolor + fill grestore } def +% +% PostScript Level 1 Pattern Fill routine +% Usage: x y w h s a XX PatternFill +% x,y = lower left corner of box to be filled +% w,h = width and height of box +% a = angle in degrees between lines and x-axis +% XX = 0/1 for no/yes cross-hatch +% +/PatternFill { gsave /PFa [ 9 2 roll ] def + PFa 0 get PFa 2 get 2 div add PFa 1 get PFa 3 get 2 div add translate + PFa 2 get -2 div PFa 3 get -2 div PFa 2 get PFa 3 get Rec + gsave 1 setgray fill grestore clip + currentlinewidth 0.5 mul setlinewidth + /PFs PFa 2 get dup mul PFa 3 get dup mul add sqrt def + 0 0 M PFa 5 get rotate PFs -2 div dup translate + 0 1 PFs PFa 4 get div 1 add floor cvi + { PFa 4 get mul 0 M 0 PFs V } for + 0 PFa 6 get ne { + 0 1 PFs PFa 4 get div 1 add floor cvi + { PFa 4 get mul 0 2 1 roll M PFs 0 V } for + } if + stroke grestore } def +% +/Symbol-Oblique /Symbol findfont [1 0 .167 1 0 0] makefont +dup length dict begin {1 index /FID eq {pop pop} {def} ifelse} forall +currentdict end definefont pop +end +%%EndProlog +gnudict begin +gsave +50 50 translate +0.050 0.050 scale +0 setgray +newpath +(Helvetica) findfont 200 scalefont setfont +1.000 UL +LTb +1020 600 M +63 0 V +5777 0 R +-63 0 V +900 600 M +gsave 0 setgray +( 20) Rshow +grestore +1.000 UL +LTb +1020 1067 M +63 0 V +5777 0 R +-63 0 V +-5897 0 R +gsave 0 setgray +( 30) Rshow +grestore +1.000 UL +LTb +1020 1533 M +63 0 V +5777 0 R +-63 0 V +-5897 0 R +gsave 0 setgray +( 40) Rshow +grestore +1.000 UL +LTb +1020 2000 M +63 0 V +5777 0 R +-63 0 V +-5897 0 R +gsave 0 setgray +( 50) Rshow +grestore +1.000 UL +LTb +1020 2467 M +63 0 V +5777 0 R +-63 0 V +-5897 0 R +gsave 0 setgray +( 60) Rshow +grestore +1.000 UL +LTb +1020 2933 M +63 0 V +5777 0 R +-63 0 V +-5897 0 R +gsave 0 setgray +( 70) Rshow +grestore +1.000 UL +LTb +1020 3400 M +63 0 V +5777 0 R +-63 0 V +-5897 0 R +gsave 0 setgray +( 80) Rshow +grestore +1.000 UL +LTb +1020 3867 M +63 0 V +5777 0 R +-63 0 V +-5897 0 R +gsave 0 setgray +( 90) Rshow +grestore +1.000 UL +LTb +1020 4333 M +63 0 V +5777 0 R +-63 0 V +-5897 0 R +gsave 0 setgray +( 100) Rshow +grestore +1.000 UL +LTb +1020 4800 M +63 0 V +5777 0 R +-63 0 V +-5897 0 R +gsave 0 setgray +( 110) Rshow +grestore +1.000 UL +LTb +1521 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 40) Cshow +grestore +1.000 UL +LTb +2188 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 60) Cshow +grestore +1.000 UL +LTb +2855 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 80) Cshow +grestore +1.000 UL +LTb +3523 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 100) Cshow +grestore +1.000 UL +LTb +4190 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 120) Cshow +grestore +1.000 UL +LTb +4858 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 140) Cshow +grestore +1.000 UL +LTb +5525 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 160) Cshow +grestore +1.000 UL +LTb +6193 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 180) Cshow +grestore +1.000 UL +LTb +6860 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 200) Cshow +grestore +1.000 UL +LTb +1.000 UL +LTb +1020 600 M +5840 0 V +0 4200 V +-5840 0 V +0 -4200 V +LTb +200 2700 M +gsave 0 setgray +currentpoint gsave translate 90 rotate 0 0 M +(Number of Iterations) Cshow +grestore +grestore +LTb +3940 100 M +gsave 0 setgray +(Nodes Density) Cshow +grestore +1.000 UP +1.000 UL +LT0 +LTb +5957 4637 M +gsave 0 setgray +(Synchronous Algorithm) Rshow +grestore +LT0 +6077 4637 M +543 0 V +1020 3493 M +42 -42 V +42 -41 V +42 -41 V +43 -41 V +42 -40 V +42 -39 V +42 -39 V +42 -38 V +42 -38 V +43 -37 V +42 -36 V +42 -37 V +43 -35 V +42 -35 V +43 -35 V +43 -34 V +43 -33 V +43 -33 V +43 -32 V +43 -32 V +43 -32 V +44 -31 V +44 -30 V +44 -30 V +44 -30 V +44 -29 V +45 -28 V +45 -29 V +45 -27 V +46 -27 V +46 -27 V +46 -26 V +47 -26 V +47 -26 V +47 -25 V +48 -24 V +48 -24 V +49 -24 V +49 -23 V +50 -23 V +50 -23 V +50 -22 V +52 -21 V +51 -22 V +53 -21 V +52 -20 V +54 -20 V +54 -20 V +55 -19 V +55 -19 V +56 -19 V +56 -18 V +58 -18 V +58 -18 V +58 -17 V +60 -17 V +60 -16 V +61 -16 V +61 -16 V +62 -16 V +63 -15 V +64 -15 V +64 -14 V +66 -14 V +66 -14 V +66 -14 V +68 -13 V +68 -13 V +69 -12 V +70 -12 V +70 -12 V +72 -12 V +72 -11 V +72 -11 V +74 -11 V +74 -10 V +75 -10 V +75 -10 V +76 -9 V +77 -9 V +78 -9 V +78 -8 V +78 -8 V +80 -8 V +80 -7 V +80 -7 V +81 -7 V +81 -6 V +82 -7 V +82 -5 V +83 -6 V +83 -5 V +83 -5 V +84 -4 V +83 -4 V +84 -4 V +85 -3 V +84 -3 V +84 -2 V +1.000 UL +LT1 +LTb +5957 4437 M +gsave 0 setgray +(Asynchronous Algorithm) Rshow +grestore +LT1 +6077 4437 M +543 0 V +-5600 83 R +42 -74 V +42 -72 V +42 -70 V +43 -67 V +42 -66 V +42 -63 V +42 -61 V +42 -59 V +42 -57 V +43 -56 V +42 -53 V +42 -52 V +43 -50 V +42 -49 V +43 -46 V +43 -46 V +43 -43 V +43 -42 V +43 -41 V +43 -39 V +43 -38 V +44 -37 V +44 -35 V +44 -34 V +44 -33 V +44 -32 V +45 -30 V +45 -30 V +45 -28 V +46 -27 V +46 -27 V +46 -25 V +47 -25 V +47 -23 V +47 -23 V +48 -22 V +48 -21 V +49 -20 V +49 -19 V +50 -19 V +50 -18 V +50 -18 V +52 -16 V +51 -17 V +53 -15 V +52 -15 V +54 -14 V +54 -14 V +55 -14 V +55 -12 V +56 -13 V +56 -12 V +58 -11 V +58 -11 V +58 -11 V +60 -10 V +60 -10 V +61 -9 V +61 -9 V +62 -9 V +63 -9 V +64 -8 V +64 -8 V +66 -7 V +66 -8 V +66 -7 V +68 -7 V +68 -6 V +69 -7 V +70 -6 V +70 -6 V +72 -6 V +72 -5 V +72 -6 V +74 -5 V +74 -5 V +75 -5 V +75 -5 V +76 -4 V +77 -5 V +78 -4 V +78 -4 V +78 -5 V +80 -4 V +80 -3 V +80 -4 V +81 -4 V +81 -3 V +82 -4 V +82 -3 V +83 -3 V +83 -3 V +83 -3 V +84 -3 V +83 -3 V +84 -3 V +85 -2 V +84 -3 V +84 -2 V +1.000 UP +1.000 UL +LT2 +1020 3493 Pls +1854 2653 Pls +2689 2093 Pls +3523 1767 Pls +5191 1533 Pls +6860 1487 Pls +1.000 UP +1.000 UL +LT3 +1020 4520 Crs +1854 3027 Crs +2689 2700 Crs +3523 2560 Crs +5191 2467 Crs +6860 2420 Crs +1.000 UL +LTb +1020 600 M +5840 0 V +0 4200 V +-5840 0 V +0 -4200 V +1.000 UP +stroke +grestore +end +showpage +%%Trailer +%%DocumentFonts: Helvetica diff --git a/chapitre-2009/DynamicComparison.ps b/chapitre-2009/DynamicComparison.ps new file mode 100644 index 0000000..60e93ad --- /dev/null +++ b/chapitre-2009/DynamicComparison.ps @@ -0,0 +1,767 @@ +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: DynamicComparison.ps +%%Creator: gnuplot 4.2 patchlevel 5 +%%CreationDate: Thu Sep 24 18:25:24 2009 +%%DocumentFonts: (atend) +%%BoundingBox: 50 50 410 302 +%%EndComments +%%BeginProlog +/gnudict 256 dict def +gnudict begin +% +% The following 6 true/false flags may be edited by hand if required +% The unit line width may also be changed +% +/Color false def +/Blacktext false def +/Solid false def +/Dashlength 1 def +/Landscape false def +/Level1 false def +/Rounded false def +/TransparentPatterns false def +/gnulinewidth 5.000 def +/userlinewidth gnulinewidth def +% +/vshift -46 def +/dl1 { + 10.0 Dashlength mul mul + Rounded { currentlinewidth 0.75 mul sub dup 0 le { pop 0.01 } if } if +} def +/dl2 { + 10.0 Dashlength mul mul + Rounded { currentlinewidth 0.75 mul add } if +} def +/hpt_ 31.5 def +/vpt_ 31.5 def +/hpt hpt_ def +/vpt vpt_ def +Level1 {} { +/SDict 10 dict def +systemdict /pdfmark known not { + userdict /pdfmark systemdict /cleartomark get put +} if +SDict begin [ + /Title (DynamicComparison.ps) + /Subject (gnuplot plot) + /Creator (gnuplot 4.2 patchlevel 5 ) + /Author (Abdallah Makhoul,,,) +% /Producer (gnuplot) +% /Keywords () + /CreationDate (Thu Sep 24 18:25:24 2009) + /DOCINFO pdfmark +end +} ifelse +% +% Gnuplot Prolog Version 4.2 (August 2006) +% +/M {moveto} bind def +/L {lineto} bind def +/R {rmoveto} bind def +/V {rlineto} bind def +/N {newpath moveto} bind def +/Z {closepath} bind def +/C {setrgbcolor} bind def +/f {rlineto fill} bind def +/vpt2 vpt 2 mul def +/hpt2 hpt 2 mul def +/Lshow {currentpoint stroke M 0 vshift R + Blacktext {gsave 0 setgray show grestore} {show} ifelse} def +/Rshow {currentpoint stroke M dup stringwidth pop neg vshift R + Blacktext {gsave 0 setgray show grestore} {show} ifelse} def +/Cshow {currentpoint stroke M dup stringwidth pop -2 div vshift R + Blacktext {gsave 0 setgray show grestore} {show} ifelse} def +/UP {dup vpt_ mul /vpt exch def hpt_ mul /hpt exch def + /hpt2 hpt 2 mul def /vpt2 vpt 2 mul def} def +/DL {Color {setrgbcolor Solid {pop []} if 0 setdash} + {pop pop pop 0 setgray Solid {pop []} if 0 setdash} ifelse} def +/BL {stroke userlinewidth 2 mul setlinewidth + Rounded {1 setlinejoin 1 setlinecap} if} def +/AL {stroke userlinewidth 2 div setlinewidth + Rounded {1 setlinejoin 1 setlinecap} if} def +/UL {dup gnulinewidth mul /userlinewidth exch def + dup 1 lt {pop 1} if 10 mul /udl exch def} def +/PL {stroke userlinewidth setlinewidth + Rounded {1 setlinejoin 1 setlinecap} if} def +% Default Line colors +/LCw {1 1 1} def +/LCb {0 0 0} def +/LCa {0 0 0} def +/LC0 {1 0 0} def +/LC1 {0 1 0} def +/LC2 {0 0 1} def +/LC3 {1 0 1} def +/LC4 {0 1 1} def +/LC5 {1 1 0} def +/LC6 {0 0 0} def +/LC7 {1 0.3 0} def +/LC8 {0.5 0.5 0.5} def +% Default Line Types +/LTw {PL [] 1 setgray} def +/LTb {BL [] LCb DL} def +/LTa {AL [1 udl mul 2 udl mul] 0 setdash LCa setrgbcolor} def +/LT0 {PL [] LC0 DL} def +/LT1 {PL [4 dl1 2 dl2] LC1 DL} def +/LT2 {PL [2 dl1 3 dl2] LC2 DL} def +/LT3 {PL [1 dl1 1.5 dl2] LC3 DL} def +/LT4 {PL [6 dl1 2 dl2 1 dl1 2 dl2] LC4 DL} def +/LT5 {PL [3 dl1 3 dl2 1 dl1 3 dl2] LC5 DL} def +/LT6 {PL [2 dl1 2 dl2 2 dl1 6 dl2] LC6 DL} def +/LT7 {PL [1 dl1 2 dl2 6 dl1 2 dl2 1 dl1 2 dl2] LC7 DL} def +/LT8 {PL [2 dl1 2 dl2 2 dl1 2 dl2 2 dl1 2 dl2 2 dl1 4 dl2] LC8 DL} def +/Pnt {stroke [] 0 setdash gsave 1 setlinecap M 0 0 V stroke grestore} def +/Dia {stroke [] 0 setdash 2 copy vpt add M + hpt neg vpt neg V hpt vpt neg V + hpt vpt V hpt neg vpt V closepath stroke + Pnt} def +/Pls {stroke [] 0 setdash vpt sub M 0 vpt2 V + currentpoint stroke M + hpt neg vpt neg R hpt2 0 V stroke + } def +/Box {stroke [] 0 setdash 2 copy exch hpt sub exch vpt add M + 0 vpt2 neg V hpt2 0 V 0 vpt2 V + hpt2 neg 0 V closepath stroke + Pnt} def +/Crs {stroke [] 0 setdash exch hpt sub exch vpt add M + hpt2 vpt2 neg V currentpoint stroke M + hpt2 neg 0 R hpt2 vpt2 V stroke} def +/TriU {stroke [] 0 setdash 2 copy vpt 1.12 mul add M + hpt neg vpt -1.62 mul V + hpt 2 mul 0 V + hpt neg vpt 1.62 mul V closepath stroke + Pnt} def +/Star {2 copy Pls Crs} def +/BoxF {stroke [] 0 setdash exch hpt sub exch vpt add M + 0 vpt2 neg V hpt2 0 V 0 vpt2 V + hpt2 neg 0 V closepath fill} def +/TriUF {stroke [] 0 setdash vpt 1.12 mul add M + hpt neg vpt -1.62 mul V + hpt 2 mul 0 V + hpt neg vpt 1.62 mul V closepath fill} def +/TriD {stroke [] 0 setdash 2 copy vpt 1.12 mul sub M + hpt neg vpt 1.62 mul V + hpt 2 mul 0 V + hpt neg vpt -1.62 mul V closepath stroke + Pnt} def +/TriDF {stroke [] 0 setdash vpt 1.12 mul sub M + hpt neg vpt 1.62 mul V + hpt 2 mul 0 V + hpt neg vpt -1.62 mul V closepath fill} def +/DiaF {stroke [] 0 setdash vpt add M + hpt neg vpt neg V hpt vpt neg V + hpt vpt V hpt neg vpt V closepath fill} def +/Pent {stroke [] 0 setdash 2 copy gsave + translate 0 hpt M 4 {72 rotate 0 hpt L} repeat + closepath stroke grestore Pnt} def +/PentF {stroke [] 0 setdash gsave + translate 0 hpt M 4 {72 rotate 0 hpt L} repeat + closepath fill grestore} def +/Circle {stroke [] 0 setdash 2 copy + hpt 0 360 arc stroke Pnt} def +/CircleF {stroke [] 0 setdash hpt 0 360 arc fill} def +/C0 {BL [] 0 setdash 2 copy moveto vpt 90 450 arc} bind def +/C1 {BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 90 arc closepath fill + vpt 0 360 arc closepath} bind def +/C2 {BL [] 0 setdash 2 copy moveto + 2 copy vpt 90 180 arc closepath fill + vpt 0 360 arc closepath} bind def +/C3 {BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 180 arc closepath fill + vpt 0 360 arc closepath} bind def +/C4 {BL [] 0 setdash 2 copy moveto + 2 copy vpt 180 270 arc closepath fill + vpt 0 360 arc closepath} bind def +/C5 {BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 90 arc + 2 copy moveto + 2 copy vpt 180 270 arc closepath fill + vpt 0 360 arc} bind def +/C6 {BL [] 0 setdash 2 copy moveto + 2 copy vpt 90 270 arc closepath fill + vpt 0 360 arc closepath} bind def +/C7 {BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 270 arc closepath fill + vpt 0 360 arc closepath} bind def +/C8 {BL [] 0 setdash 2 copy moveto + 2 copy vpt 270 360 arc closepath fill + vpt 0 360 arc closepath} bind def +/C9 {BL [] 0 setdash 2 copy moveto + 2 copy vpt 270 450 arc closepath fill + vpt 0 360 arc closepath} bind def +/C10 {BL [] 0 setdash 2 copy 2 copy moveto vpt 270 360 arc closepath fill + 2 copy moveto + 2 copy vpt 90 180 arc closepath fill + vpt 0 360 arc closepath} bind def +/C11 {BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 180 arc closepath fill + 2 copy moveto + 2 copy vpt 270 360 arc closepath fill + vpt 0 360 arc closepath} bind def +/C12 {BL [] 0 setdash 2 copy moveto + 2 copy vpt 180 360 arc closepath fill + vpt 0 360 arc closepath} bind def +/C13 {BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 90 arc closepath fill + 2 copy moveto + 2 copy vpt 180 360 arc closepath fill + vpt 0 360 arc closepath} bind def +/C14 {BL [] 0 setdash 2 copy moveto + 2 copy vpt 90 360 arc closepath fill + vpt 0 360 arc} bind def +/C15 {BL [] 0 setdash 2 copy vpt 0 360 arc closepath fill + vpt 0 360 arc closepath} bind def +/Rec {newpath 4 2 roll moveto 1 index 0 rlineto 0 exch rlineto + neg 0 rlineto closepath} bind def +/Square {dup Rec} bind def +/Bsquare {vpt sub exch vpt sub exch vpt2 Square} bind def +/S0 {BL [] 0 setdash 2 copy moveto 0 vpt rlineto BL Bsquare} bind def +/S1 {BL [] 0 setdash 2 copy vpt Square fill Bsquare} bind def +/S2 {BL [] 0 setdash 2 copy exch vpt sub exch vpt Square fill Bsquare} bind def +/S3 {BL [] 0 setdash 2 copy exch vpt sub exch vpt2 vpt Rec fill Bsquare} bind def +/S4 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt Square fill Bsquare} bind def +/S5 {BL [] 0 setdash 2 copy 2 copy vpt Square fill + exch vpt sub exch vpt sub vpt Square fill Bsquare} bind def +/S6 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt vpt2 Rec fill Bsquare} bind def +/S7 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt vpt2 Rec fill + 2 copy vpt Square fill Bsquare} bind def +/S8 {BL [] 0 setdash 2 copy vpt sub vpt Square fill Bsquare} bind def +/S9 {BL [] 0 setdash 2 copy vpt sub vpt vpt2 Rec fill Bsquare} bind def +/S10 {BL [] 0 setdash 2 copy vpt sub vpt Square fill 2 copy exch vpt sub exch vpt Square fill + Bsquare} bind def +/S11 {BL [] 0 setdash 2 copy vpt sub vpt Square fill 2 copy exch vpt sub exch vpt2 vpt Rec fill + Bsquare} bind def +/S12 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill Bsquare} bind def +/S13 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill + 2 copy vpt Square fill Bsquare} bind def +/S14 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill + 2 copy exch vpt sub exch vpt Square fill Bsquare} bind def +/S15 {BL [] 0 setdash 2 copy Bsquare fill Bsquare} bind def +/D0 {gsave translate 45 rotate 0 0 S0 stroke grestore} bind def +/D1 {gsave translate 45 rotate 0 0 S1 stroke grestore} bind def +/D2 {gsave translate 45 rotate 0 0 S2 stroke grestore} bind def +/D3 {gsave translate 45 rotate 0 0 S3 stroke grestore} bind def +/D4 {gsave translate 45 rotate 0 0 S4 stroke grestore} bind def +/D5 {gsave translate 45 rotate 0 0 S5 stroke grestore} bind def +/D6 {gsave translate 45 rotate 0 0 S6 stroke grestore} bind def +/D7 {gsave translate 45 rotate 0 0 S7 stroke grestore} bind def +/D8 {gsave translate 45 rotate 0 0 S8 stroke grestore} bind def +/D9 {gsave translate 45 rotate 0 0 S9 stroke grestore} bind def +/D10 {gsave translate 45 rotate 0 0 S10 stroke grestore} bind def +/D11 {gsave translate 45 rotate 0 0 S11 stroke grestore} bind def +/D12 {gsave translate 45 rotate 0 0 S12 stroke grestore} bind def +/D13 {gsave translate 45 rotate 0 0 S13 stroke grestore} bind def +/D14 {gsave translate 45 rotate 0 0 S14 stroke grestore} bind def +/D15 {gsave translate 45 rotate 0 0 S15 stroke grestore} bind def +/DiaE {stroke [] 0 setdash vpt add M + hpt neg vpt neg V hpt vpt neg V + hpt vpt V hpt neg vpt V closepath stroke} def +/BoxE {stroke [] 0 setdash exch hpt sub exch vpt add M + 0 vpt2 neg V hpt2 0 V 0 vpt2 V + hpt2 neg 0 V closepath stroke} def +/TriUE {stroke [] 0 setdash vpt 1.12 mul add M + hpt neg vpt -1.62 mul V + hpt 2 mul 0 V + hpt neg vpt 1.62 mul V closepath stroke} def +/TriDE {stroke [] 0 setdash vpt 1.12 mul sub M + hpt neg vpt 1.62 mul V + hpt 2 mul 0 V + hpt neg vpt -1.62 mul V closepath stroke} def +/PentE {stroke [] 0 setdash gsave + translate 0 hpt M 4 {72 rotate 0 hpt L} repeat + closepath stroke grestore} def +/CircE {stroke [] 0 setdash + hpt 0 360 arc stroke} def +/Opaque {gsave closepath 1 setgray fill grestore 0 setgray closepath} def +/DiaW {stroke [] 0 setdash vpt add M + hpt neg vpt neg V hpt vpt neg V + hpt vpt V hpt neg vpt V Opaque stroke} def +/BoxW {stroke [] 0 setdash exch hpt sub exch vpt add M + 0 vpt2 neg V hpt2 0 V 0 vpt2 V + hpt2 neg 0 V Opaque stroke} def +/TriUW {stroke [] 0 setdash vpt 1.12 mul add M + hpt neg vpt -1.62 mul V + hpt 2 mul 0 V + hpt neg vpt 1.62 mul V Opaque stroke} def +/TriDW {stroke [] 0 setdash vpt 1.12 mul sub M + hpt neg vpt 1.62 mul V + hpt 2 mul 0 V + hpt neg vpt -1.62 mul V Opaque stroke} def +/PentW {stroke [] 0 setdash gsave + translate 0 hpt M 4 {72 rotate 0 hpt L} repeat + Opaque stroke grestore} def +/CircW {stroke [] 0 setdash + hpt 0 360 arc Opaque stroke} def +/BoxFill {gsave Rec 1 setgray fill grestore} def +/Density { + /Fillden exch def + currentrgbcolor + /ColB exch def /ColG exch def /ColR exch def + /ColR ColR Fillden mul Fillden sub 1 add def + /ColG ColG Fillden mul Fillden sub 1 add def + /ColB ColB Fillden mul Fillden sub 1 add def + ColR ColG ColB setrgbcolor} def +/BoxColFill {gsave Rec PolyFill} def +/PolyFill {gsave Density fill grestore grestore} def +/h {rlineto rlineto rlineto gsave closepath fill grestore} bind def +% +% PostScript Level 1 Pattern Fill routine for rectangles +% Usage: x y w h s a XX PatternFill +% x,y = lower left corner of box to be filled +% w,h = width and height of box +% a = angle in degrees between lines and x-axis +% XX = 0/1 for no/yes cross-hatch +% +/PatternFill {gsave /PFa [ 9 2 roll ] def + PFa 0 get PFa 2 get 2 div add PFa 1 get PFa 3 get 2 div add translate + PFa 2 get -2 div PFa 3 get -2 div PFa 2 get PFa 3 get Rec + gsave 1 setgray fill grestore clip + currentlinewidth 0.5 mul setlinewidth + /PFs PFa 2 get dup mul PFa 3 get dup mul add sqrt def + 0 0 M PFa 5 get rotate PFs -2 div dup translate + 0 1 PFs PFa 4 get div 1 add floor cvi + {PFa 4 get mul 0 M 0 PFs V} for + 0 PFa 6 get ne { + 0 1 PFs PFa 4 get div 1 add floor cvi + {PFa 4 get mul 0 2 1 roll M PFs 0 V} for + } if + stroke grestore} def +% +/languagelevel where + {pop languagelevel} {1} ifelse + 2 lt + {/InterpretLevel1 true def} + {/InterpretLevel1 Level1 def} + ifelse +% +% PostScript level 2 pattern fill definitions +% +/Level2PatternFill { +/Tile8x8 {/PaintType 2 /PatternType 1 /TilingType 1 /BBox [0 0 8 8] /XStep 8 /YStep 8} + bind def +/KeepColor {currentrgbcolor [/Pattern /DeviceRGB] setcolorspace} bind def +<< Tile8x8 + /PaintProc {0.5 setlinewidth pop 0 0 M 8 8 L 0 8 M 8 0 L stroke} +>> matrix makepattern +/Pat1 exch def +<< Tile8x8 + /PaintProc {0.5 setlinewidth pop 0 0 M 8 8 L 0 8 M 8 0 L stroke + 0 4 M 4 8 L 8 4 L 4 0 L 0 4 L stroke} +>> matrix makepattern +/Pat2 exch def +<< Tile8x8 + /PaintProc {0.5 setlinewidth pop 0 0 M 0 8 L + 8 8 L 8 0 L 0 0 L fill} +>> matrix makepattern +/Pat3 exch def +<< Tile8x8 + /PaintProc {0.5 setlinewidth pop -4 8 M 8 -4 L + 0 12 M 12 0 L stroke} +>> matrix makepattern +/Pat4 exch def +<< Tile8x8 + /PaintProc {0.5 setlinewidth pop -4 0 M 8 12 L + 0 -4 M 12 8 L stroke} +>> matrix makepattern +/Pat5 exch def +<< Tile8x8 + /PaintProc {0.5 setlinewidth pop -2 8 M 4 -4 L + 0 12 M 8 -4 L 4 12 M 10 0 L stroke} +>> matrix makepattern +/Pat6 exch def +<< Tile8x8 + /PaintProc {0.5 setlinewidth pop -2 0 M 4 12 L + 0 -4 M 8 12 L 4 -4 M 10 8 L stroke} +>> matrix makepattern +/Pat7 exch def +<< Tile8x8 + /PaintProc {0.5 setlinewidth pop 8 -2 M -4 4 L + 12 0 M -4 8 L 12 4 M 0 10 L stroke} +>> matrix makepattern +/Pat8 exch def +<< Tile8x8 + /PaintProc {0.5 setlinewidth pop 0 -2 M 12 4 L + -4 0 M 12 8 L -4 4 M 8 10 L stroke} +>> matrix makepattern +/Pat9 exch def +/Pattern1 {PatternBgnd KeepColor Pat1 setpattern} bind def +/Pattern2 {PatternBgnd KeepColor Pat2 setpattern} bind def +/Pattern3 {PatternBgnd KeepColor Pat3 setpattern} bind def +/Pattern4 {PatternBgnd KeepColor Landscape {Pat5} {Pat4} ifelse setpattern} bind def +/Pattern5 {PatternBgnd KeepColor Landscape {Pat4} {Pat5} ifelse setpattern} bind def +/Pattern6 {PatternBgnd KeepColor Landscape {Pat9} {Pat6} ifelse setpattern} bind def +/Pattern7 {PatternBgnd KeepColor Landscape {Pat8} {Pat7} ifelse setpattern} bind def +} def +% +% +%End of PostScript Level 2 code +% +/PatternBgnd { + TransparentPatterns {} {gsave 1 setgray fill grestore} ifelse +} def +% +% Substitute for Level 2 pattern fill codes with +% grayscale if Level 2 support is not selected. +% +/Level1PatternFill { +/Pattern1 {0.250 Density} bind def +/Pattern2 {0.500 Density} bind def +/Pattern3 {0.750 Density} bind def +/Pattern4 {0.125 Density} bind def +/Pattern5 {0.375 Density} bind def +/Pattern6 {0.625 Density} bind def +/Pattern7 {0.875 Density} bind def +} def +% +% Now test for support of Level 2 code +% +Level1 {Level1PatternFill} {Level2PatternFill} ifelse +% +/Symbol-Oblique /Symbol findfont [1 0 .167 1 0 0] makefont +dup length dict begin {1 index /FID eq {pop pop} {def} ifelse} forall +currentdict end definefont pop +end +%%EndProlog +gnudict begin +gsave +50 50 translate +0.050 0.050 scale +0 setgray +newpath +(Helvetica) findfont 140 scalefont setfont +1.000 UL +LTb +854 448 M +63 0 V +6073 0 R +-63 0 V +770 448 M +( 60) Rshow +1.000 UL +LTb +854 1080 M +63 0 V +6073 0 R +-63 0 V +-6157 0 R +( 80) Rshow +1.000 UL +LTb +854 1712 M +63 0 V +6073 0 R +-63 0 V +-6157 0 R +( 100) Rshow +1.000 UL +LTb +854 2344 M +63 0 V +6073 0 R +-63 0 V +-6157 0 R +( 120) Rshow +1.000 UL +LTb +854 2976 M +63 0 V +6073 0 R +-63 0 V +-6157 0 R +( 140) Rshow +1.000 UL +LTb +854 3608 M +63 0 V +6073 0 R +-63 0 V +-6157 0 R +( 160) Rshow +1.000 UL +LTb +854 4240 M +63 0 V +6073 0 R +-63 0 V +-6157 0 R +( 180) Rshow +1.000 UL +LTb +854 4872 M +63 0 V +6073 0 R +-63 0 V +-6157 0 R +( 200) Rshow +1.000 UL +LTb +854 448 M +0 63 V +0 4361 R +0 -63 V +854 308 M +( 0) Cshow +1.000 UL +LTb +2081 448 M +0 63 V +0 4361 R +0 -63 V +0 -4501 R +( 0.1) Cshow +1.000 UL +LTb +3308 448 M +0 63 V +0 4361 R +0 -63 V +0 -4501 R +( 0.2) Cshow +1.000 UL +LTb +4536 448 M +0 63 V +0 4361 R +0 -63 V +0 -4501 R +( 0.3) Cshow +1.000 UL +LTb +5763 448 M +0 63 V +0 4361 R +0 -63 V +0 -4501 R +( 0.4) Cshow +1.000 UL +LTb +6990 448 M +0 63 V +0 4361 R +0 -63 V +0 -4501 R +( 0.5) Cshow +1.000 UL +LTb +1.000 UL +LTb +854 4872 N +854 448 L +6136 0 V +0 4424 V +-6136 0 V +Z stroke +LCb setrgbcolor +280 2660 M +currentpoint gsave translate 90 rotate 0 0 M +(Number of iterations) Cshow +grestore +LTb +LCb setrgbcolor +3922 98 M +(Probability of link failure) Cshow +LTb +1.000 UP +1.000 UL +LTb +1.000 UL +LT0 +LTb +6339 4739 M +(Our approach) Rshow +LT0 +6423 4739 M +399 0 V +854 764 M +109 32 V +106 31 V +101 32 V +97 31 V +95 32 V +91 31 V +88 31 V +85 31 V +83 32 V +81 31 V +79 31 V +76 31 V +75 31 V +73 31 V +71 32 V +71 31 V +68 32 V +68 31 V +66 32 V +66 32 V +64 32 V +64 32 V +63 33 V +62 32 V +61 33 V +61 33 V +61 33 V +60 34 V +59 34 V +59 34 V +59 34 V +58 34 V +58 35 V +58 35 V +58 35 V +57 36 V +57 35 V +57 36 V +57 36 V +57 36 V +57 37 V +56 37 V +57 37 V +56 37 V +56 37 V +56 38 V +56 38 V +57 38 V +56 38 V +56 39 V +56 38 V +56 39 V +55 40 V +56 39 V +56 40 V +56 41 V +56 41 V +56 41 V +56 41 V +55 42 V +56 43 V +56 43 V +56 44 V +56 45 V +55 45 V +56 47 V +56 47 V +56 48 V +56 49 V +55 51 V +56 52 V +56 53 V +56 54 V +55 57 V +56 58 V +56 60 V +56 62 V +56 64 V +55 66 V +56 69 V +56 71 V +56 74 V +55 78 V +56 80 V +56 83 V +56 87 V +56 91 V +55 94 V +56 99 V +56 103 V +54 103 V +stroke +LT1 +LTb +6339 4599 M +(Metropolis Approach) Rshow +LT1 +6423 4599 M +399 0 V +854 1238 M +109 15 V +106 16 V +101 17 V +97 19 V +95 19 V +91 21 V +88 22 V +85 24 V +83 24 V +81 26 V +79 27 V +76 28 V +75 29 V +73 31 V +71 32 V +71 33 V +68 34 V +68 35 V +66 37 V +66 37 V +64 39 V +64 40 V +63 41 V +62 41 V +61 43 V +61 44 V +61 45 V +60 45 V +59 47 V +59 47 V +59 48 V +58 49 V +58 50 V +58 50 V +58 51 V +57 51 V +57 53 V +57 52 V +57 54 V +57 54 V +57 54 V +56 55 V +57 55 V +56 56 V +56 57 V +56 57 V +56 57 V +57 57 V +56 59 V +56 58 V +56 59 V +56 60 V +55 60 V +56 60 V +56 61 V +56 61 V +56 62 V +56 62 V +56 63 V +55 63 V +56 63 V +56 65 V +56 65 V +56 65 V +55 66 V +56 66 V +56 68 V +56 67 V +56 69 V +55 69 V +56 70 V +56 70 V +56 71 V +55 72 V +32 42 V +stroke +LTb +854 4872 N +854 448 L +6136 0 V +0 4424 V +-6136 0 V +Z stroke +1.000 UP +1.000 UL +LTb +stroke +grestore +end +showpage +%%Trailer +%%DocumentFonts: Helvetica diff --git a/chapitre-2009/DynamicTopology.ps b/chapitre-2009/DynamicTopology.ps new file mode 100644 index 0000000..1997256 --- /dev/null +++ b/chapitre-2009/DynamicTopology.ps @@ -0,0 +1,610 @@ +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: DynamicTopology.ps +%%Creator: gnuplot 4.0 patchlevel 0 +%%CreationDate: Tue Feb 5 17:23:08 2008 +%%DocumentFonts: (atend) +%%BoundingBox: 50 50 410 302 +%%Orientation: Portrait +%%EndComments +/gnudict 256 dict def +gnudict begin +/Color false def +/Solid false def +/gnulinewidth 5.000 def +/userlinewidth gnulinewidth def +/vshift -66 def +/dl {10.0 mul} def +/hpt_ 31.5 def +/vpt_ 31.5 def +/hpt hpt_ def +/vpt vpt_ def +/Rounded false def +/M {moveto} bind def +/L {lineto} bind def +/R {rmoveto} bind def +/V {rlineto} bind def +/N {newpath moveto} bind def +/C {setrgbcolor} bind def +/f {rlineto fill} bind def +/vpt2 vpt 2 mul def +/hpt2 hpt 2 mul def +/Lshow { currentpoint stroke M + 0 vshift R show } def +/Rshow { currentpoint stroke M + dup stringwidth pop neg vshift R show } def +/Cshow { currentpoint stroke M + dup stringwidth pop -2 div vshift R show } def +/UP { dup vpt_ mul /vpt exch def hpt_ mul /hpt exch def + /hpt2 hpt 2 mul def /vpt2 vpt 2 mul def } def +/DL { Color {setrgbcolor Solid {pop []} if 0 setdash } + {pop pop pop 0 setgray Solid {pop []} if 0 setdash} ifelse } def +/BL { stroke userlinewidth 2 mul setlinewidth + Rounded { 1 setlinejoin 1 setlinecap } if } def +/AL { stroke userlinewidth 2 div setlinewidth + Rounded { 1 setlinejoin 1 setlinecap } if } def +/UL { dup gnulinewidth mul /userlinewidth exch def + dup 1 lt {pop 1} if 10 mul /udl exch def } def +/PL { stroke userlinewidth setlinewidth + Rounded { 1 setlinejoin 1 setlinecap } if } def +/LTw { PL [] 1 setgray } def +/LTb { BL [] 0 0 0 DL } def +/LTa { AL [1 udl mul 2 udl mul] 0 setdash 0 0 0 setrgbcolor } def +/LT0 { PL [] 1 0 0 DL } def +/LT1 { PL [4 dl 2 dl] 0 1 0 DL } def +/LT2 { PL [2 dl 3 dl] 0 0 1 DL } def +/LT3 { PL [1 dl 1.5 dl] 1 0 1 DL } def +/LT4 { PL [5 dl 2 dl 1 dl 2 dl] 0 1 1 DL } def +/LT5 { PL [4 dl 3 dl 1 dl 3 dl] 1 1 0 DL } def +/LT6 { PL [2 dl 2 dl 2 dl 4 dl] 0 0 0 DL } def +/LT7 { PL [2 dl 2 dl 2 dl 2 dl 2 dl 4 dl] 1 0.3 0 DL } def +/LT8 { PL [2 dl 2 dl 2 dl 2 dl 2 dl 2 dl 2 dl 4 dl] 0.5 0.5 0.5 DL } def +/Pnt { stroke [] 0 setdash + gsave 1 setlinecap M 0 0 V stroke grestore } def +/Dia { stroke [] 0 setdash 2 copy vpt add M + hpt neg vpt neg V hpt vpt neg V + hpt vpt V hpt neg vpt V closepath stroke + Pnt } def +/Pls { stroke [] 0 setdash vpt sub M 0 vpt2 V + currentpoint stroke M + hpt neg vpt neg R hpt2 0 V stroke + } def +/Box { stroke [] 0 setdash 2 copy exch hpt sub exch vpt add M + 0 vpt2 neg V hpt2 0 V 0 vpt2 V + hpt2 neg 0 V closepath stroke + Pnt } def +/Crs { stroke [] 0 setdash exch hpt sub exch vpt add M + hpt2 vpt2 neg V currentpoint stroke M + hpt2 neg 0 R hpt2 vpt2 V stroke } def +/TriU { stroke [] 0 setdash 2 copy vpt 1.12 mul add M + hpt neg vpt -1.62 mul V + hpt 2 mul 0 V + hpt neg vpt 1.62 mul V closepath stroke + Pnt } def +/Star { 2 copy Pls Crs } def +/BoxF { stroke [] 0 setdash exch hpt sub exch vpt add M + 0 vpt2 neg V hpt2 0 V 0 vpt2 V + hpt2 neg 0 V closepath fill } def +/TriUF { stroke [] 0 setdash vpt 1.12 mul add M + hpt neg vpt -1.62 mul V + hpt 2 mul 0 V + hpt neg vpt 1.62 mul V closepath fill } def +/TriD { stroke [] 0 setdash 2 copy vpt 1.12 mul sub M + hpt neg vpt 1.62 mul V + hpt 2 mul 0 V + hpt neg vpt -1.62 mul V closepath stroke + Pnt } def +/TriDF { stroke [] 0 setdash vpt 1.12 mul sub M + hpt neg vpt 1.62 mul V + hpt 2 mul 0 V + hpt neg vpt -1.62 mul V closepath fill} def +/DiaF { stroke [] 0 setdash vpt add M + hpt neg vpt neg V hpt vpt neg V + hpt vpt V hpt neg vpt V closepath fill } def +/Pent { stroke [] 0 setdash 2 copy gsave + translate 0 hpt M 4 {72 rotate 0 hpt L} repeat + closepath stroke grestore Pnt } def +/PentF { stroke [] 0 setdash gsave + translate 0 hpt M 4 {72 rotate 0 hpt L} repeat + closepath fill grestore } def +/Circle { stroke [] 0 setdash 2 copy + hpt 0 360 arc stroke Pnt } def +/CircleF { stroke [] 0 setdash hpt 0 360 arc fill } def +/C0 { BL [] 0 setdash 2 copy moveto vpt 90 450 arc } bind def +/C1 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 90 arc closepath fill + vpt 0 360 arc closepath } bind def +/C2 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 90 180 arc closepath fill + vpt 0 360 arc closepath } bind def +/C3 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 180 arc closepath fill + vpt 0 360 arc closepath } bind def +/C4 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 180 270 arc closepath fill + vpt 0 360 arc closepath } bind def +/C5 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 90 arc + 2 copy moveto + 2 copy vpt 180 270 arc closepath fill + vpt 0 360 arc } bind def +/C6 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 90 270 arc closepath fill + vpt 0 360 arc closepath } bind def +/C7 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 270 arc closepath fill + vpt 0 360 arc closepath } bind def +/C8 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 270 360 arc closepath fill + vpt 0 360 arc closepath } bind def +/C9 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 270 450 arc closepath fill + vpt 0 360 arc closepath } bind def +/C10 { BL [] 0 setdash 2 copy 2 copy moveto vpt 270 360 arc closepath fill + 2 copy moveto + 2 copy vpt 90 180 arc closepath fill + vpt 0 360 arc closepath } bind def +/C11 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 180 arc closepath fill + 2 copy moveto + 2 copy vpt 270 360 arc closepath fill + vpt 0 360 arc closepath } bind def +/C12 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 180 360 arc closepath fill + vpt 0 360 arc closepath } bind def +/C13 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 90 arc closepath fill + 2 copy moveto + 2 copy vpt 180 360 arc closepath fill + vpt 0 360 arc closepath } bind def +/C14 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 90 360 arc closepath fill + vpt 0 360 arc } bind def +/C15 { BL [] 0 setdash 2 copy vpt 0 360 arc closepath fill + vpt 0 360 arc closepath } bind def +/Rec { newpath 4 2 roll moveto 1 index 0 rlineto 0 exch rlineto + neg 0 rlineto closepath } bind def +/Square { dup Rec } bind def +/Bsquare { vpt sub exch vpt sub exch vpt2 Square } bind def +/S0 { BL [] 0 setdash 2 copy moveto 0 vpt rlineto BL Bsquare } bind def +/S1 { BL [] 0 setdash 2 copy vpt Square fill Bsquare } bind def +/S2 { BL [] 0 setdash 2 copy exch vpt sub exch vpt Square fill Bsquare } bind def +/S3 { BL [] 0 setdash 2 copy exch vpt sub exch vpt2 vpt Rec fill Bsquare } bind def +/S4 { BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt Square fill Bsquare } bind def +/S5 { BL [] 0 setdash 2 copy 2 copy vpt Square fill + exch vpt sub exch vpt sub vpt Square fill Bsquare } bind def +/S6 { BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt vpt2 Rec fill Bsquare } bind def +/S7 { BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt vpt2 Rec fill + 2 copy vpt Square fill + Bsquare } bind def +/S8 { BL [] 0 setdash 2 copy vpt sub vpt Square fill Bsquare } bind def +/S9 { BL [] 0 setdash 2 copy vpt sub vpt vpt2 Rec fill Bsquare } bind def +/S10 { BL [] 0 setdash 2 copy vpt sub vpt Square fill 2 copy exch vpt sub exch vpt Square fill + Bsquare } bind def +/S11 { BL [] 0 setdash 2 copy vpt sub vpt Square fill 2 copy exch vpt sub exch vpt2 vpt Rec fill + Bsquare } bind def +/S12 { BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill Bsquare } bind def +/S13 { BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill + 2 copy vpt Square fill Bsquare } bind def +/S14 { BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill + 2 copy exch vpt sub exch vpt Square fill Bsquare } bind def +/S15 { BL [] 0 setdash 2 copy Bsquare fill Bsquare } bind def +/D0 { gsave translate 45 rotate 0 0 S0 stroke grestore } bind def +/D1 { gsave translate 45 rotate 0 0 S1 stroke grestore } bind def +/D2 { gsave translate 45 rotate 0 0 S2 stroke grestore } bind def +/D3 { gsave translate 45 rotate 0 0 S3 stroke grestore } bind def +/D4 { gsave translate 45 rotate 0 0 S4 stroke grestore } bind def +/D5 { gsave translate 45 rotate 0 0 S5 stroke grestore } bind def +/D6 { gsave translate 45 rotate 0 0 S6 stroke grestore } bind def +/D7 { gsave translate 45 rotate 0 0 S7 stroke grestore } bind def +/D8 { gsave translate 45 rotate 0 0 S8 stroke grestore } bind def +/D9 { gsave translate 45 rotate 0 0 S9 stroke grestore } bind def +/D10 { gsave translate 45 rotate 0 0 S10 stroke grestore } bind def +/D11 { gsave translate 45 rotate 0 0 S11 stroke grestore } bind def +/D12 { gsave translate 45 rotate 0 0 S12 stroke grestore } bind def +/D13 { gsave translate 45 rotate 0 0 S13 stroke grestore } bind def +/D14 { gsave translate 45 rotate 0 0 S14 stroke grestore } bind def +/D15 { gsave translate 45 rotate 0 0 S15 stroke grestore } bind def +/DiaE { stroke [] 0 setdash vpt add M + hpt neg vpt neg V hpt vpt neg V + hpt vpt V hpt neg vpt V closepath stroke } def +/BoxE { stroke [] 0 setdash exch hpt sub exch vpt add M + 0 vpt2 neg V hpt2 0 V 0 vpt2 V + hpt2 neg 0 V closepath stroke } def +/TriUE { stroke [] 0 setdash vpt 1.12 mul add M + hpt neg vpt -1.62 mul V + hpt 2 mul 0 V + hpt neg vpt 1.62 mul V closepath stroke } def +/TriDE { stroke [] 0 setdash vpt 1.12 mul sub M + hpt neg vpt 1.62 mul V + hpt 2 mul 0 V + hpt neg vpt -1.62 mul V closepath stroke } def +/PentE { stroke [] 0 setdash gsave + translate 0 hpt M 4 {72 rotate 0 hpt L} repeat + closepath stroke grestore } def +/CircE { stroke [] 0 setdash + hpt 0 360 arc stroke } def +/Opaque { gsave closepath 1 setgray fill grestore 0 setgray closepath } def +/DiaW { stroke [] 0 setdash vpt add M + hpt neg vpt neg V hpt vpt neg V + hpt vpt V hpt neg vpt V Opaque stroke } def +/BoxW { stroke [] 0 setdash exch hpt sub exch vpt add M + 0 vpt2 neg V hpt2 0 V 0 vpt2 V + hpt2 neg 0 V Opaque stroke } def +/TriUW { stroke [] 0 setdash vpt 1.12 mul add M + hpt neg vpt -1.62 mul V + hpt 2 mul 0 V + hpt neg vpt 1.62 mul V Opaque stroke } def +/TriDW { stroke [] 0 setdash vpt 1.12 mul sub M + hpt neg vpt 1.62 mul V + hpt 2 mul 0 V + hpt neg vpt -1.62 mul V Opaque stroke } def +/PentW { stroke [] 0 setdash gsave + translate 0 hpt M 4 {72 rotate 0 hpt L} repeat + Opaque stroke grestore } def +/CircW { stroke [] 0 setdash + hpt 0 360 arc Opaque stroke } def +/BoxFill { gsave Rec 1 setgray fill grestore } def +/BoxColFill { + gsave Rec + /Fillden exch def + currentrgbcolor + /ColB exch def /ColG exch def /ColR exch def + /ColR ColR Fillden mul Fillden sub 1 add def + /ColG ColG Fillden mul Fillden sub 1 add def + /ColB ColB Fillden mul Fillden sub 1 add def + ColR ColG ColB setrgbcolor + fill grestore } def +% +% PostScript Level 1 Pattern Fill routine +% Usage: x y w h s a XX PatternFill +% x,y = lower left corner of box to be filled +% w,h = width and height of box +% a = angle in degrees between lines and x-axis +% XX = 0/1 for no/yes cross-hatch +% +/PatternFill { gsave /PFa [ 9 2 roll ] def + PFa 0 get PFa 2 get 2 div add PFa 1 get PFa 3 get 2 div add translate + PFa 2 get -2 div PFa 3 get -2 div PFa 2 get PFa 3 get Rec + gsave 1 setgray fill grestore clip + currentlinewidth 0.5 mul setlinewidth + /PFs PFa 2 get dup mul PFa 3 get dup mul add sqrt def + 0 0 M PFa 5 get rotate PFs -2 div dup translate + 0 1 PFs PFa 4 get div 1 add floor cvi + { PFa 4 get mul 0 M 0 PFs V } for + 0 PFa 6 get ne { + 0 1 PFs PFa 4 get div 1 add floor cvi + { PFa 4 get mul 0 2 1 roll M PFs 0 V } for + } if + stroke grestore } def +% +/Symbol-Oblique /Symbol findfont [1 0 .167 1 0 0] makefont +dup length dict begin {1 index /FID eq {pop pop} {def} ifelse} forall +currentdict end definefont pop +end +%%EndProlog +gnudict begin +gsave +50 50 translate +0.050 0.050 scale +0 setgray +newpath +(Helvetica) findfont 200 scalefont setfont +1.000 UL +LTb +1020 600 M +63 0 V +5777 0 R +-63 0 V +900 600 M +gsave 0 setgray +( 60) Rshow +grestore +1.000 UL +LTb +1020 1067 M +63 0 V +5777 0 R +-63 0 V +-5897 0 R +gsave 0 setgray +( 80) Rshow +grestore +1.000 UL +LTb +1020 1533 M +63 0 V +5777 0 R +-63 0 V +-5897 0 R +gsave 0 setgray +( 100) Rshow +grestore +1.000 UL +LTb +1020 2000 M +63 0 V +5777 0 R +-63 0 V +-5897 0 R +gsave 0 setgray +( 120) Rshow +grestore +1.000 UL +LTb +1020 2467 M +63 0 V +5777 0 R +-63 0 V +-5897 0 R +gsave 0 setgray +( 140) Rshow +grestore +1.000 UL +LTb +1020 2933 M +63 0 V +5777 0 R +-63 0 V +-5897 0 R +gsave 0 setgray +( 160) Rshow +grestore +1.000 UL +LTb +1020 3400 M +63 0 V +5777 0 R +-63 0 V +-5897 0 R +gsave 0 setgray +( 180) Rshow +grestore +1.000 UL +LTb +1020 3867 M +63 0 V +5777 0 R +-63 0 V +-5897 0 R +gsave 0 setgray +( 200) Rshow +grestore +1.000 UL +LTb +1020 4333 M +63 0 V +5777 0 R +-63 0 V +-5897 0 R +gsave 0 setgray +( 220) Rshow +grestore +1.000 UL +LTb +1020 4800 M +63 0 V +5777 0 R +-63 0 V +-5897 0 R +gsave 0 setgray +( 240) Rshow +grestore +1.000 UL +LTb +1020 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 0) Cshow +grestore +1.000 UL +LTb +2188 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 0.1) Cshow +grestore +1.000 UL +LTb +3356 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 0.2) Cshow +grestore +1.000 UL +LTb +4524 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 0.3) Cshow +grestore +1.000 UL +LTb +5692 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 0.4) Cshow +grestore +1.000 UL +LTb +6860 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 0.5) Cshow +grestore +1.000 UL +LTb +1.000 UL +LTb +1020 600 M +5840 0 V +0 4200 V +-5840 0 V +0 -4200 V +LTb +200 2700 M +gsave 0 setgray +currentpoint gsave translate 90 rotate 0 0 M +(number of iterations) Cshow +grestore +grestore +LTb +3940 100 M +gsave 0 setgray +(Probability of link failure) Cshow +grestore +1.000 UP +1.000 UL +LT0 +LTb +5957 4637 M +gsave 0 setgray +(Asynchronous Algorithm) Rshow +grestore +LT0 +6077 4637 M +543 0 V +1020 833 M +104 24 V +100 23 V +97 23 V +92 23 V +90 24 V +87 23 V +84 23 V +81 23 V +79 23 V +77 23 V +75 23 V +73 23 V +71 23 V +69 23 V +68 23 V +67 23 V +65 24 V +65 23 V +63 23 V +62 24 V +62 24 V +60 23 V +60 24 V +59 24 V +59 25 V +58 24 V +57 25 V +57 24 V +57 25 V +56 26 V +56 25 V +56 25 V +55 26 V +55 26 V +55 26 V +54 26 V +55 26 V +54 27 V +54 26 V +54 27 V +54 27 V +54 27 V +53 27 V +54 28 V +54 27 V +53 28 V +53 28 V +54 28 V +53 29 V +54 28 V +53 29 V +53 28 V +53 30 V +53 29 V +54 29 V +53 30 V +53 30 V +53 31 V +53 30 V +53 31 V +53 32 V +54 32 V +53 32 V +53 33 V +53 34 V +53 34 V +53 35 V +53 35 V +53 37 V +53 37 V +53 38 V +54 40 V +53 40 V +53 42 V +53 42 V +53 45 V +53 45 V +53 48 V +53 49 V +53 50 V +53 53 V +53 55 V +54 57 V +53 59 V +53 62 V +53 64 V +53 67 V +53 70 V +53 72 V +53 76 V +53 79 V +53 83 V +53 86 V +54 90 V +53 93 V +53 98 V +53 102 V +53 105 V +53 111 V +1.000 UP +1.000 UL +LT1 +1020 833 Pls +2188 1090 Pls +2772 1347 Pls +3356 1557 Pls +3940 1907 Pls +4524 2210 Pls +5108 2537 Pls +5692 2770 Pls +6276 3400 Pls +6860 4637 Pls +1.000 UL +LTb +1020 600 M +5840 0 V +0 4200 V +-5840 0 V +0 -4200 V +1.000 UP +stroke +grestore +end +showpage +%%Trailer +%%DocumentFonts: Helvetica diff --git a/chapitre-2009/DynamicTopologyTime.ps b/chapitre-2009/DynamicTopologyTime.ps new file mode 100644 index 0000000..c1604c4 --- /dev/null +++ b/chapitre-2009/DynamicTopologyTime.ps @@ -0,0 +1,590 @@ +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: DynamicTopologyTime.ps +%%Creator: gnuplot 4.0 patchlevel 0 +%%CreationDate: Tue Apr 8 13:22:28 2008 +%%DocumentFonts: (atend) +%%BoundingBox: 50 50 410 302 +%%Orientation: Portrait +%%EndComments +/gnudict 256 dict def +gnudict begin +/Color false def +/Solid false def +/gnulinewidth 5.000 def +/userlinewidth gnulinewidth def +/vshift -66 def +/dl {10.0 mul} def +/hpt_ 31.5 def +/vpt_ 31.5 def +/hpt hpt_ def +/vpt vpt_ def +/Rounded false def +/M {moveto} bind def +/L {lineto} bind def +/R {rmoveto} bind def +/V {rlineto} bind def +/N {newpath moveto} bind def +/C {setrgbcolor} bind def +/f {rlineto fill} bind def +/vpt2 vpt 2 mul def +/hpt2 hpt 2 mul def +/Lshow { currentpoint stroke M + 0 vshift R show } def +/Rshow { currentpoint stroke M + dup stringwidth pop neg vshift R show } def +/Cshow { currentpoint stroke M + dup stringwidth pop -2 div vshift R show } def +/UP { dup vpt_ mul /vpt exch def hpt_ mul /hpt exch def + /hpt2 hpt 2 mul def /vpt2 vpt 2 mul def } def +/DL { Color {setrgbcolor Solid {pop []} if 0 setdash } + {pop pop pop 0 setgray Solid {pop []} if 0 setdash} ifelse } def +/BL { stroke userlinewidth 2 mul setlinewidth + Rounded { 1 setlinejoin 1 setlinecap } if } def +/AL { stroke userlinewidth 2 div setlinewidth + Rounded { 1 setlinejoin 1 setlinecap } if } def +/UL { dup gnulinewidth mul /userlinewidth exch def + dup 1 lt {pop 1} if 10 mul /udl exch def } def +/PL { stroke userlinewidth setlinewidth + Rounded { 1 setlinejoin 1 setlinecap } if } def +/LTw { PL [] 1 setgray } def +/LTb { BL [] 0 0 0 DL } def +/LTa { AL [1 udl mul 2 udl mul] 0 setdash 0 0 0 setrgbcolor } def +/LT0 { PL [] 1 0 0 DL } def +/LT1 { PL [4 dl 2 dl] 0 1 0 DL } def +/LT2 { PL [2 dl 3 dl] 0 0 1 DL } def +/LT3 { PL [1 dl 1.5 dl] 1 0 1 DL } def +/LT4 { PL [5 dl 2 dl 1 dl 2 dl] 0 1 1 DL } def +/LT5 { PL [4 dl 3 dl 1 dl 3 dl] 1 1 0 DL } def +/LT6 { PL [2 dl 2 dl 2 dl 4 dl] 0 0 0 DL } def +/LT7 { PL [2 dl 2 dl 2 dl 2 dl 2 dl 4 dl] 1 0.3 0 DL } def +/LT8 { PL [2 dl 2 dl 2 dl 2 dl 2 dl 2 dl 2 dl 4 dl] 0.5 0.5 0.5 DL } def +/Pnt { stroke [] 0 setdash + gsave 1 setlinecap M 0 0 V stroke grestore } def +/Dia { stroke [] 0 setdash 2 copy vpt add M + hpt neg vpt neg V hpt vpt neg V + hpt vpt V hpt neg vpt V closepath stroke + Pnt } def +/Pls { stroke [] 0 setdash vpt sub M 0 vpt2 V + currentpoint stroke M + hpt neg vpt neg R hpt2 0 V stroke + } def +/Box { stroke [] 0 setdash 2 copy exch hpt sub exch vpt add M + 0 vpt2 neg V hpt2 0 V 0 vpt2 V + hpt2 neg 0 V closepath stroke + Pnt } def +/Crs { stroke [] 0 setdash exch hpt sub exch vpt add M + hpt2 vpt2 neg V currentpoint stroke M + hpt2 neg 0 R hpt2 vpt2 V stroke } def +/TriU { stroke [] 0 setdash 2 copy vpt 1.12 mul add M + hpt neg vpt -1.62 mul V + hpt 2 mul 0 V + hpt neg vpt 1.62 mul V closepath stroke + Pnt } def +/Star { 2 copy Pls Crs } def +/BoxF { stroke [] 0 setdash exch hpt sub exch vpt add M + 0 vpt2 neg V hpt2 0 V 0 vpt2 V + hpt2 neg 0 V closepath fill } def +/TriUF { stroke [] 0 setdash vpt 1.12 mul add M + hpt neg vpt -1.62 mul V + hpt 2 mul 0 V + hpt neg vpt 1.62 mul V closepath fill } def +/TriD { stroke [] 0 setdash 2 copy vpt 1.12 mul sub M + hpt neg vpt 1.62 mul V + hpt 2 mul 0 V + hpt neg vpt -1.62 mul V closepath stroke + Pnt } def +/TriDF { stroke [] 0 setdash vpt 1.12 mul sub M + hpt neg vpt 1.62 mul V + hpt 2 mul 0 V + hpt neg vpt -1.62 mul V closepath fill} def +/DiaF { stroke [] 0 setdash vpt add M + hpt neg vpt neg V hpt vpt neg V + hpt vpt V hpt neg vpt V closepath fill } def +/Pent { stroke [] 0 setdash 2 copy gsave + translate 0 hpt M 4 {72 rotate 0 hpt L} repeat + closepath stroke grestore Pnt } def +/PentF { stroke [] 0 setdash gsave + translate 0 hpt M 4 {72 rotate 0 hpt L} repeat + closepath fill grestore } def +/Circle { stroke [] 0 setdash 2 copy + hpt 0 360 arc stroke Pnt } def +/CircleF { stroke [] 0 setdash hpt 0 360 arc fill } def +/C0 { BL [] 0 setdash 2 copy moveto vpt 90 450 arc } bind def +/C1 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 90 arc closepath fill + vpt 0 360 arc closepath } bind def +/C2 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 90 180 arc closepath fill + vpt 0 360 arc closepath } bind def +/C3 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 180 arc closepath fill + vpt 0 360 arc closepath } bind def +/C4 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 180 270 arc closepath fill + vpt 0 360 arc closepath } bind def +/C5 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 90 arc + 2 copy moveto + 2 copy vpt 180 270 arc closepath fill + vpt 0 360 arc } bind def +/C6 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 90 270 arc closepath fill + vpt 0 360 arc closepath } bind def +/C7 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 270 arc closepath fill + vpt 0 360 arc closepath } bind def +/C8 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 270 360 arc closepath fill + vpt 0 360 arc closepath } bind def +/C9 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 270 450 arc closepath fill + vpt 0 360 arc closepath } bind def +/C10 { BL [] 0 setdash 2 copy 2 copy moveto vpt 270 360 arc closepath fill + 2 copy moveto + 2 copy vpt 90 180 arc closepath fill + vpt 0 360 arc closepath } bind def +/C11 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 180 arc closepath fill + 2 copy moveto + 2 copy vpt 270 360 arc closepath fill + vpt 0 360 arc closepath } bind def +/C12 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 180 360 arc closepath fill + vpt 0 360 arc closepath } bind def +/C13 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 90 arc closepath fill + 2 copy moveto + 2 copy vpt 180 360 arc closepath fill + vpt 0 360 arc closepath } bind def +/C14 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 90 360 arc closepath fill + vpt 0 360 arc } bind def +/C15 { BL [] 0 setdash 2 copy vpt 0 360 arc closepath fill + vpt 0 360 arc closepath } bind def +/Rec { newpath 4 2 roll moveto 1 index 0 rlineto 0 exch rlineto + neg 0 rlineto closepath } bind def +/Square { dup Rec } bind def +/Bsquare { vpt sub exch vpt sub exch vpt2 Square } bind def +/S0 { BL [] 0 setdash 2 copy moveto 0 vpt rlineto BL Bsquare } bind def +/S1 { BL [] 0 setdash 2 copy vpt Square fill Bsquare } bind def +/S2 { BL [] 0 setdash 2 copy exch vpt sub exch vpt Square fill Bsquare } bind def +/S3 { BL [] 0 setdash 2 copy exch vpt sub exch vpt2 vpt Rec fill Bsquare } bind def +/S4 { BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt Square fill Bsquare } bind def +/S5 { BL [] 0 setdash 2 copy 2 copy vpt Square fill + exch vpt sub exch vpt sub vpt Square fill Bsquare } bind def +/S6 { BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt vpt2 Rec fill Bsquare } bind def +/S7 { BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt vpt2 Rec fill + 2 copy vpt Square fill + Bsquare } bind def +/S8 { BL [] 0 setdash 2 copy vpt sub vpt Square fill Bsquare } bind def +/S9 { BL [] 0 setdash 2 copy vpt sub vpt vpt2 Rec fill Bsquare } bind def +/S10 { BL [] 0 setdash 2 copy vpt sub vpt Square fill 2 copy exch vpt sub exch vpt Square fill + Bsquare } bind def +/S11 { BL [] 0 setdash 2 copy vpt sub vpt Square fill 2 copy exch vpt sub exch vpt2 vpt Rec fill + Bsquare } bind def +/S12 { BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill Bsquare } bind def +/S13 { BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill + 2 copy vpt Square fill Bsquare } bind def +/S14 { BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill + 2 copy exch vpt sub exch vpt Square fill Bsquare } bind def +/S15 { BL [] 0 setdash 2 copy Bsquare fill Bsquare } bind def +/D0 { gsave translate 45 rotate 0 0 S0 stroke grestore } bind def +/D1 { gsave translate 45 rotate 0 0 S1 stroke grestore } bind def +/D2 { gsave translate 45 rotate 0 0 S2 stroke grestore } bind def +/D3 { gsave translate 45 rotate 0 0 S3 stroke grestore } bind def +/D4 { gsave translate 45 rotate 0 0 S4 stroke grestore } bind def +/D5 { gsave translate 45 rotate 0 0 S5 stroke grestore } bind def +/D6 { gsave translate 45 rotate 0 0 S6 stroke grestore } bind def +/D7 { gsave translate 45 rotate 0 0 S7 stroke grestore } bind def +/D8 { gsave translate 45 rotate 0 0 S8 stroke grestore } bind def +/D9 { gsave translate 45 rotate 0 0 S9 stroke grestore } bind def +/D10 { gsave translate 45 rotate 0 0 S10 stroke grestore } bind def +/D11 { gsave translate 45 rotate 0 0 S11 stroke grestore } bind def +/D12 { gsave translate 45 rotate 0 0 S12 stroke grestore } bind def +/D13 { gsave translate 45 rotate 0 0 S13 stroke grestore } bind def +/D14 { gsave translate 45 rotate 0 0 S14 stroke grestore } bind def +/D15 { gsave translate 45 rotate 0 0 S15 stroke grestore } bind def +/DiaE { stroke [] 0 setdash vpt add M + hpt neg vpt neg V hpt vpt neg V + hpt vpt V hpt neg vpt V closepath stroke } def +/BoxE { stroke [] 0 setdash exch hpt sub exch vpt add M + 0 vpt2 neg V hpt2 0 V 0 vpt2 V + hpt2 neg 0 V closepath stroke } def +/TriUE { stroke [] 0 setdash vpt 1.12 mul add M + hpt neg vpt -1.62 mul V + hpt 2 mul 0 V + hpt neg vpt 1.62 mul V closepath stroke } def +/TriDE { stroke [] 0 setdash vpt 1.12 mul sub M + hpt neg vpt 1.62 mul V + hpt 2 mul 0 V + hpt neg vpt -1.62 mul V closepath stroke } def +/PentE { stroke [] 0 setdash gsave + translate 0 hpt M 4 {72 rotate 0 hpt L} repeat + closepath stroke grestore } def +/CircE { stroke [] 0 setdash + hpt 0 360 arc stroke } def +/Opaque { gsave closepath 1 setgray fill grestore 0 setgray closepath } def +/DiaW { stroke [] 0 setdash vpt add M + hpt neg vpt neg V hpt vpt neg V + hpt vpt V hpt neg vpt V Opaque stroke } def +/BoxW { stroke [] 0 setdash exch hpt sub exch vpt add M + 0 vpt2 neg V hpt2 0 V 0 vpt2 V + hpt2 neg 0 V Opaque stroke } def +/TriUW { stroke [] 0 setdash vpt 1.12 mul add M + hpt neg vpt -1.62 mul V + hpt 2 mul 0 V + hpt neg vpt 1.62 mul V Opaque stroke } def +/TriDW { stroke [] 0 setdash vpt 1.12 mul sub M + hpt neg vpt 1.62 mul V + hpt 2 mul 0 V + hpt neg vpt -1.62 mul V Opaque stroke } def +/PentW { stroke [] 0 setdash gsave + translate 0 hpt M 4 {72 rotate 0 hpt L} repeat + Opaque stroke grestore } def +/CircW { stroke [] 0 setdash + hpt 0 360 arc Opaque stroke } def +/BoxFill { gsave Rec 1 setgray fill grestore } def +/BoxColFill { + gsave Rec + /Fillden exch def + currentrgbcolor + /ColB exch def /ColG exch def /ColR exch def + /ColR ColR Fillden mul Fillden sub 1 add def + /ColG ColG Fillden mul Fillden sub 1 add def + /ColB ColB Fillden mul Fillden sub 1 add def + ColR ColG ColB setrgbcolor + fill grestore } def +% +% PostScript Level 1 Pattern Fill routine +% Usage: x y w h s a XX PatternFill +% x,y = lower left corner of box to be filled +% w,h = width and height of box +% a = angle in degrees between lines and x-axis +% XX = 0/1 for no/yes cross-hatch +% +/PatternFill { gsave /PFa [ 9 2 roll ] def + PFa 0 get PFa 2 get 2 div add PFa 1 get PFa 3 get 2 div add translate + PFa 2 get -2 div PFa 3 get -2 div PFa 2 get PFa 3 get Rec + gsave 1 setgray fill grestore clip + currentlinewidth 0.5 mul setlinewidth + /PFs PFa 2 get dup mul PFa 3 get dup mul add sqrt def + 0 0 M PFa 5 get rotate PFs -2 div dup translate + 0 1 PFs PFa 4 get div 1 add floor cvi + { PFa 4 get mul 0 M 0 PFs V } for + 0 PFa 6 get ne { + 0 1 PFs PFa 4 get div 1 add floor cvi + { PFa 4 get mul 0 2 1 roll M PFs 0 V } for + } if + stroke grestore } def +% +/Symbol-Oblique /Symbol findfont [1 0 .167 1 0 0] makefont +dup length dict begin {1 index /FID eq {pop pop} {def} ifelse} forall +currentdict end definefont pop +end +%%EndProlog +gnudict begin +gsave +50 50 translate +0.050 0.050 scale +0 setgray +newpath +(Helvetica) findfont 200 scalefont setfont +1.000 UL +LTb +900 600 M +63 0 V +5897 0 R +-63 0 V +780 600 M +gsave 0 setgray +( 15) Rshow +grestore +1.000 UL +LTb +900 1200 M +63 0 V +5897 0 R +-63 0 V +-6017 0 R +gsave 0 setgray +( 20) Rshow +grestore +1.000 UL +LTb +900 1800 M +63 0 V +5897 0 R +-63 0 V +-6017 0 R +gsave 0 setgray +( 25) Rshow +grestore +1.000 UL +LTb +900 2400 M +63 0 V +5897 0 R +-63 0 V +-6017 0 R +gsave 0 setgray +( 30) Rshow +grestore +1.000 UL +LTb +900 3000 M +63 0 V +5897 0 R +-63 0 V +-6017 0 R +gsave 0 setgray +( 35) Rshow +grestore +1.000 UL +LTb +900 3600 M +63 0 V +5897 0 R +-63 0 V +-6017 0 R +gsave 0 setgray +( 40) Rshow +grestore +1.000 UL +LTb +900 4200 M +63 0 V +5897 0 R +-63 0 V +-6017 0 R +gsave 0 setgray +( 45) Rshow +grestore +1.000 UL +LTb +900 4800 M +63 0 V +5897 0 R +-63 0 V +-6017 0 R +gsave 0 setgray +( 50) Rshow +grestore +1.000 UL +LTb +900 600 M +0 63 V +0 4137 R +0 -63 V +900 400 M +gsave 0 setgray +( 0) Cshow +grestore +1.000 UL +LTb +2092 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 0.1) Cshow +grestore +1.000 UL +LTb +3284 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 0.2) Cshow +grestore +1.000 UL +LTb +4476 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 0.3) Cshow +grestore +1.000 UL +LTb +5668 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 0.4) Cshow +grestore +1.000 UL +LTb +6860 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 0.5) Cshow +grestore +1.000 UL +LTb +1.000 UL +LTb +900 600 M +5960 0 V +0 4200 V +-5960 0 V +900 600 L +LTb +200 2700 M +gsave 0 setgray +currentpoint gsave translate 90 rotate 0 0 M +(Simulated time) Cshow +grestore +grestore +LTb +3880 100 M +gsave 0 setgray +(Probability of link failure) Cshow +grestore +1.000 UP +1.000 UL +LT0 +LTb +5957 4637 M +gsave 0 setgray +(Asynchronous Algorithm) Rshow +grestore +LT0 +6077 4637 M +543 0 V +900 774 M +106 19 V +102 19 V +99 20 V +95 19 V +91 20 V +89 19 V +85 20 V +83 19 V +81 20 V +78 19 V +77 20 V +74 20 V +72 19 V +71 20 V +70 20 V +68 20 V +67 20 V +65 21 V +65 20 V +63 21 V +63 21 V +62 21 V +61 22 V +60 21 V +60 22 V +59 22 V +59 23 V +58 22 V +58 24 V +57 23 V +57 23 V +57 24 V +56 25 V +57 24 V +56 25 V +55 25 V +56 25 V +55 26 V +56 26 V +55 26 V +55 26 V +54 27 V +55 26 V +55 28 V +55 27 V +54 27 V +55 28 V +54 28 V +55 29 V +54 28 V +54 29 V +55 29 V +54 29 V +54 30 V +55 29 V +54 31 V +54 30 V +54 31 V +55 31 V +54 32 V +54 32 V +54 32 V +54 33 V +55 34 V +54 34 V +54 35 V +54 36 V +54 36 V +55 38 V +54 38 V +54 39 V +54 40 V +54 42 V +54 43 V +55 44 V +54 45 V +54 47 V +54 49 V +54 50 V +55 52 V +54 54 V +54 57 V +54 58 V +54 61 V +54 63 V +55 66 V +54 69 V +54 72 V +54 74 V +54 78 V +55 81 V +54 84 V +54 88 V +54 92 V +54 96 V +54 99 V +55 104 V +54 108 V +54 112 V +1.000 UP +1.000 UL +LT1 +900 774 Pls +2092 984 Pls +2688 1219 Pls +3284 1360 Pls +3880 1740 Pls +4476 2048 Pls +5072 2368 Pls +5668 2618 Pls +6264 3270 Pls +6860 4529 Pls +1.000 UL +LTb +900 600 M +5960 0 V +0 4200 V +-5960 0 V +900 600 L +1.000 UP +stroke +grestore +end +showpage +%%Trailer +%%DocumentFonts: Helvetica diff --git a/chapitre-2009/ErrorNbIteration.ps b/chapitre-2009/ErrorNbIteration.ps new file mode 100644 index 0000000..05bf9c4 --- /dev/null +++ b/chapitre-2009/ErrorNbIteration.ps @@ -0,0 +1,769 @@ +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: ErrorNbIteration.ps +%%Creator: gnuplot 4.0 patchlevel 0 +%%CreationDate: Tue Feb 5 17:27:47 2008 +%%DocumentFonts: (atend) +%%BoundingBox: 50 50 410 302 +%%Orientation: Portrait +%%EndComments +/gnudict 256 dict def +gnudict begin +/Color false def +/Solid false def +/gnulinewidth 5.000 def +/userlinewidth gnulinewidth def +/vshift -66 def +/dl {10.0 mul} def +/hpt_ 31.5 def +/vpt_ 31.5 def +/hpt hpt_ def +/vpt vpt_ def +/Rounded false def +/M {moveto} bind def +/L {lineto} bind def +/R {rmoveto} bind def +/V {rlineto} bind def +/N {newpath moveto} bind def +/C {setrgbcolor} bind def +/f {rlineto fill} bind def +/vpt2 vpt 2 mul def +/hpt2 hpt 2 mul def +/Lshow { currentpoint stroke M + 0 vshift R show } def +/Rshow { currentpoint stroke M + dup stringwidth pop neg vshift R show } def +/Cshow { currentpoint stroke M + dup stringwidth pop -2 div vshift R show } def +/UP { dup vpt_ mul /vpt exch def hpt_ mul /hpt exch def + /hpt2 hpt 2 mul def /vpt2 vpt 2 mul def } def +/DL { Color {setrgbcolor Solid {pop []} if 0 setdash } + {pop pop pop 0 setgray Solid {pop []} if 0 setdash} ifelse } def +/BL { stroke userlinewidth 2 mul setlinewidth + Rounded { 1 setlinejoin 1 setlinecap } if } def +/AL { stroke userlinewidth 2 div setlinewidth + Rounded { 1 setlinejoin 1 setlinecap } if } def +/UL { dup gnulinewidth mul /userlinewidth exch def + dup 1 lt {pop 1} if 10 mul /udl exch def } def +/PL { stroke userlinewidth setlinewidth + Rounded { 1 setlinejoin 1 setlinecap } if } def +/LTw { PL [] 1 setgray } def +/LTb { BL [] 0 0 0 DL } def +/LTa { AL [1 udl mul 2 udl mul] 0 setdash 0 0 0 setrgbcolor } def +/LT0 { PL [] 1 0 0 DL } def +/LT1 { PL [4 dl 2 dl] 0 1 0 DL } def +/LT2 { PL [2 dl 3 dl] 0 0 1 DL } def +/LT3 { PL [1 dl 1.5 dl] 1 0 1 DL } def +/LT4 { PL [5 dl 2 dl 1 dl 2 dl] 0 1 1 DL } def +/LT5 { PL [4 dl 3 dl 1 dl 3 dl] 1 1 0 DL } def +/LT6 { PL [2 dl 2 dl 2 dl 4 dl] 0 0 0 DL } def +/LT7 { PL [2 dl 2 dl 2 dl 2 dl 2 dl 4 dl] 1 0.3 0 DL } def +/LT8 { PL [2 dl 2 dl 2 dl 2 dl 2 dl 2 dl 2 dl 4 dl] 0.5 0.5 0.5 DL } def +/Pnt { stroke [] 0 setdash + gsave 1 setlinecap M 0 0 V stroke grestore } def +/Dia { stroke [] 0 setdash 2 copy vpt add M + hpt neg vpt neg V hpt vpt neg V + hpt vpt V hpt neg vpt V closepath stroke + Pnt } def +/Pls { stroke [] 0 setdash vpt sub M 0 vpt2 V + currentpoint stroke M + hpt neg vpt neg R hpt2 0 V stroke + } def +/Box { stroke [] 0 setdash 2 copy exch hpt sub exch vpt add M + 0 vpt2 neg V hpt2 0 V 0 vpt2 V + hpt2 neg 0 V closepath stroke + Pnt } def +/Crs { stroke [] 0 setdash exch hpt sub exch vpt add M + hpt2 vpt2 neg V currentpoint stroke M + hpt2 neg 0 R hpt2 vpt2 V stroke } def +/TriU { stroke [] 0 setdash 2 copy vpt 1.12 mul add M + hpt neg vpt -1.62 mul V + hpt 2 mul 0 V + hpt neg vpt 1.62 mul V closepath stroke + Pnt } def +/Star { 2 copy Pls Crs } def +/BoxF { stroke [] 0 setdash exch hpt sub exch vpt add M + 0 vpt2 neg V hpt2 0 V 0 vpt2 V + hpt2 neg 0 V closepath fill } def +/TriUF { stroke [] 0 setdash vpt 1.12 mul add M + hpt neg vpt -1.62 mul V + hpt 2 mul 0 V + hpt neg vpt 1.62 mul V closepath fill } def +/TriD { stroke [] 0 setdash 2 copy vpt 1.12 mul sub M + hpt neg vpt 1.62 mul V + hpt 2 mul 0 V + hpt neg vpt -1.62 mul V closepath stroke + Pnt } def +/TriDF { stroke [] 0 setdash vpt 1.12 mul sub M + hpt neg vpt 1.62 mul V + hpt 2 mul 0 V + hpt neg vpt -1.62 mul V closepath fill} def +/DiaF { stroke [] 0 setdash vpt add M + hpt neg vpt neg V hpt vpt neg V + hpt vpt V hpt neg vpt V closepath fill } def +/Pent { stroke [] 0 setdash 2 copy gsave + translate 0 hpt M 4 {72 rotate 0 hpt L} repeat + closepath stroke grestore Pnt } def +/PentF { stroke [] 0 setdash gsave + translate 0 hpt M 4 {72 rotate 0 hpt L} repeat + closepath fill grestore } def +/Circle { stroke [] 0 setdash 2 copy + hpt 0 360 arc stroke Pnt } def +/CircleF { stroke [] 0 setdash hpt 0 360 arc fill } def +/C0 { BL [] 0 setdash 2 copy moveto vpt 90 450 arc } bind def +/C1 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 90 arc closepath fill + vpt 0 360 arc closepath } bind def +/C2 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 90 180 arc closepath fill + vpt 0 360 arc closepath } bind def +/C3 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 180 arc closepath fill + vpt 0 360 arc closepath } bind def +/C4 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 180 270 arc closepath fill + vpt 0 360 arc closepath } bind def +/C5 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 90 arc + 2 copy moveto + 2 copy vpt 180 270 arc closepath fill + vpt 0 360 arc } bind def +/C6 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 90 270 arc closepath fill + vpt 0 360 arc closepath } bind def +/C7 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 270 arc closepath fill + vpt 0 360 arc closepath } bind def +/C8 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 270 360 arc closepath fill + vpt 0 360 arc closepath } bind def +/C9 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 270 450 arc closepath fill + vpt 0 360 arc closepath } bind def +/C10 { BL [] 0 setdash 2 copy 2 copy moveto vpt 270 360 arc closepath fill + 2 copy moveto + 2 copy vpt 90 180 arc closepath fill + vpt 0 360 arc closepath } bind def +/C11 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 180 arc closepath fill + 2 copy moveto + 2 copy vpt 270 360 arc closepath fill + vpt 0 360 arc closepath } bind def +/C12 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 180 360 arc closepath fill + vpt 0 360 arc closepath } bind def +/C13 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 90 arc closepath fill + 2 copy moveto + 2 copy vpt 180 360 arc closepath fill + vpt 0 360 arc closepath } bind def +/C14 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 90 360 arc closepath fill + vpt 0 360 arc } bind def +/C15 { BL [] 0 setdash 2 copy vpt 0 360 arc closepath fill + vpt 0 360 arc closepath } bind def +/Rec { newpath 4 2 roll moveto 1 index 0 rlineto 0 exch rlineto + neg 0 rlineto closepath } bind def +/Square { dup Rec } bind def +/Bsquare { vpt sub exch vpt sub exch vpt2 Square } bind def +/S0 { BL [] 0 setdash 2 copy moveto 0 vpt rlineto BL Bsquare } bind def +/S1 { BL [] 0 setdash 2 copy vpt Square fill Bsquare } bind def +/S2 { BL [] 0 setdash 2 copy exch vpt sub exch vpt Square fill Bsquare } bind def +/S3 { BL [] 0 setdash 2 copy exch vpt sub exch vpt2 vpt Rec fill Bsquare } bind def +/S4 { BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt Square fill Bsquare } bind def +/S5 { BL [] 0 setdash 2 copy 2 copy vpt Square fill + exch vpt sub exch vpt sub vpt Square fill Bsquare } bind def +/S6 { BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt vpt2 Rec fill Bsquare } bind def +/S7 { BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt vpt2 Rec fill + 2 copy vpt Square fill + Bsquare } bind def +/S8 { BL [] 0 setdash 2 copy vpt sub vpt Square fill Bsquare } bind def +/S9 { BL [] 0 setdash 2 copy vpt sub vpt vpt2 Rec fill Bsquare } bind def +/S10 { BL [] 0 setdash 2 copy vpt sub vpt Square fill 2 copy exch vpt sub exch vpt Square fill + Bsquare } bind def +/S11 { BL [] 0 setdash 2 copy vpt sub vpt Square fill 2 copy exch vpt sub exch vpt2 vpt Rec fill + Bsquare } bind def +/S12 { BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill Bsquare } bind def +/S13 { BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill + 2 copy vpt Square fill Bsquare } bind def +/S14 { BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill + 2 copy exch vpt sub exch vpt Square fill Bsquare } bind def +/S15 { BL [] 0 setdash 2 copy Bsquare fill Bsquare } bind def +/D0 { gsave translate 45 rotate 0 0 S0 stroke grestore } bind def +/D1 { gsave translate 45 rotate 0 0 S1 stroke grestore } bind def +/D2 { gsave translate 45 rotate 0 0 S2 stroke grestore } bind def +/D3 { gsave translate 45 rotate 0 0 S3 stroke grestore } bind def +/D4 { gsave translate 45 rotate 0 0 S4 stroke grestore } bind def +/D5 { gsave translate 45 rotate 0 0 S5 stroke grestore } bind def +/D6 { gsave translate 45 rotate 0 0 S6 stroke grestore } bind def +/D7 { gsave translate 45 rotate 0 0 S7 stroke grestore } bind def +/D8 { gsave translate 45 rotate 0 0 S8 stroke grestore } bind def +/D9 { gsave translate 45 rotate 0 0 S9 stroke grestore } bind def +/D10 { gsave translate 45 rotate 0 0 S10 stroke grestore } bind def +/D11 { gsave translate 45 rotate 0 0 S11 stroke grestore } bind def +/D12 { gsave translate 45 rotate 0 0 S12 stroke grestore } bind def +/D13 { gsave translate 45 rotate 0 0 S13 stroke grestore } bind def +/D14 { gsave translate 45 rotate 0 0 S14 stroke grestore } bind def +/D15 { gsave translate 45 rotate 0 0 S15 stroke grestore } bind def +/DiaE { stroke [] 0 setdash vpt add M + hpt neg vpt neg V hpt vpt neg V + hpt vpt V hpt neg vpt V closepath stroke } def +/BoxE { stroke [] 0 setdash exch hpt sub exch vpt add M + 0 vpt2 neg V hpt2 0 V 0 vpt2 V + hpt2 neg 0 V closepath stroke } def +/TriUE { stroke [] 0 setdash vpt 1.12 mul add M + hpt neg vpt -1.62 mul V + hpt 2 mul 0 V + hpt neg vpt 1.62 mul V closepath stroke } def +/TriDE { stroke [] 0 setdash vpt 1.12 mul sub M + hpt neg vpt 1.62 mul V + hpt 2 mul 0 V + hpt neg vpt -1.62 mul V closepath stroke } def +/PentE { stroke [] 0 setdash gsave + translate 0 hpt M 4 {72 rotate 0 hpt L} repeat + closepath stroke grestore } def +/CircE { stroke [] 0 setdash + hpt 0 360 arc stroke } def +/Opaque { gsave closepath 1 setgray fill grestore 0 setgray closepath } def +/DiaW { stroke [] 0 setdash vpt add M + hpt neg vpt neg V hpt vpt neg V + hpt vpt V hpt neg vpt V Opaque stroke } def +/BoxW { stroke [] 0 setdash exch hpt sub exch vpt add M + 0 vpt2 neg V hpt2 0 V 0 vpt2 V + hpt2 neg 0 V Opaque stroke } def +/TriUW { stroke [] 0 setdash vpt 1.12 mul add M + hpt neg vpt -1.62 mul V + hpt 2 mul 0 V + hpt neg vpt 1.62 mul V Opaque stroke } def +/TriDW { stroke [] 0 setdash vpt 1.12 mul sub M + hpt neg vpt 1.62 mul V + hpt 2 mul 0 V + hpt neg vpt -1.62 mul V Opaque stroke } def +/PentW { stroke [] 0 setdash gsave + translate 0 hpt M 4 {72 rotate 0 hpt L} repeat + Opaque stroke grestore } def +/CircW { stroke [] 0 setdash + hpt 0 360 arc Opaque stroke } def +/BoxFill { gsave Rec 1 setgray fill grestore } def +/BoxColFill { + gsave Rec + /Fillden exch def + currentrgbcolor + /ColB exch def /ColG exch def /ColR exch def + /ColR ColR Fillden mul Fillden sub 1 add def + /ColG ColG Fillden mul Fillden sub 1 add def + /ColB ColB Fillden mul Fillden sub 1 add def + ColR ColG ColB setrgbcolor + fill grestore } def +% +% PostScript Level 1 Pattern Fill routine +% Usage: x y w h s a XX PatternFill +% x,y = lower left corner of box to be filled +% w,h = width and height of box +% a = angle in degrees between lines and x-axis +% XX = 0/1 for no/yes cross-hatch +% +/PatternFill { gsave /PFa [ 9 2 roll ] def + PFa 0 get PFa 2 get 2 div add PFa 1 get PFa 3 get 2 div add translate + PFa 2 get -2 div PFa 3 get -2 div PFa 2 get PFa 3 get Rec + gsave 1 setgray fill grestore clip + currentlinewidth 0.5 mul setlinewidth + /PFs PFa 2 get dup mul PFa 3 get dup mul add sqrt def + 0 0 M PFa 5 get rotate PFs -2 div dup translate + 0 1 PFs PFa 4 get div 1 add floor cvi + { PFa 4 get mul 0 M 0 PFs V } for + 0 PFa 6 get ne { + 0 1 PFs PFa 4 get div 1 add floor cvi + { PFa 4 get mul 0 2 1 roll M PFs 0 V } for + } if + stroke grestore } def +% +/Symbol-Oblique /Symbol findfont [1 0 .167 1 0 0] makefont +dup length dict begin {1 index /FID eq {pop pop} {def} ifelse} forall +currentdict end definefont pop +end +%%EndProlog +gnudict begin +gsave +50 50 translate +0.050 0.050 scale +0 setgray +newpath +(Helvetica) findfont 200 scalefont setfont +1.000 UL +LTb +1260 600 M +63 0 V +5537 0 R +-63 0 V +-5657 0 R +gsave 0 setgray +( 1e-06) Rshow +grestore +1.000 UL +LTb +1260 811 M +31 0 V +5569 0 R +-31 0 V +1260 1089 M +31 0 V +5569 0 R +-31 0 V +1260 1232 M +31 0 V +5569 0 R +-31 0 V +-5569 68 R +63 0 V +5537 0 R +-63 0 V +-5657 0 R +gsave 0 setgray +( 1e-05) Rshow +grestore +1.000 UL +LTb +1260 1511 M +31 0 V +5569 0 R +-31 0 V +1260 1789 M +31 0 V +5569 0 R +-31 0 V +1260 1932 M +31 0 V +5569 0 R +-31 0 V +-5569 68 R +63 0 V +5537 0 R +-63 0 V +-5657 0 R +gsave 0 setgray +( 1e-04) Rshow +grestore +1.000 UL +LTb +1260 2211 M +31 0 V +5569 0 R +-31 0 V +1260 2489 M +31 0 V +5569 0 R +-31 0 V +1260 2632 M +31 0 V +5569 0 R +-31 0 V +-5569 68 R +63 0 V +5537 0 R +-63 0 V +-5657 0 R +gsave 0 setgray +( 0.001) Rshow +grestore +1.000 UL +LTb +1260 2911 M +31 0 V +5569 0 R +-31 0 V +1260 3189 M +31 0 V +5569 0 R +-31 0 V +1260 3332 M +31 0 V +5569 0 R +-31 0 V +-5569 68 R +63 0 V +5537 0 R +-63 0 V +-5657 0 R +gsave 0 setgray +( 0.01) Rshow +grestore +1.000 UL +LTb +1260 3611 M +31 0 V +5569 0 R +-31 0 V +1260 3889 M +31 0 V +5569 0 R +-31 0 V +1260 4032 M +31 0 V +5569 0 R +-31 0 V +-5569 68 R +63 0 V +5537 0 R +-63 0 V +-5657 0 R +gsave 0 setgray +( 0.1) Rshow +grestore +1.000 UL +LTb +1260 4311 M +31 0 V +5569 0 R +-31 0 V +1260 4589 M +31 0 V +5569 0 R +-31 0 V +1260 4732 M +31 0 V +5569 0 R +-31 0 V +-5569 68 R +63 0 V +5537 0 R +-63 0 V +-5657 0 R +gsave 0 setgray +( 1) Rshow +grestore +1.000 UL +LTb +1260 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 0) Cshow +grestore +1.000 UL +LTb +2007 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 20) Cshow +grestore +1.000 UL +LTb +2753 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 40) Cshow +grestore +1.000 UL +LTb +3500 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 60) Cshow +grestore +1.000 UL +LTb +4247 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 80) Cshow +grestore +1.000 UL +LTb +4993 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 100) Cshow +grestore +1.000 UL +LTb +5740 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 120) Cshow +grestore +1.000 UL +LTb +6487 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 140) Cshow +grestore +1.000 UL +LTb +1.000 UL +LTb +1260 600 M +5600 0 V +0 4200 V +-5600 0 V +0 -4200 V +LTb +200 2700 M +gsave 0 setgray +currentpoint gsave translate 90 rotate 0 0 M +(Mean Error ) Cshow +grestore +grestore +LTb +4060 100 M +gsave 0 setgray +(Number of Iterations) Cshow +grestore +1.000 UP +1.000 UL +LT0 +LTb +5957 4637 M +gsave 0 setgray +(Synchronous Algorithm) Rshow +grestore +LT0 +6077 4637 M +543 0 V +1297 4800 M +25 -42 V +26 -43 V +25 -42 V +26 -43 V +26 -42 V +26 -43 V +27 -42 V +27 -42 V +27 -43 V +27 -42 V +28 -43 V +28 -42 V +28 -43 V +29 -42 V +29 -42 V +29 -43 V +30 -42 V +30 -43 V +31 -42 V +30 -42 V +31 -43 V +32 -42 V +32 -43 V +32 -42 V +32 -43 V +33 -42 V +33 -42 V +33 -43 V +34 -42 V +34 -43 V +35 -42 V +34 -43 V +35 -42 V +36 -42 V +35 -43 V +36 -42 V +36 -43 V +37 -42 V +37 -43 V +36 -42 V +38 -42 V +37 -43 V +38 -42 V +37 -43 V +38 -42 V +38 -43 V +39 -42 V +38 -42 V +39 -43 V +38 -42 V +39 -43 V +39 -42 V +39 -42 V +39 -43 V +39 -42 V +39 -43 V +39 -42 V +39 -43 V +39 -42 V +39 -42 V +39 -43 V +39 -42 V +39 -43 V +39 -42 V +38 -43 V +39 -42 V +38 -42 V +39 -43 V +38 -42 V +38 -43 V +38 -42 V +37 -43 V +38 -42 V +37 -42 V +37 -43 V +37 -42 V +37 -43 V +37 -42 V +36 -43 V +36 -42 V +36 -42 V +36 -43 V +36 -42 V +35 -43 V +36 -42 V +35 -42 V +35 -43 V +35 -42 V +35 -43 V +35 -42 V +35 -43 V +35 -42 V +35 -42 V +35 -43 V +35 -42 V +36 -43 V +35 -42 V +36 -43 V +36 -42 V +1.000 UL +LT1 +LTb +5957 4437 M +gsave 0 setgray +(Asynchronous Algorithm) Rshow +grestore +LT1 +6077 4437 M +543 0 V +1297 4800 M +43 -42 V +43 -43 V +42 -42 V +43 -43 V +42 -42 V +42 -43 V +42 -42 V +42 -42 V +41 -43 V +42 -42 V +42 -43 V +41 -42 V +41 -43 V +42 -42 V +41 -42 V +42 -43 V +41 -42 V +41 -43 V +41 -42 V +41 -42 V +42 -43 V +41 -42 V +41 -43 V +41 -42 V +41 -43 V +41 -42 V +42 -42 V +41 -43 V +41 -42 V +41 -43 V +41 -42 V +41 -43 V +41 -42 V +42 -42 V +41 -43 V +41 -42 V +41 -43 V +42 -42 V +41 -43 V +41 -42 V +42 -42 V +41 -43 V +41 -42 V +42 -43 V +41 -42 V +42 -43 V +42 -42 V +41 -42 V +42 -43 V +42 -42 V +42 -43 V +42 -42 V +43 -42 V +42 -43 V +42 -42 V +43 -43 V +43 -42 V +43 -43 V +43 -42 V +43 -42 V +44 -43 V +43 -42 V +44 -43 V +44 -42 V +45 -43 V +44 -42 V +45 -42 V +45 -43 V +45 -42 V +46 -43 V +46 -42 V +46 -43 V +46 -42 V +47 -42 V +47 -43 V +48 -42 V +47 -43 V +48 -42 V +49 -43 V +49 -42 V +49 -42 V +49 -43 V +50 -42 V +50 -43 V +50 -42 V +51 -42 V +51 -43 V +52 -42 V +52 -43 V +52 -42 V +52 -43 V +53 -42 V +53 -42 V +53 -43 V +54 -42 V +53 -43 V +54 -42 V +54 -43 V +55 -42 V +1.000 UL +LTb +1260 600 M +5600 0 V +0 4200 V +-5600 0 V +0 -4200 V +1.000 UP +stroke +grestore +end +showpage +%%Trailer +%%DocumentFonts: Helvetica diff --git a/chapitre-2009/ErrorNbIterationCompar.ps b/chapitre-2009/ErrorNbIterationCompar.ps new file mode 100644 index 0000000..b35fda9 --- /dev/null +++ b/chapitre-2009/ErrorNbIterationCompar.ps @@ -0,0 +1,863 @@ +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: ErrorNbIterationCompar.ps +%%Creator: gnuplot 4.2 patchlevel 5 +%%CreationDate: Thu Sep 24 18:36:26 2009 +%%DocumentFonts: (atend) +%%BoundingBox: 50 50 410 302 +%%EndComments +%%BeginProlog +/gnudict 256 dict def +gnudict begin +% +% The following 6 true/false flags may be edited by hand if required +% The unit line width may also be changed +% +/Color false def +/Blacktext false def +/Solid false def +/Dashlength 1 def +/Landscape false def +/Level1 false def +/Rounded false def +/TransparentPatterns false def +/gnulinewidth 5.000 def +/userlinewidth gnulinewidth def +% +/vshift -66 def +/dl1 { + 10.0 Dashlength mul mul + Rounded { currentlinewidth 0.75 mul sub dup 0 le { pop 0.01 } if } if +} def +/dl2 { + 10.0 Dashlength mul mul + Rounded { currentlinewidth 0.75 mul add } if +} def +/hpt_ 31.5 def +/vpt_ 31.5 def +/hpt hpt_ def +/vpt vpt_ def +Level1 {} { +/SDict 10 dict def +systemdict /pdfmark known not { + userdict /pdfmark systemdict /cleartomark get put +} if +SDict begin [ + /Title (ErrorNbIterationCompar.ps) + /Subject (gnuplot plot) + /Creator (gnuplot 4.2 patchlevel 5 ) + /Author (Abdallah Makhoul,,,) +% /Producer (gnuplot) +% /Keywords () + /CreationDate (Thu Sep 24 18:36:26 2009) + /DOCINFO pdfmark +end +} ifelse +% +% Gnuplot Prolog Version 4.2 (August 2006) +% +/M {moveto} bind def +/L {lineto} bind def +/R {rmoveto} bind def +/V {rlineto} bind def +/N {newpath moveto} bind def +/Z {closepath} bind def +/C {setrgbcolor} bind def +/f {rlineto fill} bind def +/vpt2 vpt 2 mul def +/hpt2 hpt 2 mul def +/Lshow {currentpoint stroke M 0 vshift R + Blacktext {gsave 0 setgray show grestore} {show} ifelse} def +/Rshow {currentpoint stroke M dup stringwidth pop neg vshift R + Blacktext {gsave 0 setgray show grestore} {show} ifelse} def +/Cshow {currentpoint stroke M dup stringwidth pop -2 div vshift R + Blacktext {gsave 0 setgray show grestore} {show} ifelse} def +/UP {dup vpt_ mul /vpt exch def hpt_ mul /hpt exch def + /hpt2 hpt 2 mul def /vpt2 vpt 2 mul def} def +/DL {Color {setrgbcolor Solid {pop []} if 0 setdash} + {pop pop pop 0 setgray Solid {pop []} if 0 setdash} ifelse} def +/BL {stroke userlinewidth 2 mul setlinewidth + Rounded {1 setlinejoin 1 setlinecap} if} def +/AL {stroke userlinewidth 2 div setlinewidth + Rounded {1 setlinejoin 1 setlinecap} if} def +/UL {dup gnulinewidth mul /userlinewidth exch def + dup 1 lt {pop 1} if 10 mul /udl exch def} def +/PL {stroke userlinewidth setlinewidth + Rounded {1 setlinejoin 1 setlinecap} if} def +% Default Line colors +/LCw {1 1 1} def +/LCb {0 0 0} def +/LCa {0 0 0} def +/LC0 {1 0 0} def +/LC1 {0 1 0} def +/LC2 {0 0 1} def +/LC3 {1 0 1} def +/LC4 {0 1 1} def +/LC5 {1 1 0} def +/LC6 {0 0 0} def +/LC7 {1 0.3 0} def +/LC8 {0.5 0.5 0.5} def +% Default Line Types +/LTw {PL [] 1 setgray} def +/LTb {BL [] LCb DL} def +/LTa {AL [1 udl mul 2 udl mul] 0 setdash LCa setrgbcolor} def +/LT0 {PL [] LC0 DL} def +/LT1 {PL [4 dl1 2 dl2] LC1 DL} def +/LT2 {PL [2 dl1 3 dl2] LC2 DL} def +/LT3 {PL [1 dl1 1.5 dl2] LC3 DL} def +/LT4 {PL [6 dl1 2 dl2 1 dl1 2 dl2] LC4 DL} def +/LT5 {PL [3 dl1 3 dl2 1 dl1 3 dl2] LC5 DL} def +/LT6 {PL [2 dl1 2 dl2 2 dl1 6 dl2] LC6 DL} def +/LT7 {PL [1 dl1 2 dl2 6 dl1 2 dl2 1 dl1 2 dl2] LC7 DL} def +/LT8 {PL [2 dl1 2 dl2 2 dl1 2 dl2 2 dl1 2 dl2 2 dl1 4 dl2] LC8 DL} def +/Pnt {stroke [] 0 setdash gsave 1 setlinecap M 0 0 V stroke grestore} def +/Dia {stroke [] 0 setdash 2 copy vpt add M + hpt neg vpt neg V hpt vpt neg V + hpt vpt V hpt neg vpt V closepath stroke + Pnt} def +/Pls {stroke [] 0 setdash vpt sub M 0 vpt2 V + currentpoint stroke M + hpt neg vpt neg R hpt2 0 V stroke + } def +/Box {stroke [] 0 setdash 2 copy exch hpt sub exch vpt add M + 0 vpt2 neg V hpt2 0 V 0 vpt2 V + hpt2 neg 0 V closepath stroke + Pnt} def +/Crs {stroke [] 0 setdash exch hpt sub exch vpt add M + hpt2 vpt2 neg V currentpoint stroke M + hpt2 neg 0 R hpt2 vpt2 V stroke} def +/TriU {stroke [] 0 setdash 2 copy vpt 1.12 mul add M + hpt neg vpt -1.62 mul V + hpt 2 mul 0 V + hpt neg vpt 1.62 mul V closepath stroke + Pnt} def +/Star {2 copy Pls Crs} def +/BoxF {stroke [] 0 setdash exch hpt sub exch vpt add M + 0 vpt2 neg V hpt2 0 V 0 vpt2 V + hpt2 neg 0 V closepath fill} def +/TriUF {stroke [] 0 setdash vpt 1.12 mul add M + hpt neg vpt -1.62 mul V + hpt 2 mul 0 V + hpt neg vpt 1.62 mul V closepath fill} def +/TriD {stroke [] 0 setdash 2 copy vpt 1.12 mul sub M + hpt neg vpt 1.62 mul V + hpt 2 mul 0 V + hpt neg vpt -1.62 mul V closepath stroke + Pnt} def +/TriDF {stroke [] 0 setdash vpt 1.12 mul sub M + hpt neg vpt 1.62 mul V + hpt 2 mul 0 V + hpt neg vpt -1.62 mul V closepath fill} def +/DiaF {stroke [] 0 setdash vpt add M + hpt neg vpt neg V hpt vpt neg V + hpt vpt V hpt neg vpt V closepath fill} def +/Pent {stroke [] 0 setdash 2 copy gsave + translate 0 hpt M 4 {72 rotate 0 hpt L} repeat + closepath stroke grestore Pnt} def +/PentF {stroke [] 0 setdash gsave + translate 0 hpt M 4 {72 rotate 0 hpt L} repeat + closepath fill grestore} def +/Circle {stroke [] 0 setdash 2 copy + hpt 0 360 arc stroke Pnt} def +/CircleF {stroke [] 0 setdash hpt 0 360 arc fill} def +/C0 {BL [] 0 setdash 2 copy moveto vpt 90 450 arc} bind def +/C1 {BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 90 arc closepath fill + vpt 0 360 arc closepath} bind def +/C2 {BL [] 0 setdash 2 copy moveto + 2 copy vpt 90 180 arc closepath fill + vpt 0 360 arc closepath} bind def +/C3 {BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 180 arc closepath fill + vpt 0 360 arc closepath} bind def +/C4 {BL [] 0 setdash 2 copy moveto + 2 copy vpt 180 270 arc closepath fill + vpt 0 360 arc closepath} bind def +/C5 {BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 90 arc + 2 copy moveto + 2 copy vpt 180 270 arc closepath fill + vpt 0 360 arc} bind def +/C6 {BL [] 0 setdash 2 copy moveto + 2 copy vpt 90 270 arc closepath fill + vpt 0 360 arc closepath} bind def +/C7 {BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 270 arc closepath fill + vpt 0 360 arc closepath} bind def +/C8 {BL [] 0 setdash 2 copy moveto + 2 copy vpt 270 360 arc closepath fill + vpt 0 360 arc closepath} bind def +/C9 {BL [] 0 setdash 2 copy moveto + 2 copy vpt 270 450 arc closepath fill + vpt 0 360 arc closepath} bind def +/C10 {BL [] 0 setdash 2 copy 2 copy moveto vpt 270 360 arc closepath fill + 2 copy moveto + 2 copy vpt 90 180 arc closepath fill + vpt 0 360 arc closepath} bind def +/C11 {BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 180 arc closepath fill + 2 copy moveto + 2 copy vpt 270 360 arc closepath fill + vpt 0 360 arc closepath} bind def +/C12 {BL [] 0 setdash 2 copy moveto + 2 copy vpt 180 360 arc closepath fill + vpt 0 360 arc closepath} bind def +/C13 {BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 90 arc closepath fill + 2 copy moveto + 2 copy vpt 180 360 arc closepath fill + vpt 0 360 arc closepath} bind def +/C14 {BL [] 0 setdash 2 copy moveto + 2 copy vpt 90 360 arc closepath fill + vpt 0 360 arc} bind def +/C15 {BL [] 0 setdash 2 copy vpt 0 360 arc closepath fill + vpt 0 360 arc closepath} bind def +/Rec {newpath 4 2 roll moveto 1 index 0 rlineto 0 exch rlineto + neg 0 rlineto closepath} bind def +/Square {dup Rec} bind def +/Bsquare {vpt sub exch vpt sub exch vpt2 Square} bind def +/S0 {BL [] 0 setdash 2 copy moveto 0 vpt rlineto BL Bsquare} bind def +/S1 {BL [] 0 setdash 2 copy vpt Square fill Bsquare} bind def +/S2 {BL [] 0 setdash 2 copy exch vpt sub exch vpt Square fill Bsquare} bind def +/S3 {BL [] 0 setdash 2 copy exch vpt sub exch vpt2 vpt Rec fill Bsquare} bind def +/S4 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt Square fill Bsquare} bind def +/S5 {BL [] 0 setdash 2 copy 2 copy vpt Square fill + exch vpt sub exch vpt sub vpt Square fill Bsquare} bind def +/S6 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt vpt2 Rec fill Bsquare} bind def +/S7 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt vpt2 Rec fill + 2 copy vpt Square fill Bsquare} bind def +/S8 {BL [] 0 setdash 2 copy vpt sub vpt Square fill Bsquare} bind def +/S9 {BL [] 0 setdash 2 copy vpt sub vpt vpt2 Rec fill Bsquare} bind def +/S10 {BL [] 0 setdash 2 copy vpt sub vpt Square fill 2 copy exch vpt sub exch vpt Square fill + Bsquare} bind def +/S11 {BL [] 0 setdash 2 copy vpt sub vpt Square fill 2 copy exch vpt sub exch vpt2 vpt Rec fill + Bsquare} bind def +/S12 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill Bsquare} bind def +/S13 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill + 2 copy vpt Square fill Bsquare} bind def +/S14 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill + 2 copy exch vpt sub exch vpt Square fill Bsquare} bind def +/S15 {BL [] 0 setdash 2 copy Bsquare fill Bsquare} bind def +/D0 {gsave translate 45 rotate 0 0 S0 stroke grestore} bind def +/D1 {gsave translate 45 rotate 0 0 S1 stroke grestore} bind def +/D2 {gsave translate 45 rotate 0 0 S2 stroke grestore} bind def +/D3 {gsave translate 45 rotate 0 0 S3 stroke grestore} bind def +/D4 {gsave translate 45 rotate 0 0 S4 stroke grestore} bind def +/D5 {gsave translate 45 rotate 0 0 S5 stroke grestore} bind def +/D6 {gsave translate 45 rotate 0 0 S6 stroke grestore} bind def +/D7 {gsave translate 45 rotate 0 0 S7 stroke grestore} bind def +/D8 {gsave translate 45 rotate 0 0 S8 stroke grestore} bind def +/D9 {gsave translate 45 rotate 0 0 S9 stroke grestore} bind def +/D10 {gsave translate 45 rotate 0 0 S10 stroke grestore} bind def +/D11 {gsave translate 45 rotate 0 0 S11 stroke grestore} bind def +/D12 {gsave translate 45 rotate 0 0 S12 stroke grestore} bind def +/D13 {gsave translate 45 rotate 0 0 S13 stroke grestore} bind def +/D14 {gsave translate 45 rotate 0 0 S14 stroke grestore} bind def +/D15 {gsave translate 45 rotate 0 0 S15 stroke grestore} bind def +/DiaE {stroke [] 0 setdash vpt add M + hpt neg vpt neg V hpt vpt neg V + hpt vpt V hpt neg vpt V closepath stroke} def +/BoxE {stroke [] 0 setdash exch hpt sub exch vpt add M + 0 vpt2 neg V hpt2 0 V 0 vpt2 V + hpt2 neg 0 V closepath stroke} def +/TriUE {stroke [] 0 setdash vpt 1.12 mul add M + hpt neg vpt -1.62 mul V + hpt 2 mul 0 V + hpt neg vpt 1.62 mul V closepath stroke} def +/TriDE {stroke [] 0 setdash vpt 1.12 mul sub M + hpt neg vpt 1.62 mul V + hpt 2 mul 0 V + hpt neg vpt -1.62 mul V closepath stroke} def +/PentE {stroke [] 0 setdash gsave + translate 0 hpt M 4 {72 rotate 0 hpt L} repeat + closepath stroke grestore} def +/CircE {stroke [] 0 setdash + hpt 0 360 arc stroke} def +/Opaque {gsave closepath 1 setgray fill grestore 0 setgray closepath} def +/DiaW {stroke [] 0 setdash vpt add M + hpt neg vpt neg V hpt vpt neg V + hpt vpt V hpt neg vpt V Opaque stroke} def +/BoxW {stroke [] 0 setdash exch hpt sub exch vpt add M + 0 vpt2 neg V hpt2 0 V 0 vpt2 V + hpt2 neg 0 V Opaque stroke} def +/TriUW {stroke [] 0 setdash vpt 1.12 mul add M + hpt neg vpt -1.62 mul V + hpt 2 mul 0 V + hpt neg vpt 1.62 mul V Opaque stroke} def +/TriDW {stroke [] 0 setdash vpt 1.12 mul sub M + hpt neg vpt 1.62 mul V + hpt 2 mul 0 V + hpt neg vpt -1.62 mul V Opaque stroke} def +/PentW {stroke [] 0 setdash gsave + translate 0 hpt M 4 {72 rotate 0 hpt L} repeat + Opaque stroke grestore} def +/CircW {stroke [] 0 setdash + hpt 0 360 arc Opaque stroke} def +/BoxFill {gsave Rec 1 setgray fill grestore} def +/Density { + /Fillden exch def + currentrgbcolor + /ColB exch def /ColG exch def /ColR exch def + /ColR ColR Fillden mul Fillden sub 1 add def + /ColG ColG Fillden mul Fillden sub 1 add def + /ColB ColB Fillden mul Fillden sub 1 add def + ColR ColG ColB setrgbcolor} def +/BoxColFill {gsave Rec PolyFill} def +/PolyFill {gsave Density fill grestore grestore} def +/h {rlineto rlineto rlineto gsave closepath fill grestore} bind def +% +% PostScript Level 1 Pattern Fill routine for rectangles +% Usage: x y w h s a XX PatternFill +% x,y = lower left corner of box to be filled +% w,h = width and height of box +% a = angle in degrees between lines and x-axis +% XX = 0/1 for no/yes cross-hatch +% +/PatternFill {gsave /PFa [ 9 2 roll ] def + PFa 0 get PFa 2 get 2 div add PFa 1 get PFa 3 get 2 div add translate + PFa 2 get -2 div PFa 3 get -2 div PFa 2 get PFa 3 get Rec + gsave 1 setgray fill grestore clip + currentlinewidth 0.5 mul setlinewidth + /PFs PFa 2 get dup mul PFa 3 get dup mul add sqrt def + 0 0 M PFa 5 get rotate PFs -2 div dup translate + 0 1 PFs PFa 4 get div 1 add floor cvi + {PFa 4 get mul 0 M 0 PFs V} for + 0 PFa 6 get ne { + 0 1 PFs PFa 4 get div 1 add floor cvi + {PFa 4 get mul 0 2 1 roll M PFs 0 V} for + } if + stroke grestore} def +% +/languagelevel where + {pop languagelevel} {1} ifelse + 2 lt + {/InterpretLevel1 true def} + {/InterpretLevel1 Level1 def} + ifelse +% +% PostScript level 2 pattern fill definitions +% +/Level2PatternFill { +/Tile8x8 {/PaintType 2 /PatternType 1 /TilingType 1 /BBox [0 0 8 8] /XStep 8 /YStep 8} + bind def +/KeepColor {currentrgbcolor [/Pattern /DeviceRGB] setcolorspace} bind def +<< Tile8x8 + /PaintProc {0.5 setlinewidth pop 0 0 M 8 8 L 0 8 M 8 0 L stroke} +>> matrix makepattern +/Pat1 exch def +<< Tile8x8 + /PaintProc {0.5 setlinewidth pop 0 0 M 8 8 L 0 8 M 8 0 L stroke + 0 4 M 4 8 L 8 4 L 4 0 L 0 4 L stroke} +>> matrix makepattern +/Pat2 exch def +<< Tile8x8 + /PaintProc {0.5 setlinewidth pop 0 0 M 0 8 L + 8 8 L 8 0 L 0 0 L fill} +>> matrix makepattern +/Pat3 exch def +<< Tile8x8 + /PaintProc {0.5 setlinewidth pop -4 8 M 8 -4 L + 0 12 M 12 0 L stroke} +>> matrix makepattern +/Pat4 exch def +<< Tile8x8 + /PaintProc {0.5 setlinewidth pop -4 0 M 8 12 L + 0 -4 M 12 8 L stroke} +>> matrix makepattern +/Pat5 exch def +<< Tile8x8 + /PaintProc {0.5 setlinewidth pop -2 8 M 4 -4 L + 0 12 M 8 -4 L 4 12 M 10 0 L stroke} +>> matrix makepattern +/Pat6 exch def +<< Tile8x8 + /PaintProc {0.5 setlinewidth pop -2 0 M 4 12 L + 0 -4 M 8 12 L 4 -4 M 10 8 L stroke} +>> matrix makepattern +/Pat7 exch def +<< Tile8x8 + /PaintProc {0.5 setlinewidth pop 8 -2 M -4 4 L + 12 0 M -4 8 L 12 4 M 0 10 L stroke} +>> matrix makepattern +/Pat8 exch def +<< Tile8x8 + /PaintProc {0.5 setlinewidth pop 0 -2 M 12 4 L + -4 0 M 12 8 L -4 4 M 8 10 L stroke} +>> matrix makepattern +/Pat9 exch def +/Pattern1 {PatternBgnd KeepColor Pat1 setpattern} bind def +/Pattern2 {PatternBgnd KeepColor Pat2 setpattern} bind def +/Pattern3 {PatternBgnd KeepColor Pat3 setpattern} bind def +/Pattern4 {PatternBgnd KeepColor Landscape {Pat5} {Pat4} ifelse setpattern} bind def +/Pattern5 {PatternBgnd KeepColor Landscape {Pat4} {Pat5} ifelse setpattern} bind def +/Pattern6 {PatternBgnd KeepColor Landscape {Pat9} {Pat6} ifelse setpattern} bind def +/Pattern7 {PatternBgnd KeepColor Landscape {Pat8} {Pat7} ifelse setpattern} bind def +} def +% +% +%End of PostScript Level 2 code +% +/PatternBgnd { + TransparentPatterns {} {gsave 1 setgray fill grestore} ifelse +} def +% +% Substitute for Level 2 pattern fill codes with +% grayscale if Level 2 support is not selected. +% +/Level1PatternFill { +/Pattern1 {0.250 Density} bind def +/Pattern2 {0.500 Density} bind def +/Pattern3 {0.750 Density} bind def +/Pattern4 {0.125 Density} bind def +/Pattern5 {0.375 Density} bind def +/Pattern6 {0.625 Density} bind def +/Pattern7 {0.875 Density} bind def +} def +% +% Now test for support of Level 2 code +% +Level1 {Level1PatternFill} {Level2PatternFill} ifelse +% +/Symbol-Oblique /Symbol findfont [1 0 .167 1 0 0] makefont +dup length dict begin {1 index /FID eq {pop pop} {def} ifelse} forall +currentdict end definefont pop +end +%%EndProlog +gnudict begin +gsave +50 50 translate +0.050 0.050 scale +0 setgray +newpath +(Helvetica) findfont 200 scalefont setfont +1.000 UL +LTb +1580 640 M +63 0 V +5257 0 R +-63 0 V +-5377 0 R +( 1e-06) Rshow +1.000 UL +LTb +1580 849 M +31 0 V +5289 0 R +-31 0 V +1580 1125 M +31 0 V +5289 0 R +-31 0 V +1580 1266 M +31 0 V +5289 0 R +-31 0 V +-5289 67 R +63 0 V +5257 0 R +-63 0 V +-5377 0 R +( 1e-05) Rshow +1.000 UL +LTb +1580 1542 M +31 0 V +5289 0 R +-31 0 V +1580 1818 M +31 0 V +5289 0 R +-31 0 V +1580 1959 M +31 0 V +5289 0 R +-31 0 V +-5289 68 R +63 0 V +5257 0 R +-63 0 V +-5377 0 R +( 0.0001) Rshow +1.000 UL +LTb +1580 2235 M +31 0 V +5289 0 R +-31 0 V +1580 2511 M +31 0 V +5289 0 R +-31 0 V +1580 2653 M +31 0 V +5289 0 R +-31 0 V +-5289 67 R +63 0 V +5257 0 R +-63 0 V +-5377 0 R +( 0.001) Rshow +1.000 UL +LTb +1580 2929 M +31 0 V +5289 0 R +-31 0 V +1580 3205 M +31 0 V +5289 0 R +-31 0 V +1580 3346 M +31 0 V +5289 0 R +-31 0 V +-5289 67 R +63 0 V +5257 0 R +-63 0 V +-5377 0 R +( 0.01) Rshow +1.000 UL +LTb +1580 3622 M +31 0 V +5289 0 R +-31 0 V +1580 3898 M +31 0 V +5289 0 R +-31 0 V +1580 4039 M +31 0 V +5289 0 R +-31 0 V +-5289 68 R +63 0 V +5257 0 R +-63 0 V +-5377 0 R +( 0.1) Rshow +1.000 UL +LTb +1580 4315 M +31 0 V +5289 0 R +-31 0 V +1580 4591 M +31 0 V +5289 0 R +-31 0 V +1580 4733 M +31 0 V +5289 0 R +-31 0 V +-5289 67 R +63 0 V +5257 0 R +-63 0 V +-5377 0 R +( 1) Rshow +1.000 UL +LTb +2364 640 M +0 63 V +0 4097 R +0 -63 V +0 -4297 R +( 20) Cshow +1.000 UL +LTb +3188 640 M +0 63 V +0 4097 R +0 -63 V +0 -4297 R +( 40) Cshow +1.000 UL +LTb +4013 640 M +0 63 V +0 4097 R +0 -63 V +0 -4297 R +( 60) Cshow +1.000 UL +LTb +4838 640 M +0 63 V +0 4097 R +0 -63 V +0 -4297 R +( 80) Cshow +1.000 UL +LTb +5663 640 M +0 63 V +0 4097 R +0 -63 V +0 -4297 R +( 100) Cshow +1.000 UL +LTb +6488 640 M +0 63 V +0 4097 R +0 -63 V +0 -4297 R +( 120) Cshow +1.000 UL +LTb +1.000 UL +LTb +1580 4800 N +0 -4160 V +5320 0 V +0 4160 V +-5320 0 V +Z stroke +LCb setrgbcolor +400 2720 M +currentpoint gsave translate 90 rotate 0 0 M +(Mean Error) Cshow +grestore +LTb +LCb setrgbcolor +4240 140 M +(Iteration Number) Cshow +LTb +1.000 UP +1.000 UL +LTb +1.000 UL +LT0 +LTb +5997 4637 M +(Our approach) Rshow +LT0 +6117 4637 M +543 0 V +1580 4800 M +47 -42 V +48 -42 V +46 -42 V +47 -42 V +47 -42 V +46 -42 V +47 -42 V +46 -42 V +46 -42 V +46 -42 V +46 -42 V +46 -42 V +45 -42 V +46 -42 V +46 -42 V +45 -42 V +46 -42 V +45 -42 V +46 -42 V +46 -42 V +45 -42 V +45 -42 V +46 -42 V +45 -42 V +46 -43 V +45 -42 V +46 -42 V +45 -42 V +46 -42 V +45 -42 V +46 -42 V +45 -42 V +46 -42 V +45 -42 V +46 -42 V +45 -42 V +46 -42 V +45 -42 V +46 -42 V +45 -42 V +46 -42 V +46 -42 V +46 -42 V +45 -42 V +46 -42 V +46 -42 V +46 -42 V +46 -42 V +47 -42 V +46 -42 V +46 -42 V +47 -42 V +47 -42 V +46 -42 V +47 -42 V +47 -42 V +48 -42 V +47 -42 V +48 -42 V +48 -42 V +48 -42 V +48 -42 V +48 -42 V +49 -42 V +49 -42 V +49 -42 V +50 -42 V +49 -42 V +50 -42 V +51 -42 V +50 -42 V +51 -42 V +52 -42 V +51 -42 V +52 -43 V +53 -42 V +53 -42 V +53 -42 V +53 -42 V +54 -42 V +54 -42 V +55 -42 V +55 -42 V +55 -42 V +56 -42 V +56 -42 V +56 -42 V +57 -42 V +58 -42 V +57 -42 V +58 -42 V +58 -42 V +59 -42 V +59 -42 V +59 -42 V +59 -42 V +60 -42 V +59 -42 V +60 -42 V +stroke +LT1 +LTb +5997 4437 M +(Metropolis Approach) Rshow +LT1 +6117 4437 M +543 0 V +1580 4800 M +59 -42 V +59 -42 V +57 -42 V +57 -42 V +55 -42 V +55 -42 V +54 -42 V +53 -42 V +53 -42 V +52 -42 V +51 -42 V +51 -42 V +51 -42 V +50 -42 V +50 -42 V +49 -42 V +50 -42 V +48 -42 V +49 -42 V +49 -42 V +48 -42 V +48 -42 V +48 -42 V +48 -42 V +48 -43 V +48 -42 V +48 -42 V +47 -42 V +48 -42 V +48 -42 V +48 -42 V +48 -42 V +48 -42 V +48 -42 V +48 -42 V +49 -42 V +48 -42 V +49 -42 V +48 -42 V +49 -42 V +49 -42 V +49 -42 V +50 -42 V +49 -42 V +50 -42 V +49 -42 V +50 -42 V +51 -42 V +50 -42 V +50 -42 V +51 -42 V +51 -42 V +51 -42 V +51 -42 V +51 -42 V +52 -42 V +51 -42 V +52 -42 V +52 -42 V +53 -42 V +52 -42 V +53 -42 V +52 -42 V +53 -42 V +54 -42 V +53 -42 V +53 -42 V +54 -42 V +54 -42 V +54 -42 V +55 -42 V +54 -42 V +55 -42 V +55 -42 V +56 -43 V +55 -42 V +56 -42 V +56 -42 V +57 -42 V +57 -42 V +57 -42 V +57 -42 V +58 -42 V +58 -42 V +59 -42 V +59 -42 V +59 -42 V +60 -42 V +60 -42 V +61 -42 V +62 -42 V +62 -42 V +62 -42 V +63 -42 V +64 -42 V +65 -42 V +65 -42 V +67 -42 V +67 -42 V +stroke +LTb +1580 4800 N +0 -4160 V +5320 0 V +0 4160 V +-5320 0 V +Z stroke +1.000 UP +1.000 UL +LTb +stroke +grestore +end +showpage +%%Trailer +%%DocumentFonts: Helvetica diff --git a/chapitre-2009/Fusion-chapter.aux b/chapitre-2009/Fusion-chapter.aux new file mode 100644 index 0000000..ea25b02 --- /dev/null +++ b/chapitre-2009/Fusion-chapter.aux @@ -0,0 +1,135 @@ +\relax +\immediate\closeout\minitoc +\let \MiniTOC =N +\citation{12} +\citation{22} +\citation{23} +\citation{24} +\citation{20} +\citation{21} +\citation{25} +\@writefile{toc}{\contentsline {titlech}{\numberline {1}Distributed Average Consensus in Large Asynchronous Sensor Networks}{1}} +\@writefile{toc}{\authcount {1}} +\@writefile{toc}{\contentsline {authorch}{Jacques M. Bahi, Arnaud Giersh, Abdallah Makhoul and Ahmed Mostefaoui}{1}} +\@writefile{toc}{\contentsline {section}{\numberline {1.1}Introduction}{1}} +\citation{2} +\citation{20} +\citation{21} +\citation{2} +\citation{20} +\citation{5} +\citation{9} +\citation{10} +\citation{16} +\citation{17} +\citation{18} +\citation{2} +\citation{1} +\citation{2} +\citation{2} +\citation{3} +\citation{4} +\citation{5} +\citation{11} +\citation{16} +\citation{17} +\citation{2} +\citation{2} +\citation{3} +\citation{4} +\citation{10} +\citation{20} +\@writefile{toc}{\contentsline {section}{\numberline {1.2}Overview of Averaging Problem in Sensor Networks}{3}} +\citation{20} +\citation{2} +\@writefile{toc}{\contentsline {section}{\numberline {1.3}Asynchronous Distributed Consensus with messages loss}{4}} +\@writefile{toc}{\contentsline {subsection}{\numberline {1.3.1}Problem Formulation}{4}} +\newlabel{eqno1}{{1.1}{4}} +\citation{6} +\@writefile{lot}{\contentsline {table}{\numberline {1.1}{\ignorespaces Notations}}{5}} +\newlabel{notations}{{1.1}{5}} +\@writefile{toc}{\contentsline {subsection}{\numberline {1.3.2}Asynchronous scheme}{5}} +\citation{2} +\citation{7} +\citation{6} +\@writefile{loa}{\contentsline {algorithm}{\numberline {1}{\ignorespaces The General Algorithm.}}{6}} +\newlabel{general}{{1}{6}} +\newlabel{x_(t+1)}{{1.2}{6}} +\@writefile{toc}{\contentsline {subsection}{\numberline {1.3.3}Theoretical Analysis (Convergence)}{6}} +\newlabel{assump:ConnectedGraph}{{1}{6}} +\newlabel{Inf Assumption}{{2}{6}} +\newlabel{PingPong}{{3}{6}} +\newlabel{h5_2}{{1.3}{6}} +\citation{6} +\@writefile{lof}{\contentsline {figure}{\numberline {1.1}{\ignorespaces Example of jointly connected graphs}}{7}} +\newlabel{fig:jointly}{{1.1}{7}} +\newlabel{THE}{{1}{7}} +\newlabel{conservation}{{1.5}{7}} +\newlabel{lemma:1}{{1}{7}} +\newlabel{Event E_1}{{1.6}{8}} +\newlabel{Event E_2}{{1.7}{8}} +\newlabel{lemma:2}{{2}{8}} +\newlabel{lemma:3}{{3}{8}} +\newlabel{lemma:4}{{4}{9}} +\@writefile{toc}{\contentsline {subsection}{\numberline {1.3.4}Practical Issues}{9}} +\newlabel{h5_2bis}{{1.8}{10}} +\newlabel{h6}{{1.9}{10}} +\@writefile{loa}{\contentsline {algorithm}{\numberline {2}{\ignorespaces Temporally updating weights of node $i$.}}{11}} +\newlabel{WeightUpdate}{{2}{11}} +\@writefile{toc}{\contentsline {subsection}{\numberline {1.3.5}Illustrative Example}{11}} +\citation{8} +\citation{2} +\citation{20} +\@writefile{lof}{\contentsline {figure}{\numberline {1.2}{\ignorespaces An example of a sensor network composed of four nodes with their initial measurements. }}{12}} +\newlabel{fig:example}{{1.2}{12}} +\@writefile{toc}{\contentsline {section}{\numberline {1.4}Experimental Results}{12}} +\newlabel{Exp}{{1.4}{12}} +\citation{8} +\@writefile{toc}{\contentsline {subsection}{\numberline {1.4.1}Basic Behaviour}{13}} +\newlabel{BH}{{1.4.1}{13}} +\@writefile{lof}{\contentsline {figure}{\numberline {1.3}{\ignorespaces The Mean Error $\varepsilon $}}{14}} +\newlabel{Error}{{1.3}{14}} +\@writefile{toc}{\contentsline {subsection}{\numberline {1.4.2}Dynamic topology}{14}} +\@writefile{lof}{\contentsline {figure}{\numberline {1.4}{\ignorespaces Number of Iterations}}{14}} +\newlabel{Dynamic}{{1.4}{14}} +\@writefile{lof}{\contentsline {figure}{\numberline {1.5}{\ignorespaces Simulated Time}}{15}} +\newlabel{DynamicTime}{{1.5}{15}} +\@writefile{toc}{\contentsline {subsection}{\numberline {1.4.3}Larger Sensor Network}{15}} +\@writefile{toc}{\contentsline {section}{\numberline {1.5}Further Discussions}{15}} +\newlabel{DISC}{{1.5}{15}} +\citation{2} +\citation{18} +\citation{12} +\citation{2} +\citation{2} +\@writefile{lof}{\contentsline {figure}{\numberline {1.6}{\ignorespaces Number of iterations}}{16}} +\newlabel{Density}{{1.6}{16}} +\@writefile{lof}{\contentsline {figure}{\numberline {1.7}{\ignorespaces Simulated Time}}{16}} +\newlabel{DensityTime}{{1.7}{16}} +\bibstyle{unsrt} +\bibdata{references} +\bibcite{12}{1} +\bibcite{22}{2} +\bibcite{23}{3} +\bibcite{24}{4} +\@writefile{toc}{\contentsline {section}{\numberline {1.6}Conclusion and Future Work}{17}} +\@writefile{toc}{\contentsline {section}{References}{17}} +\@mtwritefile{\contentsline {mtchap}{References}{17}} +\bibcite{20}{5} +\bibcite{21}{6} +\bibcite{25}{7} +\bibcite{2}{8} +\bibcite{5}{9} +\bibcite{9}{10} +\bibcite{10}{11} +\bibcite{16}{12} +\bibcite{17}{13} +\bibcite{18}{14} +\bibcite{1}{15} +\bibcite{3}{16} +\bibcite{4}{17} +\bibcite{11}{18} +\bibcite{6}{19} +\bibcite{7}{20} +\bibcite{8}{21} +\immediate\closeout\minitoc diff --git a/chapitre-2009/Fusion-chapter.bbl b/chapitre-2009/Fusion-chapter.bbl new file mode 100644 index 0000000..d450abf --- /dev/null +++ b/chapitre-2009/Fusion-chapter.bbl @@ -0,0 +1,127 @@ +\begin{thebibliography}{10} + +\bibitem{12} +I.~Akyildiz, W.~Su, Y.~Sankarasubramniam, and E.~Cayirci. +\newblock A survey on sensor networks. +\newblock {\em IEEE Communications Magazine}, pages 102--114, 2002. + +\bibitem{22} +N.A. Lynch. +\newblock Distributed algorithms. +\newblock {\em Morgan Kaufmann Publishers, Inc.}, 1996. + +\bibitem{23} +Y.~Rabani, A.~Sinclair, and R.~Wanka. +\newblock Local divergence of markov chains and the analysis of iterative + load-balancing schemes. +\newblock {\em in Proceedings of the IEEE Symp. on Found. of Comp. Sci., Palo + Alto}, 1998. + +\bibitem{24} +P.A. Bliman and G.~Ferrari-Trecate. +\newblock Average consensus problems in networks of agents with delayed + communications. +\newblock {\em Journal of IFAC}, 44(8):1985--1995, 2008. + +\bibitem{20} +R.~Olfati-Saber and R.~M. Murray. +\newblock Consensus problems in networks of agents with switching topology and + time-delays. +\newblock {\em IEEE Transaction on Automatic Control}, 49(9):1520--1533. + +\bibitem{21} +Jacques Bahi, Arnaud Giersch, and Abdallah Makhoul. +\newblock A scalable fault tolerant diffusion scheme for data fusion in sensor + networks. +\newblock {\em The Third International ICST Conference on Scalable Information + Systems, Infoscale 2008, ACM}, june 2008. + +\bibitem{25} +C.~C. Moallemi and B.~V. Roy. +\newblock Consensus propagation. +\newblock {\em IEEE Trans. Inf. Theory}, 52(11):4753--4766, Nov 2006. + +\bibitem{2} +L.~Xiao, S.~Boyd, and S.~lall. +\newblock A scheme for robust distributed sensor fusion based on average + consensus. +\newblock {\em Proc. of the International Conference on Information processing + in Sensor Networks (IPSN)}, pages 63--70, 2005. + +\bibitem{5} +A.~Speranzon, C.~Fischione, and K.H. Johansson. +\newblock Distributed and collaborative estimation over wireless sensor + networks. +\newblock {\em Proceedings of 45th IEEE Conference on Decision and Control}, + 2006. + +\bibitem{9} +L.~Xiao, S.~Boyd, and S.~Lall. +\newblock A space-time diffusion scheme for peer-to-peer least-squares + estimation. +\newblock {\em Proc. of Fifth International Conf. on Information Processing in + Sensor Networks (IPSN 2006)}, pages 168--176, 2006. + +\bibitem{10} +Mohammad~S. Talebi, Mahdi Kefayati, Babak~H. Khalaj, and Hamid~R. Rabiee. +\newblock Adaptive consensus averaging for information fusion over sensor + networks. +\newblock {\em In the proceedings of The Third IEEE International Conference on + Mobile Ad-hoc and Sensor Systems (MASS'06)}, 2006. + +\bibitem{16} +D.~Spanos, R.~Olfati-Saber, and R.M. Murray. +\newblock Distributed sensor fusion using dynamic consensus. +\newblock {\em proceedings of IFAC}, 2005. + +\bibitem{17} +D.S. Scherber and H.C. Papadopoulos. +\newblock Distributed computation of averages over ad hoc networks. +\newblock {\em IEEE journal on Selected Areas in Communications}, + 23(4):776--787, April 2005. + +\bibitem{18} +Mohammad~S. Talebi, Mahdi Kefayati, Babak~H. Khalaj, and Hamid~R. Rabiee. +\newblock Adaptive consensus averaging for information fusion over sensor + networks. +\newblock {\em IEEE International Conference on Mobile Adhoc and Sensor Systems + (MASS)}, pages 562--565, 2006. + +\bibitem{1} +J~A. Legg. +\newblock Tracking and sensor fusion issues in the tactical land environement. +\newblock {\em Technical Report TN.0605}, 2005. + +\bibitem{3} +R.~Olfati-Saber and J.~S. Shamma. +\newblock Consensus filters for sensor networks and distributed sensor fusion. +\newblock {\em Proceedings of 44th IEEE Conference on Decision and Control + CDC-ECC}, 2005. + +\bibitem{4} +R.~Olfati-Saber. +\newblock Distributed kalman filter with embeded consensus filters. +\newblock {\em Proceedings of 44th IEEE Conference on Decision and Control}, + 2005. + +\bibitem{11} +R.~Olfati-Saber, J.A. Fax, and R.M. Murray. +\newblock Consensus and cooperation in networked multi-agent systems. +\newblock {\em Proc. of IEEE}, pages 215--233, 2007. + +\bibitem{6} +Dimitri~P. Bertsekas and John~N. Tsitsiklis. +\newblock {\em Parallel and Distributed Computation: Numerical Methods}. +\newblock Athena Scientific, 1997. + +\bibitem{7} +Jacques Bahi, Raphael Couturier, and Flavien Vernier. +\newblock Synchronous distributed load balancing on dynamic networks. +\newblock {\em Journal of Parallel and Distributed Computing}, + 65(11):1397--1405, 2005. + +\bibitem{8} +{OMNeT++}. +\newblock http://www.omnetpp.org/. + +\end{thebibliography} diff --git a/chapitre-2009/Fusion-chapter.blg b/chapitre-2009/Fusion-chapter.blg new file mode 100644 index 0000000..f76c992 --- /dev/null +++ b/chapitre-2009/Fusion-chapter.blg @@ -0,0 +1,47 @@ +This is BibTeX, Version 0.99c (Web2C 7.5.6) +The top-level auxiliary file: Fusion-chapter.aux +The style file: unsrt.bst +Database file #1: references.bib +Warning--empty year in 20 +You've used 21 entries, + 1791 wiz_defined-function locations, + 552 strings with 6650 characters, +and the built_in function-call counts, 4545 in all, are: += -- 397 +> -- 194 +< -- 5 ++ -- 73 +- -- 52 +* -- 262 +:= -- 723 +add.period$ -- 62 +call.type$ -- 21 +change.case$ -- 20 +chr.to.int$ -- 0 +cite$ -- 22 +duplicate$ -- 220 +empty$ -- 434 +format.name$ -- 52 +if$ -- 1041 +int.to.chr$ -- 0 +int.to.str$ -- 21 +missing$ -- 21 +newline$ -- 107 +num.names$ -- 21 +pop$ -- 60 +preamble$ -- 1 +purify$ -- 0 +quote$ -- 0 +skip$ -- 128 +stack$ -- 0 +substring$ -- 261 +swap$ -- 64 +text.length$ -- 5 +text.prefix$ -- 0 +top$ -- 0 +type$ -- 0 +warning$ -- 1 +while$ -- 36 +width$ -- 23 +write$ -- 218 +(There was 1 warning) diff --git a/chapitre-2009/Fusion-chapter.dvi b/chapitre-2009/Fusion-chapter.dvi new file mode 100644 index 0000000..9cbd588 Binary files /dev/null and b/chapitre-2009/Fusion-chapter.dvi differ diff --git a/chapitre-2009/Fusion-chapter.log b/chapitre-2009/Fusion-chapter.log new file mode 100644 index 0000000..c6b3609 --- /dev/null +++ b/chapitre-2009/Fusion-chapter.log @@ -0,0 +1,414 @@ +This is pdfTeXk, Version 3.141592-1.40.3 (Web2C 7.5.6) (format=latex 2009.9.15) 22 SEP 2009 13:55 +entering extended mode + %&-line parsing enabled. +**Fusion-chapter +(./Fusion-chapter.tex +LaTeX2e <2005/12/01> +Babel and hyphenation patterns for english, usenglishmax, dumylang, noh +yphenation, arabic, farsi, croatian, ukrainian, russian, bulgarian, czech, slov +ak, danish, dutch, finnish, basque, french, german, ngerman, ibycus, greek, mon +ogreek, ancientgreek, hungarian, italian, latin, mongolian, norsk, icelandic, i +nterlingua, turkish, coptic, romanian, welsh, serbian, slovenian, estonian, esp +eranto, uppersorbian, indonesian, polish, portuguese, spanish, catalan, galicia +n, swedish, ukenglish, pinyin, loaded. +(./svmult.cls +Document Class: svmult 2007/06/25 v5.4 +Springer Verlag global LaTeX document class for multi authored books +Class Springer-SVMult Info: extra/valid Springer sub-package +(Springer-SVMult) not found in option list - using "global" style. +(/usr/share/texmf-texlive/tex/latex/base/article.cls +Document Class: article 2005/09/16 v1.4f Standard LaTeX document class +(/usr/share/texmf-texlive/tex/latex/base/size10.clo +File: size10.clo 2005/09/16 v1.4f Standard LaTeX file (size option) +) +\c@part=\count79 +\c@section=\count80 +\c@subsection=\count81 +\c@subsubsection=\count82 +\c@paragraph=\count83 +\c@subparagraph=\count84 +\c@figure=\count85 +\c@table=\count86 +\abovecaptionskip=\skip41 +\belowcaptionskip=\skip42 +\bibindent=\dimen102 +) +\svparindent=\dimen103 +\bibindent=\dimen104 +\betweenumberspace=\dimen105 +\headlineindent=\dimen106 +\minitoc=\write3 +\c@minitocdepth=\count87 +\c@chapter=\count88 +\mottowidth=\dimen107 +\svitemindent=\dimen108 +\verbatimindent=\dimen109 +LaTeX Font Info: Redeclaring math symbol \Gamma on input line 963. +LaTeX Font Info: Redeclaring math symbol \Delta on input line 964. +LaTeX Font Info: Redeclaring math symbol \Theta on input line 965. +LaTeX Font Info: Redeclaring math symbol \Lambda on input line 966. +LaTeX Font Info: Redeclaring math symbol \Xi on input line 967. +LaTeX Font Info: Redeclaring math symbol \Pi on input line 968. +LaTeX Font Info: Redeclaring math symbol \Sigma on input line 969. +LaTeX Font Info: Redeclaring math symbol \Upsilon on input line 970. +LaTeX Font Info: Redeclaring math symbol \Phi on input line 971. +LaTeX Font Info: Redeclaring math symbol \Psi on input line 972. +LaTeX Font Info: Redeclaring math symbol \Omega on input line 973. +\tocchpnum=\dimen110 +\tocsecnum=\dimen111 +\tocsectotal=\dimen112 +\tocsubsecnum=\dimen113 +\tocsubsectotal=\dimen114 +\tocsubsubsecnum=\dimen115 +\tocsubsubsectotal=\dimen116 +\tocparanum=\dimen117 +\tocparatotal=\dimen118 +\tocsubparanum=\dimen119 +\foot@parindent=\dimen120 +\spthmsep=\dimen121 +\c@theorem=\count89 +\c@case=\count90 +\c@conjecture=\count91 +\c@corollary=\count92 +\c@definition=\count93 +\c@example=\count94 +\c@exercise=\count95 +\c@lemma=\count96 +\c@note=\count97 +\c@problem=\count98 +\c@property=\count99 +\c@proposition=\count100 +\c@question=\count101 +\c@solution=\count102 +\c@remark=\count103 +\c@prob=\count104 +\instindent=\dimen122 +\figgap=\dimen123 +\bildb@x=\box26 +\figcapgap=\dimen124 +\tabcapgap=\dimen125 +\c@merk=\count105 +\c@@inst=\count106 +\c@@auth=\count107 +\c@auco=\count108 +\instindent=\dimen126 +\authrun=\box27 +\authorrunning=\toks14 +\tocauthor=\toks15 +\titrun=\box28 +\titlerunning=\toks16 +\toctitle=\toks17 +\c@contribution=\count109 +LaTeX Info: Redefining \abstract on input line 2320. +) +(/usr/share/texmf-texlive/tex/latex/amsmath/amsmath.sty +Package: amsmath 2000/07/18 v2.13 AMS math features +\@mathmargin=\skip43 + +For additional information on amsmath, use the `?' option. +(/usr/share/texmf-texlive/tex/latex/amsmath/amstext.sty +Package: amstext 2000/06/29 v2.01 + +(/usr/share/texmf-texlive/tex/latex/amsmath/amsgen.sty +File: amsgen.sty 1999/11/30 v2.0 +\@emptytoks=\toks18 +\ex@=\dimen127 +)) +(/usr/share/texmf-texlive/tex/latex/amsmath/amsbsy.sty +Package: amsbsy 1999/11/29 v1.2d +\pmbraise@=\dimen128 +) +(/usr/share/texmf-texlive/tex/latex/amsmath/amsopn.sty +Package: amsopn 1999/12/14 v2.01 operator names +) +\inf@bad=\count110 +LaTeX Info: Redefining \frac on input line 211. +\uproot@=\count111 +\leftroot@=\count112 +LaTeX Info: Redefining \overline on input line 307. +\classnum@=\count113 +\DOTSCASE@=\count114 +LaTeX Info: Redefining \ldots on input line 379. +LaTeX Info: Redefining \dots on input line 382. +LaTeX Info: Redefining \cdots on input line 467. +\Mathstrutbox@=\box29 +\strutbox@=\box30 +\big@size=\dimen129 +LaTeX Font Info: Redeclaring font encoding OML on input line 567. +LaTeX Font Info: Redeclaring font encoding OMS on input line 568. + + +Package amsmath Warning: Unable to redefine math accent \vec. + +\macc@depth=\count115 +\c@MaxMatrixCols=\count116 +\dotsspace@=\muskip10 +\c@parentequation=\count117 +\dspbrk@lvl=\count118 +\tag@help=\toks19 +\row@=\count119 +\column@=\count120 +\maxfields@=\count121 +\andhelp@=\toks20 +\eqnshift@=\dimen130 +\alignsep@=\dimen131 +\tagshift@=\dimen132 +\tagwidth@=\dimen133 +\totwidth@=\dimen134 +\lineht@=\dimen135 +\@envbody=\toks21 +\multlinegap=\skip44 +\multlinetaggap=\skip45 +\mathdisplay@stack=\toks22 +LaTeX Info: Redefining \[ on input line 2666. +LaTeX Info: Redefining \] on input line 2667. +) (/usr/share/texmf-texlive/tex/latex/amsfonts/amsfonts.sty +Package: amsfonts 2001/10/25 v2.2f +\symAMSa=\mathgroup4 +\symAMSb=\mathgroup5 +LaTeX Font Info: Overwriting math alphabet `\mathfrak' in version `bold' +(Font) U/euf/m/n --> U/euf/b/n on input line 132. +) +(/usr/share/texmf-texlive/tex/latex/amsfonts/amssymb.sty +Package: amssymb 2002/01/22 v2.2d +) +(/usr/share/texmf-texlive/tex/latex/graphics/graphicx.sty +Package: graphicx 1999/02/16 v1.0f Enhanced LaTeX Graphics (DPC,SPQR) + +(/usr/share/texmf-texlive/tex/latex/graphics/keyval.sty +Package: keyval 1999/03/16 v1.13 key=value parser (DPC) +\KV@toks@=\toks23 +) +(/usr/share/texmf-texlive/tex/latex/graphics/graphics.sty +Package: graphics 2006/02/20 v1.0o Standard LaTeX Graphics (DPC,SPQR) + +(/usr/share/texmf-texlive/tex/latex/graphics/trig.sty +Package: trig 1999/03/16 v1.09 sin cos tan (DPC) +) +(/etc/texmf/tex/latex/config/graphics.cfg +File: graphics.cfg 2007/01/18 v1.5 graphics configuration of teTeX/TeXLive +) +Package graphics Info: Driver file: dvips.def on input line 90. + +(/usr/share/texmf-texlive/tex/latex/graphics/dvips.def +File: dvips.def 1999/02/16 v3.0i Driver-dependant file (DPC,SPQR) +)) +\Gin@req@height=\dimen136 +\Gin@req@width=\dimen137 +) +(/usr/share/texmf-texlive/tex/latex/algorithms/algorithm.sty +Package: algorithm + +Document Style `algorithm' - floating environment +(/usr/share/texmf-texlive/tex/latex/float/float.sty +Package: float 2001/11/08 v1.3d Float enhancements (AL) +\c@float@type=\count122 +\float@exts=\toks24 +\float@box=\box31 +\@float@everytoks=\toks25 +\@floatcapt=\box32 +) +(/usr/share/texmf-texlive/tex/latex/base/ifthen.sty +Package: ifthen 2001/05/26 v1.1c Standard LaTeX ifthen package (DPC) +) +\@float@every@algorithm=\toks26 +\c@algorithm=\count123 +) +(/usr/share/texmf-texlive/tex/latex/algorithms/algorithmic.sty +Package: algorithmic 2006/06/02 + +Document Style `algorithmic' - environment +(/usr/share/texmf-texlive/tex/latex/tools/calc.sty +Package: calc 2005/08/06 v4.2 Infix arithmetic (KKT,FJ) +\calc@Acount=\count124 +\calc@Bcount=\count125 +\calc@Adimen=\dimen138 +\calc@Bdimen=\dimen139 +\calc@Askip=\skip46 +\calc@Bskip=\skip47 +LaTeX Info: Redefining \setlength on input line 75. +LaTeX Info: Redefining \addtolength on input line 76. +\calc@Ccount=\count126 +\calc@Cskip=\skip48 +) +\c@ALC@line=\count127 +\c@ALC@rem=\count128 +\c@ALC@depth=\count129 +\ALC@tlm=\skip49 +\algorithmicindent=\skip50 +) +\c@assumption=\count130 + +(/usr/share/texmf-texlive/tex/latex/psnfss/times.sty +Package: times 2005/04/12 PSNFSS-v9.2a (SPQR) +) (./Fusion-chapter.aux) +\openout1 = `Fusion-chapter.aux'. + +LaTeX Font Info: Checking defaults for OML/cmm/m/it on input line 50. +LaTeX Font Info: ... okay on input line 50. +LaTeX Font Info: Checking defaults for T1/cmr/m/n on input line 50. +LaTeX Font Info: ... okay on input line 50. +LaTeX Font Info: Checking defaults for OT1/cmr/m/n on input line 50. +LaTeX Font Info: ... okay on input line 50. +LaTeX Font Info: Checking defaults for OMS/cmsy/m/n on input line 50. +LaTeX Font Info: ... okay on input line 50. +LaTeX Font Info: Checking defaults for OMX/cmex/m/n on input line 50. +LaTeX Font Info: ... okay on input line 50. +LaTeX Font Info: Checking defaults for U/cmr/m/n on input line 50. +LaTeX Font Info: ... okay on input line 50. +LaTeX Font Info: Try loading font information for OT1+ptm on input line 50. + +(/usr/share/texmf-texlive/tex/latex/psnfss/ot1ptm.fd +File: ot1ptm.fd 2001/06/04 font definitions for OT1/ptm. +) +LaTeX Font Info: Font shape `OT1/ptm/bx/n' in size <14> not available +(Font) Font shape `OT1/ptm/b/n' tried instead on input line 62. +LaTeX Font Info: Font shape `OT1/ptm/bx/n' in size <16> not available +(Font) Font shape `OT1/ptm/b/n' tried instead on input line 62. +LaTeX Font Info: Try loading font information for U+msa on input line 62. + +(/usr/share/texmf-texlive/tex/latex/amsfonts/umsa.fd +File: umsa.fd 2002/01/19 v2.2g AMS font definitions +) +LaTeX Font Info: Try loading font information for U+msb on input line 62. + +(/usr/share/texmf-texlive/tex/latex/amsfonts/umsb.fd +File: umsb.fd 2002/01/19 v2.2g AMS font definitions +) +LaTeX Font Info: Calculating math sizes for size <8.5> on input line 62. + + +LaTeX Font Warning: Font shape `OT1/cmr/m/n' in size <8.5> not available +(Font) size <8> substituted on input line 62. + + +LaTeX Font Warning: Font shape `OT1/cmr/m/n' in size <4.25> not available +(Font) size <5> substituted on input line 62. + + +LaTeX Font Warning: Font shape `OML/cmm/m/it' in size <8.5> not available +(Font) size <8> substituted on input line 62. + + +LaTeX Font Warning: Font shape `OML/cmm/m/it' in size <4.25> not available +(Font) size <5> substituted on input line 62. + + +LaTeX Font Warning: Font shape `OMS/cmsy/m/n' in size <8.5> not available +(Font) size <8> substituted on input line 62. + + +LaTeX Font Warning: Font shape `OMS/cmsy/m/n' in size <4.25> not available +(Font) size <5> substituted on input line 62. + + +LaTeX Font Warning: Font shape `OMX/cmex/m/n' in size <8.5> not available +(Font) size <8> substituted on input line 62. + + +LaTeX Font Warning: Font shape `U/msa/m/n' in size <8.5> not available +(Font) size <8> substituted on input line 62. + + +LaTeX Font Warning: Font shape `U/msa/m/n' in size <4.25> not available +(Font) size <5> substituted on input line 62. + + +LaTeX Font Warning: Font shape `U/msb/m/n' in size <8.5> not available +(Font) size <8> substituted on input line 62. + + +LaTeX Font Warning: Font shape `U/msb/m/n' in size <4.25> not available +(Font) size <5> substituted on input line 62. + +LaTeX Font Info: Try loading font information for OMS+ptm on input line 62. +(/usr/share/texmf-texlive/tex/latex/psnfss/omsptm.fd +File: omsptm.fd +) +LaTeX Font Info: Font shape `OMS/ptm/m/n' in size <8.5> not available +(Font) Font shape `OMS/cmsy/m/n' tried instead on input line 62. + + +LaTeX Font Warning: Font shape `OMS/cmsy/m/n' in size <8.5> not available +(Font) size <8> substituted on input line 62. + +LaTeX Font Info: Font shape `OT1/ptm/bx/n' in size <10> not available +(Font) Font shape `OT1/ptm/b/n' tried instead on input line 80. +LaTeX Font Info: Font shape `OT1/ptm/bx/n' in size <12> not available +(Font) Font shape `OT1/ptm/b/n' tried instead on input line 83. +Missing character: There is no â in font ptmr7t! +Missing character: There is no € in font ptmr7t! +Missing character: There is no “ in font ptmr7t! +Missing character: There is no â in font ptmr7t! +Missing character: There is no € in font ptmr7t! +Missing character: There is no “ in font ptmr7t! +[1 + + + +] +LaTeX Font Info: Font shape `OMS/ptm/m/n' in size <10> not available +(Font) Font shape `OMS/cmsy/m/n' tried instead on input line 180. + [2] [3] +LaTeX Font Info: Font shape `OT1/ptm/bx/it' in size <12> not available +(Font) Font shape `OT1/ptm/b/it' tried instead on input line 274. + [4] +LaTeX Font Info: Font shape `OT1/ptm/bx/n' in size <8.5> not available +(Font) Font shape `OT1/ptm/b/n' tried instead on input line 344. + [5] +Overfull \hbox (2.12305pt too wide) in paragraph at lines 420--426 +\OT1/ptm/m/n/10 two ver-tices $\OML/cmm/m/it/10 i$ \OT1/ptm/m/n/10 and $\OML/cm +m/m/it/10 j$ \OT1/ptm/m/n/10 there ex-ists a se-quence of edges $\OT1/cmr/m/n/1 +0 (\OML/cmm/m/it/10 i; k[]\OT1/cmr/m/n/10 )\OML/cmm/m/it/10 ; \OT1/cmr/m/n/10 +(\OML/cmm/m/it/10 k[]; k[]\OT1/cmr/m/n/10 )\OML/cmm/m/it/10 ; [] ; \OT1/cmr/m/n +/10 (\OML/cmm/m/it/10 k[]; k[]\OT1/cmr/m/n/10 )\OML/cmm/m/it/10 ; [] + [] + +File: jointly.eps Graphic file (type eps) + + +LaTeX Warning: `h' float specifier changed to `ht'. + +[6] [7] [8] [9] [10] +File: exampleFusion.eps Graphic file (type eps) + + +LaTeX Warning: `h' float specifier changed to `ht'. + +[11] [12] +File: ErrorNbIteration.ps Graphic file (type eps) + + +LaTeX Warning: `h' float specifier changed to `ht'. + +[13] +File: DynamicTopology.ps Graphic file (type eps) + +File: DynamicTopologyTime.ps Graphic file (type eps) + [14] +File: Density.ps Graphic file (type eps) + + +LaTeX Warning: `h' float specifier changed to `ht'. + +File: TimeDensity.ps Graphic file (type eps) + + +LaTeX Warning: `h' float specifier changed to `ht'. + +[15] [16] (./Fusion-chapter.bbl [17]) [18] (./Fusion-chapter.aux) + +LaTeX Font Warning: Size substitutions with differences +(Font) up to 0.75pt have occurred. + + ) +Here is how much of TeX's memory you used: + 2452 strings out of 94075 + 28008 string characters out of 1165176 + 89742 words of memory out of 1500000 + 5712 multiletter control sequences out of 10000+50000 + 17544 words of font info for 52 fonts, out of 1200000 for 2000 + 645 hyphenation exceptions out of 8191 + 30i,10n,22p,209b,513s stack positions out of 5000i,500n,6000p,200000b,5000s + +Output written on Fusion-chapter.dvi (18 pages, 67032 bytes). diff --git a/chapitre-2009/Fusion-chapter.pdf b/chapitre-2009/Fusion-chapter.pdf new file mode 100644 index 0000000..d7c1366 Binary files /dev/null and b/chapitre-2009/Fusion-chapter.pdf differ diff --git a/chapitre-2009/Fusion-chapter.ps b/chapitre-2009/Fusion-chapter.ps new file mode 100644 index 0000000..e7062c8 --- /dev/null +++ b/chapitre-2009/Fusion-chapter.ps @@ -0,0 +1,8333 @@ +%!PS-Adobe-2.0 +%%Creator: dvips(k) 5.95b Copyright 2005 Radical Eye Software +%%Title: D:/Texte/Sensors/Fusion/Fusion-chapitre/Fusion-chapter.dvi +%%CreationDate: Tue Jun 30 21:21:13 2009 +%%Pages: 18 +%%PageOrder: Ascend +%%BoundingBox: 0 0 595 842 +%%DocumentFonts: Times-Bold Times-Roman CMMI7 CMSY8 Times-Italic CMSY10 +%%+ Times-BoldItalic CMMI10 CMR10 MSBM10 CMEX10 CMR7 CMSY7 CMMI5 CMMI8 +%%+ CMR8 CMMI6 MSBM7 CMSY6 CMR6 MSAM10 CMR5 CMSY5 Helvetica +%%DocumentPaperSizes: a4 +%%EndComments +%DVIPSWebPage: (www.radicaleye.com) +%DVIPSCommandLine: "C:\Program Files\MiKTeX 2.5\miktex\bin\dvips.exe" +%+ D:/Texte/Sensors/Fusion/Fusion-chapitre/Fusion-chapter.dvi +%DVIPSParameters: dpi=600 +%DVIPSSource: TeX output 2009.06.30:2121 +%%BeginProcSet: tex.pro 0 0 +%! +/TeXDict 300 dict def TeXDict begin/N{def}def/B{bind def}N/S{exch}N/X{S +N}B/A{dup}B/TR{translate}N/isls false N/vsize 11 72 mul N/hsize 8.5 72 +mul N/landplus90{false}def/@rigin{isls{[0 landplus90{1 -1}{-1 1}ifelse 0 +0 0]concat}if 72 Resolution div 72 VResolution div neg scale isls{ +landplus90{VResolution 72 div vsize mul 0 exch}{Resolution -72 div hsize +mul 0}ifelse TR}if Resolution VResolution vsize -72 div 1 add mul TR[ +matrix currentmatrix{A A round sub abs 0.00001 lt{round}if}forall round +exch round exch]setmatrix}N/@landscape{/isls true N}B/@manualfeed{ +statusdict/manualfeed true put}B/@copies{/#copies X}B/FMat[1 0 0 -1 0 0] +N/FBB[0 0 0 0]N/nn 0 N/IEn 0 N/ctr 0 N/df-tail{/nn 8 dict N nn begin +/FontType 3 N/FontMatrix fntrx N/FontBBox FBB N string/base X array +/BitMaps X/BuildChar{CharBuilder}N/Encoding IEn N end A{/foo setfont}2 +array copy cvx N load 0 nn put/ctr 0 N[}B/sf 0 N/df{/sf 1 N/fntrx FMat N +df-tail}B/dfs{div/sf X/fntrx[sf 0 0 sf neg 0 0]N df-tail}B/E{pop nn A +definefont setfont}B/Cw{Cd A length 5 sub get}B/Ch{Cd A length 4 sub get +}B/Cx{128 Cd A length 3 sub get sub}B/Cy{Cd A length 2 sub get 127 sub} +B/Cdx{Cd A length 1 sub get}B/Ci{Cd A type/stringtype ne{ctr get/ctr ctr +1 add N}if}B/CharBuilder{save 3 1 roll S A/base get 2 index get S +/BitMaps get S get/Cd X pop/ctr 0 N Cdx 0 Cx Cy Ch sub Cx Cw add Cy +setcachedevice Cw Ch true[1 0 0 -1 -.1 Cx sub Cy .1 sub]{Ci}imagemask +restore}B/D{/cc X A type/stringtype ne{]}if nn/base get cc ctr put nn +/BitMaps get S ctr S sf 1 ne{A A length 1 sub A 2 index S get sf div put +}if put/ctr ctr 1 add N}B/I{cc 1 add D}B/bop{userdict/bop-hook known{ +bop-hook}if/SI save N @rigin 0 0 moveto/V matrix currentmatrix A 1 get A +mul exch 0 get A mul add .99 lt{/QV}{/RV}ifelse load def pop pop}N/eop{ +SI restore userdict/eop-hook known{eop-hook}if showpage}N/@start{ +userdict/start-hook known{start-hook}if pop/VResolution X/Resolution X +1000 div/DVImag X/IEn 256 array N 2 string 0 1 255{IEn S A 360 add 36 4 +index cvrs cvn put}for pop 65781.76 div/vsize X 65781.76 div/hsize X}N +/p{show}N/RMat[1 0 0 -1 0 0]N/BDot 260 string N/Rx 0 N/Ry 0 N/V{}B/RV/v{ +/Ry X/Rx X V}B statusdict begin/product where{pop false[(Display)(NeXT) +(LaserWriter 16/600)]{A length product length le{A length product exch 0 +exch getinterval eq{pop true exit}if}{pop}ifelse}forall}{false}ifelse +end{{gsave TR -.1 .1 TR 1 1 scale Rx Ry false RMat{BDot}imagemask +grestore}}{{gsave TR -.1 .1 TR Rx Ry scale 1 1 false RMat{BDot} +imagemask grestore}}ifelse B/QV{gsave newpath transform round exch round +exch itransform moveto Rx 0 rlineto 0 Ry neg rlineto Rx neg 0 rlineto +fill grestore}B/a{moveto}B/delta 0 N/tail{A/delta X 0 rmoveto}B/M{S p +delta add tail}B/b{S p tail}B/c{-4 M}B/d{-3 M}B/e{-2 M}B/f{-1 M}B/g{0 M} +B/h{1 M}B/i{2 M}B/j{3 M}B/k{4 M}B/w{0 rmoveto}B/l{p -4 w}B/m{p -3 w}B/n{ +p -2 w}B/o{p -1 w}B/q{p 1 w}B/r{p 2 w}B/s{p 3 w}B/t{p 4 w}B/x{0 S +rmoveto}B/y{3 2 roll p a}B/bos{/SS save N}B/eos{SS restore}B end + +%%EndProcSet +%%BeginProcSet: 8r.enc 0 0 +% File 8r.enc TeX Base 1 Encoding Revision 2.0 2002-10-30 +% +% @@psencodingfile@{ +% author = "S. Rahtz, P. MacKay, Alan Jeffrey, B. Horn, K. Berry, +% W. Schmidt, P. Lehman", +% version = "2.0", +% date = "27nov06", +% filename = "8r.enc", +% email = "tex-fonts@@tug.org", +% docstring = "This is the encoding vector for Type1 and TrueType +% fonts to be used with TeX. This file is part of the +% PSNFSS bundle, version 9" +% @} +% +% The idea is to have all the characters normally included in Type 1 fonts +% available for typesetting. This is effectively the characters in Adobe +% Standard encoding, ISO Latin 1, Windows ANSI including the euro symbol, +% MacRoman, and some extra characters from Lucida. +% +% Character code assignments were made as follows: +% +% (1) the Windows ANSI characters are almost all in their Windows ANSI +% positions, because some Windows users cannot easily reencode the +% fonts, and it makes no difference on other systems. The only Windows +% ANSI characters not available are those that make no sense for +% typesetting -- rubout (127 decimal), nobreakspace (160), softhyphen +% (173). quotesingle and grave are moved just because it's such an +% irritation not having them in TeX positions. +% +% (2) Remaining characters are assigned arbitrarily to the lower part +% of the range, avoiding 0, 10 and 13 in case we meet dumb software. +% +% (3) Y&Y Lucida Bright includes some extra text characters; in the +% hopes that other PostScript fonts, perhaps created for public +% consumption, will include them, they are included starting at 0x12. +% These are /dotlessj /ff /ffi /ffl. +% +% (4) hyphen appears twice for compatibility with both ASCII and Windows. +% +% (5) /Euro was assigned to 128, as in Windows ANSI +% +% (6) Missing characters from MacRoman encoding incorporated as follows: +% +% PostScript MacRoman TeXBase1 +% -------------- -------------- -------------- +% /notequal 173 0x16 +% /infinity 176 0x17 +% /lessequal 178 0x18 +% /greaterequal 179 0x19 +% /partialdiff 182 0x1A +% /summation 183 0x1B +% /product 184 0x1C +% /pi 185 0x1D +% /integral 186 0x81 +% /Omega 189 0x8D +% /radical 195 0x8E +% /approxequal 197 0x8F +% /Delta 198 0x9D +% /lozenge 215 0x9E +% +/TeXBase1Encoding [ +% 0x00 + /.notdef /dotaccent /fi /fl + /fraction /hungarumlaut /Lslash /lslash + /ogonek /ring /.notdef /breve + /minus /.notdef /Zcaron /zcaron +% 0x10 + /caron /dotlessi /dotlessj /ff + /ffi /ffl /notequal /infinity + /lessequal /greaterequal /partialdiff /summation + /product /pi /grave /quotesingle +% 0x20 + /space /exclam /quotedbl /numbersign + /dollar /percent /ampersand /quoteright + /parenleft /parenright /asterisk /plus + /comma /hyphen /period /slash +% 0x30 + /zero /one /two /three + /four /five /six /seven + /eight /nine /colon /semicolon + /less /equal /greater /question +% 0x40 + /at /A /B /C + /D /E /F /G + /H /I /J /K + /L /M /N /O +% 0x50 + /P /Q /R /S + /T /U /V /W + /X /Y /Z /bracketleft + /backslash /bracketright /asciicircum /underscore +% 0x60 + /quoteleft /a /b /c + /d /e /f /g + /h /i /j /k + /l /m /n /o +% 0x70 + /p /q /r /s + /t /u /v /w + /x /y /z /braceleft + /bar /braceright /asciitilde /.notdef +% 0x80 + /Euro /integral /quotesinglbase /florin + /quotedblbase /ellipsis /dagger /daggerdbl + /circumflex /perthousand /Scaron /guilsinglleft + /OE /Omega /radical /approxequal +% 0x90 + /.notdef /.notdef /.notdef /quotedblleft + /quotedblright /bullet /endash /emdash + /tilde /trademark /scaron /guilsinglright + /oe /Delta /lozenge /Ydieresis +% 0xA0 + /.notdef /exclamdown /cent /sterling + /currency /yen /brokenbar /section + /dieresis /copyright /ordfeminine /guillemotleft + /logicalnot /hyphen /registered /macron +% 0xB0 + /degree /plusminus /twosuperior /threesuperior + /acute /mu /paragraph /periodcentered + /cedilla /onesuperior /ordmasculine /guillemotright + /onequarter /onehalf /threequarters /questiondown +% 0xC0 + /Agrave /Aacute /Acircumflex /Atilde + /Adieresis /Aring /AE /Ccedilla + /Egrave /Eacute /Ecircumflex /Edieresis + /Igrave /Iacute /Icircumflex /Idieresis +% 0xD0 + /Eth /Ntilde /Ograve /Oacute + /Ocircumflex /Otilde /Odieresis /multiply + /Oslash /Ugrave /Uacute /Ucircumflex + /Udieresis /Yacute /Thorn /germandbls +% 0xE0 + /agrave /aacute /acircumflex /atilde + /adieresis /aring /ae /ccedilla + /egrave /eacute /ecircumflex /edieresis + /igrave /iacute /icircumflex /idieresis +% 0xF0 + /eth /ntilde /ograve /oacute + /ocircumflex /otilde /odieresis /divide + /oslash /ugrave /uacute /ucircumflex + /udieresis /yacute /thorn /ydieresis +] def + + +%%EndProcSet +%%BeginProcSet: texps.pro 0 0 +%! +TeXDict begin/rf{findfont dup length 1 add dict begin{1 index/FID ne 2 +index/UniqueID ne and{def}{pop pop}ifelse}forall[1 index 0 6 -1 roll +exec 0 exch 5 -1 roll VResolution Resolution div mul neg 0 0]/Metrics +exch def dict begin Encoding{exch dup type/integertype ne{pop pop 1 sub +dup 0 le{pop}{[}ifelse}{FontMatrix 0 get div Metrics 0 get div def} +ifelse}forall Metrics/Metrics currentdict end def[2 index currentdict +end definefont 3 -1 roll makefont/setfont cvx]cvx def}def/ObliqueSlant{ +dup sin S cos div neg}B/SlantFont{4 index mul add}def/ExtendFont{3 -1 +roll mul exch}def/ReEncodeFont{CharStrings rcheck{/Encoding false def +dup[exch{dup CharStrings exch known not{pop/.notdef/Encoding true def} +if}forall Encoding{]exch pop}{cleartomark}ifelse}if/Encoding exch def} +def end + +%%EndProcSet +%%BeginProcSet: special.pro 0 0 +%! +TeXDict begin/SDict 200 dict N SDict begin/@SpecialDefaults{/hs 612 N +/vs 792 N/ho 0 N/vo 0 N/hsc 1 N/vsc 1 N/ang 0 N/CLIP 0 N/rwiSeen false N +/rhiSeen false N/letter{}N/note{}N/a4{}N/legal{}N}B/@scaleunit 100 N +/@hscale{@scaleunit div/hsc X}B/@vscale{@scaleunit div/vsc X}B/@hsize{ +/hs X/CLIP 1 N}B/@vsize{/vs X/CLIP 1 N}B/@clip{/CLIP 2 N}B/@hoffset{/ho +X}B/@voffset{/vo X}B/@angle{/ang X}B/@rwi{10 div/rwi X/rwiSeen true N}B +/@rhi{10 div/rhi X/rhiSeen true N}B/@llx{/llx X}B/@lly{/lly X}B/@urx{ +/urx X}B/@ury{/ury X}B/magscale true def end/@MacSetUp{userdict/md known +{userdict/md get type/dicttype eq{userdict begin md length 10 add md +maxlength ge{/md md dup length 20 add dict copy def}if end md begin +/letter{}N/note{}N/legal{}N/od{txpose 1 0 mtx defaultmatrix dtransform S +atan/pa X newpath clippath mark{transform{itransform moveto}}{transform{ +itransform lineto}}{6 -2 roll transform 6 -2 roll transform 6 -2 roll +transform{itransform 6 2 roll itransform 6 2 roll itransform 6 2 roll +curveto}}{{closepath}}pathforall newpath counttomark array astore/gc xdf +pop ct 39 0 put 10 fz 0 fs 2 F/|______Courier fnt invertflag{PaintBlack} +if}N/txpose{pxs pys scale ppr aload pop por{noflips{pop S neg S TR pop 1 +-1 scale}if xflip yflip and{pop S neg S TR 180 rotate 1 -1 scale ppr 3 +get ppr 1 get neg sub neg ppr 2 get ppr 0 get neg sub neg TR}if xflip +yflip not and{pop S neg S TR pop 180 rotate ppr 3 get ppr 1 get neg sub +neg 0 TR}if yflip xflip not and{ppr 1 get neg ppr 0 get neg TR}if}{ +noflips{TR pop pop 270 rotate 1 -1 scale}if xflip yflip and{TR pop pop +90 rotate 1 -1 scale ppr 3 get ppr 1 get neg sub neg ppr 2 get ppr 0 get +neg sub neg TR}if xflip yflip not and{TR pop pop 90 rotate ppr 3 get ppr +1 get neg sub neg 0 TR}if yflip xflip not and{TR pop pop 270 rotate ppr +2 get ppr 0 get neg sub neg 0 S TR}if}ifelse scaleby96{ppr aload pop 4 +-1 roll add 2 div 3 1 roll add 2 div 2 copy TR .96 dup scale neg S neg S +TR}if}N/cp{pop pop showpage pm restore}N end}if}if}N/normalscale{ +Resolution 72 div VResolution 72 div neg scale magscale{DVImag dup scale +}if 0 setgray}N/psfts{S 65781.76 div N}N/startTexFig{/psf$SavedState +save N userdict maxlength dict begin/magscale true def normalscale +currentpoint TR/psf$ury psfts/psf$urx psfts/psf$lly psfts/psf$llx psfts +/psf$y psfts/psf$x psfts currentpoint/psf$cy X/psf$cx X/psf$sx psf$x +psf$urx psf$llx sub div N/psf$sy psf$y psf$ury psf$lly sub div N psf$sx +psf$sy scale psf$cx psf$sx div psf$llx sub psf$cy psf$sy div psf$ury sub +TR/showpage{}N/erasepage{}N/copypage{}N/p 3 def @MacSetUp}N/doclip{ +psf$llx psf$lly psf$urx psf$ury currentpoint 6 2 roll newpath 4 copy 4 2 +roll moveto 6 -1 roll S lineto S lineto S lineto closepath clip newpath +moveto}N/endTexFig{end psf$SavedState restore}N/@beginspecial{SDict +begin/SpecialSave save N gsave normalscale currentpoint TR +@SpecialDefaults count/ocount X/dcount countdictstack N}N/@setspecial{ +CLIP 1 eq{newpath 0 0 moveto hs 0 rlineto 0 vs rlineto hs neg 0 rlineto +closepath clip}if ho vo TR hsc vsc scale ang rotate rwiSeen{rwi urx llx +sub div rhiSeen{rhi ury lly sub div}{dup}ifelse scale llx neg lly neg TR +}{rhiSeen{rhi ury lly sub div dup scale llx neg lly neg TR}if}ifelse +CLIP 2 eq{newpath llx lly moveto urx lly lineto urx ury lineto llx ury +lineto closepath clip}if/showpage{}N/erasepage{}N/copypage{}N newpath}N +/@endspecial{count ocount sub{pop}repeat countdictstack dcount sub{end} +repeat grestore SpecialSave restore end}N/@defspecial{SDict begin}N +/@fedspecial{end}B/li{lineto}B/rl{rlineto}B/rc{rcurveto}B/np{/SaveX +currentpoint/SaveY X N 1 setlinecap newpath}N/st{stroke SaveX SaveY +moveto}N/fil{fill SaveX SaveY moveto}N/ellipse{/endangle X/startangle X +/yrad X/xrad X/savematrix matrix currentmatrix N TR xrad yrad scale 0 0 +1 startangle endangle arc savematrix setmatrix}N end + +%%EndProcSet +%%BeginFont: CMEX10 +%!PS-AdobeFont-1.1: CMEX10 1.00 +%%CreationDate: 1992 Jul 23 21:22:48 +% Copyright (C) 1997 American Mathematical Society. All Rights Reserved. +11 dict begin +/FontInfo 7 dict dup begin +/version (1.00) readonly def +/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def +/FullName (CMEX10) readonly def +/FamilyName (Computer Modern) readonly def +/Weight (Medium) readonly def +/ItalicAngle 0 def +/isFixedPitch false def +end readonly def +/FontName /CMEX10 def +/PaintType 0 def +/FontType 1 def +/FontMatrix [0.001 0 0 0.001 0 0] readonly def +/Encoding 256 array +0 1 255 {1 index exch /.notdef put} for +dup 0 /parenleftbig put +dup 1 /parenrightbig put +dup 8 /braceleftbig put +dup 9 /bracerightbig put +dup 16 /parenleftBig put +dup 17 /parenrightBig put +dup 18 /parenleftbigg put +dup 19 /parenrightbigg put +dup 26 /braceleftbigg put +dup 32 /parenleftBigg put +dup 33 /parenrightBigg put +dup 48 /parenlefttp put +dup 49 /parenrighttp put +dup 56 /bracelefttp put +dup 58 /braceleftbt put +dup 60 /braceleftmid put +dup 64 /parenleftbt put +dup 65 /parenrightbt put +dup 80 /summationtext put +dup 83 /uniontext put +dup 88 /summationdisplay put +readonly def +/FontBBox{-24 -2960 1454 772}readonly def +currentdict end +currentfile eexec +D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891 +016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171 +9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F +D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758 +469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8 +2BDBF16FBC7512FAA308A093FE5CF5B8CAC6A7BEB5D02276E511FFAF2AE11910 +DE076F24311D94D07CACC323F360887F1EA11BDDA7927FF3325986FDB0ABDFC8 +8E4B40E7988921D551EC0867EBCA44C05657F0DC913E7B3004A5F3E1337B6987 +FEBC45F989C8DC6DC0AD577E903F05D0D54208A0AE7F28C734F130C133B48422 +BED48639A2B74E4C08F2E710E24A99F347E0F4394CE64EACB549576E89044E52 +EABE595BC964156D9D8C2BAB0F49664E951D7C1A3D1789C47F03C7051A63D5E8 +DF04FAAC47351E82CAE0794AA9692C6452688A74A7A6A7AD09B8A9783C235EC1 +EA2156261B8FB331827145DE315B6EC1B3D8B67B3323F761EAF4C223BB214C4C +6B062D1B281F5041D068319F4911058376D8EFBA59884BA3318C5BC95684F281 +E0591BC0D1B2A4592A137FF301610019B8AC46AE6E48BC091E888E4487688350 +E9AD5074EE4848271CE4ACC38D8CBC8F3DB32813DDD5B341AF9A6601281ABA38 +4A978B98483A63FCC458D0E3BCE6FD830E7E09B0DB987A6B63B74638FC9F21A5 +8C68479E1A85225670D79CDDE5AC0B77F5A994CA700B5F0FF1F97FC63EFDE023 +8135F04A9D20C31998B12AE06676C362141AAAA395CDEF0A49E0141D335965F2 +FB4198499799CECCC8AA5D255264784CD30A3E8295888EFBC2060ADDD7BAC45A +EEEECDFF7A47A88E69D84C9E572616C1AC69A34B5F0D0DE8EE4EDF9F4ADE0387 +680924D8D5B73EF04EAD7F45977CA8AD73D4DD45DE1966A3B8251C0386164C35 +5880DD2609C80E96D1AB861C9259748E98F6711D4E241A269ED51FF328344664 +3AF9F18DCE671611DB2F5D3EA77EE734D2BED623F973E6840B8DAD1E2C3C2666 +DD4DD1C1C82AC22700F059ED0B61444FD899D2E5C1362757233ED25226A374DB +DEB02FDFA39FAA62C7103BBD658B0C380FBAB50705F749A6A3103C287C45F92B +8F852A714DB0989FAEAE42BF55F317B8B0567FA278467F30AC5AE86765A1F4A9 +326299383B56A2D52368F3A15B22E755EF4FB0A0B5DA96F210484F3548C6E7B2 +A907927C5F77451F5842609DDBE28CDD0BEA393CBA0DAC84EE51A1530F48A296 +4EA735EFF9348071315BD7114A79B722254FF02C8704EA365EA26114CBD1BA0B +3E9143239551DC2DFFF65CD96CB970CA4243E524386D994824BA652DF5C7A899 +F9FFDC763E96B85E947AE27F83D58E2DBAA3288FAA81CD7BA68B5D884FC84E6B +63AF61F15BF09F9CEC5506D987311C81D3729D2CC3D95817D35B5117DEE54C88 +47AD0325B429CA487345139A32BF5AE9FCA1E27EA475C7670D833193B7777096 +F11FDD14D91C37E9134395BC85D5F22C6D9F990892E2DC6A78E0CAB6B3BFAA32 +835BE39AE8D06A9C737F224B1698FAECFBA0C059CFE989958958DD5125784AD8 +E3A2CAB256E4BD7D52CB57958F2155E74F08C83C8302CC0B8B8BFB0131C42637 +F2189487FB6A7E7F802CE1B724FE84D62C0403AD0383BB68B336CE4BABB5E123 +19EAFAEB98B38BC928A09DEC9325C7B9C89B3B3A28EDF01015D6816F5FF8E8B5 +3F8795594488552D10DBEB9FDB7262BA332367C6D6A5B7D761E89E0470A020DA +FCB20402DD772E5CA372EC7665534D34AEEBFC14237127CC79850D65716007D8 +63408E53E13A65BE34D1FB68829C88FA20C174BDF30155CFC33F06944E7263C8 +2EEA6C618A9E51217D330F1CAF2551CC09D7230EFC38DDFD93BBC6B83A1856C4 +90537D8735B9D9E97001979A83E88FB49C5FFFCC58BE83CC5C721AC4AF71B82E +E41298899DE9D1EB7607E37D6BE7788BDA1761AB39F0D31906079C95FBAA75F0 +5C9FAC005DAC85B9CB6F312ACDD7BDA6248BD6C9D669FD17DD7D5486ECE392F2 +5633ED27F5C25D63BE46BA0B2AB837E89891DFAD2B41DB0C3BF290F8F98384E2 +BD2DB5F80A05BA32F9C42BD592A82D8A3A46CC3C568F75BDA6878E531F4F0F4E +42B28F6B14A44173BA5BBAB22AEA338FCFB5B008D7E1B3759B519B660B0D13BF +FD32D7D1CA71DE0F41146ED9859BF8275FC09E1AB9829E8CDFA4D90AB4B04328 +86641236E5D9F98677766B9FC0ACF1A5FC70E212FA976024E0FF7700CDA067D5 +C0F43559B11C6FC41E29922A805BD7AFB33F2C99896AEB036FE62AA6BE7ABC19 +EE13304574E48798F67322998C662E2AC9E8A8BD6104E45D6919FD1250EC3697 +4EC4FCDC79F1FEA48FA431B774FD28E74503E3EFF8B334007C07A354672EDD43 +C8E4C094F3C47FDBB2FF9067266661008AA7AAEB42159AC509D615A6E2CEF184 +D189609DE05F7C50766156DF1EBE2617AE6B2CAA4ACF11423F35360B5829588E +2396BB2D0CBE8A05CFF92FCC3D9D6D21A00F28AA9126F400954BDC4A999B751E +5B71B7E80979B729475024E966965E01D1398A12712BEFE723CBCE35160D855E +6718FE89971CDB525907764997DA16922AB51D316BA7EFE6C5111AC5FF6D7129 +20F34F6B8996981B2B119EB3138FD7F176FE209A2324D0873D59D8EB801A69A4 +5E399C1814047418B0127101FCD4F617891946C983440FE180E3B109E6F18AFA +AB62309BFD236AA4D0B25F9FE4789FD71A76A0E3D87C4393E13959F2B34C7139 +F53CB3AD2F81B747E8F17D324A1EDBB5DF7F86CCB6F94C54C9034613A475CCD2 +DA3E68DB2C15CB0E32C9698CDC1AF99A98CA2902667AAB8D26CBDCA7E3BD4EA5 +1A205DE4441FFC0413818D5628F1B2F65D51585F34DAF1B6A34EA0AADD3DF965 +EA3B725E83C22B196A5B39C4CCBBB7960A3E73B081228A2AE3217F4941F32DA7 +3E81D55089683D436A7E8C3280F8532A4C8083CF170678A9D3F625B51A1E0B62 +C3CABCA195D3C8E1FC799DB26DD9B4995236960C1FEAE3ABF457279C4BFB9FCF +C568F50D289490A91120C2F4033DC241874E968D9FEFCEED55C2C1AD36C7D84B +985F6B47F16BFA8A4E59C4F6548D6EE6FB287678C2C6010F5D26D51687BA208E +75A4DA595C5732949E8E49AFC653AD17C714ED1977B120522C3E46B92FDE73C0 +2553144C6B4305D9A98C62734247518350DDD28B24E832B2BD294C40ECB93E66 +0A1ACFDA178DBAA5D9375FA5237FB84AAA7FD656C0DF8BDD94E33DC10F0F4FAF +4C788227BE77BDBD08C12CEBACC9FBCD04094FC0F1C26CCCB15054287E23221B +26D0C1FBBFA35559275780E02DA955A3024EAC2DE4D1DDDF2961F86A08127E87 +3A470868DEA26FEAA63D8A0B016787EE1D205AA3D6459D91F6E3A20E14D29AE8 +394EA46F82E1AE284BE0A03383FDD062541AC923D5C107DAFBDAA9508A7AF797 +82E319F4B4BF74E41862B22E2AF5BC2098EAAFB34F3644202537CF9F9B1600ED +CC8E4EB9AD080A04587D5CBA945773489442AFEC8BD1E28C29C273C7FF08A89E +85681EF5E7A193F6F1B2343AA67BE97334C18937C260D8F6F9923A57A667ECE7 +FC30F59FEB258CC2EA7845EA59D53ECFEACE6D3933A7DB6F27CD0C9F1815101E +C2A6CB63F59DD61C210613663EC664562C049490E8627B02616E2E428291E542 +A385A508387A34403013666BF2E7E01267FADB8C20739CFA86F1B834A0270629 +2A6E44CD5ABFBFF84EF88A00D02826CCA09875381EAE5AC0D076D265A00D4A3D +EC4DCC270F2069D8CB84F088D4FE648F7168F75A2449A85141793DC2E3BFB4A4 +7353C8DF3F277100A5FFEDD4C5873B746DCEC559D13F1CCE0F1DA1889F3030DA +59C129DDF372E3666E8645B763187D4CC84E4433F5C1FD517480D7069F42E9C4 +D6E9AA82B8CCC6DEB32CABAC209A928F0BD52BB76BECB0F351A583025B37B0B6 +29146E1D55A9A34D53E59DFA45797DEF0ED2E22F1CDC8276D799559968F8625F +DD171A68DB520BD02DDAFC4D8E5EDECBE976AA45488B1FCE5A4963AC6DE30FF5 +AAD06C4869727383C013C43DF2B399BAF49240A4D7DAB532BDDE4595220D6A8C +CBC36CAC03D6C3D27FC3549E30B9BF97493DE922810DDB6F4AA3482B26EA95AD +436B4CDB3CEC449CEFDC841A95849A26B0EB658EE7AAD9673CC19686E42C2F48 +C88D50F9C05900D7536211FC0B94A9F4C4456F38889E0EF8F2FE36999B58E627 +290CAF623116AFA1B75FF487079EEAF945BD907A612E7F2E931D83972D8D5A04 +1009693D949F427B1F3E59B08CF38B8C93638DD322C272065BED9B8330A04D8B +FF359D355EA8D859D4D0D30F02AA4EF54CBE4A73FAABB7F2628B11F0A2BAE147 +40F0352550738478A418136593ABB317B6EC86A932CC700571475451361D304F +5230406434BA54A273D02CB2BFB2B1742D43347E2D9920680963193D527A575A +14503046529A3BEBD9F2B2D82D4C772D6B36B204AF1D9D2D827D74F06396D770 +823A9600CD8FDEFF10DD077B3723694E1B3D2F59026A572E07C7277B9ADD8082 +4733DB75FB37EE586D8D085947102E992E423D2E71023BDDB4B20FB2DD89CDA4 +D006CB376F9CA5E0672600FCA76649DE67CE2298BDA6961E132A6DC9F700FE49 +37D189C9E7EE2C064AB4A8427D7B11EA839674695629891507AE51D24F2D7F50 +BD8D7F32D0A066566BA02DDB3BD30841992CB7ACCB15853C6C783A6B7636DEB3 +E0C0F3FC5BFEEBB84AFC0F3ECA0BCBC2C72E16940D612FA35207496B892C4030 +470C659488F7D75B5EBF165A030C3398F900A408B511B724694FC7280722742D +9BA88EDBCCABC1F69AF8C782168E183767755B0DB0030BBED66C8A25FC09E003 +CB5F25235572F44751B34ED8A33C220AEBE4298DB09D494F87CB693D89138AEA +8AAE674F53BDDD0A5D54B0C5C5A686D6C4321BDEC80455F16708FBAB0E5A8AB4 +32A279C6780DAD7B636193086C316F2A64DA2D3E52F894DB2FD8E7F5D8243BAE +98FC851C25AD5870222F655CCBBE0D3FED575FC5533EE54BF62A926BD20B0919 +ECDA438E3771592DB0680ED11596DCF8ACCBB794B5AD094001F5CCBF93EDCA54 +4999D36F2E22F791846E2010530DF646E4BB09E23C414E2FCD08C13E36BE5F2C +0AE96BB3698E9F01468EC5E23C6D1BB9FC44D5D352E761EB50E264B120AD90AA +4A202942207823C1B4311F7533AFB4DFAB70D8821723C3525A23BD6466921BA6 +88875D08A0122AB492455B6D90FE15BE4830C879F298F66A9EBE44C5BBAB5266 +BF0FB3D1B963268BF9952D8C19ADF21E60F8D06A279D0719AB3F4466186EF06D +7373D5CF8C626BAF1937E246752486746674B5372D40F95C2A5772F3BE49E080 +C6DB891F40DA9EB3219C43A10D3947C537C1CCE8B1677C96D1D13BCA8DAB6BE3 +A59806A953523E22E64E2B471FB46C405346870C4E7968987CA6243EE14CA35B +3F9CE97BD096366DE32768A5EC58077AA97117ADA747211512F1FBBBD704FD93 +DA6229603FED0979D87C64F5D36C316DFA91F98AB1D55D06DD7B1F7D51AF277A +FF664B10DD3042F2D183B958F2714295D51D6E1DB85D071BFA544C4802AB4537 +0B17A665C703FD2851343003039F2251C2ADDFF4BFBF8D625C87119101E6718D +6EADA1A2D4D4F9917D1CCAC71AACBEB66FE5A9ED13201A544B127114B95DB20C +59756DD68993754AE72EC12A3879476C51CEFC0FD1A095116A5D63AEB3E64FF5 +2A90EA74B7B5AED8157B6CA1B78E3FE0C3544CD0F6DE38B0E12265124A64E120 +921310B40BE68631EBD0368D4572709032E69D1C964EED7246DA3729584F165C +1548074357F771546AD8F134E40068367FD33FBBE76EF3BFCDE364D4CE7ADADB +DF2B6B7EB349BB563DC7D42EFD0159C37517D94770918758D434477D3DC5583B +6325C41BB9FAAD37207EC71F6C492EF0039A3813773C4B6848ABB9E96055F432 +C32AFEBAF21EF58E1DD3DD6378A208D816F3BE7E +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +cleartomark +%%EndFont +%%BeginFont: CMSY5 +%!PS-AdobeFont-1.1: CMSY5 1.0 +%%CreationDate: 1991 Aug 15 07:21:16 +% Copyright (C) 1997 American Mathematical Society. All Rights Reserved. +11 dict begin +/FontInfo 7 dict dup begin +/version (1.0) readonly def +/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def +/FullName (CMSY5) readonly def +/FamilyName (Computer Modern) readonly def +/Weight (Medium) readonly def +/ItalicAngle -14.035 def +/isFixedPitch false def +end readonly def +/FontName /CMSY5 def +/PaintType 0 def +/FontType 1 def +/FontMatrix [0.001 0 0 0.001 0 0] readonly def +/Encoding 256 array +0 1 255 {1 index exch /.notdef put} for +dup 0 /minus put +dup 3 /asteriskmath put +dup 54 /negationslash put +readonly def +/FontBBox{21 -944 1448 791}readonly def +currentdict end +currentfile eexec +D9D66F633B846A97B686A97E45A3D0AA052F09F9C8ADE9D907C058B87E9B6964 +7D53359E51216774A4EAA1E2B58EC3176BD1184A633B951372B4198D4E8C5EF4 +A213ACB58AA0A658908035BF2ED8531779838A960DFE2B27EA49C37156989C85 +E21B3ABF72E39A89232CD9F4237FC80C9E64E8425AA3BEF7DED60B122A52922A +221A37D9A807DD01161779DDE7D5FC1B2109839E5B52DFBAF552B11EFFB6A16C +F03FB920C15AE724EFDF0CCBF00A838D34440FF9FED532F44036AD22561184C5 +283722DDFA7285E62754372D716D704AC0E00B2F6AB67154241C7449AA047833 +94CEDB08E8C92907FE72A0B05AE36A7B9226ACD6E7890A0B528FDDE84A950FC6 +801DE75CF2E739E9121149CCB8B1C87A106822648D84A3D3FBF295EE6C4BF403 +BBE9A1C1F6DAEDD1E642ACC486E609703D7612BFFD10C324F5DC710811F7F614 +3691B400E3773987424C0D2B0D8A736873C6371DDB2442F05E018A2B5CA9A4AA +17AABB95D09E5890CFFFED5AC01495D89A53D3CEB6E0F620D2A75CB26E31E1FD +557B4C4A08F62668770C8BE63D101DB2855E6EE41C21A7EC6A61FAFC6ECC5AE3 +AAAD9BF81CBE3446C7B97DF168DA97FD62D7624466B71DEC005100D9A9E96639 +5D681ABD5C673876B65E5CDA906D4950EB1B40C47DFD9BCF198D7AAF69608C0C +F2E8D8277402CCADBB663813DD60A089594BB10D56DEC9DCC9E89CB253F58CEE +FC570B8A5F8B89E0C4A302DF19E296F0793EFA5507D8D7E2E51EBEA0D9696541 +AC24DACD40760D63AB92FAB1349335C832AA4CE4CE25D3D9EE2BEAF2E5F8D06D +7B08C203EA99C65EFAB0275C7E67A26060A302E1AF9D754B8A3B8F99C5D08BD2 +9DC4B91ECCDED59EC130D23879D661D6A88A1E4C9F1B8016677E9862207CD130 +82EAD659F71962275FF7FD327D060189598AF43EE08B0B3F59BEEDA85D669388 +54AD47864979967289ABF1BFD965EEB0709BD424D81911042305F9D016A9919F +006068063E85E7D500860B84C3775A79E432E5504E7F9DB79F2210AEDAA599FD +92A117C7DF17AF424DE6F15D852479ED82B14DC553C33CD3A5A1CBFBB82A4D7D +00B5D21DA064B209BDB93761D773A7B528AC1B167B522E55049DCB932A19D753 +F8D75D35D31A4E582A2758E566394CFB2D479C4C3D10EDEB4ED3832C358BFF2C +4E21E6F3784952F7DD66D38141DA12292E5D8BA1D369C208C283161D02E577B5 +EDAD1FDFB896119EA9F763EF3EA93A92AF0BDAF63DFFACD5B23461E1F8FBFB66 +A0365FCE1F6F823C405959D53E +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +cleartomark +%%EndFont +%%BeginFont: CMR5 +%!PS-AdobeFont-1.1: CMR5 1.00B +%%CreationDate: 1992 Feb 19 19:55:02 +% Copyright (C) 1997 American Mathematical Society. All Rights Reserved. +11 dict begin +/FontInfo 7 dict dup begin +/version (1.00B) readonly def +/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def +/FullName (CMR5) readonly def +/FamilyName (Computer Modern) readonly def +/Weight (Medium) readonly def +/ItalicAngle 0 def +/isFixedPitch false def +end readonly def +/FontName /CMR5 def +/PaintType 0 def +/FontType 1 def +/FontMatrix [0.001 0 0 0.001 0 0] readonly def +/Encoding 256 array +0 1 255 {1 index exch /.notdef put} for +dup 48 /zero put +dup 49 /one put +dup 50 /two put +dup 51 /three put +dup 52 /four put +dup 61 /equal put +readonly def +/FontBBox{-341 -250 1304 965}readonly def +currentdict end +currentfile eexec +D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891 +016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171 +9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F +D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758 +469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8 +2BDBF16FBC7512FAA308A093FE5CF7158F1163BC1F3352E22A1452E73FECA8A4 +87100FB1FFC4C8AF409B2067537220E605DA0852CA49839E1386AF9D7A1A455F +D1F017CE45884D76EF2CB9BC5821FD25365DDEA1F9B0FF4CFF25B8E64D0747A3 +7CAD14E0DBA3E3CA95F10F24B7D5D75451845F1FB7221D7794A860756CFBB3E7 +704A52A22448C34812C3DBEDD41892577AABA7D555E9298C1A0F7DA638078167 +F56E29672683C51CF1C003764A8E7AD9D8ADE77B4983F56FE2D12723AAD8BF36 +682CFBB71B1D12210144D39DD841A971F71DB82AC6CD815987CDCF29ABC3CC96 +5EEBD5D661F452C6E0C74F9ED8D0C5B3755551A172E0FE31EA02344176E32666 +14B6853A1C303A5E818C2E455A6CF8FC9A66DC6E279101D61C523BD9DB8EB82F +EAF4D7FDF6372383C0794C4568D079648689A199D4B65BA646CF95B7647E4BEC +83856C27A8EF177B3A686EDA6354FE9573E123C12EC4BA56A7E8BFB8F9B75147 +9DD79A743968F36F7D0D479FA610F0816E6267E5CE327686A5485AB72201525C +FB3B7CA10E1BF26E44C24E1696CB089CB0055BD692C89B237CF269F77A31DC81 +0F4B75C8400ABCFDCEC6443CD0E81871CD71AA3064ABDE882C4C52322C27FA8B +41C689F827FB0F8AAF8022CF3C1F41C0B45601190C1328831857CBF9B1E7D1AA +246117E56D6B7938488055F4E63E2A1C8D57C17D213729C68349FEC2C3466F41 +171E00413D39DF1F67BC15912F30775AFDF7FB3312587E20A68CF77AD3906040 +842D63C45E19278622DD228C18ABDD024DD9613CDC0B109095DB0ADC3A3C0CB5 +AB597D490189EA81239E39202CBC7A829EB9B313A8F962F7879D374ADF529BD0 +5533EF977142F647AD2F5975BA7E340419116099B19ACCCC37C551215F95BB1E +F7F5CE777B793F81BBD695D7862EC0B69F926F9A86C5917EA882629C25DA56FE +F992F1E8194EF0A4BB389A18FAC96E294D0724A431AF70FC1DC09D5C1485B413 +6A9EAFF96BD5096A84D88ED750E9A76B0203817C64D1A5AE26833EC72A3FD987 +198B788BA8F5B3FAF3F1D7C7E6CE2D0B518936CAA12E25F32C13FCB7F105E815 +BD670D0A4ECC9916AF3CB33A6694C1614371C674BAA401C552B6982C61344614 +F26390D4F983A7B66A57079C2C6954EE9602B44D7B65F3B0FD98879D74FFE26A +0CA78061BB0465354B76DE1980FD81410FDC6B18E92A4876B7BC36F06A1546AC +0D967C58B3CAD756410D6F34F6CEB9A7550DB7DC639B4FB27508E1E8472DB30C +F4DCA3B3FB0DC5BFDBDD061D13D4CCBEB458EAFF9CE68A5A76A6C3FCE4DC1C03 +ADFE8FB2ED57419FCA02536BECC4437730B8DD1817F91A9E2D75861049FBB71A +1E32BA6DB96D4C6C56A3C9715E798F7838F698F22E38164E32F82701D95A01FF +75B63EB2446373ECADF88FFD96602F096D31B52C4F19A2F11869DC40D8915B95 +6D3588887D1191689605C6FF32E8DBE65FCA9B287F121851BF9D7E6E23FA1A3C +93A1F68811B0115ECDA9E2B21E24B37D73B486F8C5DD30DD12792295867D9BFB +7F1EE7998523EA2C8FB19EFE4ED89F9C476A965C8AEF923762F5D6422D736073 +9CA2E2F74A82DE980A1625B603929BD7971E55FAA5DAC4738770DD79372E73BD +C601B4801004E5293649D3BAFFAA70427AC19087D279ED81EAFB747CAAF33B3A +3DE8F6900B3BCAAB6F40853D02B7A7AA08E8A65905583E45EF901944E61EFFE0 +2DA1D0E8FC1857750C4A86447CA83765C0F0D9BE6161D26113A4663326D41CD0 +021249A9A99A693FE560F6B8F9824934261D3C85DB3E81F57032B4A01DFC89D7 +7D8420AF1B0E8F9016C3CE2C04F9D6180B7C9BC97A05304100A627485C11A642 +10986FDB1C2484EFFB0B9EF691EE4F25A337C0FC494A876FEFFE9C4E374330EA +FF5E38711111BA05AD784E5F46C1FFD4BBFD440BBE44870FDC5A63FDBCAB5E9E +1C4DB0C0B5DF6D05A69F117F850D26D70F75A754A68A2343B6AA2DBCD01589A6 +9FCD39D5AEB4620A1E76F5E92A056B45F18FA2E619D52499800713ECC7D1061E +A093ACB9ED05000284C51C7D3C74C965331A16EC8CF1E90F5C36DE4A8501550A +7EEA807F9B4881DDEC7865CF36993D4A21C9A381F3F7FFE7CA6EB909EAE3D68B +59989A7351425FB5899089D78203CA73FA2B90165D60F1E316147EA115D2DB47 +1C304181D4E4C48B537AC92A69B51A93B4396555D989120A0B0C81C1F10B7B1B +FB267022B927E04CAE7D6F0626D65DE0AA8DB01D7D12433CA55FE9C45C7A45E9 +A778FCCC7BA020A70DC6AFDD761F181C61EE72E04A29CD9991F1 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +cleartomark +%%EndFont +%%BeginFont: MSAM10 +%!PS-AdobeFont-1.1: MSAM10 2.1 +%%CreationDate: 1993 Sep 17 09:05:00 +% Math Symbol fonts were designed by the American Mathematical Society. +% Copyright (C) 1997 American Mathematical Society. All Rights Reserved. +11 dict begin +/FontInfo 7 dict dup begin +/version (2.1) readonly def +/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def +/FullName (MSAM10) readonly def +/FamilyName (Euler) readonly def +/Weight (Medium) readonly def +/ItalicAngle 0 def +/isFixedPitch false def +end readonly def +/FontName /MSAM10 def +/PaintType 0 def +/FontType 1 def +/FontMatrix [0.001 0 0 0.001 0 0] readonly def +/Encoding 256 array +0 1 255 {1 index exch /.notdef put} for +dup 62 /greaterorequalslant put +readonly def +/FontBBox{8 -463 1331 1003}readonly def +currentdict end +currentfile eexec +D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891 +016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171 +9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F +D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758 +469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8 +2BDBF16FBC7512FAA308A093FE5CF7158F1163BC1C87678CE98C24B934A76220 +4DD9B2FF3A49786028E35DDE10AD2C926BD30AD47015FFE9469DE1F793D1C53A +C8812CBCD402444EAEA7A50EC5FD93D6A04C2783B50EA48059E3E7407537CB8D +4C206846EF0764C05289733920E2399E58AD8F137C229F3CE3E34D2D1EAB2D53 +20D44EFAC8EFA4D14A2EFE389D952527F98D0E49BD5BD2C8D58FF9CB9C78D974 +75C2AB5467D73D2B5E277A3FDC35909938A9DF0EB91BD9159D3437BE22EE4544 +3429AC8E2BFBE34AE54D3BA3AD04BDF3F4F43A2B43992DF88678681B3AB32CFD +A23E2C98D1AF00AB206AC95B78BBE6316F7A0AB6BD3236C28C76288B3C25D1EB +E9ABB3576C5EC15A71D26177F5883E9B48293D59015615E2EEAF2E9BA04151ED +5497B9A1C41CBA44BAFF13EA218F5EAC11952EE336AD1DBE6CE92F002EAA3B3D +3BE4C3792F3405763C4BD93EFC3B4FC34193439561841BA989DD8D9F9AEE7A7B +24AEB4654B35023C9720B8F31AA9452E29753FB7915CB29977E725611E37C0B7 +784BCC26FACF8A7A0EB1E54290D27FFE52B2D87FAD080AD15EE1984C37E0EB30 +122C3012D3A16B09C28903D138352AB5462674B6CFB63F1371768D094DDF288C +36FB9B58443F872D61F2CD8CED42FE0EFF3D7E9952A172BB1AFECB60BF79F2B6 +04265FDE4F78BC9FD619AA733CD0412F1D9A7C13B271BF827DCBDC8ABAE24FF0 +74D3C220621D7FF0EFE62D835A221D0A7C139E2E6681FC2BBA58FA3B80D416EC +3854C63BA040A4262B458340DAA18AA6AEA3BBAC61615CB85982B18664D3D3AF +340C65B969071CF2D0CABEB80E04623D0526F862ECA8280EEE236C535F70561A +854181132E677674AD5E14C6636F57541D3C821F0776D2CB9B8526D4B826791A +0B179B386967E7B1725D1D0970983F7604FDB7DFCFF041F68133338974A281DA +04EAAAEB8CF074B11C56A8AD80F139546845157987B04DDE6B9DC8D327FD2DAB +5B7F4BACBC9D9FE3831736B0A3C5057FDA4F636318EEAF5FD32A87BF6B4D947B +1756CF885D4B955A1E36E5E44A89E35C68C70921505EC8D6DB40F82A8A3BD84E +3641F58211A7BF5EA5B6A84E2EBF805583095B25F2CD40DA5806FC701D751095 +6432DCF5AB12A90F940B5738502202440AD44143D76009297F8BB80EA6EC702E +A5153B7D4431D1D93A64412B6C244CF9623A555D5FD7B133AFF4406A9E2326D6 +25B250F6ECBF3123A4AA424080D3E6F962734BC08AED525787F406C3BF239B0E +28450A0DCA6479749F0E40AF5E6FECA657735650114DDA61637670B4B90252C4 +D4F133FDF1998F09CF2360D498BD7E792A +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +cleartomark +%%EndFont +%%BeginFont: CMR6 +%!PS-AdobeFont-1.1: CMR6 1.0 +%%CreationDate: 1991 Aug 20 16:39:02 +% Copyright (C) 1997 American Mathematical Society. All Rights Reserved. +11 dict begin +/FontInfo 7 dict dup begin +/version (1.0) readonly def +/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def +/FullName (CMR6) readonly def +/FamilyName (Computer Modern) readonly def +/Weight (Medium) readonly def +/ItalicAngle 0 def +/isFixedPitch false def +end readonly def +/FontName /CMR6 def +/PaintType 0 def +/FontType 1 def +/FontMatrix [0.001 0 0 0.001 0 0] readonly def +/Encoding 256 array +0 1 255 {1 index exch /.notdef put} for +dup 40 /parenleft put +dup 41 /parenright put +readonly def +/FontBBox{-20 -250 1193 750}readonly def +currentdict end +currentfile eexec +D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891 +016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171 +9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F +D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758 +469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8 +2BDBF16FBC7512FAA308A093FE5CF4E9D2405B169CD5365D6ECED5D768D66D6C +68618B8C482B341F8CA38E9BB9BAFCFAAD9C2F3FD033B62690986ED43D9C9361 +3645B82392D5CAE11A7CB49D7E2E82DCD485CBA17D1AFFF95F4224CF7ECEE45C +BFB7C8C77C22A01C345078D28D3ECBF804CDC2FE5025FA0D05CCC5EFC0C4F87E +CBED13DDDF8F34E404F471C6DD2E43331D73E89BBC71E7BF889F6293793FEF5A +C9DD3792F032E37A364C70914843F7AA314413D022AE3238730B420A7E9D0CF5 +D0E24F501451F9CDECE10AF7E14FF15C4F12F3FCA47DD9CD3C7AEA8D1551017D +23131C09ED104C052054520268A4FA3C6338BA6CF14C3DE3BAF2EA35296EE3D8 +D6496277E11DFF6076FE64C8A8C3419FA774473D63223FFA41CBAE609C3D976B +93DFB4079ADC7C4EF07303F93808DDA9F651F61BCCF79555059A44CBAF84A711 +6D98083CEF58230D54AD486C74C4A257FC703ACF918219D0A597A5F680B606E4 +EF94ADF8BF91A5096A806DB64EC96636A98397D22A74932EB7346A9C4B5EE953 +CB3C80AA634BFC28AA938C704BDA8DC4D13551CCFE2B2784BE8BF54502EBA9AF +D49B79237B9C56310550BC30E9108BB06EAC755D6AA4E688EFE2A0AAB17F20FE +00CD0BFF1B9CB6BDA0FA3A29A3117388B6686657A150CE6421FD5D420F4F7FB5 +B0DAA1BA19D638676E9CF159AC7325EF17B9F74E082BEF75E10A31C7011C0FFA +99B797CE549B5C45238DD0FADD6B99D233AC69282DF0D91EA2DBD08CE0083904 +A6D968D5AE3BD159D01BDFF42D16111BC0A517C66B43972080D9DD4F3B9AE7FB +11B035CE715C1218B2D779761D8D7E9DEBE277531BD58F313EBD27E33BEF9DC5 +50C7821A8BBC3B9FDF899D7EAA0B94493B97AFEAC503EB5ED7A7AB67C3039A0F +BF0BA4B455D035FF3126F33A4DEA730DB0644CCE0E14E89E8F5873C19FAEFA91 +9D14A603CF4D917A6AEDB4301981BAB51630CCACD37CC4A7AEECFA7E8A6A3F22 +E517F781BFBF64CA02D39D6B759536AFA1A1D4C2F82C78C45F4BF81AE4193314 +90EF9297156578BC9F14FA6D4328AA000C3B96C324921C95DB11D9AD73216475 +52B066C2221D5904718F2E84DCEC6652309C58EAE065AE3F072211FDB5C97B97 +6596D115A234B2C48CEA758207F0206C4AFDC0CD642C1473C591DAD250F472B8 +6F8FDDF769B1150B9C9CBFA0C3370561CD16D089392F99A25B518A44B428CCBE +2C57E58016C7F8A68C60E760E11AC94DE463C3EBA0E113B0D88901D5D8423A24 +E73A9255D36E89736F4769475E1A82A0A7BF57DBB8FEB2D2F4F2E6FAB9528C67 +F633939E9A05D02468C1CF3EBE7BB304769F75844E7FDA5FF39EBA3D7ADBC733 +B4A79E6B21849511BD087D192F4ED43F7900928C03D931DF04EBBED296AF1045 +AC2B727A931D4C293CBE0EE977B9243D3EC7E68A +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +cleartomark +%%EndFont +%%BeginFont: CMSY6 +%!PS-AdobeFont-1.1: CMSY6 1.0 +%%CreationDate: 1991 Aug 15 07:21:34 +% Copyright (C) 1997 American Mathematical Society. All Rights Reserved. +11 dict begin +/FontInfo 7 dict dup begin +/version (1.0) readonly def +/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def +/FullName (CMSY6) readonly def +/FamilyName (Computer Modern) readonly def +/Weight (Medium) readonly def +/ItalicAngle -14.035 def +/isFixedPitch false def +end readonly def +/FontName /CMSY6 def +/PaintType 0 def +/FontType 1 def +/FontMatrix [0.001 0 0 0.001 0 0] readonly def +/Encoding 256 array +0 1 255 {1 index exch /.notdef put} for +dup 50 /element put +readonly def +/FontBBox{-4 -948 1329 786}readonly def +currentdict end +currentfile eexec +D9D66F633B846A97B686A97E45A3D0AA052F09F9C8ADE9D907C058B87E9B6964 +7D53359E51216774A4EAA1E2B58EC3176BD1184A633B951372B4198D4E8C5EF4 +A213ACB58AA0A658908035BF2ED8531779838A960DFE2B27EA49C37156989C85 +E21B3ABF72E39A89232CD9F4237FC80C9E64E8425AA3BEF7DED60B122A52922A +221A37D9A807DD01161779DDE7D5FC1B2109839E5B52DFB7605D7BA557CC35D6 +49F6EB651B83771034BA0C39DB8D426A24543EF4529E2D939125B5157482688E +9045C2242F4AFA4C489D975C029177CD6497EACD181FF151A45F521A4C4043C2 +1F3E76EF5B3291A941583E27DFC68B9211105827590393ABFB8AA4D1623D1761 +6AC0DF1D3154B0277BE821712BE7B33385E7A4105E8F3370F981B8FE9E3CF3E0 +007B8C9F2D934F24D591C330487DDF179CECEC5258C47E4B32538F948AB00673 +F9D549C971B0822056B339600FC1E3A5E51844CC8A75B857F15E7276260ED115 +C5FD550F53CE5583743B50B0F9B7C4F836DEF7499F439A6EBE9BF559D2EE0571 +CE54AEC467FDC60394336D84666336B29652E7076462DF70C6087A99A89F69C5 +887D9E651A859D64D64649A90837FD8FAE50336E1A69FD1B55B3FC15A80642F3 +B6DC7AE39CE05B80EBE2031397C75759FA201BB78D9A63F539C2DB47D8A215DB +A7BD86A86F74FE9CC5DA6AF8E35E75815E2DFCBAA3B3C879942818DA1E884AE5 +A257826EE787C4AF487B9E3645FB1763B2D83C7165666B3E63303694122477BF +C4F7A7570D968C2B5D7DB6251125B1440B6E0E74FF49EEF9D6D3CFDCC7A02AEB +53EFD2FF61BF1E9254DC034198C94BACDF6EF8A2890F5513840B1B32E734C5B8 +509F254CD0F211948F13252CE39236B64C66B7D6CD8955F744A43EA5247BC134 +20B6A2DDAED0FD34 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +cleartomark +%%EndFont +%%BeginFont: MSBM7 +%!PS-AdobeFont-1.1: MSBM7 2.1 +%%CreationDate: 1992 Oct 17 08:30:50 +% Math Symbol fonts were designed by the American Mathematical Society. +% Copyright (C) 1997 American Mathematical Society. All Rights Reserved. +11 dict begin +/FontInfo 7 dict dup begin +/version (2.1) readonly def +/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def +/FullName (MSBM7) readonly def +/FamilyName (Euler) readonly def +/Weight (Medium) readonly def +/ItalicAngle 0 def +/isFixedPitch false def +end readonly def +/FontName /MSBM7 def +/PaintType 0 def +/FontType 1 def +/FontMatrix [0.001 0 0 0.001 0 0] readonly def +/Encoding 256 array +0 1 255 {1 index exch /.notdef put} for +dup 82 /R put +readonly def +/FontBBox{0 -504 2615 1004}readonly def +currentdict end +currentfile eexec +D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891 +016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171 +9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F +D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758 +469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8 +2BDBF16FBC7512FAA308A093FE5CF5B8CABB9FFC6A66A4000A13D5F68BFF326D +1D432B0D064B56C598F4338C319309181D78E1629A31ECA5DD8536379B03C383 +D10F04E2CB7C8461B10646CD63AFEB7608468CA0FCFC4D3458FB43D22879B515 +27DD9CCF44C2BFCD95A4DE911E4915FBC02335E9999FD9B546134081D6DA3792 +EC4A76DEBA77635BE52E09986268A919CB48B5EFB1A1301EE0683CB5709BC8CE +D819D799020CBA673BA39C911075501395B1FD20EAD392C9D5A8C9FD1198C737 +D1A614CF0C0432F29DDEB4BF9DB026908DBE89EE522B7D55DE9BF64AFBE6248E +2E10466655EB9083E7D23E3F0EE26154F191BEBC9987930CD4B4CABE1275BDF9 +8755EF3D531FDF91D54954FC53F15A38D1E8F8D1E36447484FA2C09D34813615 +838B6330FEAE536D08376E4A0FDDF58CDF5647C9F1FF3A7D1ACAD376DB3CADB6 +9459F7A5D4F1864863B79E9F93A1EDE8B99C3138D26227C01F6FE0AAC800F2E5 +94DD81CF7B1355B642CE45CB532FC5B535D66EDFFEA076C009E87406D9772D71 +848C3C53B7496A5D6B58679EF11E114C5F457C6A0D3CDE50278E4A89D5393B1C +F877CF4E2142A4D045C4AA9138105D748903BACC28FD43DFEDB341E1FCDBE2EA +D412498FBB5374D6836CFBEB13D4C2B7B9625C25B037FDA9DCC42F5679C4B3C1 +6340E341F73A9215092C0ACC505A859FA935BE5172F4F6D4A30E73914DBD5297 +7FE0CEB5CD0B92176B8174870F9FAFD22BD2ADDE02B5705B5FAFDEE372F17857 +40C1B4024C9F04375B9CF997E9D0C0F7D82465D678BB9810016E6BCC9C4374EA +6B2CC834894FDCA891643D9417369458A630FD498794823FFA55705315F0687E +7592A5DFC8B8D6FE2F3C64B4A4F9D37F5F2200BAA277F2E0BA8E5A849CB4D8F7 +C59D7605F06ECAA3A01F5180E25F1DEA34F81CDA7DD6C90BA8D0478E3ABF9F76 +58C0FE1BC6594E230018ED14DED710EB9A11F6C4355EA61D9CA083951E8C374A +4EAB8971BDCD6C396BD1C6E07313B338068845A962F0A32548FD253D1F237BE9 +1AC8C1412AA46DDA13D4C1840D75D6A94043A7DB11C57487035D4652902449AD +C7AAE657D1B0142D78D4F39E90DD6222E11320DE4D2939F427FA7058FE5E0386 +BF4560B2EFA31802BCC6804027634DE8C10ECDE7C259AFEFCADB80AA07D433DC +7DB619FA8DBD44762B287B9E9F085584A0C1BA1F128CB59BB17F975B3556E024 +F8845387ACEE0DD08394C0325AA73AF4DDD4AD8C60281BC9425D64DAFB3A2710 +78C3CD4165BBBE89E342D2A94A5CD76083C217A5443E10811DE9E45E54DABE9D +D44746617B833A165E33EBE90C99203967A6CE4219C7B6ABBA9878BD4A75006F +EC7A3969713A7B9ECE7DD01EFAA64A36B5AF8854692597C9AF0A300660AF1AF9 +23E4379A2624968AB762A960E148AE2718911B0EE896ADECAB44055924F1AB8B +88D6A95770B69EC27997889FD2E789F0967F67DAD4E94557FD3BB057F05A9399 +1F23464A92DD140642E3A7B1973849E64D1A3CF6 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +cleartomark +%%EndFont +%%BeginFont: CMMI6 +%!PS-AdobeFont-1.1: CMMI6 1.100 +%%CreationDate: 1996 Jul 23 07:53:52 +% Copyright (C) 1997 American Mathematical Society. All Rights Reserved. +11 dict begin +/FontInfo 7 dict dup begin +/version (1.100) readonly def +/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def +/FullName (CMMI6) readonly def +/FamilyName (Computer Modern) readonly def +/Weight (Medium) readonly def +/ItalicAngle -14.04 def +/isFixedPitch false def +end readonly def +/FontName /CMMI6 def +/PaintType 0 def +/FontType 1 def +/FontMatrix [0.001 0 0 0.001 0 0] readonly def +/Encoding 256 array +0 1 255 {1 index exch /.notdef put} for +dup 78 /N put +dup 96 /lscript put +dup 105 /i put +dup 106 /j put +dup 108 /l put +dup 116 /t put +readonly def +/FontBBox{11 -250 1241 750}readonly def +currentdict end +currentfile eexec +D9D66F633B846A97B686A97E45A3D0AA0529731C99A784CCBE85B4993B2EEBDE +3B12D472B7CF54651EF21185116A69AB1096ED4BAD2F646635E019B6417CC77B +532F85D811C70D1429A19A5307EF63EB5C5E02C89FC6C20F6D9D89E7D91FE470 +B72BEFDA23F5DF76BE05AF4CE93137A219ED8A04A9D7D6FDF37E6B7FCDE0D90B +986423E5960A5D9FBB4C956556E8DF90CBFAEC476FA36FD9A5C8175C9AF513FE +D919C2DDD26BDC0D99398B9F4D03D6A8F05B47AF95EF28A9C561DBDC98C47CF5 +5250011D19E9366EB6FD153D3A100CAA6212E3D5D93990737F8D326D347B7EDC +4391C9DF440285B8FC159D0E98D4258FC57892DDF0342CA1080743A076089583 +6AD6FB2DC4C13F077F17789476E48402796E685107AF60A63FB0DE0266D55CF1 +8D0AD65B9342CB686E564758C96164FFA711B11C1CE8C726F3C7BB1044BBD283 +9AA4675747DF61E130A55E297CA5F0182A3F12F9085AF2F503481071724077A9 +387E27879A9649AD5F186F33500FAC8F7FA26634BDCE1221EC0ED0E359E5EA5E +6166526FEB90C30D30099FBDC1BC2F9B62EFEEC48345160804AA98F8D0AA54B7 +A480E715426651865C8E444EDB798C7E11040AF6E5A7ED1888653C6DBF5E6169 +70BCD9C063B63B561EF165BF3AF11F8E519F37C6FDA2827685739DE2C48B5ADE +EE84F067D704D4511DBFA49E166D543CFD9ECD7417055D8A827F51E087CD2927 +BAFC7E6CFBD70B0FE969F890A11149D3D44D422C3370495DA9951AEE7253A49F +3A9444C8CD9158D84117299F7F2332FEB0F94E6ED8BC7AA789A3219BC2F227D3 +3B5BC75FB53B55D72AF4A6A7BB613FA235B11BB37D059FD87127CEF73D5B3FBF +9F91ABAD78BD9240BD9525EBA78095EA0BDB25D1A19E876F292882EAD5619D46 +D20317A345D931F4FF4EAE6216C27044CBA525E3B917CEA25A04C120466C4B93 +FC720E6BA832A06CCA0A3916CEF0968D49085AEBD243C41A448289A6F05CE3F5 +79148DC112A3CC7E8FF810B8C1A09E05F496C0F1EBA334E42E05C376C98F5F69 +C06C71BFC0A2F3AC9951CFBB143C66FB84F9C4ED27DF70869352D61BD5E11508 +0797B87C74D8E22C8581255E53BBF5A60D2A2093A425A021E255B00856C47694 +056E8F0A73CD14138EACBB90E79319071145231E91DCB5E8422BEA39DB99D9CF +308838B85C4A3D8572F1B1C3F89D4D48DD8275F6D6031ABA7CF8DACE056CAF25 +570C1433215C80E5FAB7C8D351597F728FD5C2FF648B7AACEE7DA976FF79E5AE +9B9AC3D01CCF011066D60181CD6148867443D458D042E973B14EC68E18064395 +C1409FE5DFAFB6CEFD37EB8C8874BA5993D35B4BD539FF4B4A303289FF74F700 +22D13184A1E61DD2497FD54D5838E238FB498115F4B416AA4DB7871C0B5A238D +3D2E66AE5D286C6E4B2A3174BD9B5B96AD900F150CA151A42F2C65C76883EF63 +F962DA68917E4A59BB1E009161DC4F9DC7F2345BB6612020EF59A2C75D5CFCD7 +17010ED172B307EAA545228C5667D9796715F9A98C0B6AC42667D40D2A69202B +820B7E8D1CBC1287C2CCD5CA4C85460C206052D09C8535037C58D0DB11EA2C4F +23894D736BDACEF1108F6EE73120329168FF7B916B890D437D19ACE8822DBAAF +3A644B20ED314735EBEA5BC537B37123FD913DA09B7B20CFD369C65892B4E522 +D315E106E776667073BA791CEEA4853CE8F6B13D6835EE6C3E094D013BACEC8B +78B9946EE658F19542C18EC86FE493974A5356270A530B5A3A6C858120834245 +AC68A257DD74FF769EEFFEB2C95FC706F93EB79616F016241F872F1E338543AE +D8BE7FFB9E87B61AF59249045BDF3FF393B56F19E50739D1A28CFF40AC87B0A4 +5650B82EF5D30F5347EB463EDC5AA0663528820F8352A37D7D604110702D1379 +21945AFB562B1EF9E0275744930775F7AC1D245B7CDF0DB436C79F8DE147A987 +62DAA64282F84107F86221EB641A4D4DEFFD18EFD67A642D83D26B855C92BB7D +17E1CBE8CB120E6423B4B43100FAC3AB90AB59B8D3C267E8D040D46F1F253143 +A6F2C82CBCD962F07F40D7636A276DB59A5CEC5AF694B31A8E239AB788C866B4 +4F835EF5C7015EF350F445CEFA288FF84A83469FE1602E914F3FAB0ED43E6AEB +4A995583380EF8A1F74D91AE6D8CE0A42BD2B8A67DAA15B809D1DDFC58D86620 +8BB99ADE04B4176C643F6887E7B97D460F49E94B2C3A6B0AF8A3ABFCD9633C53 +9B6B55F9B68C6CF3FBFB1D8CD74573F1ABC34CDEBF02DAE85FBBA28DD33D80E8 +1DA41FD702C5846534ADDE9A1D4ED55FA5F1BAF8F2270325FAE389D5A9A212B5 +BFF18235F70347F8A0756377E52D3FE93866D58A4B0E2016A17FF6DC584FADAB +617BC85D6486E122DF147CB14DCBB037677AEBD51C2D83D64453DBDC103A9D93 +12EA8D18D5DD35DC816177C123A43322938E196EF7C076EF41843C0686CE65B6 +EF5441CE6353B0109834584C260F600C8DA3D9FBA75D261E12F40227A4C9FCE3 +9AE78D414C1FAEEEBDE84E8D2B25044819A5C175E406607F46064F07BD0B8075 +1F9530D3D4F4E1DF10F450ECA272B1A909533AD5685B565BDC208141A3B87CA9 +1BF93DEB65D4D01DF36125FC82D692D1B73AC1FF0EC5F541F659A39E5ABFA7A4 +A024FCD9DC6DF5A46A0B11F02EF6DE5AF13B056127BDAC7EA62036523F19F0D1 +BF29AF28E9744349EEB1AAD69EBD07E47787006483089435A3401D479B3CE2E2 +ADD405F2105159DF4542A467E9046D5D916B65DDCE4D071D8F64A321A16586E9 +C0E4BA2506507191B820D837AD12222F17F0F1903629B3861D3F2AFF9DE1D4A8 +084DEA13640F817F475837761E5D3DC5FACDC9F39FBC48FB7CB2B56CD4E70391 +4230711C9BF715424FBB02C48E9C465727EF89D28D23A8E424B0ED79E36674A6 +03FF938F6A462B70228EDC2EDD2FC07BA54EFE020925A10DA5FB62 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +cleartomark +%%EndFont +%%BeginFont: CMR8 +%!PS-AdobeFont-1.1: CMR8 1.0 +%%CreationDate: 1991 Aug 20 16:39:40 +% Copyright (C) 1997 American Mathematical Society. All Rights Reserved. +11 dict begin +/FontInfo 7 dict dup begin +/version (1.0) readonly def +/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def +/FullName (CMR8) readonly def +/FamilyName (Computer Modern) readonly def +/Weight (Medium) readonly def +/ItalicAngle 0 def +/isFixedPitch false def +end readonly def +/FontName /CMR8 def +/PaintType 0 def +/FontType 1 def +/FontMatrix [0.001 0 0 0.001 0 0] readonly def +/Encoding 256 array +0 1 255 {1 index exch /.notdef put} for +dup 40 /parenleft put +dup 41 /parenright put +dup 43 /plus put +dup 48 /zero put +dup 49 /one put +dup 61 /equal put +dup 91 /bracketleft put +dup 93 /bracketright put +readonly def +/FontBBox{-36 -250 1070 750}readonly def +currentdict end +currentfile eexec +D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891 +016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171 +9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F +D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758 +469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8 +2BDBF16FBC7512FAA308A093FE5CF4E9D2405B169CD5365D6ECED5D768D66D6C +68618B8C482B341F8CA38E9BB9BAFCFAAD9C2F3FD033B62690986ED43D9C9361 +3645B82392D5CAE11A7CB49D7E2E82DCD485CBA1772CE422BB1D7283AD675B65 +48A7EA0069A883EC1DAA3E1F9ECE7586D6CF0A128CD557C7E5D7AA3EA97EBAD3 +9619D1BFCF4A6D64768741EDEA0A5B0EFBBF347CDCBE2E03D756967A16B613DB +0FC45FA2A3312E0C46A5FD0466AB097C58FFEEC40601B8395E52775D0AFCD7DB +8AB317333110531E5C44A4CB4B5ACD571A1A60960B15E450948A5EEA14DD330F +EA209265DB8E1A1FC80DCD3860323FD26C113B041A88C88A21655878680A4466 +FA10403D24BB97152A49B842C180E4D258C9D48F21D057782D90623116830BA3 +9902B3C5F2F2DD01433B0D7099C07DBDE268D0FFED5169BCD03D48B2F058AD62 +D8678C626DC7A3F352152C99BA963EF95F8AD11DB8B0D351210A17E4C2C55AD8 +9EB64172935D3C20A398F3EEEEC31551966A7438EF3FEE422C6D4E05337620D5 +ACC7B52BED984BFAAD36EF9D20748B05D07BE4414A63975125D272FAD83F76E6 +10FFF8363014BE526D580873C5A42B70FA911EC7B86905F13AFE55EB0273F582 +83158793B8CC296B8DE1DCCF1250FD57CB0E035C7EDA3B0092ED940D37A05493 +2EC54E09B984FCA4AB7D2EA182BCF1263AA244B07EC0EA901C077A059F709F30 +4384CB5FA748F2054FAD9A7A43D4EA427918BD414F766531136B60C3477C6632 +BEFE3897B58C19276A301926C2AEF2756B367319772C9B201C49B4D935A8267B +041D6F1783B6AEA4DAC4F5B3507D7032AA640AAB12E343A4E9BDCF419C04A721 +3888B25AF4E293AACED9A6BDC78E61DA1C424C6503CC1885F762B25948ADE0C6 +5FB5E59A5E169CB7633AC83D2840106BA5AE2D3F7C49820D71F65EA74CD13077 +336F23919B54FD4168346F73C7767D4D870D037852940C5C7BCED2B78164F530 +05C26260AED7DFFE53672DAD21896126121196B6764DD92C16C7B51CBFE6843F +415E5FB1214F3EB152D430489F62EF6F1AFB0359E9612527F58E7E2646E6DC83 +FD6C9156DF9ACE936EABDFE94DF079851377E67D1B3565FCDE89490ADE425CE5 +4A73843763E20704FA6DB60C9C69BF18170F343FFDCD34A516D02CD1A50B678C +271C95C079190B0B1E678E6786E3C21432C6569A2133BCDC7E5113617E4CC150 +FF9D1A288469B30604493E64ADCAA05B53EC315E77ECE26626D2302B02BB7C7D +477DD854A95D178B156C53361C49BE7AEE25DF247E93457F5C7BE57336806255 +9850B382252B4EBBD908AF413987CC557B36D9D1274D67A3A58479B12BADEFF7 +0243DE07A7EA70AD44F12127AE604A9C22AEBC9E45EBF30BE96EDBC30C5FB15C +E15D5761F79978BF82EC0D713849A2E7A03D3DDCBA027D8EAEB0A2DED5A7BA72 +56A1ECA78CC389DC2C79A3B34222994E270725D675382D16897618021F2FBE16 +08A5EDA351904CBA0B539CAAB2757FD3BC7162F9316C318F5EBAA3C38DF2A589 +A84B89CE4C7A9150251E983314A0E4F876AA0749C26523D5DB7F5095278647A1 +DEFE3F9E8C16ADB6D8B624AA9433DC8AF01C0C8F16DB5FE49A45B83E26FDB3EE +21D9CB7E732C6197ED832D3FDE8163300D518653EFCDC971B8AF1E7FB51654F7 +08AD3E17C7E76ABDDC04FEAD33094EF2D16EBB2735B2875A215471B0FA823906 +2429A528B6598A111F2FB8609687E396A07BBBCDB12D4243320E4378FC7F932B +3EF9A7597F23E0966F9A666091B97DD1B95B6C113E22614B14F1E825C8BD7053 +90827BA813CFB2358A509877B069020D3B36D2B1F9DF4A4BC5077D1243A8EFEE +5F8DE09D69219761F06E25EDB309CD8FC3F8402272C2FDAE0AE187F3430B7ED4 +079C943F8DD28E00CD0C685FA700D1EB1C2AA2B47396C750BE3957414512584E +41D8E590B67EACF8972C0C23A1371ED2F9E65D1EDA301E6B4D89CCE3A6276B93 +0A2BE8D91A5AFD6148971B829D8FF390849229705E56F60AD2002F6123A91E23 +4E12C6729F7EDA481D91CCD763FC282B1FDA3864422662BE79E822077818BEBB +36A6422531C48A9532C5DF5E998B7D719A2B27CBBAB61DE021B2795D20B03183 +BE8E850C0092463A8251F32A11027D5DA0D99CC551E9977F93B7154F977FB842 +B99EA51A061DE4D28BC78A05A7BA79CC58AF5EDEB22DC632105A520EDF15AF93 +5AD60AEBFAA68B63D37EE452263206B156364C34DBD58E896C0FA41A80BFC257 +1D79706E91225AB66CBBED13022F7EF4B726E8BE989F253320A8009889250D15 +847CDB506F0F2F8DAFB9064CA637B2CD9C43FABBF6AE5B9C9A1A150F924DA690 +2DBE29239F0F80E40B7D8E9B2AB4008EE1DA7ABA +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +cleartomark +%%EndFont +%%BeginFont: CMMI8 +%!PS-AdobeFont-1.1: CMMI8 1.100 +%%CreationDate: 1996 Jul 23 07:53:54 +% Copyright (C) 1997 American Mathematical Society. All Rights Reserved. +11 dict begin +/FontInfo 7 dict dup begin +/version (1.100) readonly def +/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def +/FullName (CMMI8) readonly def +/FamilyName (Computer Modern) readonly def +/Weight (Medium) readonly def +/ItalicAngle -14.04 def +/isFixedPitch false def +end readonly def +/FontName /CMMI8 def +/PaintType 0 def +/FontType 1 def +/FontMatrix [0.001 0 0 0.001 0 0] readonly def +/Encoding 256 array +0 1 255 {1 index exch /.notdef put} for +dup 1 /Delta put +dup 11 /alpha put +dup 17 /eta put +dup 34 /epsilon put +dup 58 /period put +dup 60 /less put +dup 61 /slash put +dup 65 /A put +dup 68 /D put +dup 71 /G put +dup 78 /N put +dup 79 /O put +dup 83 /S put +dup 84 /T put +dup 96 /lscript put +dup 97 /a put +dup 100 /d put +dup 101 /e put +dup 105 /i put +dup 106 /j put +dup 107 /k put +dup 108 /l put +dup 109 /m put +dup 110 /n put +dup 114 /r put +dup 115 /s put +dup 116 /t put +dup 117 /u put +dup 120 /x put +dup 122 /z put +readonly def +/FontBBox{-24 -250 1110 750}readonly def +currentdict end +currentfile eexec +D9D66F633B846A97B686A97E45A3D0AA0529731C99A784CCBE85B4993B2EEBDE +3B12D472B7CF54651EF21185116A69AB1096ED4BAD2F646635E019B6417CC77B +532F85D811C70D1429A19A5307EF63EB5C5E02C89FC6C20F6D9D89E7D91FE470 +B72BEFDA23F5DF76BE05AF4CE93137A219ED8A04A9D7D6FDF37E6B7FCDE0D90B +986423E5960A5D9FBB4C956556E8DF90CBFAEC476FA36FD9A5C8175C9AF513FE +D919C2DDD26BDC0D99398B9F4D03D6A8F05B47AF95EF28A9C561DBDC98C47CF5 +5250011D19E9366EB6FD153D3A100CAA6212E3D5D93990737F8D326D347B7EDC +4391C9DF440285B8FC159D0E98D4258FC57892DDF753642CD526A96ACEDA4120 +788F22B1D09F149794E66DD1AC2C2B3BC6FEC59D626F427CD5AE9C54C7F78F62 +C36F49B3C2E5E62AFB56DCEE87445A12A942C14AE618D1FE1B11A9CF9FAA1F32 +617B598CE5058715EF3051E228F72F651040AD99A741F247C68007E68C84E9D1 +D0BF99AA5D777D88A7D3CED2EA67F4AE61E8BC0495E7DA382E82DDB2B009DD63 +532C74E3BE5EC555A014BCBB6AB31B8286D7712E0E926F8696830672B8214E9B +5D0740C16ADF0AFD47C4938F373575C6CA91E46D88DE24E682DEC44B57EA8AF8 +4E57D45646073250D82C4B50CBBB0B369932618301F3D4186277103B53B3C9E6 +DB42D6B30115F67B9D078220D5752644930643BDF9FACF684EBE13E39B65055E +B1BD054C324962025EC79E1D155936FE32D9F2224353F2A46C3558EF216F6BB2 +A304BAF752BEEC36C4440B556AEFECF454BA7CBBA7537BCB10EBC21047333A89 +8936419D857CD9F59EBA20B0A3D9BA4A0D3395336B4CDA4BA6451B6E4D1370FA +D9BDABB7F271BC1C6C48D9DF1E5A6FAE788F5609DE3C48D47A67097C547D9817 +AD3A7CCE2B771843D69F860DA4059A71494281C0AD8D4BAB3F67BB6739723C04 +AE05F9E35B2B2CB9C7874C114F57A185C8563C0DCCA93F8096384D71A2994748 +A3C7C8B8AF54961A8838AD279441D9A5EB6C1FE26C98BD025F353124DA68A827 +AE2AF8D25CA48031C242AA433EEEBB8ABA4B96821786C38BACB5F58C3D5DA011 +85B385124DEB4D6B1F34D50F7D5EB409B8B352FE8465719EFA2D4E9DE8BF7082 +61FDE83F6977EC1158A1CCBEDB2A515CD1FF8BDBC440B26CF9381DFB5946BEEE +C0E5ECEA4FEAF88C0B28EF150E026F88CB356DD5AAFBD882E9F225BE41084A24 +3C1CDC0F4F3478C30FA3F4DB8CAA8889E678D4505BBEA50F7D90165D2C51376B +9E14C7D7763FBC84EF1159468BDD1BB17F9777DF9977BF038D7E4B50FF3294C0 +739F8E38761FBAD032C949EB7511B31D0233D6BA2F7D775E96212CCF0C92AA48 +2EC76E274D50E22E5FDB458694EF323B6CE12DA8B5D8A7FA49C16DAF3613E9A4 +F41A100EC900F711F8E70C1C10DF6851FB39D39809C327C7EB06621E6B88A824 +B894434B86CC0AC552304FC4D0DF6D6F0B047BECC9E6D93B2C7592A73EFF1F86 +75A36D6890378F9CA5592F200513B1108DA18070578C96FF88D7BF0D15A132AC +FBD73A689F933DEDE585700DF249A85B3B0ED2EF0D24D4BD13C67FFF1275A4C8 +2D7F71F3BA6921E7B47A02AAAFA07150D162C74EF8CD0657592A10A410BDE572 +61CE2D9ABF6D058F7D3305BA6E7EF6161756F21759B14A1AC99EC3E3B6AB8B36 +D0F6BA680BC042E2E1AB5869AF8C552C3557DDC333CFB59CFE43541D745BCD48 +B0CDA26507EED6AF1A35E71D3E16967EB570A6CE207749D248AB652165B5E70C +9D26FDE46EA0347FEE3643123678D1D2AFA8FEE4533815C2F3BCE21CB78F4083 +0993641EEF9DBB1E0658A95A0F42037BD0506427E4414CC7D811224665CBF9C8 +F4B29B44647E3AD66439C25334A5217D7709A1BDA7474D1C567E3D0BEE852B19 +E9DC7E66C3EC495AC6EF25726EAA24AAF9AF7BB95DA02F7ED0E669DBBC8B9926 +3D5C8328F32CC88813036474C1E2F4B7AAEE76322A3094DC370401A57982A96C +437A84BBAA11F977E95F322A966660E07677A51C51BBBCF9EF7DAE75C97C3262 +268236A3659F8AF9A6E4DF779C46E5E1CBC924AA7F141D2DD05EC0CB59C031BB +1AA17312C106CE96A98B380539F33B8FB0DB2C18755E8DDEDE1E81C379617CC0 +4C37E0176E4D58D4AE1BF44BDA60AEC65F60FE53D7139652FF32189F7A7D25E1 +C47724D2412A38615F474CB5325B6DD895DD288428A8D4367AD95DC78C793012 +83C4AF263D7D1E27645BDF385F04656BBEEFBD37803A78CAE1231090FBA9C4FA +56A5C982C4F8B0A465D04755D8A7AFFA5742246117C4980D5E5C82AF4E048EC9 +2B4475D9C4A5E227F5DBD455348CDCAE2E7F81488888450C119E109D56A1DA79 +EF3E7E597B2452066F5F2EBC990385A6ECFF6EA5F7EB296B29DF5D4AE910B1D1 +57D79D08563EAED8E4CA4AAC63DF9F39A8EF847DAE907EE7243458A85ABC8272 +B0F1AC84771FB7B91253087ECFA926422A617151BD151A51758F5DF75E8EA741 +D627B88BD1361EB4BE45D953A8BD16B867635CFB0E12FB15B75C74D3A80CE7C0 +D61EFE791A739FBD4F805C65FB9DEDAA565F9BEC532DD6D6F183C9CDE98C5336 +906B6B2AF16FA97DD86ABF717730256ADA02E5382B4BAEE4974FCF8ABF036104 +98317399988351C31BDE41041AA2CE812E00F53E8DF1A3F0C1EB1528775483A7 +45FE24F342FDA2BF28A1A3C6737DE401FAC0BFE1B750B7003257A986E042D0D9 +3645AF133B37F911AEBF129BD145021C152E5D917CAA9F88F9CC51DAD187C81C +70583F40C0C57F64CE962678FA90D5BB81B1E4E90408782CE91D6DEAAE0FE613 +5B2FB368D08A1789B2085707FA9375B8269F93F439D42A27E1E94001F909C84B +53E0272A33BB5A2E1BF3E187E63052B059CBFEDBE7AA5D6D48246599D2268696 +02E8A82CBF6CB0B585CAC1622D235DF86834CBE0E190C9535619D7482B62E619 +034DB94648887C3007EF57C7A68E49305EC8F58D8AB7E1E2BC573637721CCB78 +1BF76E9F862A601B580983FD871DB404A0522F52120F3BD5367584EF9FCA4356 +6C4FFE64A16D9CD1F00993093ED704CEDB634C9124A45E6A10D00AAE5A0AC001 +FD37F8C36A35883BBDE158500B1849CF212E0F72C8970E85648655473D6B4F55 +16985CE30AC296207A5A511967594F615F9D32AABF0A3B7797333A4A19C77741 +CF62EA9F2DF6D8BBB752D0A26A3BEB369CBF0C05E5EFE9433B4624CF253C861E +8A0953715BC98682A2BF8D1136CFA154F5981766D446967E56FF20B7ABC94DCD +78BDE591E643AB0CEED992481D9E076859724F0AD5DD3C9817EBD91E72B2F374 +F6A0A5A566FE3E28E07CF917CA555E7D776B8418A63AAC49D1BB1238D4CE636E +46924BB61FD4C5893CA1A059C45BD63294322664C4A7ECC8A8176835499BD3D3 +9341756A605B6DB6A1E5696CCC6B2A8481AD55CA78E4260E9C2DD9B9C2D5CF30 +76C29A190122A03E33FC2BB55C4DEDEECC3BDDF9CF72F9962AC38A591552CBC5 +14A7110F549C51B986210F29F13E7C927D250C7225629DB853BB3E491671A8E5 +B247C64323751F4F1BA2186C33A27F01EDE9AF9A8056AF34C3D3ABC7B158680D +DD97B7C1A55023B76C8E38984901BE10C3D54EE69CD351929DE0FE58A96D37D9 +FBD6E83D5957B23047FBB5DC2B0C5BFED753593CD1880F6AAB2258ED12392172 +28F88CCB84CCE3BAFC522E804E173A632D2ED19082911AB7D83847CE47D28F39 +68A891C0CC402C218D468B8C950232766426DB756ABDD1ECE9673E3084098F0B +E9710C8D4F0C39ECAE014C26D0A6868ADC42567CC8E5535A219B5CA0897C3055 +955D275E62ABB02032797E1A5164EE3092E276C76CFBAE6E4C1FFE5B69E0C1FD +AF52070189C95AA58751AE0829474BD8CA30A84E8639B3ECA2796336E2675D0F +2C714CB160AB18E87699B4C415A5E52AED38C69033C224909BA810E9EA99AC38 +186F5F79DD33DEE3C1A869717D4192B300DD5225DAA2DE488C1942EF1A786A08 +C6030CE7857B8F00A9D4AB5EE74557E41D989C38AB24B8494422B24A542632C9 +020A9B791AC8685FC9302FAB1AB954E08A674C1A666EB205E0986C92624944D1 +4F9C5EF98E3B190567B052680D4E2E334F0B1E33C29AFE2B46635E53016DF72D +4C47FC64B537EE981AA393BDAA508691E722F54CD2CEC741DF3560D946307339 +735CE54BC208DF14EFA0C2893F3EFC2895BB3C13561395105C2788E6E761BEE4 +11F121F7925BC54D24C5DF01BB1A9BFEF0D2F584FCE6C5B1DDA96CBCD6452F0E +8E8F511902C1283E5C4B7C6FAA9F0AEBE354A66568CEBDD700F381A12A505D94 +53B20D7AF9286EC3582E88B63E8CE762416645685952E67108087652EA89630A +1A8FF796EF05E69542880DD08249A3435B5F6605701BE14707B07194E515A8EE +A149501D09B5228DF8F5C97A7CEDA9D7D1DD1C7E41FDF5085B7918491945DD35 +9E2B44A650787830A428C04FC8C671D62E02541B90638D3AC28BB66CA4D5E510 +CE730116B309FC55977381F62418F59D4E6141E61AFE3BB8FA1F1D240B3C58FF +5FB005EC900D263A2AF8E42647847365A6BF631B75423440E13476E1E39634DE +A9B65D56F3F68A982DDDE729E25B4B4082543A53E9C3B61F6A715D2BFBE23BF4 +98067E6BC7DAA10E96378A277FF0A71D071E6D7F8B9458995F076B80E611D853 +44A260855913B9476B8E7E43478454F445C1677AF4A8B8C6B0058409E1BA87C6 +CF667DA020E6ABBE3405CB0EC3F4AB459C09B8E7525FBA6D6D10BB834D1AB0B0 +89791AD48003593F6D902E8D77A1058B83057B68D66B3A234B8965B3A60FD635 +238D489EC23FA5EEB227639471F60B6051C534D422EE1190C1A693775A0D787D +BD21CBE83583D763298963D3CE94415AF1714F6F29A02300EDC7A895FCDE7F26 +3C3DE15A458C4AB9E4615B2B8BB96F0F53BFC6D2E5A0B08AA999462C027BB2F8 +B8BC46E0760629FF73E22391C5474903173B74DB8816D257489D621CFF393851 +D97FDBB149CD9BABE3BA5A0632B2378F2C3592E191B7CCDADE93051AB5231E47 +A31C43F4CF1801119E5096674034D35ED633C0C6B610E64C4A5FCE3F1DC089A4 +7FF7976D0DA25B1E4FF2D795AD65B4528B22FFE988CB8BFDFBC4E106E033D9CD +01C237B77BECC20600DF62EC3FC24F1EFA9E46BD58FF89CE18DBFA3390AFEFA0 +7E7DA969EEEE8FB06C2CA7D4A8A76B6F2949C8AA1D836FEFC90004FE60EE9FBA +71B386E7BE583D7E94DAD0456A6E29FB02BF7C8CFE2280724D8CBE7717A196A1 +952E98F1FF1403E54EF15B170CECB73B5384553C942B1AD19C38386192908303 +F8862C8257E363C74295F2DA8D9462828BF44B538ECE359275952AF8C4B271C3 +41664F30CCBE4B86FBFA34BD0798F5B56D79A57D41D106F33DBFF6C3688F3532 +87C3B0E18E8F483BA0B731EFAD2557998A4AA930EB37DAD917B1DC6E8337589A +FBCA67E3888B9AFFE84768F3FD1AE4466C234FE0FFDAFB26768506C1C4EA66B1 +E588071C99507FC2854DF103F017F4548F324BC39FC56160669134FA285E3F4A +9C7927920591986172F8F6045293379F7A82C4B016EAD9A52CBEB4A4D237388A +38FC689CF4EA6E68DA7A897E064CBEBC58106901FD6307E7A08A24F86A8C4931 +42562B433EF42B33D49A7725943091388D19AA7FE9E9D73A998040C9EB80FBF0 +1E0AE084A8DE7A846B13C34990CDEDEEAC89BBFE4E4654738383F5C4444A300C +172463FB7AEF5F5E1D740CB94E7E4396301A664E9EC313AE80B362BE4E7276F3 +E419985D865B45FE4A2FAC68F136E31DE139B398A817D0028767DB9BB912E8CB +F17F2E613B1F4C29CBDF3D01E9C7DD0B3E614C2183E8D397ABC27FD8A30200CE +5F75C90B2BE229A977EE30A60934CB84FC9396E4B6E7258D30EA5D1102F2B135 +C162E0B53FAD3FA1B055B20079E876499B4C79472BAA9BCDB8854FBDCC5AACDA +541B48B4AA9B3C45E07915B533A9DE18E6E53076B8561C7EE5F972C497D920BB +895E5C479ACA25EF9AFA47DCBA728FE6DF454390F08F65793777D43209A40E9D +39C7FC5EF0F09F28E7B0BFC8EB7E98038C2D93312C92ABA07C0CAACDF9C3CBFF +8A639E1189922A07FD8683BDFBA46DC719C9B78D1B53D70DF71786B3F29C07D0 +CCA7BB2EA9C7EBB96C1B31D3D3E5A96BC820DA605BA0A0CB530D93CAD69A345F +FF12A2BF51BBB101CF97033170E8DB495003A4274961ABE7BD138BE64CA62A9D +896FB8CC251D83921407F9211034203EDA31BAD0C5EA6CB45F25BDE4B19F2CB4 +7F2FE03592618DC8C7FA2305D5E8758A253BC865CFDC016E53982F2A4326F238 +02B7C2192F1D6CF4DFECB58F80F3A0B6AE680AF3335400B2136807E65D3C7B53 +1C266BC362DE6DAAFF6906A3130862C42452F32FC15E7B2E9ABC83EE7EDA26B6 +C4AA07C193872AF319BF57D30AC4FF5F25780624988F4FFFD20C7A0F4FBC789B +1590B1A36A8C021A431514A70DAC9F851FC389037B7989CC888107E926B7D0F7 +F0B88966CEDF5F4047B50498B00646B5F32D06D5765C228F59823BA8FA0EB86A +D6FDBB721E4C833911997A9875B0E9BB2E4FE7A7A1B7BF3B72D3B7220815291E +53E940DA8F80D64499D7A9BEA074C340BE27662440DEBBE611262AC10070E863 +888C4C51FDCE8CEC5AE7BB1B96E5E7B9497AB373AF48E1DC314A87DD87BD557C +65169EEF650ED153837FFA95D1F6C1ABFCF7144B55A5E7C6F3FD1D44C1D9CF7C +83ACA2FB215D5450077B6B96C338FFFBAC412663BFBF7BFEA81544EC9549890F +C9402560DA9668F039E6E1C0C77F3EF7B94CC399D50133983A2122C3ECBA4296 +E59B2614DC9230F3038B87FFD840FC4AEAF5D667A368B23005A7A29DCDE64B09 +2B3BB141CCF2DDAF403E7520E2C48683220874F2DE004E5AB8E19C38568CD8EF +F167D6146C431925708D5C4F5ED0E1937116ACB0C9D71DAD38AFB5311E860164 +250C36A35ADFF20560DA6251A44EF9093FE2DF6A83ACD133C85018FEA16C773E +0464676D6201EBC569999660E31B19F206A55A2E1BA58916ADC9BF3E2A4901F5 +730DDE11FC0CC507F37FFAB91546883DACA773AC7D6166C500475F0A16913451 +562E017457240A7FED196976AB5E52765A0665E2F2CE684E3587BB3AFC6A7956 +1B73B0DDB1C07788E46D80277852231F860A24C0ED35E29E876F8CF53099652D +C07F2C42D649A0B3F5020CB957F7AC51D5BEC5BE635B088C5CA087FC6BB67DD4 +A467B84DA1F2718D3FA227AB78C0D79637840F8F97CED4C7F32FE339C1150398 +FAF9B68C35022F3C249E0890076885BC87BFE10226F683083E37F1CEA64D6480 +FB264E650E9B2D522D5B59AF605B41EA9C42FB881D5147DCEF50764F72BF8F59 +747395B9E75CFBEF903CBD782E05FD7F884B6DDC766CA672548663C76AC5890C +B026A37D6FA5C19C09D6601F974F93F75AFF6973932A244F361219EAF6E9AA5D +D7877341D4F6528E7B20D6DA3C5602D65B1AA5378981C82512263040FCE9354A +49ACA47BDFFC378691FAC77C5211FDF38527DECF8CCA0BF495DF8F85CF01E45A +0FC222543713B1FE6EE92259FF0EF12102B992A4A0EE7AEDD62951F25E5364BF +0870F18EFB3285B8AE8EBD98B071204E1E082B5B1993EEBD5F766ECA63019A90 +A4C0E5CE7E0BE885EF60FBE4C394033E1D006723C1D29185ADBA5A75686C5369 +800AB33608085BDE89F56223D3759A0797C58B89D2A0CBD8F54AFE00A6CA100A +B75DF2D752062BE41D098F161D077947CCA269DD6136AC9D7C9B53D9A0170CC1 +C19AE4F5AF20C19422E5C369834AAF46FFC5D1923F87E72F1FAE11D5C3845910 +358CBF4F9DFC1FDF05652D0B6E793EE3D7A44EEBA66E3F31622F4808EC3EB566 +A3F7353E28EFDBD33CB1D216173DF8EEA67D359B4B4BE6BBE73033225169070A +C52AD4E5884F2A4FADE805F8F9486AC5587126DDDD97AD67988411581FD6F90F +D52093704830DD2A32D10A55A16C7077F75297B54A6F5B45ED00FCF6568C69C1 +8794092075F5FEAF7001A922EB8FB402C92123DE83C0B8A475E59B72B9A8C2D6 +FFB67CF6E8F024E1E3FCFE82FFABE1A647520FAE583E1C52F5A274C0EBDEC561 +5A1171860904C3421705E34625D8ECBC5C2F8AD749D10DC1806432684EA42393 +44519507F197FF613A73A52EFD91CBBADF8CC32B6600B5E6ACB0FB846D4CBA88 +DA22206547A1A9B13F3320C5655FC667403578D9280663927A02161D8443FA04 +C70A5A896059C768C28E20C8EEFDADA3E76702561A9230D1C1E69CF94038E553 +0FC7E0561642AAF4256B046E4374ACA1B16D562FEC56BEBA816143E09240871C +FFD679092317AA21AF966ED44F17CFFB4257FE203DD3C5A4D6CC254FB8C2B717 +04A149C9F2CE9F198DBED7E561DD919C338EFA0EAD9FE1166A632EBC501BDB34 +6377843EF9565DAB972AD2725288C93040D744889A8D4E27DABF0382ABDCDBB0 +2510D2B11528FD212144E9D7ADD2B9D65FA756E85BAC941AAB5D53F918DC79A7 +FFDE5D672EFD8A0B7809195D07CBCAFE6FA24B65AD7A9E7FCED615C25BF5E108 +C8210F1E12FE4BD0843B54F1012829FFCDA2DAC69B000131EE7E9C74B7E28FD1 +C60669D8267EAAC1D56E8299E1A8F9B4B5198C3846C0169C755E3643DFB82395 +9724AFFAC477E7C09CBC250D30F3F21925EBDFCF7EE42C161AEB80A0F514760A +B701ADFD69884918E1FD6CF7ED8E3F792BC15368B489D5F035260C8EB7F6BCD5 +C4C109033511C0C4947638850C9BFC7324AFCE8DE070474994BB8CA2B6A338D2 +FF460D87A0CC4DB329A20DA6DC5E1EE2DADDE2FF5EAD1ED91DE06F8F191EF64F +11B3AEC998E8EB50D126F925725805C45FB8D7EDBFB71645825F002798544976 +9843D1F4ED7B50B612DA6564430B61D1786D953889D3B4EFB89527A0B093EA5F +8A30E37DCE4240175F219C11A631F98C1645D893702EE8B51A105A2E0B900D42 +AB92437BD48CAE277511B1898615F47B652767879CFC2083A864B80C9898272B +C01925BD9E33CF8C41BB6C59912AE10069EF2940E846992642566945D6DBD9C5 +B85F29C1A672D11C7F77BE160025541BEB5FDC1212AEE60C2D6A0B8C6F299B36 +83AD09EFA04DED58D91C2D328CDF07A6AC2E88D366D9807D563C34B4293E818F +2A31AD8968FC8BB54893419BAF7FC1A75F0BFB4EBBFD9A46043A08A2357448A0 +6C2CB8444007CC6C378E8C5588365416F7460E55B883008075DF4C372D181846 +4C26784A7FC303B0B42F530FC95A3798E8F9BDEA8F0E293FE68BB4DF05DA1E6E +3E71A7F9153169D8D60DA76943FDF883D1773FC4B8534DA48C2C323E01C2F21A +5218306512AC6AA9CD1C3BB69E01152ADE10DB2DFDD1AFB56E679528D5762FDB +675D0DEF2E1E0038BB3AA0635275ED545E0DF79C443AC5D79545CBF9BCBAA450 +FE1331B15C5219EB9A231D22FE70DBC4AA81AF78226278E5237F068F9BEC8CD7 +8BE2DC4CBE545AA4AD3C9D137E4C7E0DF51065C384073D1514F538B492DCF523 +7E4BE3BB43A91FE2BA52C5CD6539ACAD6DA763138FD31584534C1F538BA52244 +4677BB8D0CD30A1D1846CED8C6FBB8599C3E05596AEB76E06F28F0FC1841BDED +9B947CAC264C74E4B360E2D71557A70C4A3D74F47C9BC00A489795BA41621314 +C8C1F723632B9C84F6BB98A2EE3BD8FBB677F139DBD0B3A70818D90574E01857 +1008DA0D1BE1D0E5A92EE82F28 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +cleartomark +%%EndFont +%%BeginFont: CMMI5 +%!PS-AdobeFont-1.1: CMMI5 1.100 +%%CreationDate: 1996 Aug 02 08:21:10 +% Copyright (C) 1997 American Mathematical Society. All Rights Reserved. +11 dict begin +/FontInfo 7 dict dup begin +/version (1.100) readonly def +/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def +/FullName (CMMI5) readonly def +/FamilyName (Computer Modern) readonly def +/Weight (Medium) readonly def +/ItalicAngle -14.04 def +/isFixedPitch false def +end readonly def +/FontName /CMMI5 def +/PaintType 0 def +/FontType 1 def +/FontMatrix [0.001 0 0 0.001 0 0] readonly def +/Encoding 256 array +0 1 255 {1 index exch /.notdef put} for +dup 66 /B put +dup 105 /i put +dup 106 /j put +dup 107 /k put +dup 108 /l put +dup 110 /n put +dup 116 /t put +readonly def +/FontBBox{37 -250 1349 750}readonly def +currentdict end +currentfile eexec +D9D66F633B846A97B686A97E45A3D0AA06DA87FC7163A5A2A756A598FAB07633 +89DE8BB201D5DB4627484A80A431B6AFDBBBF23D4157D4AFE17E6B1C853DD417 +25F84CD55402AB88AB7EEFDEDBF2C2C731BD25567C53B474CCF739188A930039 +098A197F9C4BE7594D79442B2C8A67447DE44698321145D7689B91EF235EA80E +B600AA8E238064F154284096C4C2554EFE8DDF13AFF8D3CE30E0999375C0FEE6 +F992DEA5FC3897E2CC8B7A90238E61E41622DE80F438DD994C73275CC52249D9 +F6686F87F394FB7BB668138B210BEC9E46415A1B58C990B81E7D7DD301143517 +4C2A259D2A0A1E200F8101469C10D7D537B0D4D39296A9AB3F132DA9A3B459B0 +F850E2B3A03BDCB35AEF82285D19C38F474FB414F8EC971B994D1C7DD753B271 +2B71549DF497C665DF0F266988209D9EB616E4D9BA229FF984E7A886DB01FD21 +48ED2E4859FD6416C2CE52537464EA884C8C9C2D1083E2B83BE4B766474C23B6 +6E8EC5003200AB10514BB44D14CA700416AB6B2683E80862E7D5B49A05526A32 +554BB23AB8B0824BBA198E3825CE82380CC0FECF46651E3E5D77F09465E73164 +20342822F29572BC7F73F2C3BF95ED3BB6FDEADC20C6AC866C4F2C679594D7E8 +8D944704A3C5D771DC39503BECAB89F34D8CDB8FDB91AFE21F3F0260D05E90C5 +73E2C13DFA022C4522E5918EE25038A0498FBB530DA33B0AE238B1C6ED03FC04 +2BFED8236E07820C5BAB411EAE1B31D93A2FA7C374B1725FEC359ABCB88E2C89 +214529A263D795AACB0B95A3AB2F4E08EF350C282CE521716DBB06E5B8291B3F +5D4ACA230FA192F64BC902A4C8842C0F916F92FBD002ADD408BF0401D0284FBB +F05D4C6DB631420747CC902C5E1617E6573612FB26C8378DF41FFB5048D3CF06 +4893DBA48EF4B043D760F60C75712169D16C83EE020C45369E443E853E1809DD +F395B812067D6FDBD26111B34F42C21036AF952D0D767FD17F6959D9FDD46005 +D64FFF54772B50BB9B173AE79702981F58F9F235C591F476A31852174DF0619C +A470359153DC32610E782B204E7945515464DACE9099B81EEECC7EBD4B5126AF +C3FD9DDFB329AF1C95C41FA4A5F6958869509A23BD7210386329771FA46FF926 +0E54AC35106253EE140449425A8670E1F92B178A02A58EB57540F4BD8110E548 +BB584EA6D625C5F5FE0124A98E49915F1A1B95D2125874360EED1C4379FEF3C6 +90E5780C20309F11F2F23FAD635C44BA030B39EFF083A3ECCDD2641DC6515508 +CAC76EE7A83AE31B88BECAAC4DF67DB37FB506FB665E5586B8315128A8B532E9 +631B84F6DDAAE8DD2ABF50F23D1F9DDA1BC3E65F0466E1A5AA0743F1B21899AE +D3D2895AF7BCCA9E9F6A258BDD1152CBFDC36F902C267516CF782DACD4438AF8 +E8CA7F71FE3FC27D0CCACACADA2FDA80392A06FAD08DDEDDB7A237184FA4915E +5191A3D04C42AC147539E7F37AA221AD62CBABD71AA8DC30254E3B6ED43CCFAF +50D174C8DB7C36B9643B6BCA099D4122EA54AD284A0C8613C49C6594E66480C1 +4B91C48AF2D40BAF0EFD85A70A64CB2DDAB68EA8F88D8C7285453860CD23461A +C5C3F5961D7F7162E95ABDD4D546235A1AF6A6ED5BBE1243A5ED98A5CA5BEC91 +57EAB9AFDCD5202F89DE05F7EB6483471D75107F5FEF0E45FDA1559AD189DB74 +571629E9C030649B1EEED5B2E86CDB4417D7235A884DD3EECF10186D957F5C3A +81D30D943279D57D16903327E97068135D38EFABECBE94F809D445F0E0545816 +A18BC115F7A64EEEC3794AFF9A157656335809FD29EAEB542849850339C6F35E +D5FE9CD245D1442374A6935B243AFCFC2AD9DF644B3E81A1CB4B722D28DD9F84 +8923E66747372FCEFD9434EE70A56AA7319D265F11F3DDDFE26C09C6DBC173BA +0081877F1FF971D88A82957EEA0A1C148C5D30C2D198CCD3EADE24B13A88E80F +175989686F229A0AB178C56A3E4F366C8F477BFACFA31DACF45D7D103619533F +635BFA06086F524FA336975CD2A3CC2A4EE2785C33076818AA5E43A32482FF36 +56E379E29F9CDF2474CA767DF1DE565A9AEC334BD9A36CFB8948FF562743E754 +EE4882484D95C172E3616FD5182EEA9429950E42EA4F68869683A241E519B4E4 +807E81E3CAA3C95B93B7803ED305D6D1A9A28B4B301B48B80FF5359CE17185D3 +6E05B53184E11A35043EF3A4796678E7D59BE814A00A18F0049823596D633B3D +66203FA6FD99E1DEC46B9D70BE3937B8BFBEC01685DE6E02CDCD4DAAA1A05094 +18A4DC9F485EF81D115D84B9EB52DEC444846E74AD6728EA2D9B2F9279B2E895 +4895C766FA93F5EF158B626924A09E3E3C2FBFB18BD84B9749BBEABCA998DABF +D58C29932B3527951FC532C50BEF4138D61115E7BF68EB0EFFE8283528DA50FF +BBEA958CDD234CEE8DEB93D19C1B7558FA666793BC740E63C854EE0BF4006EAC +E1272AB51A29F48298231CCD993F3A9E7C2381569C05158CE8C6C2215B06DD71 +2BC92BD131C295D07247A8F3DE1601E643796CD4B02ABF1EB4E564DE04A5879E +F08A1A5F4365DB385B8CEA3CF370871004CFACC8AF566A132322993D94F25792 +9AFC825E36D844DB342CFD005362F93B1BD9B31168F5CCE14C444867A359D639 +E43D4DA9D1498A206AE3415BCE1EBC0038948AF13553FCC31F414C893C964D46 +7D0D7EFD74FE03A81E158D280B088CFCA5B4451372B94929BFBA8E3504484801 +E7CBAEB4AC66063F65D1D5EDBE0692CFFF1F8232B3615E053A495D713EC85880 +065A716E462EC14E376065C1120B6C7A48A8C7E3FD11C341487ECEBB85CAAF05 +4754C2D09E5EA75AE9CBB5F414BE32D51BB091BF9D40AC361987FF11BE8791CD +3E95A3A1A6D1351BF4323D4407C9F87E459ED2E28CC71BE19F2F2E3F0F4176E5 +85109BB1EC7FD61825676CDBBAC21DA2EF414DCC72BBA0116B921847C7B13A1F +1DFCFB7F8DCBDE9AE55CE72D9A7A0BE621941AAEE8C2466B7E8297D54344A182 +DFF7DB01109CC60ECF88E5989357961B00CCDFB24C250238C75B2E2EFC532966 +03F06108A3CB2D246C778ED471ECDA9AA2625EA5E9D5F70DC503EB69BDE1A4D9 +1E6C06DC3F7630025E04CF60BF5A223E69DDF30A3307AC793D8EDA179DDA784D +F7DE6D478495B7190EC3D3F4DB9DEB3FF5EAF358428AB6F8CBAEF89FE57F5436 +E9FED8E2D85D77D75361C3948D0C41FCAE0FAEAF98A2B81777DEA0059E8885BB +51D455531194F7A99D76C2FFF45FF61CB56E30E5D09A772D226F7A469D16D440 +752172F70A007707774BF8F93A250FC2D037BA2B93BA58EE3AFD016EBCBC1A76 +31C610B5A3F87E5D8BA87BEF7A90093632772B9D3AD65E10277A969D868B0504 +3AC8EBE553C2AEDCC76EC434A4750CFCB5EA797ABD6EA35FBBE957BBD438C367 +E3C887E010D7C7DD611F866A91A745BFA24559A69FC32FEB42D3584508B577DE +45F4DC5DAE055910E7720827043A7B9E9356A5370EEF0F485CC1B1558ACE7F15 +4ADD5CB3F0 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +cleartomark +%%EndFont +%%BeginFont: CMSY7 +%!PS-AdobeFont-1.1: CMSY7 1.0 +%%CreationDate: 1991 Aug 15 07:21:52 +% Copyright (C) 1997 American Mathematical Society. All Rights Reserved. +11 dict begin +/FontInfo 7 dict dup begin +/version (1.0) readonly def +/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def +/FullName (CMSY7) readonly def +/FamilyName (Computer Modern) readonly def +/Weight (Medium) readonly def +/ItalicAngle -14.035 def +/isFixedPitch false def +end readonly def +/FontName /CMSY7 def +/PaintType 0 def +/FontType 1 def +/FontMatrix [0.001 0 0 0.001 0 0] readonly def +/Encoding 256 array +0 1 255 {1 index exch /.notdef put} for +dup 0 /minus put +dup 3 /asteriskmath put +dup 20 /lessequal put +dup 33 /arrowright put +dup 48 /prime put +dup 49 /infinity put +dup 50 /element put +dup 54 /negationslash put +readonly def +/FontBBox{-15 -951 1252 782}readonly def +currentdict end +currentfile eexec +D9D66F633B846A97B686A97E45A3D0AA052F09F9C8ADE9D907C058B87E9B6964 +7D53359E51216774A4EAA1E2B58EC3176BD1184A633B951372B4198D4E8C5EF4 +A213ACB58AA0A658908035BF2ED8531779838A960DFE2B27EA49C37156989C85 +E21B3ABF72E39A89232CD9F4237FC80C9E64E8425AA3BEF7DED60B122A52922A +221A37D9A807DD01161779DDE7D251491EBF65A98C9FE2B1CF8D725A70281949 +8F4AFFE638BBA6B12386C7F32BA350D62EA218D5B24EE612C2C20F43CD3BFD0D +F02B185B692D7B27BEC7290EEFDCF92F95DDEB507068DE0B0B0351E3ECB8E443 +E611BE0A41A1F8C89C3BC16B352C3443AB6F665EAC5E0CC4229DECFC58E15765 +424C919C273E7FA240BE7B2E951AB789D127625BBCB7033E005050EB2E12B1C8 +E5F3AD1F44A71957AD2CC53D917BFD09235601155886EE36D0C3DD6E7AA2EF9C +C402C77FF1549E609A711FC3C211E64E8F263D60A57E9F2B47E3480B978AAF63 +868AEA25DA3D5413467B76D2F02F8097D2841598387C588CB084A0351E1B0134 +ACDAF9FF07D2ADCD8915FB8792BD7F250469A256B05DED7089E2D994E72C1877 +5619AC07A1EF0EC47C91002DFEF22111173232C13CBDC15B370BEF2F39E24CAA +8BDE80F48411B56D37603BBA5A934F8F24EE7B7D2310D38F128E141775ED4CD8 +D4E13F205D5F5E173E6755D013884306F3AE2D2A85A3A1F2161FAD28954AB8E9 +2B830051DA7BEBAE46C04D2FEDF469B94B3AAD91F66D22A983FCFDEDF23EE52C +FDD3450DA0A26EEA38087A0B4EBCD3BD49D9E3001E7054184D063F80A3E86115 +A80FDAB9B533FBBA55E33B9DDF7846045765A0B0F448620D4E14A86338BE1721 +A6A730BE29A3619F62E42CCFD42944240C866F8A085D8C6716E1C0D5DC45BD1A +5D9DC1AB368C9B65E1C6133EC3393388EB9EC8A5815F6C41A4383FFE387C7CC0 +A2DFE557E8D04AFD894B739E11273D5AC4DB522C308C1F73056EA1407D751447 +B900ED64FEDCF3E58944F17DCE2D10B3CD6038BC2D539925E9333CABF11093F1 +81AFCAC45B0EFD3983A3DB4FAA2FC3589A8C165865F428E0C8047E97D500717F +2A1EF7025058B8B1602406B1DB450D8AB78AC7DBA98D808F10CB3121DADDB69D +506A9B93F58F8D6713940203F7E85CD4FF76871ECE63ADE5EEE921C780289FB7 +0CAE047A107086881CF9850EC905C6FB2621EEC100F307221D630EFE84D8A853 +56DD483778DEF21C1FEAB944167FDCE9538E7B1E7CEF76FD3CE6C9EF0F7855E2 +AFC37EC5BA807C09F30D04889CCE201BEDCE98528D22A4CA16E352506AD9D75D +B862FBCAAAB49642A5E2BA4380C9297E365AFB455EF374D30A5590C57B51158C +6F3071C88709D217492A55D2539E779E49118513C040BAB6C8E1F37661310092 +872B490036997C82B6CC4A351F302F3B79BC2EE171D11FAF3A652A2964447CC4 +DF75F246C26B1D6FB57AD8231CA9469A13C7B3B88CD390AC3870C8729FF8656F +6A90EA7C56B7EC46C12C8143B033816551B11CC6E4FE1610AD25B9EFABB6AB33 +DA7F511392D04AB04916460E56571DD126DF2A3614DCA88649901C9F49409803 +B045ED6F6418690731513C3FBCCF489E425419D0FB7688D196F55E0B8A04EBA7 +E23C81DBFA11B5BF5BD50E9EA667617F48AC06BB489822757701D21D7D2A1543 +33DA57EA644495AE33A2D66ADFBECD09C34C64F24B815CB95794572428BA1F88 +F1D43BCF0ECBE5608B5A7F9AF0079B16B61E62B2F05555592F74DDAC84D5D8EC +09B8373720E1E417FBCE77AABC5C0256373412B783CA4A8A4CF2FB1B9989A634 +7C9BBC0D619BC23A8D7E8F2AD2BF3646877D2E2F9A257D73C4840D66306B3F4F +D57E0C27A16A10578AED727585F95A0EDE1E85FA87B0A9A2F925133BA6E25192 +0CB7F5033662D2077F18555C6727148EECDF9EC178800492EB5CCB1DAE9A19B5 +C687C1F036E5F2EB4E1D1C351E1E5DBAEB2131952CA2041D37BC52FA89C4E607 +C6649306D6D9E16384AB81B8FD70E60947653FEBC748A393ABB5250DDC1A0691 +F4D8D5E31BB46BB83596E833078EA834FAFF38642B9C34D029F33AEC3A803F27 +9EF8F6A110392CE635C798055E3FF9774353C910B7E05D7EB2A5FC72F34CA41D +FDABDBF0F8D39213E4CDF0E1A27895776C63E846578D5833F64A98A6E393CC9B +E45DF220E08C4DDF8AAE0C29059D8FBED3F9BD9A56C7706E68B964BB15678E2F +F54143F27BA422E8F4F18ACA984AF4AB59 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +cleartomark +%%EndFont +%%BeginFont: CMR7 +%!PS-AdobeFont-1.1: CMR7 1.0 +%%CreationDate: 1991 Aug 20 16:39:21 +% Copyright (C) 1997 American Mathematical Society. All Rights Reserved. +11 dict begin +/FontInfo 7 dict dup begin +/version (1.0) readonly def +/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def +/FullName (CMR7) readonly def +/FamilyName (Computer Modern) readonly def +/Weight (Medium) readonly def +/ItalicAngle 0 def +/isFixedPitch false def +end readonly def +/FontName /CMR7 def +/PaintType 0 def +/FontType 1 def +/FontMatrix [0.001 0 0 0.001 0 0] readonly def +/Encoding 256 array +0 1 255 {1 index exch /.notdef put} for +dup 40 /parenleft put +dup 41 /parenright put +dup 43 /plus put +dup 48 /zero put +dup 49 /one put +dup 50 /two put +dup 51 /three put +dup 52 /four put +dup 61 /equal put +readonly def +/FontBBox{-27 -250 1122 750}readonly def +currentdict end +currentfile eexec +D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891 +016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171 +9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F +D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758 +469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8 +2BDBF16FBC7512FAA308A093FE5CF5B8CABB9FFC6CC3F1E9AE32F234EB60FE7D +E34995B1ACFF52428EA20C8ED4FD73E3935CEBD40E0EAD70C0887A451E1B1AC8 +47AEDE4191CCDB8B61345FD070FD30C4F375D8418DDD454729A251B3F61DAE7C +8882384282FDD6102AE8EEFEDE6447576AFA181F27A48216A9CAD730561469E4 +78B286F22328F2AE84EF183DE4119C402771A249AAC1FA5435690A28D1B47486 +1060C8000D3FE1BF45133CF847A24B4F8464A63CEA01EC84AA22FD005E74847E +01426B6890951A7DD1F50A5F3285E1F958F11FC7F00EE26FEE7C63998EA1328B +C9841C57C80946D2C2FC81346249A664ECFB08A2CE075036CEA7359FCA1E90C0 +F686C3BB27EEFA45D548F7BD074CE60E626A4F83C69FE93A5324133A78362F30 +8E8DCC80DD0C49E137CDC9AC08BAE39282E26A7A4D8C159B95F227BDA2A281AF +A9DAEBF31F504380B20812A211CF9FEB112EC29A3FB3BD3E81809FC6293487A7 +455EB3B879D2B4BD46942BB1243896264722CB59146C3F65BD59B96A74B12BB2 +9A1354AF174932210C6E19FE584B1B14C00E746089CBB17E68845D7B3EA05105 +EEE461E3697FCF835CBE6D46C75523478E766832751CF6D96EC338BDAD57D53B +52F5340FAC9FE0456AD13101824234B262AC0CABA43B62EBDA39795BAE6CFE97 +563A50AAE1F195888739F2676086A9811E5C9A4A7E0BF34F3E25568930ADF80F +0BDDAC3B634AD4BA6A59720EA4749236CF0F79ABA4716C340F98517F6F06D9AB +7ED8F46FC1868B5F3D3678DF71AA772CF1F7DD222C6BF19D8EF0CFB7A76FC6D1 +0AD323C176134907AB375F20CFCD667AB094E2C7CB2179C4283329C9E435E7A4 +1E042AD0BAA059B3F862236180B34D3FCED833472577BACD472A4EA1CA80B6FD +7B4D795B4D2972F034BCCD77C8250AEAB2F838CC94C02F44AF24FF8985D8E5C3 +1C4D9038E24E06639E7B418ECBD7C1CBE3A728B738BDF28E70B34B6CC2143A0A +8EA5B2B33E03466833125AEFA21A833A326E54BA79822671B7FAB4DB3151BCD3 +5261150E52DCEE3C246CFCCB96A60B10DEE13ABE610E8B4B96A2671A33FDE074 +0BB1861F736BC34EDD3433C1091FBC16178A83BE62E6ECFEA1EA4B36A5B82B76 +5FB811D821B0A08C103FFA9CDBE09C58FCFF079E9C1681476AF4ABFFBFA9210C +2EC2F945B707B7C1658D178DA98C7707EA3DE9A1078CAEB7715159374B8A1128 +0620C487536E94D66A30E6245ED6DB6C5A84F7952A687D7508F97D30188B3432 +863470387A95130623BED34B2D59F41E6ACF425C94F7470FC8474E0DB9AD7314 +B14D02DE228904FC9A52F1612686DD679117D58E6639C3B40811268103087DB2 +92C2CF28E40D046F577E702E170E2988B15DD8D7C3EB2381ABDF95D7961CC893 +0FCF2848C99E523A5F987C85C75CF91F1CF4C552E4D2CD4B7B4B791882C836CA +9D2FB3C287B2D4A787BD0C7EF3D969428B4C3C067EB3790A0C2CF595DAC4C72F +41D784FABDA7222433F68B4F67FA8EFCD85F2D4EDB8428BE84D7B59424ECE816 +04132C33DF3E7BB02158E40F5DD46FCA7B63CA552C22A875B75E8AE742B41666 +A6D699419F870C22B198F64E10D143B513CCEE72AF316EA4732F9669952774B0 +09C61679DC5B4762250491A19B9695C5B5AF1919C49610A012E71DF031E4C284 +B0182AFEE29029F385FFB67AA2D95228A311FFABB491E58518C4F1729825073C +D204253248D2CD6686A4114A7FCC5D9A7496D8BB33C7ADD89C8877E761C43480 +5CDC4BBB62BA0360F8453B4A4B4351065717B913B6981727EDF090E100B64F67 +1BD18215DDABED31BAEEDE0432E958E56C783C89605120C70B51AE417105251B +363163CDD890D9171BADC12A6856B4FE10050CD5E91043BD7723A3B8B82B053C +6BE9D3797477D7A83FA010091C220EC9EDAE1DA21EC1A4F857ABCE61E3C6993E +26C9ABF398E57B8432264335EAB57490C56CA0A1B2393FFE835D389500F8043F +9A384021798E7982C3110E23B2A08F41BC23964CD3992E8B50AA8B62B9900FFC +58F70D1A10D7CA081C0B3AE770FB679BC2D93B808168B6FE4C6F392B14054D2D +6906D1BEA5CB0964794B6ECCFE2876A7334A0AE979CF41CD5482BADBFDA7A2B0 +50C279CD6313B5C1806AB9BE343C51FB1DCF0E4576BFE6C493CB34C66A375FA1 +E375C01DE69AD695B5D399243546430814E703944559941F68D1D16964236930 +E5F22431328529287E00E4B4DE6887E22391F8EB9988EF7E3009DF95081E9DB6 +1520C8F7733A34E669EC2B2155B255DBC003A161BAE9C5C1DEA06F922453EF51 +23582312F722BCCCB051BABD67F035A6B3E5F7824BC6B3E7BEBE33DB4388EB78 +FBBEE6D782DF21F0925C09D901CDAB59E679879A01FEB7457BF32AD64A034B3E +5D759BC9FC9EB8D30B898D80472887A29578C96A35D37969ADEDBF51EE70667C +3EEC44A9E5CCE99859E51374A25878C0C3DDA644C0E99EEA7BFC2DC11F76B675 +813B0EED5892C8F88A10754E7EB0DCB4F5B5A11E88929A5CF0F65A1C047FBE10 +8AA1FFB7CF0B900165EACC9158A9C898290B98C101BBF0A1B22807B2B0182B11 +83F4A5CB7EAC1F71731A625634AC3FA56D5F1E5DB2BB0F86577718F8566CAAF5 +9CBE80BEF66CA6CB19D5C7ED4C02A4B3E05C69868462E88170D11772CBA44E12 +59025AE4E68909637E4879ABE51DBEAAFF59F7041C059A42B9CCBB04E3A92534 +77A31A0D826A527C3B6F890FE4C238C91C7C46A837F1E08A4E1D2BEB3671F861 +BC46296D453AFF8C68016B7472D30E5BD81D42E7DFC54D33D00362788BB8A435 +75 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +cleartomark +%%EndFont +%%BeginFont: MSBM10 +%!PS-AdobeFont-1.1: MSBM10 2.1 +%%CreationDate: 1993 Sep 17 11:10:37 +% Math Symbol fonts were designed by the American Mathematical Society. +% Copyright (C) 1997 American Mathematical Society. All Rights Reserved. +11 dict begin +/FontInfo 7 dict dup begin +/version (2.1) readonly def +/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def +/FullName (MSBM10) readonly def +/FamilyName (Euler) readonly def +/Weight (Medium) readonly def +/ItalicAngle 0 def +/isFixedPitch false def +end readonly def +/FontName /MSBM10 def +/PaintType 0 def +/FontType 1 def +/FontMatrix [0.001 0 0 0.001 0 0] readonly def +/Encoding 256 array +0 1 255 {1 index exch /.notdef put} for +dup 78 /N put +dup 82 /R put +readonly def +/FontBBox{-55 -420 2343 920}readonly def +currentdict end +currentfile eexec +D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891 +016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171 +9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F +D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758 +469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8 +2BDBF16FBC7512FAA308A093FE5CF5B8CABB9FFC6A66A4000A13D5F68BFF326D +1D432B0D064B56C598F4338C319309181D78E1629A31ECA5DD8536379B03C383 +D10F04E2C2822D3E73F25B81C424627D3D9A158EAB554233A25D3C6849ABA86F +1F25C1667CB57D2E79B7803083CB7CC0616467F68450D9A3FEAB534EB9721003 +DBFEEFD050F3AC3492F5C74162A9A531ECEC0F47610B4940E946D21CAA771D30 +A6C27ECBA11708CC46C62396BF9D1990D579D0C394899D24FE7A4382EA18E7E1 +160E7283AF5BE17254790628E79FCC206F28B5566075B3A5697D5209062544FF +D85FD89D6F43D6588B242AB2666B5D2861CD38A8CE676503EDFAE84D12A71E77 +8405E468FE391F4F3F50D2C57ED55512036B0DB8E76A7EF413ED08673E56DE2C +16A3B65CD478433C0D2F9FEC4E662D54DAA43CFA6957D2A9AF8979BE06F70B68 +ED4C8C493D6DAC4971A3F1D010A7726D084EC1074FECD7D12D72AE16C26194AF +21AF5774D9B860EEE8608D34F150092F09C19959BAA670022B9A9F263CD391E3 +74DD1D1B4CD4D75273CAA4E37F68C631723E08FA35AD34C0AFB4621AE6689861 +854D16CE1C375FD159A337E221A6FF1CFFB5693A0623E7EBB58C2969F590D081 +AD92DD9E5322E26D6A15023664AC73A355998BCC48ADD0E7A4BC79790519606F +A1FEF6075033BCD1A542ED2F7EE4943A13D927138CB26A52F33F52249DD24930 +BBA9773D5DEB5B8115804C2E65EDBCCB17469C47F2591BB232690DAC5F1780A5 +6FE9861DC450426725D35E3E8006C022026C0A383B0A6E8AA30A52055E7E139B +DF6ABC491AF90C7A3884582B7407C0DDF37CC49F3CBA0126D07A3639A615400A +01FC5412668335BC7FB0C5C62F533276BC13716EA27CCD3924408650605BEEDE +2A68B5B6105D8766B9DD6A877DE6AEA9C3179677B7C0726022D0F929E7E63574 +4692A959C7B4919DEC77FA5012A3CB81439F809D15DA7739FAB5D8E03BD8F283 +FB6832C9864D18C4CD499B20534D33C822226FC199D26116A73ABA2B5CAB0B63 +42F1B4A3003688088F1F6DA3C61363B4C0C44269FD21F981DA0BDC5D180FFD2C +8BAB61F4330FE5806A35F1235364554FAA1CA61EC79EB01793D586FB1B62F4E9 +3FA5AF30CF24A87271CFB59FFED6FB662A77D0A42516634A0604BCB334503FFD +60641E6BC62B28A8B3A44A5D50389994BF95AB3E7184E9954625B28EDBE99914 +4558E2F68FDE7E65D0B777A64FB3A7A2E4A27F656FA2F9075269F70B020FAD56 +BAFB1BC4FD259C2C9F2299D4421DCFD38C947ED4EAF5FD02B9A31AA37DD2E82A +315797E6456601502E47F85EDE87851E6AAB854DF59522CFA9BC02F4DBB3F024 +C6EAC54AC427B5AA039A9697F52ABAA45083CC1159604CBBF1F7BE585146391C +D45F718B12F8CB4C65D6FE61F5D07FE09C3E5F7FECBF1A649853517E4D75CE59 +B1A78262991D56EBFAAB32A539C9294B74AFBC46835874F8FE7D7A5D2F54294B +8586601992F7A8FCCA63C680CD8EE5CCF50EB13DBBDD94499526038035791451 +90636C5FB2B5BFDF13A9A6AD4A34DD28ADDFD5C9FBF3E714B08C53C967F7CA09 +3385CCD9517F0EBDC6B04DF729525EF98F7D7F0AC48DFE22CDD47381CB5E8874 +5770D238E7055D33BD55B18BDC6B03EEA14C983E1E4E7FAD2EACAD9CA038A873 +B4D30413CB0B0880E00D582F464B676762A73EACD395A12AC1C5F23E03B691FB +E3BDD8090D8B966910C9FFD5064408E361FFC59ACCFEC21BCE3E0D63B17CAE20 +419BDD735F5215A8B860B9A2693998CB2E4DD7BACBBB845EE1BFD40C594EC2E0 +9D86326CB2E7F13DAC4878964E7E8A4774C55B954F30AAA3B88BDFA0ABCAA75D +B224D2D212B8CD2568EB8E4235587F088D81171E16AB9743BED043F4B3BE8AC0 +DD207FF7AB4F4087E85A151CEE8029167DECF2655CC12601C5A7AB3923ECC8C6 +B68747EEB74DA7E2144289C8236983985623CEEC393F3FE3B866C4C0A6508EB9 +FABD07269EC2764C03D8B14E7A2ADCEFFCE4C842518324F5EFE79EB5544A2A41 +8C7EF948062E6BB97EE89492B050EEBE8262D03267CAD70A8FED6CBF2E731FE0 +B01F59541166760F42 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +cleartomark +%%EndFont +%%BeginFont: CMR10 +%!PS-AdobeFont-1.1: CMR10 1.00B +%%CreationDate: 1992 Feb 19 19:54:52 +% Copyright (C) 1997 American Mathematical Society. All Rights Reserved. +11 dict begin +/FontInfo 7 dict dup begin +/version (1.00B) readonly def +/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def +/FullName (CMR10) readonly def +/FamilyName (Computer Modern) readonly def +/Weight (Medium) readonly def +/ItalicAngle 0 def +/isFixedPitch false def +end readonly def +/FontName /CMR10 def +/PaintType 0 def +/FontType 1 def +/FontMatrix [0.001 0 0 0.001 0 0] readonly def +/Encoding 256 array +0 1 255 {1 index exch /.notdef put} for +dup 40 /parenleft put +dup 41 /parenright put +dup 43 /plus put +dup 48 /zero put +dup 49 /one put +dup 50 /two put +dup 51 /three put +dup 52 /four put +dup 53 /five put +dup 54 /six put +dup 55 /seven put +dup 56 /eight put +dup 57 /nine put +dup 59 /semicolon put +dup 61 /equal put +dup 91 /bracketleft put +dup 93 /bracketright put +dup 97 /a put +dup 105 /i put +dup 108 /l put +dup 109 /m put +dup 110 /n put +dup 120 /x put +readonly def +/FontBBox{-251 -250 1009 969}readonly def +currentdict end +currentfile eexec +D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891 +016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171 +9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F +D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758 +469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8 +2BDBF16FBC7512FAA308A093FE5CF7158F1163BC1F3352E22A1452E73FECA8A4 +87100FB1FFC4C8AF409B2067537220E605DA0852CA49839E1386AF9D7A1A455F +D1F017CE45884D76EF2CB9BC5821FD25365DDEA6E45F332B5F68A44AD8A530F0 +92A36FAC8D27F9087AFEEA2096F839A2BC4B937F24E080EF7C0F9374A18D565C +295A05210DB96A23175AC59A9BD0147A310EF49C551A417E0A22703F94FF7B75 +409A5D417DA6730A69E310FA6A4229FC7E4F620B0FC4C63C50E99E179EB51E4C +4BC45217722F1E8E40F1E1428E792EAFE05C5A50D38C52114DFCD24D54027CBF +2512DD116F0463DE4052A7AD53B641A27E81E481947884CE35661B49153FA19E +0A2A860C7B61558671303DE6AE06A80E4E450E17067676E6BBB42A9A24ACBC3E +B0CA7B7A3BFEA84FED39CCFB6D545BB2BCC49E5E16976407AB9D94556CD4F008 +24EF579B6800B6DC3AAF840B3FC6822872368E3B4274DD06CA36AF8F6346C11B +43C772CC242F3B212C4BD7018D71A1A74C9A94ED0093A5FB6557F4E0751047AF +D72098ECA301B8AE68110F983796E581F106144951DF5B750432A230FDA3B575 +5A38B5E7972AABC12306A01A99FCF8189D71B8DBF49550BAEA9CF1B97CBFC7CC +96498ECC938B1A1710B670657DE923A659DB8757147B140A48067328E7E3F9C3 +7D1888B284904301450CE0BC15EEEA00E48CCD6388F3FC3BE25C8568CF4BC850 +439D42F682507AEBFF9F37311AA179E371A7C248D03B5BF40C3B7E0FDD80D521 +09B4D0044C5EFBC5C4A8DF9B5F734ECA6099F8A76881278EC54549F51532AC62 +0D85E2178D1B416514B03BC33767A58057CF521F2620B53DE2A240D58312B92A +7C1F9BD0A11514B5CAB87219A1F5C4982A83380B0896597EE5E42BDC6F85E6AF +68ED6994484CDC022ABE678A7F2E298A7FAD967A2EA7DC426F07342ECC66E68B +983E966FCFB745795C4D2C87CC15BAA041EF80C5BDC12EC1F5786BB41A5A2107 +3EE0BC436B346E014DB4099EDC67BC432E470A4B779FD556341061CA3F2BE8EF +A332637AEC878C2BB189CA3267B2BE5B8178E6B7889A33771F86276E6F0B8E89 +BD209DB0CCDDC342CC3D438356296934D03FE107CACD00545E375162DF567C70 +F2DCE2E5A2C5F61EDC0DAE9A91044DD214031FE8339581A9798BC43F1349593B +D408714EFAD02AD4B6763945ED645A0FD4A71D4226EED9EA1633950350CF4B2D +0C0ACDF3AA03DB3E75DA4B8ACE7EB90A31F0FCDBC0AA03FE0E68E0D0E81EEAEB +EA79EDE22B71BA5BA148841DE5394BBBFE694D7796A13E19A4A782F9ED05B50E +FFE29BCD196CC096B282BB7AE080A50DF19D5AEEC98C5D392138E7847EEF4548 +2B20A84D10CF3920BD583A05B1FD1AFA82D69696C4D1B13FF62DB165293D4A2D +92CC4527109F177093E43F3507E188F59B4A5B1D4D8710979472394392C53B46 +1F7A7A2CF4A0F4BAA4D5D965566E53A74EE43286559F3757D2AA52B6B9BC320A +56578B512393D038E0E8873DE31C3642B13807520C8B4F0FC5EC6ED3A7A0E86C +8EB19DA903FE24988EBA6FC48DF96A5239CDFD85C441C0D7A174C40F2366A899 +77662CCDD85C7C702542DCC4F62DD4CE83D8B0A6B2D3D7E84A09F7B7B2AC0F91 +5A89AB253EFA653E29CDBE7BEB5FD80244BC4D6F73FDE34846245FB19B5036E5 +A40FFAC0C4FB4F8BD6C351707A524187ED4C6A8323B06159EF2110B228B69FB6 +94766199A37C9125F07C07B4CBE2BD76FE9D80DF7F55C7713138573A95C3FCD1 +B346DD76961F4397CAB8E1FEBC2FF6ECCABC763FF7C995738B082B37F0870572 +3A5D49D049F420266F034B72EE3B707AFF6A4D0F63DCCFD3D9B0BD93DC13B78C +EE8C67EB4676EB693EFE23F1DC6CECF28ED4A1EA517C986C17D8154607A330CD +FC0D83A62A5197EB7489706826CFB01F22A944EF21FAA6C12D3BAC92E531CE07 +A2D62B606AEDA91D12E735B99AD63514C776517D0D3A978D0E785FF8B39B9AEB +B0B61DADB95FBF85DE427B414A399042E3C2861A8331B8E7E7BFE5FA1FFB966A +D8B1F0104864F4826EAFFE30B73AD8DA53156B55BB19BAD0846CFF85E381D78C +A56B0B1FC0B5C7144384BB3F835DEDEB15B90B3BC0AD1168CE5CEF4637B662B1 +F3935E6330C048B5BD2C7B9427773F5710D80D06B41F46D2334BE4463A8C6DB7 +6BB7067A5E3D974EB7210DDCE1582827DCD3005F5FE2634AF79323BC08F75F51 +C8BB41D31A002780A221C9299E4A10F95F7EB12B018BB216691D1038BC9B51BA +DB30A21E23E2365531AB5909911BC2D4A3925CB8205DAAC4A0C54AB311F611B8 +5E5E087EFA21F48267D6380AC1E942D73E95E67632F1BC5C4189E3B959BF854E +3293FABAEB3F9233F9BCBE9BCEBBE063C0A953134A42372B14891CEF77FA5F89 +6AA64CBC0441F98BB140604B6EED20F46B1B2392AD3BF0699D5628AF4FC88F92 +AAFD2B62E930F39F92BE7FECF851D13195F8B26F881A99E8DEDC4A8E95D87801 +850C23E5BDD17002A81CF4C256B6550FC9080EEE86568000F12AC4B7EC5B7107 +8458696C6298971108059DC9ED523108AFD437F76573F4A86F28A242455C4C8B +679FD4879D5462CFA122EF2A2C077D055C46E786C3EDC06A7EAD55E34B67A2B8 +2565C660AA219EF220DAE4625F30803DC44A6D3DDF4513C2B12F553B26ED5215 +852976EF0233CB4900E74EC232D6657D28A4CF8C4EB7A7D1538AFFF4F1900F9A +2F068351C46B6FAC8B545FA407C2F40578C0EAF674CF2CF80FB4872C3865FC75 +6F576AEF692CCF675AE84CDE56A2A6B4902D95065C9C9D54E52A834ABFF5A10A +D0EA765525FF0AE205D4776F6BCA0931141770E56AB9F288290459810A10CF23 +DE33768DF2517E779B20C73A60376729DA90B07B21D036A7D5AE25DC32C12A09 +AECFAEC457EA9B6A5A0C75AE8963B66BC6A659361B0A08BCF1AB747915110064 +3EFE41493ACA61CF596D1D41DA9F3F18BB3F1AEF850D0DD0F7535B7F2B77B340 +71B51E4C4EC95D9D6210FFAFE3D5DD8C45A14599557A626ADADECFF1290EC47F +7D1CF7D000B0A5ED22F9CEBFB5C47208A5D94CD256EB0E930E18FAE3DCFF672D +B88E6C04FAE98AC54740CECE9202C177416A5AB0131A279797F962F273DDF12B +10D70989ADA78C283634C7EC9D30B8530DE2A9E1FEA2433A93EB73FD18AE2AE0 +83EE7FF31D1072482DC03AB107D9B22104BB92B339D5DAFB82E3A9D8BE73838A +C69641CCFA93123CC40E88D8809E2DBCE6B3866B02CB89C57B3E3A4CA1A54028 +4D168DF6BE032D3E6DD7DA4353390CAF76CB103C6608B3D628FB22436915D58D +5F72BFB76F5637FD54623E8986103F777762BA2AF9BB8DD944D158A7331D2FC5 +6C7F30B321561AE3AE28AE5A85777F1B688BB2C1FCC14FB5A5F59F8754C583EF +C7E9CBA6F21CE37E8CEAFF27B2F35F86519B09716C7376A6CE80543592139660 +3BB9E8E619EDCF66C52A7EFFC7B83A969D1275FD6F009C7162C84CDC7BC01049 +82028AD7772DB414507D795689C812C11F69D9697A49E064D56A52D421A773FB +E3B8D6330F4204364B957CCA13AEA09257D6C48345F0B15106A18DBF6C402F83 +392C5A17C1BB9D81FFB0FD65DE01DDC751430D946A80E615B71D0229A07EE860 +65171165045081BC1F82CCD049D0DEBF0468EA9BD6A44AA07774E3F723CFA8BB +892D98A46193FD299DE77F8B097DBED7BED3B0B15ABB32D6283C45AD1B272216 +C556BEC5BA1F8CEDC7DDAC33A735D919469F0C560772E369D4358346FD7EA472 +08BDA9C424BDF3AD5E5BB2F14958A24ECC5FF0DD44AF6FEF700B2F67B87E2502 +E022176919749D13726410BD6601036F0A702B4FDA5D322DEBED2247CAF244F8 +7F470FC87053A6C2FC7F4491B7043FAE6B58BC1271C1953D385DDE9603BA1838 +EECE49EA716119042BBEFB70B544BF18465730186EE62E7C0F410C48F2C03E2A +3663C80DDE23993A48B3E9EB1799E78D59052C95ABF56E7D16246E73E3017AFB +5455A95B0CDE8EDA98B8D4A408FD3A8FEC48CE9E7137A297092D491B4EBB6017 +8D8D6F0831CCED874D4759AF185454F44EF58A613C8021B283FA3EAAFF1EE97B +08C9CE032606A0772595699DA356EAE1A6BE29B91BFD9ECBA535D400209DBFF0 +35352E0145B8FEEAB8BC22BAA72A2E00BAE3EE50B453C5E2BCEFFD1861EFA852 +94EEF92615A7A3186652530DC17204D5BDE1BDDC17A071A3D2962E58962FB015 +6CCFE9FB2E339408EAE8C4F1BA820C0B9620C2010BD3CC124D23BD364705CD23 +DEAE35E2109EBAFFECCE7E29CBE003F89AF9C9638D2AB5D062E9EC4AA4DC99A1 +1FAE3469F60BE1991C56AD71FE23F57244174C67FB4A2E06234343AB82EA749E +62011332C48672AADCD50F8089E0BCE4C57D58F69F493EDA0BEB60F2226C714A +89B2E1FC512E7864AFAE4F84A6914ADC0F017AF97534BCD44B4001D0AF7BAEB4 +251494C831D5035001DE48B3207DEA2E3F4A85FA4AEE711DD6C28F5E2E5BCA7F +870FD73010CD0A16876B521B1AFDE743162E5E5136014584F72DA8EB84AB614B +E8BCD061BBC1D37C1C79B61CDBF8A0DA63C7580481E4D969018DA780EC1E5E6B +1DEFC64F69D23A966D2A61F643054DD02EAF95CEE954A2D2DCE3EA813CD74FC6 +247766CC787549A5913B5A3F2479728A73CB64A2D06C6ACD85679CD9F9AEA261 +D977FBC0D0C864E2A1AE5EDA9EA457EA316B295A07FCEE6306EF122423E06E53 +F4981E5F495DC62B2E5E27E606DDB2908348F45A659D7636748A3F92B9501EB9 +2F66685224482AF232A93EA7D1C2634DDA6195E7DAAB7ABFD3670C43AD87D1BF +CD52965F587C79D6A2DE1D26CD431E98DA18FFEB1C79A16B5C06DA22F615B5D1 +C98C808F7DB252B6BB7896971FCF06BDBFEE9C063971A72A8837B718C6835699 +08C17CE5A5EFB8BAACB9B320CB76885212A606A82CE5CAE1EF16FB8D4EA56676 +57343C5C27A3E8BCE846D642F06471A8B616E6E2C3E8E5DE8540FA56D6B8E0DD +86558F347C9BFB1CED6350E0BC25C2F57BD650F49E1FCB05EC186463A66474E7 +3574139564C0EBD025289DDD359CBA44A761400F8F1EFE67AB9079BBA7CAAD30 +BAF63292D64F72DD2973F065F0CCAEEE1FF134A23048BE32405C405239724C2C +A9A1AF53A17FCE53B1CB8849A03E91C3814FA753A58BBF29796642225A5AF8AB +0F2A088632F517BC552B901A0B3F66F69B01B6AEB098026ECC8F8D4808B4F87C +0EEA0FD79ACF789E844532E74BB3AD5EC3DF790862F55070DB64F5A0598312CB +C875428E1FCCD50BB2CC4E09E62130FE240A2FC2FA3DF1DD6860CAB16F8113B6 +C2B6013EA3D62D5A7179BD9B3E8B0D54C79BC0EAF02210C70B75792F3AF4B6F4 +075AC1F19FA3ADFCBCCE4CEAA04D8E83A7C4198F41804DC24CE7F304AD2F047B +55E4C87F0B1A91502F86793B3BAEE685EA0383600EC7165DE21F51AA577DE8D5 +B1044FB516A6647053C790E30C907AA6DB54AEF674E227AB2A2812B8705B1F61 +B79B378ED61A160AB02AE4D2CFD11702A2CB7D9299F1A28770786FEB3ABEE014 +F2A0AB35C9583FB922C83FD1927C2CFE595F34B1AE7C81A06EC9EF5F498855D9 +BAB8C2CF0F56D60D55E9CB52D9675B6E820BC0301A7D606C77EC06206EAE0647 +DFE727234FD89F3ED4E2312116B95D7BE64E7142866CD5C84085893781CA48D6 +BCC0E52B676B8D1119BCB81BE05545D3F7FC35C40B99E43CA20F77E0C5C11B68 +05B0CB984D94BD6630CEB96A9E7A60DFDA304B30CA0B3FE69BFDA984BA95B318 +9174CE3BDEB589BAC46C82703D498EB35CB25A54A6A1BCFDB950B461F47DF126 +9E02D60F5AF7F65C4B14E259511796191979C58830B9121BC6EA1F80DFC26DFD +52F6007FFA1C08181974D0617F92C5EF0E8FAA0E97BC852C098DB6D8CBFF589D +E5E2389C537F1C2C8AD8888E0584F39B114DA2CACCEB38B5C99CF93E1FDAB0CE +8EEEEA5563D0358566D7627E97FFDAFA7EA4F0BFA4431645D4E24620438CDB99 +036ABCFA8B597643C98056D5D8FC00F68642C0CE811502153816C55C7A0BFE4B +8098E6AEC78C998172320A33FB5B46B9D21BEB42B34D8D6262BB4DE936A51516 +0830C108ABF4D0DC6C7188BB6F52C471C78D79F5DE13CE1C1A5C6D8134BA7D9D +54652582C284D027DC1B5AB97AF8E1DF490BBC18421B91099DEE930D3D377E53 +7DD081DC875791B0A81398BFB46F02EF975FB2B8ED39C6D5BAE92EC2E85B2B7D +290E3B9AC864AC17680A345EAEA41E9E50A22D4DAECA50A5285443493B18C178 +DAF904E6A6447F8D4CD0FD885D1D9192708560C88F378001F29EDD92A80A2457 +084A5E0486700A19C1E48882098DC901E20DE43CB8E5CA992120ED5812B382EC +A360085E7A53C0BC0CB865A70C3F666F3F5198E5E50DD12F19B9804DF96FD9E8 +8F0970DC799E3F5D1D989BB2C100B16B724BA1AE0BD9A1459B2A5780DB956DD6 +A7EAE3166574B28B49259BC32A7C257A8D065A739D8BEC7FF6DFDFFFE33E952C +FB5EBEEEA9F0745846FEF1823FFED7B3AA5D6EF101D58254E385F3864B888F37 +F5F2B65A4C3255EEA67D1329B2DBB253F051C7185783F42F8521B756CACB8AA2 +C654C5FDB699BA2C8F7D163E3E258C38B7496BEE5FFB4A5461188CA80D7301C0 +4EB3E5BB99FD8DC294A9799D2B3E18E9B0E43E54492E4295ECE6E814F3BCC9A9 +8E0F2738AFBBF8A9EA81D553EBA2A45F41E8466208E0A33394FEE2171A49BD92 +177DA001B9C12812BE1D9F9E23DE521D87F10DFAB3FA7FEF7111AD4F61CEEB9B +C03DB3FB22597C2AE32E8DF982B824B774CEC964AD24390D42BBD53B3A3144EB +342220ED35BBCE069BE99EC2955B02541D9777FF828BDD2A27D7DB61346F9B79 +05B3C0355C87697F3C26990AE871EFB9548DA44EB064AC9EEBC7B2A9FFAD18E9 +0AA04D6871E2333AEBAD4E407F4EFE9429A3B575BFF62B73931543CBD85A3CE5 +915633A52AB76856C1E7639C54CAD10D18F3B629A40D3A1DE09728946D689E48 +44CE6E4CF644597120C4C5FCA145E8777AF94C0F93897732EDA2AD31B9D16BF5 +AC8876090D204C7DB7B3C7053F16E94F0D0F6DD9F919F73EBECCB7F17EA26D9B +35AEA187CB1F56442B6106074E139A0FE9E8511CA485FB85962B4D8B607C626A +C8F72DFE +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +cleartomark +%%EndFont +%%BeginFont: CMMI10 +%!PS-AdobeFont-1.1: CMMI10 1.100 +%%CreationDate: 1996 Jul 23 07:53:57 +% Copyright (C) 1997 American Mathematical Society. All Rights Reserved. +11 dict begin +/FontInfo 7 dict dup begin +/version (1.100) readonly def +/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def +/FullName (CMMI10) readonly def +/FamilyName (Computer Modern) readonly def +/Weight (Medium) readonly def +/ItalicAngle -14.04 def +/isFixedPitch false def +end readonly def +/FontName /CMMI10 def +/PaintType 0 def +/FontType 1 def +/FontMatrix [0.001 0 0 0.001 0 0] readonly def +/Encoding 256 array +0 1 255 {1 index exch /.notdef put} for +dup 1 /Delta put +dup 6 /Sigma put +dup 11 /alpha put +dup 12 /beta put +dup 14 /delta put +dup 17 /eta put +dup 28 /tau put +dup 34 /epsilon put +dup 58 /period put +dup 59 /comma put +dup 60 /less put +dup 61 /slash put +dup 62 /greater put +dup 66 /B put +dup 68 /D put +dup 69 /E put +dup 71 /G put +dup 77 /M put +dup 78 /N put +dup 86 /V put +dup 97 /a put +dup 99 /c put +dup 100 /d put +dup 101 /e put +dup 105 /i put +dup 106 /j put +dup 107 /k put +dup 108 /l put +dup 109 /m put +dup 110 /n put +dup 111 /o put +dup 112 /p put +dup 114 /r put +dup 115 /s put +dup 116 /t put +dup 118 /v put +dup 120 /x put +dup 121 /y put +dup 122 /z put +readonly def +/FontBBox{-32 -250 1048 750}readonly def +currentdict end +currentfile eexec +D9D66F633B846A97B686A97E45A3D0AA0529731C99A784CCBE85B4993B2EEBDE +3B12D472B7CF54651EF21185116A69AB1096ED4BAD2F646635E019B6417CC77B +532F85D811C70D1429A19A5307EF63EB5C5E02C89FC6C20F6D9D89E7D91FE470 +B72BEFDA23F5DF76BE05AF4CE93137A219ED8A04A9D7D6FDF37E6B7FCDE0D90B +986423E5960A5D9FBB4C956556E8DF90CBFAEC476FA36FD9A5C8175C9AF513FE +D919C2DDD26BDC0D99398B9F4D03D5993DFC0930297866E1CD0A319B6B1FD958 +9E394A533A081C36D456A09920001A3D2199583EB9B84B4DEE08E3D12939E321 +990CD249827D9648574955F61BAAA11263A91B6C3D47A5190165B0C25ABF6D3E +6EC187E4B05182126BB0D0323D943170B795255260F9FD25F2248D04F45DFBFB +DEF7FF8B19BFEF637B210018AE02572B389B3F76282BEB29CC301905D388C721 +59616893E774413F48DE0B408BC66DCE3FE17CB9F84D205839D58014D6A88823 +D9320AE93AF96D97A02C4D5A2BB2B8C7925C4578003959C46E3CE1A2F0EAC4BF +8B9B325E46435BDE60BC54D72BC8ACB5C0A34413AC87045DC7B84646A324B808 +6FD8E34217213E131C3B1510415CE45420688ED9C1D27890EC68BD7C1235FAF9 +1DAB3A369DD2FC3BE5CF9655C7B7EDA7361D7E05E5831B6B8E2EEC542A7B38EE +03BE4BAC6079D038ACB3C7C916279764547C2D51976BABA94BA9866D79F13909 +95AA39B0F03103A07CBDF441B8C5669F729020AF284B7FF52A29C6255FCAACF1 +74109050FBA2602E72593FBCBFC26E726EE4AEF97B7632BC4F5F353B5C67FED2 +3EA752A4A57B8F7FEFF1D7341D895F0A3A0BE1D8E3391970457A967EFF84F6D8 +47750B1145B8CC5BD96EE7AA99DDC9E06939E383BDA41175233D58AD263EBF19 +AFC0E2F840512D321166547B306C592B8A01E1FA2564B9A26DAC14256414E4C8 +42616728D918C74D13C349F4186EC7B9708B86467425A6FDB3A396562F7EE4D8 +40B43621744CF8A23A6E532649B66C2A0002DD04F8F39618E4F572819DD34837 +B5A08E643FDCA1505AF6A1FA3DDFD1FA758013CAED8ACDDBBB334D664DFF5B53 +956017667084E248B4E19A77B7C42DF6762413BB3B142E19AFF7DF267DB0C315 +9F7C9061FA1216806E4FEB424713C5D8197A3216EA5540D1BEC26AC1B17D190D +F66A096A8854AC846932C735D064DB56287BAB4AEB352600851833F5C49B00F8 +F2324E5A873315CFE2B0C71FB263E0213C5FC83F2D011C1361570621BAF2F34D +8A46195798F84660F710C7BE1D31D123ECA0B7965A2AEBEC6CD5FD55DC0B2945 +AA442125F7EC382E849F98EADF4F5F8B92C04669C9CA2CEEC6B904368DC374A5 +0E4372048210A63C055B13F9E04405E805900BA040C9AF9C9BBA6A02F87C60BA +9DCEAD5A9E7BBECEBEE887F378676C72FD00978D15D0046C0690C0D4B5AD4183 +95F6A9DD88C772D9F7C38A6F51BA692B81D60BFF93CFE887516378210D1CA765 +8E15C57545A0C95EDFB7AB40039E89D027860AF114E89850C0AC2E50B696B3D1 +19400E123569E9EFBA7E0876DE9628B90A373547C96FE290965906EA8A1E846C +43EA4B0C01D84702059B6888DA48DC3EC87D6ED3F5BE7322567E660586843571 +65ACDE826977A8C05ABD73491F800D6D3F31DAC2DCC94197008699B08F389271 +28BE1BBE243F5A59EBA25059F90C5148C0D606AAB186BF88BCE51E82C6A2DD2B +1B5DD50987E914FC3223EC169BDEF18BE4DE7F5E824D414CA186C54B4DE4EAC5 +E5F84C3748283E8F0FBA0F0FD9DE1459D068B624626911999B9CA785A9314F26 +C71D43DDC0D792520DB3774AEF341ED2B3FEABC2C8131FE13C4B04FD64DB5AE8 +8BFE43A83344D7466A8C2F51709E771F02CF369255DF519732B0F4EB2EDE5E86 +062A91DCD0D42B2C5D6D3DF29F30F24BC98093AB95B06097B5CF3B612F477E84 +9065E1C60CD71608A16C9FA59D10106282E225EF38B15225B57F6784EFAC91BE +83E6991EB5E59C8FD13193BE20323ABBAA06E81D0D1BA749129C0E898EC3F8F0 +4452FD5428802DE83F6833563C49AADCB28DCE3E4040F69CDE82FA6F2D2DC7FC +88E96641F227A44A979EA58706672D7AD1FB23E699BE729B99864FE3F043C042 +10725788C5260E5053CC94FC9B4A9A134787D1F3E6FC5B3CCD7C7D624E6683D7 +B49A02B37FBE56AF6C230B7563D38A40591E9BD14E8339A28B8F86F30242F86C +F43FC20C80DDF37AAB23BB01381D769E6E4523F403C11CAABFE5DCC58CB19E28 +37989C46A1D21F1637021091E39E3C9F8244AA9F43A137932113C8CB2C2D7239 +364C52EADAD13C1297A463D8F94355394F18D79925958280344AAF911BC0DD44 +31DD6047080F51C49F77C1E587CEBDA32718B9CC19533857B3950BB69C9D18DF +D5914FB8D36EFD05D15ED1AE8BC3DBCEE2FD15F65838DA357F0E30B8FACFB381 +A658B95C852032D9F6E57785622DA212CEC31CCDDDDC9773EAA46F18750FE121 +251615AB53D597437F068C2462A4E8B90521F4C85B9300264A6C35B46EC2A22D +C90D48C4108FD50D8B089DA431BD8FDDFA8CF8D6C257F03F0ED907BEB2E91CEF +B3AB4A6A8E4016419033ECEB7473EC8093ACF80EDC48F1D4F525F7AE6D09B48D +D5D83DAB680696E72D6A3BA755523DB0BE5639C1703D2711789F2C5D2E7BCDBA +FD5654CBF4BDC05DAD38DC84A2A8FB043A22FF580F065BCA6BF5E17DE21B6680 +A5AAE78B4711C5D056E1F7BB4A48127233CFACED2E947993EEF6F12327DF1CB4 +5ED203F8212BAF4F6D4A076A6F2E826E45C4DEA2F42FC5F5C1892DBDC8065C62 +5D5A6A91EB9DBD71E32935EB22D69E8E6529F95A95E533E52E705213A2CCF3CD +F83FC853B06563A1C7206EE24589FB3071F24213EF4A04656F22D433F22A8D92 +CD838E13F7B626AB0497BE49BD8F4EC69D4CDCB375B38AD21DB8DA302BC51BA9 +EA150C7759581AE01584F9121C9CE9C989DCAED80D9BA22CDD513E92F85C1596 +6ED92395A424FB4309C3F6E83990195DB61797AFA1B85A68A2FD36AB94E0E665 +C2E2E32A5A66B8319153DF96F2B06FAC6D3ADE8304CE693B83F81938F177598A +239FF172A50B421A5982879525D59E0179D0C4A3F3DF97772B0768DE450264C4 +164003BA7FD408EF75215221763D87E7E8D743317D6F80906D27B118D15E6A9C +1C43D54B8FB7C844A58F9FC5A88B6B0B6541C1776248A8A008BEB038A4BB0EB5 +EC122B46A3F3BCB2998738056AABADF60223CD7C48FFD5AD6A77536E198646B9 +4518780667FA2B61C2EB8326F81CAC89AB6F0635351614F3521B131BADE73283 +27930084D3C1B26CA3554B0660EE8C8DEC57B0FF344B961975193B988FCAA78A +7160F3E94231B31A3E46DC16CB21BC65DFCE7AC4DC610AC6388B9AE12BDE1F1A +DECD3BA34297B989B731846ABC57844E1B53238C421ADDDB00ABCDC743235480 +F61CC25445C9119AADAA47C7B8913CFE1640FEC333BC9C35803CF02C508BD62C +440B27BB184EDD0C04B157C259D71E5B58050FDA4967A25A5FABCCA029088BF3 +03E8AE975E543D496F7638A4103BA925EA27905DFD62666108B633927E07136B +613888EB04C1F5E216F08A1BBC7D9303B77FF23A4FDBD58CE711E1D362ECCC8F +9B687CA125A13C454B12F9BD42DD7D42EF796994BA4FD41288946E52C41AEC6D +8C7BEEB04D24682A243AB54C3992BC938F41A1E46509A4B3A28700C645EC7C34 +C90A38E31DF02E0E22BB0FCCCB9EF87E5BD185830FC5A719BFB74ADC6385715F +50730FF41DCE1C5B8202FA7EA5253718FCC3E4F18D37DB28A0685C7A195D2C78 +A0539C23E57FCC25A07E77EF12C4E6E59D94144048EA45336F13C9C337DAB239 +B844668515CED8836B8B0DE5BFA514CB92979AF9CFD08C31E436AEE956243011 +FCD5BB877A0F8CA1BC70FD7EEBA250EFA3D878ADDF40F532B4C7D0AD2799C2D6 +E8A55A0029E87C1A6E37E3B803B7F3C4182BDFCDD3B3A36FF1686045558C4335 +1F10FF8C796B05BE183D751CA322F63E66B35C0F6B7DDDFDB7B36ED2B49DDE72 +870F88089AD1EA69F54C5CD55807056F61568B98721C47E7E63E9FDD5820E954 +C4B2FE72815FCE308F8D9E091314971A833E4FD9B51751BBD4FB9216AA150A7B +83D714AACEEB5938780319CF8D3FE580B608DFE6E6E76D1380A60130359AA274 +66ECBE181CD60F2D4B48AE2D1299E16B2007699E23D6A2177CFD5E5233638009 +9E821985ED328356FF8CE1EE59D16B2830AB24F852798515C95D5EC178784CB6 +B4C09A8379A9FCCD91468DB83EEC2AFDA0B6AEDC44BF9903BC0898831AB62298 +7A5D2185748707BAD6AA2E1765B5A9D6E00E014AD00BB68F0F29B144E131EDA7 +8EED997B78B95043D611A3FD50784F253921838BDB152424B02D08722258744C +95E4EBA32FEC796915F88552D4E1F899C833AACB96CF3BA940BAD7520D7D2F28 +2BD1EA10C97E0A5C1E45D5FA6AF1A23A6E530C030F16D46D2E66F77D6224636D +5437B45A3AFCF982B4AE9F848C36AA52E1B4EA653B104F090BFB3E77F2121843 +4B2510179C358DE38FF27BF3C8A31A9EEBA0F180BC63C69A23BB418C583AF9A8 +C2402A32E83FCF0B7C4B6374B8018DDB126E90D5AD8A7F2517B40117D593DBD3 +0BAF940FED36A3A677B994EA06CAE77C3E06ABB1F41AD2ABC4E7864C7A4A75D0 +5708A337A535365B658F406A70567FC7E8132EDF67610B59119D46C7B0954E88 +B8E6242EF84F10681DFB2AA3ED1D6AD687C92EFE89C57D3ED2FA0DED74982E94 +E47FF8873CB15DB41F14871AD6A9C924C80FED0C492425BF8EAECE55E61CBAC1 +26F2FE5A61287A1C2FF052C0E2BCF30A29E07AA6478B9A7C7E5EF4DE63838CD9 +FF7A20ABFCE6A930BCA905CE5FE929292A9C4EB680C095EB75D53AA7B287972B +157F83330C509758A040C65AA2EB70A2AC0CFD1E1F26199ECC65250B7696FCDF +BB48B401F6EC0CC9525C30666ED2CBEE7C7A00223A2EFFEA57013ECE86F6DDE2 +B26F65F202CA9D97593257DF7688F4E3A405383F0BE86CD597626A73E490FDF1 +A6C32D7A0936AC0BEB7DDF9A8FE63560E61CE95183891009AD75F6DE8296FADE +6F37567B7186EEBD30462867EEBCE3ADB6A41B11E4B7AAA465883225F2067239 +9B561CE77CCAE176805C79A6B2252FEFB1E43BEE32C67F462876F2656C59E4DA +C939A9DAEF17E6F8DAE786E41F6C0F013B1EE6D65C622912796194E68E34397A +C971C022CE5E751F342819670695F154AA9F228BA3C2A81C2519F2243EBC3BC3 +BCDE7BE2A7AA5FD890A91FE3CDD5A8FE6CAA3BCB237B3FE31E4D20D1EEEAE6C2 +D3746062ED962604E3509D3483DE4BC882E8BF7C3248981BCB47C5540CB28B24 +7DAE6F2D71D2E4A1D9CC7A7A36125F9C057B072772C0EAD1EAD2EA655671A099 +2D79302BE286FBE3252DDFE121F165061A3570519FB36151899314F8D83C92A4 +5EF79EA1EE55B32081A96FF2B5F8070CF949C33EDCD5DA0F72B0B0F648D3FADB +C2C95850310FD7D47B6B2596836AC41B752DAF041E31EB2139AE606FC4C1B65B +815373D824EC543F85370159EDDD7B024A78C8D0013B54AC311F07DFEE2E0A80 +6CCA9B676B99F016E204F3A43F58C5600557AE3A2C3397B94B918BB7F94DD8A8 +C2D6BC1DBC41544372EC47D33561983BD21E5E09A07426D34DA3BFAB31A333CC +AAB66ACB1D17E918D7276B2868154AB27B7309E2209910510D33D6F7D4703ABF +0AB5E44C45F4A68AD17F45B7CA26942F04722B7ABD1C3D4B9C18B5443A0A27C9 +26025242C1B6FA724C6A897D9C5287F89AEFF23E009CD4DE5C256FB882130D68 +7E2FAD1854F6A563A0E7465134FA561ABEC11E84C32C4AC6F39B89376EE6CFDC +D0A437CEDBE76406586C2EF25F7FB8A4269780C15F34CEE58A9D29C56841D3F8 +7CA1515E1C70A132347F5F20C3D5F16E0A8D73E2D00A6AD4BB02C71FFA14A931 +65D3C9A5161526F349759EAD35E417DE5A251506F6C5A1C6479C2B2A7DBEED25 +7C2EC8B09B6FE16BF878A72FF8C252AE0371EC01E510532F8B34902A37C9A90C +FECD51826275D4685C3B5BC584CF414CFC35E62E9CF36EFF3491D974E9FDAEB3 +874EC3ECB0F2687AD7904953B6A71A52370139D66B90444F41A431D5B40C2EA1 +CEE1A75007C1D3864FBBDC1AD43DECD26486DFAA7EF254334ED53E36D808756B +C7F8A62EF71B02E9F6A764CAB61E7C27DD4E5B3BF2B5FE6F8A452A0C304D0624 +D2A7236C5B65FF84971294EFE825CCE132A092AC86A4F9227CD944198CFE3698 +7884C031B7AA502335ED602F80645831BB8A1526098464CDF72B3C259978D02B +6FC9795D14777BB5B72920CECC39E55660520634199F3D78139D020A7CF5B22C +8E0683DD8163B861E3FEE3658D52572871253F38C85FE3E638E2B13B8A284C54 +07FDDE222190508F8A7A04D08061311BDA9D72AEDA1410F981E8A9BE7071C08F +F438BE33CA53FA4676458EDF5CD52C001CDA39A7D8F3116358F9A77091675235 +79C42515DCD64164F43070CEDBB11E69DC2E2FCAC983C4A2A073DD7C913EDEA4 +594374D87B9AF5FBAA0ABF720B0641008DF8212443E161253C41478935F7F482 +F169C3A6A9D799AE05464704BEBB53EE2FA5E71FD79D27A8EA846419A17EC98E +3D0679231BFC88767CD2178BED35025E1EBCCD4DDDB7410CDEE8B22DC9A5B024 +0705C1E32F954DD85F34441E453285063333C3261688F020D5A6EE1236515687 +F94B672FC189DEAF0BE59E9BB5AEFE6460BB4C06A9947F8B863D8B0C72DAC249 +C6032FA7C0AB406F2D254B9CE3AF9741201619F18D6121E17F3B52EC0B870BB1 +96B9EB52D6C761DE95C286FAB896B7D0B8C12C4AD1933F238C0A9C195EA40BD8 +548AD3B5717DD787EC05DBCD55170B1524A58D39C91936FB9A86CCBD48562A6D +7D1270F5F9B311E132F43787FA11FE12243A4454154D633A012E174783DEBF32 +997E9A4170F47732F6ADD306DA7AB582E758E8C2FC8363E8C585F3E92A573F54 +CC2D34FAE6F10DDB7A98D4C4F656F6700C6A8C6FC960B0B4B9D446BF52B80B5B +65CE01B59B8DAFDF3D878084B88728072A97648821400CEA6C9389794186B219 +99A017FA4A809DB2F93FF89A4206CB66FCF588584A6B7BEC990E5A0A33C75FE3 +C95C971044853D750B14FC6227B730D2C00FFAB2221F682A10469B5369E436DD +526328D2829FB8A82A1F02B77016EE186DC6D4C24E58BE93C9A6450A996A1BAD +4929DA91FB7D067844C425313D998883B7F2A600390A6DA9F5164D6763E2FB0F +D047214832B09CF62613C8D3ABFE03479B493340AC36D412C49D7DF39CA89AA1 +17D9FCE14D40E5BA8F587F11A3F7D8DA69F5650B00244DC561B329826E9BF11D +EBDF8593B20B6A916AD6B4E121A3F72F042A1943DD72DC587D74B1B14C9DFDE4 +05AB26F9B1E5F433D1E6F12AE369203A63DD39F5E2E5870A7097C020584AB252 +8CDE37BFB45DA0B18B4BE37026E700B941F482C6C102EE582E567967D0697245 +878E076AFC025AF1A653EF718E7CD550E214F5798F048895DB759ECB2EDBD4E0 +AC2BAC11B390278CA5C30F1AA6800A87BC6101CD26B217D5901A40B1B0C617D5 +E3058E980F3818B2235B73D6C7EEEA4021B9809433109D837050F29965FFC7C0 +F5321A93D5C2315E0C3388F0208B686973FFF13D78B8DE64C43A60CA70EF4E1B +DE972C3077BFC5C7B23BA026A77E2930073C8D493F2AC4F3B5D599F716E6051F +166253EA22C317044C96A7F281D5CE5AFB1E2C6BB72257E864544A5C23BA1273 +59A7F42E0A7CB48A90F5EF47B9A9AAEBF82C78B477B16A4B0B57DAC9117696EB +E1F1187220FEEA3B0BD19840CA637F2306A185D4A1B7ECA6B0D2CF662473DC24 +8270584083426D200D28426F362BB801D556CDE4E4456566F761E6589403E0FB +CC154A41D828DAE490E0A223AB5C53BECF7D1FAB3B66A5725A4BDAED4080D773 +83139DBCBBC93B58A34EF16A7491592B27F526C3F0911669A7F5867FA872596C +E9BA07BC078A9F07052135EB22CB87883B8EC17B9CD6B4E13023FEEBA3C732E6 +843F9D5B27EAAE781BCD534D08F7DE20B713ACD556390A332045B72ED338A70F +760BCFFD185CBBF7705DB2D55C1FBB8F38A4E5DE0913AA7980A2B92C63A3EEA1 +C49C0DDD54B76325F5F5A0C3F2C42E9897C930D4528A058942680CD35BC12F87 +DB2E409622313A385216585D5C37DFFC9B46F48F2BCA0BDB54721764FEAC99AF +BFD01B2E63F68A669229F80BCADEB20262923050A875B5EF18232E6E1819B2E0 +AC81684977DBB7F0EB11DAFBB5774E03D63CE0F730A77A5531EA0FE5447E008A +D2ECD0B30DADD3D1BEAD4B0BB194CCCF4DE9578EC9442F4EAA73B8BB8F138B16 +06565913E554933E4613ED11AC1F824D558DB589262440D175C2C754E6584950 +47494BF87510E31075A6E3D60CB6A32F5B2A885049388035B97B779C42429D4B +303FE5C64DF7627F92A962A3B8F5271EEDD78F658ECE20B07D19879BD00C8BA3 +ADAC110FBAEEA23E349EB4294CFDF279A7B1CC2A71326982C1241FE7CC8CCD7A +D613AE2F9C78A853DBA83600B193FB45531998C6D9DCA1B8E3DFBF754B829727 +EA1D5C912CA13FCEDA4256680159FF1F377C0C6B93B9FDB5C748736787C8413D +32436B4DBE8339E868EC8C42BC5F1B887EDB628335F0FEDE2C7A959E16410852 +954F5C5CAA2B4C557A30AE1D2DEEF673B68B6CE989B27F4E26FF8582C30EE843 +BC7392D42CD728E6C626203F1401D328E9B38770D48ADAE77D87CE04BDF2FF89 +6FCE109028653B8252D4DCC8B34040833F8E8A8FF1A53448C8D289AED30969BE +7840AD99B77634201B8B9649D14B003836F9ADAA41C302625CD1B6C1A6F40B5A +ED6A5CF12930E48B9FF647166290439420B6831219DF14F18021CD563FC257BF +9C368032559F5C1C3CC198FE6D833B8D612890F6114203E90EA7A9D6EC8B3A36 +00486E140B9B76BEBE37888C8831653D237C1AD50E00ECE417C9C8FCF1A9115C +DAE1B99D11715116E698AFF2DD7F6A34F4EB0B2ECD49854613B1DF522B6E8953 +EEB3D1C90F3179F56FFCE049D06AFD09814FA87D2B0D100B11105609BA8567B5 +181445216C061293C6C9DD0E80FCB290DDB63A55FE3BAA16382654B167E99290 +26DF9BA06A96EEAA33CEE2412D16B0F8C749A7E4C76A889E24FDD9D849B5068E +F204008372317087891A7ED02D0BA26EA9DDD6BF1649F06F5A3008408B0FED08 +EABE9AE4711B954A3CD36094CB79C964975E6FBECB93C940381B2D0AEC71AEF8 +6ADCACDDDA63FBFE0CAC845E24BAEC24B8EC4F9764655C20AB752BC5FC7BFD92 +EBFB78FF7AF43EAD8C9B7AB75517AE9C06DB5CC0F8CE9EB5217138803B572640 +9AC5C4788CF145ADB5E1F7557B43360C96FF808E5EE15FBC34E6788D0566692B +787138C1F5A7F6006A94A7E0D9842DC369BBCBEAF10CA5DD000491F5D77BEBE3 +49FC14007B740C8914327EAB77232A75E8435D519F7A4342BD281E11D5FC7925 +172B0B6536C4EA03D8E03ED9DDC97B65E0DB25E944A777AA23BF45521403A879 +953D5AE9E120339495CEF93CD90689AB259B38BD8E598968A3BDDDA4185237BD +6BD8F1E5C1EE9442DC28283D2E930FD7B4311D53B1B458A9E124812615D3366A +801A76A7CCA7DB1B5BB4531E7B68068B3E36BD2E9A427885CF360C4240C5B89E +C1028EEAB4FA4AA2435D4C221120459FF063488743CDCE682D7BD79E59DB018F +740490742A4F86B2DD34D409DB4D4A8D2C265B788E31D5098B20B9DC6455E3C7 +1CCBC89EB9A6F1DD0B1D15E57C68293D913E2ECEDBBE89801C9E673A2B607B98 +E72B0F608E9D8D69A29DA89371F807148D1B7E6B7B04276719A087658F88ED44 +390462F01C1806A0DBC2C9F0AEA43D107C4F36BB0E2E89C6FCA8DDF67EF5A026 +1B529F9F065ECF945EC664B9E5A280BCAF04472598321E8709649D3F58EDC9B4 +DEEAABA6D9422507307132E73A941FF3CC43904373A4A616FBFEB230B327F360 +2EF5981AF5FA048B9943BDC3E9554322A39454E2DDCF4AE2EEE29FFF07457794 +A1CA38CD0BA815958355A56F656937B7B8F5E9B1645714C22BFCA5C2BD0760C7 +34200ECF6C7F9C5FD384C4139B38D97334F0B3F8100FCDDBB5B497CE327A0A93 +36A0C9B42CE0756ED25CADDA2B1645F92A28A3E22D45E760F9D692D35BD798E0 +7413AE5C5B0A0EFBD23BD02F5BE218DB065BBB9AB8BAA6E406263C21E02646ED +CB9AB447820912B6B6A223E9735B3DFE16CD1C6E58A9A89FF6824D417FA45DE5 +1BBB05A24AB825C3E34F403E462F875DE9C44A7B70C17711F1F06B978ABA3F03 +03E769493BC1068B6B4E1236BDC385FCAA03BD13EF4CEC29712BC4DAD8A57025 +624FCE0342E5EF96479E4CB19F90563476DF535B7BA290E3537542D130884B2A +B4557610EAE99F633087F26E3F13FF5F97C87B6DB2C57C8EDB0CF0D9F6F57719 +40CB59793CD2FACA30E88FD7743E8EBB9AF6925C6020AFD1B6F0531F4445F7EA +A2D944012DB4E209E8EDA63BAFCE1CFC0116E1FEC608FF717AB76DF646FE43E3 +15E80619FA65ECE84CF79243441DBE74622B2399870DC8DB0EB474740E6B0EC6 +C18A95B8E5D1AAE8409CA2DF9C5CCCFEFAD11EAA9F2B4D54AC86E08775012D14 +F1B13CC0E1FCE34630A716CD3BCA21856FCA9D42FCFE22C08DCD3050E05E6E82 +924BD30A95879C27F9DB52A23C4AE542BA3207842AC22815DF40EBCA491FFE90 +23750CBF6C07F65BD0095D9C969AF79DF4D2ACACF5449A50653408CFF59EBDA4 +E0F38F0DA578F7AE56D7C7AB7E46B865AFDBB09AFF6B0AAA978D0EC3B60DE002 +EFB5DE2A8CE2078B94BBE39496D7C2A8DDF2D7097CA8DB7A290F639A6205E37A +0E3ABCE7CD54858D55837A8BD376580FE59F3D07B788EBEA7BA21B4AEB1177BB +0508DED552EC197CA71D2AEC178068345F14F351239B01BBA9B37C53F88E7730 +D9836EA38100EBCD162A85BD7B2E38ADDF6F315135D426A6963962D317342805 +A10DB92D6C9089FF578D9F13319A55D72646E70ACEE59172607654C8A45856F3 +9B127D69D50AB5E97279B3257BD88A6CE8338FC236DB01ABCC52F7AACC54A6AC +314C1FD3065C975A66E93F7020107994385D5006E30D9995317F1D3B6C9FA79A +441A3C79F5B01A0F45055B114AB6BD2B76915DFB6E31BBF79CA9297EF76090D6 +AA2DB56FC2A948B4B686352D64630BF7434BA122E40EB355FBEA442AE2A9B800 +5534A18DFDE0F83DE229F6440A33F019CE6EDAA82AA839A801BE687E61AC116A +E64BE4343B25A0A3078EA887E80B7003B35DE11EAC5A40A7AF7EDDC2B4B84526 +1A5EB0CBC872419E8FF01FB7B88D79DF68763A4FE1BBA60DD5F49DBD2FCED03D +C8AC5C65A5B2B216E169884301F6C1B282906C99CC6C32C5BE4A04ED6D7C7D33 +A277570F1109CCC6A9918CE7C933946AA0DD60D7B30BB3271CA4F8290006A97D +196731C5030B04E2334E9527F68C2210D10F2CAC8C0BFFE07E3501635804129F +FAC1041E34BA4C141BCA97E43BC94EC2D955BBAD410CDBD06FA27999A5602507 +D9092E169D44E607AEADE8E4238768B599CFBC46CDCA2FF4CCB6F282AA02AF64 +1B66419AE5184B6C798B7F9C3107E3056B43E2733DDB9365B9BAB3C22E5CA594 +F71F3FC9BC58C45A915496298F4212F80D569CA216B38AE1BEF678CF555EB362 +BE6C2FC4D5EEE09D5F705F54F1C747919CDDE4A7B4EBA1C6CA3DBC06F19BBE38 +ADDA9C0479EE +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +cleartomark +%%EndFont +%%BeginFont: CMSY10 +%!PS-AdobeFont-1.1: CMSY10 1.0 +%%CreationDate: 1991 Aug 15 07:20:57 +% Copyright (C) 1997 American Mathematical Society. All Rights Reserved. +11 dict begin +/FontInfo 7 dict dup begin +/version (1.0) readonly def +/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def +/FullName (CMSY10) readonly def +/FamilyName (Computer Modern) readonly def +/Weight (Medium) readonly def +/ItalicAngle -14.035 def +/isFixedPitch false def +end readonly def +/FontName /CMSY10 def +/PaintType 0 def +/FontType 1 def +/FontMatrix [0.001 0 0 0.001 0 0] readonly def +/Encoding 256 array +0 1 255 {1 index exch /.notdef put} for +dup 0 /minus put +dup 2 /multiply put +dup 15 /bullet put +dup 20 /lessequal put +dup 21 /greaterequal put +dup 25 /approxequal put +dup 26 /propersubset put +dup 33 /arrowright put +dup 41 /arrowdblright put +dup 49 /infinity put +dup 50 /element put +dup 54 /negationslash put +dup 56 /universal put +dup 57 /existential put +dup 102 /braceleft put +dup 103 /braceright put +dup 106 /bar put +readonly def +/FontBBox{-29 -960 1116 775}readonly def +currentdict end +currentfile eexec +D9D66F633B846A97B686A97E45A3D0AA052F09F9C8ADE9D907C058B87E9B6964 +7D53359E51216774A4EAA1E2B58EC3176BD1184A633B951372B4198D4E8C5EF4 +A213ACB58AA0A658908035BF2ED8531779838A960DFE2B27EA49C37156989C85 +E21B3ABF72E39A89232CD9F4237FC80C9E64E8425AA3BEF7DED60B122A52922A +221A37D9A807DD01161779DDE7D31FF2B87F97C73D63EECDDA4C49501773468A +27D1663E0B62F461F6E40A5D6676D1D12B51E641C1D4E8E2771864FC104F8CBF +5B78EC1D88228725F1C453A678F58A7E1B7BD7CA700717D288EB8DA1F57C4F09 +0ABF1D42C5DDD0C384C7E22F8F8047BE1D4C1CC8E33368FB1AC82B4E96146730 +DE3302B2E6B819CB6AE455B1AF3187FFE8071AA57EF8A6616B9CB7941D44EC7A +71A7BB3DF755178D7D2E4BB69859EFA4BBC30BD6BB1531133FD4D9438FF99F09 +4ECC068A324D75B5F696B8688EEB2F17E5ED34CCD6D047A4E3806D000C199D7C +515DB70A8D4F6146FE068DC1E5DE8BC57034FE2AD655DBC911C76FD991B91DF5 +2DAB3701C2F3703809AA4D01CE2FB5823DBF3DCB8FB55EA6C677A115BFA7781F +B87B1DA2ADEC303DDD1B4FD1CDE506AE380F938245AADF44DCD3DFA5D86EDDF4 +F696ECB1962420A310F01CF7FDA47567932366429EFDD54BDDAC412C155E41D2 +F4F88BCFA6AFDB11CAC1C833E8BF502FC99F5891D5A8DEC1A4C114E4D9895E0C +962B36ECB641B597A4942103D6E695A749A91DEA1D65A5B4D9055F387D9C365C +DA51AE4119A24930D3D1BBFED43BF8846ED0083C7A1ACBB8010EAAA3C263EAEF +00C1B7099378ABA2DF7833BABA23201D8C9FA4A784A50323BD621D7D5375564E +79BC09AC1F0B9BB65D5FA943A3E359D9F79FE6EE213EE56F1CD5595D726B5BDF +67D6DE93F117FCAA51EA345C4E0E160FF6802B23F6BCD33BD0332CA55B3C681A +2237868613595F87E616005D92D5F66081B4FDD91CC2418128F388CC38279B2D +4482FCE23663E0A368FA2B3957A387DB9BCEBD4FFA129F070CE7FF314D233DB6 +84B1100086CB09D7F80A24C5590B27A877979EAB3826211ED54CBF8097505FF8 +93F5A1991F8414C02D4ED0E39E70C57025D4AAED565CA38A5D7206AEA68DB95F +EA5CAD014BFBAA9895D8B6ECDE1C3B0057EBB7F8E94004EE3D2F025CCA598B12 +46DB612CAA8BC28E1A1D03F5655871882F4AFE424E0F1636C5EF7477C9C7AAC7 +B55441AA4C2215F4ADD87C10144950BB7339DD915A8EBBC8099D54638C54769B +AA953FFEC731E086B37955462878F8B7712CDE117F98A474477F97EC0BB6B9AE +97DA8ADFD25B96D82BDAF99C99D380920C0FBFC7BCD0A99A9F1B9CD8947A65AA +3AE1513907B66A6A3A2F243E200531E6C5189C32E634F6F07B68B449D117944B +4ED1DB4596BA2F732162C24100932645471E301CFFBBD7D4B885C4DBB8FE8089 +09EFBFC715F64E8FF18114EDE2F4D2BD9E87008251914E25C9EED94E5370CF2F +00AF7374774F2A864988759BF5FE7FB4AD89CDFBA414CD30DD4ABF53C4D66488 +8D623E28150D6F919D9601A5FA2C37DAFDB17542CB2302E3B1D31308BFCEFEDE +8ECA47CAE8FC68B4CBACC55638521293F696DB54F3C3E9D4A53EECC1DFD2839E +9DE21F72C3314B9BEA085F7627A0E92F57132F4034B4444C55A425EAACCA6429 +21DE46605D2575CA80A66DD1FF83DC3454C564AF7DFD63CFB1EC8F069E9CF9FB +F50BCFBBD47783C5310AB50DA1BB3995414E9702EE8FB6CA92D2E474973604CB +3631E363CD472E4108642C699B587EEBCA0EAB5FDC4855A038E2145D082317AE +D5602BAB9C005E3D7CC7720C80DCED623FB95952970392A7257F1713970565C2 +0FCCDB109F45A1033E3329F567FEE314219A745DB7037C011E16F7D2C31596CB +92C2033D34632CDCC770CFCC682AFDAF47A229EFE7DF0EFD6E9F20CF1CDF7316 +2A24CF7BFBDC084ADF96904E4ACF4A683635B1B2FEAA3F391A7B9595EC1F5DFB +9753E9FE8D813C631E351C6CA99C2818B4D73B3DE25A7D34EC37AE1A8E65DE8D +E71CAB3BC6D4D2329B9AF1DFB595340F329D14846FAAA80F776A35F3C49FAA3A +C38C7C66DD26EA957869655E12D28A78A8CF931918B3DBFDFD23C215A6CE65B0 +5576D97108275B34F97F477172BAE043A5E8C90661B06E8AA4EEB6A86E2D1407 +085FC72E7C94766504D7F58EDAAAADC7AF08A0FE5B022E8E57EC523DAB101DE8 +46DBED3C5AB3852BD3BD9D757F2AF984C937BD0DAE690CBE0028F91B1B4C5399 +5076C265C45556AF2A8351611A95FCCA6912B361A8D6854758F9022BDD8777EB +CFEF842F1D10664B0B1550D7B0104F0FA8114E7355496EB6018991E4FFE82B94 +D83A6DA20FFAFC001AADB9F2886B175147588B4CB8CD2A6755463AA8F5F8E617 +0670A89C0C7EAA408EA67A75756156222A0AEA2A8A35E1F9676AA7F99E3AA6AA +035DCB233A60248B85B82FF451F3E8DE7B8EAE0FD2ADDB94741C121585E4C4C8 +737AE6186640E96BBE1EAB13EF38FA4911FEBF6D71D7B3D24D529D42F4A9387B +4FF73A803A71FC3F2CA6FFDCFAE20F6575F53D20584F3B72A72E7334836403E1 +C111D4E4204CAE0AB3F630801F84877E3A57CE95CDAE615EAC9DC146FA32D7AC +55B9C86154C6BF79767251443038D0554CEF078E69796DB939A5949A9824C3EE +0EE19DB2D56C128F9280A0970E2FBE7DF44CABBABDB93C01A3F784AB9690A861 +6730D4CFF2946851A273B026C18D55C2A24D612B9D05773ED74A15306FCE57A6 +52399136F78872973DD9C162206BA2FA0A7F121B8E5A8B9FE3587C7393776E68 +168FDC276D4E77468E3378788C81A4A7DC660028317C0485F023676E68C0343C +92108F2D3E0541E1A02FF488BB8C0027B73C60358148C45828B041417255BC1E +F0A86ED17332BF158EA209B709E471A5BC6FC1FE131F6B1D9DD64B0C64F945C0 +F22B89ED5969450422FFB41F67340CC7B93D63A6A32D933F3B755456AEF912F7 +92480D3C3F8D5E0423B6D6D92CE72870428D7485528DE35C8A6096309C25506D +C0E5BFC8A2181E8A8F420E8ABE1D1946B591F6546758A6029BC05859A4A3FC1D +A6925BA39ADB68BEA37FD215F93E15DB56157597C8D0E6CCE0B024892F540D34 +8327CC5D6475B2BAAD3C1B75E66A62209EF100418FBA3A00A334B551E69F5F2E +3A631655771B835D2CF917994DF5E3467100DA76EEC1804A4C4678B114470E50 +B78E607BDC6816B81862E56C55ED80B2A0A6AFA80A2599F1F142A68345810F69 +85ED999E4E26F7B3A15039D811516D467039D594A5067B657B1A8944954F0FB4 +981F50C01C96BDE026AC09CD12A4B597E676D3B30292D4FBE1528CD0FC67514C +531A35D88459D2A229A0131327F3CEBEFE42B622710AAA4D94147F69424A2B83 +31C1BF461480B07EF8A7AC13B2D547266F0DE9F179CE254F1F9A24DABCF7B479 +4E9241C98DA417F26DC1B730DD6F403488D0A130EB66D421F285A77DBBE86D72 +5C7D1ED33F6F69CB55309877832207E7788EBC7B5C4E22FBFDEEE212F6988E64 +CC95D8B563AE465A4F0B89215927BB7D3BFD8634A24AA7FCEEE5500B27E46791 +D7C2A623F9DFD42F3ACB822CD29C6B7347820D1F68B04305CDF92543ABFE9CBC +7793974C53B66542311BE0B21CB3692444256CA0CB7A12265FC270740AED685B +556438A29271D544CDA97C78E29E6A7540E46B2E5B644F1CC7F36F2F85BD1208 +97F024FD848829F1BC90BDD38F670F2EA27A1FC93827C197D885EF9554F46E55 +B810AB474056F63E751FA492BEEAABCE753FE7DCBCE43117D06ADFA0301680DA +E2E9A1FE66DD26A9D1905F4F3764892D79818AEA4F9E3DC4E628119E3C33F38A +CD1C34BF76B9C04D9E48DD49577EB0BCC21E4168D5B0D4D9EC1E94E47ADD100B +37EB00833C8CCB492AAD22F8C634B939838E00D42E75380492FFCD1F28A93D27 +915CE6F1780F6B69E2ABD839A0D6A7E92015DE7ED33914AFFDD2C8DA4B40195B +23497BDD7541FC59327272FF5D25BAC1D88BEF4E7D2A0C6DF1591DEB266BB628 +1EA176485B5D57F3590FC4D5EE8EAF53D9741786859FC871899C0EA73A23292E +2EE21E88B6E2F997F540BB146DA2379C0FE5AC4FCF8346A1966E103213092EE9 +4132D22AAD +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +cleartomark +%%EndFont +%%BeginFont: CMSY8 +%!PS-AdobeFont-1.1: CMSY8 1.0 +%%CreationDate: 1991 Aug 15 07:22:10 +% Copyright (C) 1997 American Mathematical Society. All Rights Reserved. +11 dict begin +/FontInfo 7 dict dup begin +/version (1.0) readonly def +/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def +/FullName (CMSY8) readonly def +/FamilyName (Computer Modern) readonly def +/Weight (Medium) readonly def +/ItalicAngle -14.035 def +/isFixedPitch false def +end readonly def +/FontName /CMSY8 def +/PaintType 0 def +/FontType 1 def +/FontMatrix [0.001 0 0 0.001 0 0] readonly def +/Encoding 256 array +0 1 255 {1 index exch /.notdef put} for +dup 0 /minus put +dup 2 /multiply put +dup 15 /bullet put +dup 21 /greaterequal put +dup 32 /arrowleft put +dup 50 /element put +dup 54 /negationslash put +dup 102 /braceleft put +dup 103 /braceright put +readonly def +/FontBBox{-30 -955 1185 779}readonly def +currentdict end +currentfile eexec +D9D66F633B846A97B686A97E45A3D0AA052F09F9C8ADE9D907C058B87E9B6964 +7D53359E51216774A4EAA1E2B58EC3176BD1184A633B951372B4198D4E8C5EF4 +A213ACB58AA0A658908035BF2ED8531779838A960DFE2B27EA49C37156989C85 +E21B3ABF72E39A89232CD9F4237FC80C9E64E8425AA3BEF7DED60B122A52922A +221A37D9A807DD01161779DDE7D5FC1B2109839E5B52DFBB2A7C1B5D8E7E8AA0 +5B10EA43D6A8ED61AF5B23D49920D8F79DAB6A59062134D84AC0100187A6CD1F +80F5DDD9D222ACB1C23326A7656A635C4A241CCD32CBFDF8363206B8AA36E107 +1477F5496111E055C7491002AFF272E46ECC46422F0380D093284870022523FB +DA1716CC4F2E2CCAD5F173FCBE6EDDB874AD255CD5E5C0F86214393FCB5F5C20 +9C3C2BB5886E36FC3CCC21483C3AC193485A46E9D22BD7201894E4D45ADD9BF1 +CC5CF6A5010B5654AC0BE0DA903DB563B13840BA3015F72E51E3BC80156388BA +F83C7D393392BCBC227771CDCB976E93302532471AAA096BDB7D3D00544FCEAE +86A3196E1683DB53C308F865EE7F6C22EC40D307AE114E328CC80446A3F982AF +9F6D58B72F017CA3A5E4241120081E58FA971E59192E4671C7792406813C6BB6 +A9D5CF1CDD3F0B68897404FD1C8EBFE91EF253083495F0D92A7AAA065EDA79F8 +7C9F31807E23979F8D77DA7F04B7995FCDF479274EA20690085B37441CBE529D +FBC2DEFA2D2EEFEA08B828523F05516FF44856947BB35A3023E8D44E8C7843D0 +DEBD78FEA96E4EBCCBE6CF0518DEC7AFF49CA4FEC889658CDDA8D815D37B985E +246422C972319DEAB98699ADF21AF8ABA7D738EBCE86D057D036DFFB2C173E0C +BC673338506C9C9A74B4E62D0EDB0932F31C97D7D941F1AB92C8344178EE40EB +9FD9F188F64930489DC7954201668D8C13D6771001E22F5705B21E471E3B5D64 +DEE474A8D30D4B798AE5775AD90A7F7C6111332FCE120019E7F0097A26D3CA56 +509F077E50CA3487F837C1D047C9426E90DB39CB1351E835EFF1668D43383C53 +3DD7EE40589B8952A4D4C7D2DFD4C26693C23773E66BFBFFCD1FE6B763983571 +50DA339C1FF2DAC8264F7E63C62DBF7233DBCEB419D0AB09031421ACA6087B41 +C65EEAB08E63840DAE4CE1FD48030280DBDDF6FD404017856AAA6547BCC15AA2 +33C11466F7FBEEFE888AAAC8510FEF279D7A334C96615C3BE70D6F38455D1302 +D0DC25A9C867CBA1E91CDDC5AFC0FD702F4D4CA76394FB1F71D2587547F0B6CB +9B7A6EDC1F3976E80248EDC50F7B44E5611FCF618409E454699A3269EEE11829 +B65E38EB0C414AF52484681E481C11EB0FD068FFA5635E752216F70EEACD553F +DDE57C9DAD8DF87CEFA452136F2F2F729E36DB27321FBB52301382B8EDB232CB +E2ECD487E09898D2E21AC82120BBD72392AC1E77BB67E8675801BA3AD936A02D +745F30A47F189D1049E5844F11C98E975C9F958F2F9B16732F9285B47A2512DC +A2812F89ECF035686374D4DE2C9DBC56C8AFD1772A5289C46EF51FE7CF7201CC +C0A9104251C2091456868BCACF740A013174A1274A12C6B74D404C50662AF20D +365D43592A0F56B9FD6197E86E51222315BFE79403B1471680FBE95E4F195BF9 +FF3697F2042AA882944E05F7A4119C8C263DEB03A9E4BC5232B779AA483868F3 +81F77D28A869FEC766B1169C2715DBD57F5B97756D75AAB94268934BCA947935 +A223D534E9BB485A9EC245B58C6B685F53738EF196CF727BAAE8AD15729D06DF +BFCAAD6C3C935454C59B18AB27A9992CF9DAB91BE1C4CB99B5AECFCFDD1DB902 +C831A2541C72D1FD12EF76228B99CD5D934E91F6810B0E34042B87E59A60CEEE +021963452C1FACAF9093DBAA49E4BD9164FE73BF6F28F6903291C33ABF2D978A +09FF2ED56066E878D23C297D6B5EF3516BFBEA6FB835A3FEA0A87E5AF4EA46A8 +7488627FAA32015E4648D10DA02AD389B8E18DF9B524B036BF21F4B39EF3D0CB +82A8A4EBFB2457E8F40742B16D09656ECDDADCCBBA9BDD7AE6A6E67D45FE12DA +D3D5547C257F23E462CFEE452907481FE1FE9970433078408F8C0FEEAAE553D2 +146B5B5049A9F25CACFC14BE5AA65D18501F68D5BAAA43AC403535A74C5637C0 +1EE0B6838C5BBCD271A5AAAFB8B2C46A70540571A8E890323298A4E43F8F3939 +F06FD69C154548E185EDD64DACDBADAA50D1EC81F245C64F82F5F41383B0E70E +F7788725B6E1BD626472797E4E28F0AB7CBCEACAA75C988D8B98C00D5FF3EB8E +B8AD0F5D83A69CCE1DE349AE70AB95A1C0595206FDE0753C16EFF3AB743F1F07 +6F81C2D9FEAAF165ED0D323B35D75B806A4D3A0CF91B4A8C844F8ADEF9E1315C +858825E8E59EDA0E39DF24C5C0E8C04126816A80D23232ECA1E0DCA95B14F8AF +B2057A682D8728B6AD59BC57A0274C7AE0D303465087D3C8B9FE9DF2F2A9011B +513C163A62834E7CDB5381A5EBBB30FD9353DD2B12636F6D650F284978F2 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +cleartomark +%%EndFont +%%BeginFont: CMMI7 +%!PS-AdobeFont-1.1: CMMI7 1.100 +%%CreationDate: 1996 Jul 23 07:53:53 +% Copyright (C) 1997 American Mathematical Society. All Rights Reserved. +11 dict begin +/FontInfo 7 dict dup begin +/version (1.100) readonly def +/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def +/FullName (CMMI7) readonly def +/FamilyName (Computer Modern) readonly def +/Weight (Medium) readonly def +/ItalicAngle -14.04 def +/isFixedPitch false def +end readonly def +/FontName /CMMI7 def +/PaintType 0 def +/FontType 1 def +/FontMatrix [0.001 0 0 0.001 0 0] readonly def +/Encoding 256 array +0 1 255 {1 index exch /.notdef put} for +dup 11 /alpha put +dup 17 /eta put +dup 28 /tau put +dup 60 /less put +dup 66 /B put +dup 78 /N put +dup 86 /V put +dup 100 /d put +dup 105 /i put +dup 106 /j put +dup 107 /k put +dup 108 /l put +dup 110 /n put +dup 114 /r put +dup 115 /s put +dup 116 /t put +dup 120 /x put +readonly def +/FontBBox{0 -250 1171 750}readonly def +currentdict end +currentfile eexec +D9D66F633B846A97B686A97E45A3D0AA0529731C99A784CCBE85B4993B2EEBDE +3B12D472B7CF54651EF21185116A69AB1096ED4BAD2F646635E019B6417CC77B +532F85D811C70D1429A19A5307EF63EB5C5E02C89FC6C20F6D9D89E7D91FE470 +B72BEFDA23F5DF76BE05AF4CE93137A219ED8A04A9D7D6FDF37E6B7FCDE0D90B +986423E5960A5D9FBB4C956556E8DF90CBFAEC476FA36FD9A5C8175C9AF513FE +D919C2DDD26BDC0D99398B9F4D03D77639DF1232A4D6233A9CAF69B151DFD33F +C0962EAC6E3EBFB8AD256A3C654EAAF9A50C51BC6FA90B61B60401C235AFAB7B +B078D20B4B8A6D7F0300CF694E6956FF9C29C84FCC5C9E8890AA56B1BC60E868 +DA8488AC4435E6B5CE34EA88E904D5C978514D7E476BF8971D419363125D4811 +4D886EDDDCDDA8A6B0FDA5CF0603EA9FA5D4393BEBB26E1AB11C2D74FFA6FEE3 +FAFBC6F05B801C1C3276B11080F5023902B56593F3F6B1F37997038F36B9E3AB +76C2E97E1F492D27A8E99F3E947A47166D0D0D063E4E6A9B535DC9F1BED129C5 +123775D5D68787A58C93009FD5DA55B19511B95168C83429BD2D878207C39770 +012318EA7AA39900C97B9D3859E3D0B04750B8390BF1F1BC29DC22BCAD50ECC6 +A3C633D0937A59E859E5185AF9F56704708D5F1C50F78F43DFAC43C4E7DC9413 +44CEFE43279AFD3C167C942889A352F2FF806C2FF8B3EB4908D50778AA58CFFC +4D1B14597A06A994ED8414BBE8B26E74D49F6CF54176B7297CDA112A69518050 +01337CBA5478EB984CDD22020DAED9CA8311C33FBCC84177F5CE870E709FC608 +D28B3A7208EFF72988C136142CE79B4E9C7B3FE588E9824ABC6F04D141E589B3 +914A73A42801305439862414F893D5B6C327A7EE2730DEDE6A1597B09C258F05 +261BC634F64C9F8477CD51634BA648FC70F659C90DC042C0D6B68CD1DF36D615 +24F362B85A58D65A8E6DFD583EF9A79A428F2390A0B5398EEB78F4B5A89D9AD2 +A517E0361749554ABD6547072398FFDD863E40501C316F28FDDF8B550FF8D663 +9843D0BEA42289F85BD844891DB42EC7C51229D33EE7E83B1290404C799B8E8C +889787CDC2BAF26F242EBDCFACBDBB4366B3FF8B61EB77A2D5CB8ED043CC677F +065CB219AE7093997133905126A3555B89E83F0FEA679B2E45E3C4D16BB578F6 +83778A44C76A5EC27B66C8D35AFB9F04D1979A59007A57A3B36EF9FA34CE5233 +324EC98F38FF79B7F6C29D16C498D0F26FBE1E2CFC9A46EA99F7717795F145F4 +A5565AF88877C525ECD0E9ECD1D19B731E50363A46D5B576351B4657116EA4AE +60FD15F8F94834684DA50CB1B30D2B647AAFB2E46AFE1B18CB859210A02318F5 +5FFAC83A06F9A29D11C64BF5F3B2F05F7573F6AB8C938C783F832674A775B047 +C8F9249ECA759C70C7DBE31A20BE54981042CF338C20FAB5101FE265A2A2848A +05D5B8743FDBFFB746014AFD04E194767578BB4BC09C4BA1718654F22BE0923A +ACDBBC1D55536150E3C8882DDE937CC0FDCD022DF344C7BFDEA6C7DCA46DF1A0 +E650760D02F9FEA92E2054BD3AB7929C2681D29302935DF4EBBC79E94BFF2981 +6AA850454DD5D1484B7B2C77E041B8D8704EEC0C125F876611B8734F92D2D42F +1E105D556D760A67D53F63C21F2966ECEA481FCBA69A085474D09244E57A2949 +515CC7E42F3BC53D3351582F413CBE9D5F0AA250010DF0B8852DCDEFDB413E6A +0A52476549E949B19FAB5ADBC822B75CE2BAFCB9AA2BDD0F1B09A0488909FAF7 +5248E195C9FECD66D31D2154BE3C5F7E9D5999A3D98887FF6AC592AAC1B333BD +2BA0E7FEBE34AAD138972FFB0893B4322E8645A207120454BC08C20E4261B48D +D4A334431324EBA58D35756A8B8B2FD10B2D83021582F4606FDB40ECD6719195 +938531D9645973067D2444D81E302BE473EE06BB0893331F84AB44249C56F527 +BE62E63C2478BE969A713BB65D6483DE21E6AEB9F1EAF0372A05BE6FC8329D24 +8267497DD6B34210744A5C2EA400B522A40C59F9996D3753D9BA6A5E14878AC3 +0E15662ED4D857D9719D1B0F0C2A4B74F2DC3E9702DE4E2C2F10F9393A21F9B0 +C4B115359D25C9F2DA0128A91AE272ABFD45A4F454CC9D7A064FD0E639CD7BBE +E21ADF9346AA80F24999CA788B4A8FED53E3388664B9D51D6E2F4FADD3A70AC9 +8243F24072A524F43F5D72CFE53060EA80636B66B6399CA44F2E74E0D10C97A2 +3C0205E7D880453E46BC1547FF2CBFAD095757F030D647E3E86F3224B336F26A +D6835FE239158219B5FD715B3B2E8F74A053BE279A1188E2950E62DF353AC6A3 +BDD4F2E80225FA9DBD60E648DD0C5B4537D37F529F9E05D273422A577AD06102 +5C4DD3BF98C4348C3164EFFE730583EFBC984E752E634045F005A006F983AFD7 +E52F3DB0775E8C563E7BA885350F82680252F88BE2779C407398FC10F4BD5B47 +67D59D232048FCEB25F25CFB1CDBF9424112F2296615EC701949BAD7214CD031 +3CEE6CBE843A3AE24171DC8DF8E2187857C95EEADD57209F35A1F395BD1FC1D7 +8A897F8DDC326F7D54554685A5360E28CCF0E140E00CE7BAA3E5D31BB9835CA7 +5BD8EDF15F75CF786724CA913F9F53A0D31E2F0E4965D2D3A218B09155BEAF25 +852D8407C2D1F14D7A1EB2FAE19752BECCD343E3FA070294B572C31D4F0773AF +1EDC366D7938F5D3AD59D0B752B7631FF6C5D1FCA3D14EA18FEA28DE9B208C8A +BEEBE3E8D3CAC61E769CC6A02971E6FF9A5E464551912750C604E314C4A2EA60 +DE5372EBAB851336E4DB3B7736A8A836283D97CA05D3F68373EE53DB20B54E6B +F632C08B90644B190B2AF07423F5E432442BA187E15C5D70458E2D3EEAB2BB81 +54870B4ECA71C5D3E8F8BED323E6B2BF0014B66ABD4D7DC362CD4FBE29D0D6F4 +5AEA8CFC020F9B3B9D30BBE3E8AB88353ED669F70B0117E792BCFFE56D1CA794 +A2E2601C43F02E71F5A59D9EE6B9580C54FCFC09706FBD2BE11EAE3C0CB6F0AF +D1A1116CB023E17340C9BCBE291BDA5BA88866E3D8862F13772A3CAF168970D3 +ECE65BCE9CD69D7BB87D42D75F3EC10480B642BC7C06797CC24B06ED2459538C +E73327A102689DF0E16258CBA0F6793E226DF350930442A2A904A3F537604BD7 +479E0EFCA3EE2AB78E63C028673683D203BDB1F30480BF01C50162FEEF71917F +B240CF393F6D5E8AF3E8E2F1A9CA0D0EE0E8B1449890250FAD0A8DFB1FBC663B +2E225613EB5D1A1B0BCE536B4999428034EC9BA602A4A605D64E6F7204413669 +1A295DB9DFF2EFB1A2FD4153A2714D4FB9EB868CE0C20065932562F271B8F0C0 +1645F0DACBF12BDC4C162749B986CBD7ABDAEAD8DD94B3C2B87D1C9E18DE3F45 +E9B8A21630EE83E832C6A3887D3150684F1F9B28ED4C438A145B7C26ABC7B41D +22D633E713A146B718894055A0C5ACE6D556E9882EF23E7229D00E2038251DE6 +71EBF0B910E4B2ABF00774F3BAFDA91B893E217CFAA277CAB718D21E2432921B +B82C5FFB8BF276719F6815C09493BC8FE82E33DB0EF703F3F54890D4129102A7 +5FC02DF9701988D3F6B5445793205FDB224C61C9D9C30E262C044D773BCEAF69 +6162C2C76EDB31978907A8F5EB41A5B2A48EAB6C1195655F6E6997B6D9A5A6C0 +A78105E503F1E02DF706DB93DC8AF589BCFD6ADAF983541DEAC144F640DD4582 +7AE7688E17150775A69DDF03AFD9594B715D3722589AE210157F44692F330AC3 +F5260A3A795803A001E4342BB0474A23734F0D779FFBD7FA96FF81418DECD960 +9BACEF3159544A5A167705B297D517A49CB87D8FF5DF8A8C1EA77671AAB3AD93 +6EE3F25283820B64F400FC633043F5242F86AD93C1B7F0246CA60B4C894C87F2 +EF125ED3C271B45F90AE0B937E9F763C84256F3F47BDFB83CE926A8C371191AC +312928DF5C87A3282A881A520592C62295408AD92A767E1084861DB010919616 +59FD6DE85787A18CB27DC6C0C2F4DDD68CA539D900774696CEB53FBAA4CA6BF9 +4D7AFF39DB99019B8008D8403CFB0B56CD84E592FA5CE57E4BB97C57C8FD80C4 +7BCC26E150DBFAB0CA59A0ACA70345CD00B0B00428421C13173D49D74F8D6684 +302AC70BBD77036FC71750D670F8B0C8162BCEF3DB3CFF161FA1A18F9FBD23C9 +CFE9E9AE82B804B236F74EB2A197936EBAFB01D4E6939B90A4BC5350BDCC0FBD +49E97502F9125C11F8C7BA7B2C20074766D9D431ED27039C82D87C35C3E7D318 +2830647F250858FE041E01BFAC3B68ADC806BA957074E078B2429C872B8F5AC3 +3742327FF14FC0E3C92F3288FA564B8679EA8D8F12241B8AB3D838697B8E77E5 +9850C9A9A8C003973B6A8D01EE6481ADD3EA7170FDEA3D7154A3B6CC7A57E77B +8EEDACF237DBE78500A1A8BA50D742A0E96155BA4FE0B957739BDF7A3750813F +3E46A33D18126974A28D776CC89A462A4468B5A83B9504953EF2F860804B5858 +CBA60B752245F82D6F6351150441DC1A1FF10D1C21E9D30C9372AC3C98EA4D0C +F5D7F0ADFA32B4795F30AF0D70F3726B5554B401C56E9B8F22737CB95F2DC629 +8115139AD53EF5AEEAD88FB188A76EC9742DFDBF8FF7875C6AE1FC95FFC0CE5B +DF1FCD7237BCFD950B51C7242AFD827DF3D8A33924FD382EB384E0D597B47402 +1439BE425507C45E2A3E84C2E10C2D3049A56D29EF07E7D8BA97AC78AC67712A +E1250D02881E151A0B35323DB7965F0ADAB0FBCAC6993915FA369A9DD5B352F5 +CCA00FAA6058378CA6595873984EF6602C56DF9C2A3647316E3C1F223E40531A +C2DF6531CB053D996577EE1C3084484456E01C1BE186AC66C14E640D3FFBA030 +78CD7A5A6D11562A5D939D21CD2C618E9648684A62DC5A0B7031FE9E4E46D443 +29BA0188D4334D93B2B08E5A1645D3DD8F89F6AD12DE50D712729212849614A0 +37F6FE2BA4AC810E536C02254554F461F912E904B2832C00E7FDC67A3972EEB5 +309599D6CD4C744DB0125FDA4C8514FE0E1F7E0E65ACEAAD0A01DC92EF630A1D +5B57BBE25DF1F7A184E9D8DC6F65F139725BC4AB4CB085AF49A2260838DE4985 +084C7DBE968D16B03E4CC33FEF7CA14AB0FED4A7B2F3E25254D9AD5375BE6B8C +8A5F649849F06EE2E4230F33E8AF7B2305315021C106C3C162739A7D8B8F251E +58F206991E6126D4AC94AB025F3901F3DFDA06D949DD8454581501DC58D813CB +DFEFCBA7B4E77F3071451E06310E8E2FE68A2DF24A96D6FA97F0CADA5D583B4C +D69DCE527D0595ED1926D98EF6E9244B01B69CE38FDC29164CDD044F460FDE8C +3E0D42EAAA1FE3FB78852CCC182A29B3F6CD100BAD23609C1E628F6F6F87C9B4 +140556B9E7B4F959926074576186A3A29ACCF2F087B790F3D74657C5172D511B +DD0D469E3A5C6020359CBAF5E30FA2069644DF98E98D972ACEB4022A56EB7D2B +86A6F5F7F8CBB569425E7FF4FEECE58ABAF7A0ACE28D56938F5373441E444B0A +67EDA16E5C8D503EEF9891CA7DA993087DBD9E725D1B21CEF96A9B5D8144D00E +D980B98D4DFBA4D84FDC8EDCE0847D979FADCA832E6EA28485F6A36024ADEE8C +08F7848B2B2AC7806B713D6E6B9FB4FE1EDDD17AE2F9D52E705F4F23386977A0 +FACEE53745A829D745A641E36963E61E99196830241BE1F1350F1A25D3D1F8AD +05797E1E1520F87AD6867E6744946AC63F3ED1CB18F6AF5BC0A2D01D40FA85BD +FDB0EA39A2224783B23FC254007F7035668C2D937790C75BC5EDEBCC1EFF361F +9E0F3DCB1ED7A8095DE536C8BB9221CD5A5E038DC9C2ECAF59BEBA15C280FE7F +E8E237C804A48D69039ABF7D57F8410C64B97B4BB058A1BC3D066DDA0CDF6A7E +67D6BCD368F25BE95A7BCFF7FDBCAE674EE1035E0D2FF7CE93AD592BA10CF31F +5C7F53A42D6579933E855F94AB40B4CA7D3C001C8A13EB69784958E64348D73F +50914BF5B3C238D1B9CA0BBD50917430062D848833CB80FDC5FACB8131A6587F +182FA0CB4CD5B2883D3A5D464D84559A38AFBEBE68028B40B33442AA225689E9 +ADF8DC21924B95 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +cleartomark +%%EndFont +TeXDict begin 39139632 55387786 1000 600 600 +(D:/Texte/Sensors/Fusion/Fusion-chapitre/Fusion-chapter.dvi) +@start /Fa 133[27 31 1[47 1[35 20 27 27 1[35 35 35 51 +20 31 20 20 35 35 20 31 35 31 35 35 12[39 35 43 1[43 +1[47 59 2[31 23 2[43 43 51 47 1[43 6[23 1[35 1[35 35 +35 1[35 1[35 1[18 23 18 2[23 23 23 39[{ TeXBase1Encoding ReEncodeFont } +49 70.5687 /Times-Italic rf /Fb 175[70 80[{}1 58.1154 +/CMEX10 rf /Fc 201[0 50[31 2[45{}3 41.511 /CMSY5 rf /Fd +194[43 8[28 28 28 28 28 48[{}6 41.511 /CMR5 rf /Fe 193[65 +62[{}1 83.022 /MSAM10 rf /Ff 214[24 24 40[{}2 49.8132 +/CMR6 rf /Fg 205[42 50[{}1 49.8132 /CMSY6 rf /Fh 167[102 +88[{}1 66.4176 /CMEX10 rf /Fi 173[48 82[{}1 66.4176 /MSBM7 +rf /Fj 139[24 7[20 1[25 22 8[26 17[48 78[{}6 49.8132 +/CMMI6 rf /Fk 162[20 1[20 29[55 11[35 35 4[55 1[27 27 +40[{}8 66.4176 /CMR8 rf /Fl 133[33 1[40 2[41 25 33 32 +3[43 62 21 37 29 24 3[33 36 2[37 29 11[41 43 3[54 56 +6[55 2[58 2[53 3[35 55 1[20 23[33 16[35 5[45 9[59 1[{}30 +66.4176 /CMMI8 rf /Fm 138[39 23 1[31 1[39 35 39 1[20 +2[20 39 35 23 31 39 1[39 35 12[47 5[51 7[43 14[35 35 +35 35 35 35 35 2[18 46[{ TeXBase1Encoding ReEncodeFont }26 +70.5687 /Times-Bold rf /Fn 139[23 5[37 1[20 31 24 22 +38[43 66[{}7 41.511 /CMMI5 rf /Fo 201[0 3[45 66 19 14[66 +12[52 16[34 2[52{}8 58.1154 /CMSY7 rf /Fp 206[25 49[{ + TeXBase1Encoding ReEncodeFont }1 49.3978 /Times-Roman +rf /Fq 194[51 8[33 33 33 33 33 4[51 1[26 26 40[{}9 58.1154 +/CMR7 rf /Fr 167[120 4[69 2[88 14[73 73 3[74 1[74 1[74 +6[73 73 14[66 66 5[62 6[61 61 50 50 6[48 48 6[38 38{}21 +83.022 /CMEX10 rf /Fs 173[60 3[60 78[{}2 83.022 /MSBM10 +rf /Ft 135[44 9[46 69 23 2[23 7[42 3[23 1[23 29[65 1[23 +1[42 42 42 42 42 42 42 42 42 42 4[65 1[32 32 40[{}23 +83.022 /CMR10 rf /Fu 133[39 41 47 1[40 1[30 39 37 1[42 +40 50 73 25 43 34 29 3[39 43 36 1[44 10[48 7[67 81 5[65 +1[61 69 1[63 3[65 42 65 23 23 23[39 5[36 10[41 2[37 1[47 +53 4[65 4[69 1[{}39 83.022 /CMMI10 rf /Fv 133[39 44 50 +66 44 55 28 39 39 1[50 50 55 78 28 50 1[28 55 50 1[44 +1[44 1[50 12[61 55 2[61 1[72 1[61 2[39 2[66 66 72 66 +66 66 11[50 50 50 50 50 2[25 4[33 33 40[{ + TeXBase1Encoding ReEncodeFont }41 99.6264 /Times-BoldItalic +rf /Fw 206[29 49[{ TeXBase1Encoding ReEncodeFont }1 58.1154 +/Times-Roman rf /Fx 149[23 2[42 42 44[46 46 1[0 3[55 +83 7[83 7[83 6[65 65 3[65 65 4[42 12[65 1[65{}17 83.022 +/CMSY10 rf /Fy 107[46 25[32 37 37 55 37 42 23 32 32 42 +42 42 42 60 23 37 1[23 42 42 23 37 42 37 1[42 12[46 3[51 +3[46 2[28 7[51 13[42 42 42 2[21 28 21 2[28 28 28 35[42 +42 2[{ TeXBase1Encoding ReEncodeFont }41 83.022 /Times-Italic +rf /Fz 152[35 35 47[0 3[47 17[71 10[55 5[35 12[55 1[55{}9 +66.4176 /CMSY8 rf /FA 75[23 29[35 1[31 25[31 35 35 51 +35 35 20 27 23 35 35 35 35 55 20 35 20 20 35 35 23 31 +35 31 35 31 7[51 51 67 51 51 43 39 47 1[39 51 51 63 43 +51 27 23 51 51 39 43 51 47 47 51 65 4[20 20 35 35 35 +35 35 35 35 35 35 35 20 18 23 18 40 1[23 23 37[39 2[{ + TeXBase1Encoding ReEncodeFont }74 70.5687 /Times-Roman +rf /FB 135[38 3[25 31 31 3[41 1[21 35 27 23 4[35 13[39 +7[53 11[50 5[52 31[31 10[34 5[43 11[{}17 58.1154 /CMMI7 +rf /FC 134[50 50 72 50 55 33 39 44 1[55 50 55 83 28 55 +1[28 55 50 33 44 55 44 55 50 9[100 3[55 72 1[61 78 72 +4[39 2[61 66 72 72 1[72 10[50 50 50 50 50 50 2[25 46[{ + TeXBase1Encoding ReEncodeFont }42 99.6264 /Times-Bold +rf /FD 138[46 28 32 37 1[46 42 46 69 23 2[23 46 42 1[37 +1[37 46 42 12[55 7[55 7[60 2[60 12[42 42 42 42 2[21 43[46 +2[{ TeXBase1Encoding ReEncodeFont }26 83.022 /Times-Bold +rf /FE 64[37 42[37 25[37 42 42 60 42 42 23 32 28 42 42 +42 42 65 23 42 23 23 42 42 28 37 42 37 42 37 3[28 1[28 +3[78 1[60 51 46 55 2[60 60 74 51 60 32 28 60 60 46 51 +60 55 55 60 1[37 3[23 23 42 42 42 42 42 42 42 42 42 42 +23 21 28 21 47 1[28 28 28 35[46 46 2[{ TeXBase1Encoding ReEncodeFont } +73 83.022 /Times-Roman rf /FF 134[66 1[96 1[74 44 52 +59 2[66 74 111 1[74 1[37 74 1[44 59 1[59 1[66 13[74 4[96 +7[81 1[96 2[96 65[{ TeXBase1Encoding ReEncodeFont }21 +132.835 /Times-Bold rf /FG 139[39 1[52 1[65 7[65 2[52 +3[58 29[84 17[58 49[{ TeXBase1Encoding ReEncodeFont }8 +116.231 /Times-Bold rf end +%%EndProlog +%%BeginSetup +%%Feature: *Resolution 600dpi +TeXDict begin +%%PaperSize: A4 + end +%%EndSetup +%%Page: 1 1 +TeXDict begin 1 0 bop 523 282 a FG(Chapter)27 b(1)523 +448 y FF(An)33 b(Asynchr)n(onous)g(Diffusion)g(Scheme)f(f)m(or)i(Data) +523 598 y(Fusion)f(in)g(Sensor)g(Netw)o(orks)523 886 +y FE(Jacques)20 b(M.)g(Bahi,)h(Abdallah)e(Makhoul)f(and)i(Ahmed)f +(Mostef)o(aoui)523 1720 y FD(Abstract)34 b FE(One)17 +b(important)e(issue)j(in)f(sensor)f(netw)o(orks)g(is)i(parameters)e +(estimation)g(based)h(on)523 1820 y(nodes)i(measurements.)f(Se)n(v)o +(eral)h(approaches)f(ha)n(v)o(e)h(been)h(proposed)d(in)j(the)g +(literature)f(\(cen-)523 1919 y(tralized)i(and)g(distrib)n(uted)f +(ones\).)g(Because)i(of)f(the)g(particular)f(noisy)h(en)m(vironment,)d +(usually)523 2019 y(observ)o(ed)26 b(in)j(sensor)f(netw)o(orks,)f +(centralized)g(approaches)g(are)h(not)g(ef)n(\002cient)g(and)g(present) +523 2119 y(se)n(v)o(eral)g(dra)o(wbacks)f(\(important)f(ener)o(gy)h +(consumption,)f(routing)h(information)f(maintain-)523 +2218 y(ing,)19 b(etc.\).)g(In)g(distrib)n(uted)g(approaches)e(ho)n(we)n +(v)o(er)m(,)g(nodes)i(e)o(xchange)e(data)j(with)f(their)h(neigh-)523 +2318 y(bours)f(and)f(update)h(their)g(o)n(wn)g(data)g(accordingly)e +(until)j(reaching)d(con)m(v)o(er)o(gence)f(to)k(the)f(right)523 +2417 y(parameters)24 b(estimate.)i(These)f(approaches,)e(although)h +(pro)o(vide)f(some)i(rob)n(ustness)g(against)523 2517 +y(nodes)d(f)o(ailure,)g(does)h(not)g(address)f(important)g(issues)h(as) +h(communication)c(delay)j(tolerance)523 2617 y(and)d(asynchronism)e +(\(i.e.,)h(the)o(y)h(require)f(that)h(nodes)g(remain)f(synchronous)e +(in)k(communica-)523 2716 y(tion)k(and)f(processing\).)f(In)i(this)g +(chapter)m(,)f(we)h(tackle)g(these)g(issues)h(by)f(proposing)d(a)k +(totally)523 2816 y(asynchronous)21 b(scheme)j(that)g(is)g +(communication)d(delay)j(tolerant.)f(The)g(e)o(xtensi)n(v)o(e)g +(simula-)523 2916 y(tions)d(series)h(we)g(conducted)d(ha)n(v)o(e)h(sho) +n(wed)g(the)i(ef)n(fecti)n(v)o(eness)d(of)i(our)g(approach.)523 +3281 y FC(1.1)41 b(Intr)n(oduction)523 3513 y FE(Recent)17 +b(years)f(ha)n(v)o(e)h(witnessed)f(signi\002cant)h(adv)n(ances)e(in)i +(wireless)h(sensor)e(netw)o(orks)g(which)523 3613 y(emer)o(ge)21 +b(as)i(one)f(of)g(the)g(most)h(promising)d(technologies)h(for)h(the)g +(21)2555 3583 y FB(st)2638 3613 y FE(century)f([1)o(].)h(In)g(f)o(act,) +523 3713 y(the)o(y)17 b(present)f(huge)g(potential)g(in)i(se)n(v)o +(eral)e(domains)g(ranging)g(from)g(health)h(care)g(applications)523 +3812 y(to)24 b(military)g(applications.)e(In)i(general,)f(the)h +(primary)e(objecti)n(v)o(e)h(of)h(a)g(wireless)h(sensor)f(net-)523 +3912 y(w)o(ork)g(is)h(to)g(collect)f(data)g(from)f(the)i(monitored)d +(area)i(and)g(to)g(transmit)h(it)g(to)f(a)h(base)f(station)523 +4011 y(\(sink\))d(for)g(processing.)g(Often,)g(the)h(ultimate)f(goal)h +(is)g(to)g(deri)n(v)o(e)f(an)h(estimate)g(of)g(a)g(parame-)523 +4111 y(ter)i(or)f(function)f(of)h(interest)h(from)f(these)g(ra)o(w)h +(data)f(\(e.g.,)g(source)g(location,)f(etc.\))h([2,)g(3,)h(4)o(].)p +523 4182 851 4 v 523 4279 a FA(Computer)19 b(Science)g(Laboratory)-5 +b(,)20 b(Uni)n(v)o(ersity)f(of)f(Franche-Comt)t(\264)-27 +b(e)21 b(\(LIFC\))523 4362 y(Rue)d(Engel-Gros,)i(BP)e(527)523 +4445 y(90016)h(Belfort)g(Cede)o(x,)f(France)523 4528 +y(e-mail:)g Fz(f)p FA(\002rstname.lastname)p Fz(g)p FA(@uni)n +(v-fcomte.fr)3252 4960 y(1)p eop end +%%Page: 2 2 +TeXDict begin 2 1 bop 523 100 a FA(2)1011 b(Jacques)20 +b(M.)d(Bahi,)g(Abdallah)i(Makhoul)f(and)h(Ahmed)f(Mostef)o(aoui)523 +282 y FE(In)23 b(case)h(where)f(the)h(sensors)g(are)f(carrying)f(out)h +(multiple)g(tasks)h(and)f(need)g(this)h(estimate)g(to)523 +382 y(mak)o(e)c(local)g(decision,)f(the)h(deri)n(v)o(ed)f(estimate)h +(is)h(then)f(sent)h(back)e(to)h(them.)623 482 y(The)j(abo)o(v)o(e)g +(data)g(processing)g(scheme)g(is)i(usually)f(kno)n(wn)e(as)j +Fy(centr)o(alized)e(data)g(fusion)p FE(.)523 581 y(In)i(this)g(scheme,) +f(each)h(sensor)g(sends)g(its)h(data)e(either)h(directly)-5 +b(,)23 b(if)j(it)f(is)h(located)e(in)i(the)f(im-)523 +681 y(mediate)e(neighbourhood)18 b(of)23 b(the)g(sink,)g(or)f(by)h +(multi)g(hops)g(relays)f(to)i(the)f(data)g(fusion)f(cen-)523 +780 y(ter)k(via)f(wireless)i(communications.)22 b(Besides)27 +b(the)f(important)e(cost)i(in)f(term)h(of)f(ener)o(gy)f(re-)523 +880 y(sources)e(consumption)e(due)i(mainly)f(to)i(wireless)g +(communications)d(\(i.e.,)i(sensors)g(that)g(are)523 +980 y(located)c(v)o(ery)f(f)o(ar)i(a)o(w)o(ay)f(from)g(the)h(base)f +(station,)h(requires)e(an)i(important)e(amount)g(of)h(ener)o(gy)523 +1079 y(to)26 b(send/recei)n(v)o(e)f(data)h(to/from)f(the)h(sink\),)g +(this)h(scheme)f(does)g(not)g(hold)f(good)g(rob)n(ustness)523 +1179 y(against)d(communication)d(loss)k(neither)f(against)f(nodes)h(f)o +(ailures.)g(Furthermore,)d(it)k(requires)523 1279 y(that)g(each)f(node) +g(maintains)g(rooting)g(information)e(to)j(reach)f(the)h(sink.)f(This)h +(is)h(particularly)523 1378 y(challenging)18 b(and)h(resources)g +(consuming)f(in)i(case)h(where)e(netw)o(ork)g(topology)f(is)j +(constantly)523 1478 y(changing)d(due)h(either)g(to)h(nodes)f(f)o +(ailures)h(or)f(communications)e(unreliability)i(or)g(nodes)g(mo-)523 +1577 y(bility)-5 b(.)623 1677 y(Distrib)n(uted)38 b(approaches)e(were)i +(proposed)f(as)i(interesting)e(alternates)i(based)f(on)g +Fy(in-)523 1777 y(network)31 b FE(processing)e(which)i(may)-5 +b(,)29 b(in)i(man)o(y)f(cases,)h(signi\002cantly)f(decrease)h(the)f +(ener)o(gy)523 1876 y(consumed.)17 b(In)j(f)o(act,)f(in)h(such)f +(approaches,)e(nodes)i(do)g(not)g(need)g(to)g(hold)g(global)g(kno)n +(wledge)523 1976 y(about)e(the)h(current)f(netw)o(ork)g(topology)f +(since)i(each)g(node)f(communicates)f(only)h(with)h(its)i(im-)523 +2076 y(mediate)k(neighbours.)e(The)i(unkno)n(wn)e(parameter)h(estimate) +i(is)g(then)g(successi)n(v)o(ely)e(carried)523 2175 y(out)18 +b(through)e(local)i(computation)e(from)h(the)h(e)o(xchanged)d(data.)j +(The)g(adv)n(antages)e(of)i(such)g(ap-)523 2275 y(proaches)23 +b(are)g(numerous:)g(\(a\))g(no)h(central)f(data)h(fusion)f(base)h +(station)g(is)h(required)d(as)j(e)n(v)o(ery)523 2374 +y(node)d(holds)h(the)g(estimate)h(of)f(the)g(unkno)n(wn)e(parameter;)h +(\(b\))h(multi-hop)e(communications)523 2474 y(are)g(a)n(v)n(oided)e +(\(only)h(direct)g(communications)e(between)i(neighbours)e(are)j +(needed\))e(and)h(con-)523 2574 y(sequently)j(maintaining)f(rooting)h +(data)g(is)i(not)f(needed)f(an)o(y)g(more;)g(\(c\))h(better)g(beha)n +(viour)d(is)523 2673 y(observ)o(ed)i(in)i(front)e(of)i(communication)c +(unreliability;)j(\(d\))g(Netw)o(ork)g(scalability)g(is)i(better)523 +2773 y(supported)i(than)h(in)g(centralized)g(approach)e(due)i(mainly)g +(to)h(direct)f(communications)e(be-)523 2873 y(tween)20 +b(neighbours;)e(etc.)623 2972 y(Ne)n(v)o(ertheless,)23 +b(man)o(y)g(of)h(the)g(proposed)f(distrib)n(uted)g(approaches)f +(present)i(some)g(insuf-)523 3072 y(\002ciencies)f(\(see)g(ne)o(xt)f +(section\).)g(F)o(or)h(instance,)f(the)h(\003ooding)e(approach)g +(requires)h(that)h(each)523 3171 y(node)18 b(holds)g(a)h(relati)n(v)o +(ely)e(important)g(storage)h(space.)h(Other)f(approaches)e(mak)o(e)j +(the)f(unprac-)523 3271 y(tical)24 b(assumption)f(of)g(communication)e +(synchronization)g(between)i(sensors)h([2)o(,)g(5])g(and)f(do)523 +3371 y(not)18 b(tolerate)g(communication)e(delays)i(neither)f(nodes)h +(f)o(ailures.)g(These)g(weaknesses)g(remain)523 3470 +y(v)o(ery)j(restricti)n(v)o(e)h(in)g(sensor)g(netw)o(ork)f(en)m +(vironment)e(where)j(on)f(one)h(hand)f(nodes)h(are)g(prone)523 +3570 y(to)17 b(frequent)d(f)o(ailures)i(as)h(the)o(y)f(are)h(dri)n(v)o +(en)d(by)i(batteries)h(and)e(on)h(the)h(other)e(hand)h(communica-)523 +3670 y(tions)21 b(are)g(almost)g(unreliable)f(and)h(prone)e(to)j +(delays.)e(Moreo)o(v)o(er)m(,)e(these)k(tw)o(o)f(limitati)n(v)o(e)g +(fea-)523 3769 y(tures)i(lead,)g(in)g(addition)f(to)h(nodes)g(mobility) +-5 b(,)21 b(to)j(dynamically)d(changing)g(netw)o(ork)h(topolo-)523 +3869 y(gies.)16 b(In)f(order)g(to)h(o)o(v)o(ercome)d(the)j(abo)o(v)o(e) +e(mentioned)g(weaknesses,)h(we)h(propose)e(and)h(in)m(v)o(esti-)523 +3968 y(gate)g(in)h(this)g(chapter)f(a)h(no)o(v)o(el)f(approach)e(for)i +(data)h(fusion)f(in)h(sensor)f(netw)o(orks.)g(The)g(k)o(e)o(y)h(idea) +523 4068 y(behind)22 b(is)i(to)g(de)n(v)o(elop)d(a)j(consensus)e +(algorithm)g(that)h(allo)n(ws)h(all)g(nodes)e(of)h(the)h(sensor)f(net-) +523 4168 y(w)o(ork)16 b(to)g(track)g(the)g(a)n(v)o(erage)f(of)h(their)g +(pre)n(vious)f(measurements)g([6)o(,)i(2)o(,)g(5)o(,)g(7)o(,)g(8)o(,)g +(9,)f(10)o(,)h(11)o(,)f(12)o(].)523 4267 y(More)j(speci\002cally)-5 +b(,)19 b(our)g(proposition)f(is)j(based)e(on)h(an)g Fy(in-network)f +(async)o(hr)l(onous)e(iter)o(ative)523 4367 y(algorithm)p +FE(,)23 b(run)g(by)g(each)h(node)f(and)g(in)h(which)f(nodes)g +(communicate)f(with)i(only)f(their)h(im-)523 4467 y(mediate)c +(neighbours.)d(The)j(main)g(contrib)n(utions)e(of)i(our)f(w)o(ork)h +(are:)523 4611 y Fx(\017)58 b FE(Our)23 b(approach)e(does)i(not)g +(require)f(an)o(y)g(synchronization)e(between)j(nodes)f(as)i(it)g(is)g +(basi-)623 4711 y(cally)i(asynchronous.)c(In)k(other)f(w)o(ords,)g +(each)h(node)f(communicates)f(its)j(data)f(to)g(its)h(in-)p +eop end +%%Page: 3 3 +TeXDict begin 3 2 bop 523 100 a FA(1)42 b(An)18 b(Asynchronous)j(Dif)n +(fusion)e(Scheme)g(for)g(Data)f(Fusion)h(in)f(Sensor)h(Netw)o(orks)581 +b(3)623 282 y FE(stantaneous)16 b(neighbours)f(at)j(its)g(o)n(wn)f +(\224rhythm\224)e(i.e.,)i(no)g(delays)h(between)e(nodes)h(are)g(ob-)623 +382 y(serv)o(ed)f(in)g(our)h(approach.)d(This)j(is)h(particularly)d +(important)g(because)h(in)h(the)g(synchronous)623 482 +y(schemes,)i(as)h(the)g(one)f(reported)f(in)i([2)o(],)g(an)o(y)e(delay) +h(between)g(tw)o(o)h(nodes)f(in)h(the)g(netw)o(ork)623 +581 y(will)j(result)g(in)f(a)i(global)d(delay)h(o)o(v)o(er)g(the)g +(whole)g(netw)o(ork)g(since)h(all)g(the)f(nodes)g(are)h(syn-)623 +681 y(chronous.)16 b(This)j(is)h(particularly)e(limitati)n(v)o(e)g(in)h +(heterogeneous)d(sensor)j(netw)o(orks)f(where)623 780 +y(nodes)h(ha)n(v)o(e)h(dif)n(ferent)e(processing)h(speeds.)523 +880 y Fx(\017)58 b FE(As)27 b(a)f(consequence)e(of)j(its)g +(asynchronism,)d(our)h(proposed)f(approach)g(totally)j(tolerates)623 +980 y(communication)14 b(delays.)j(This)g(feature)f(is)i(of)f(an)g +(important)f(matter)g(because)h(sensor)g(net-)623 1079 +y(w)o(orks,)22 b(as)i(it)h(is)f(commonly)d(kno)n(wn,)h(are)h(prone)f +(to)h(en)m(vironmental)d(perturbations)i([13)n(])623 +1179 y(when)d(communication)f(delays)h(occur)h(more)f(frequently)-5 +b(.)523 1279 y Fx(\017)58 b FE(The)24 b(proposed)f(distrib)n(uted)h +(algorithm,)f(as)j(pro)o(v)o(en)d(theoretical)h(and)g(v)n(alidated)g(e) +o(xperi-)623 1378 y(mentally)-5 b(,)17 b(supports)g(dynamic)g +(topologies)g(and)h(guarantees)f(that)i(each)f(sensor)g(node)g(will)623 +1478 y(con)m(v)o(er)o(ge)f(to)j(an)g(accurate)f(estimate)i(of)f(the)g +(unkno)n(wn)e(parameter)-5 b(.)623 1644 y(Ho)n(we)n(v)o(er)m(,)27 +b(as)j(for)e(an)o(y)h(iterati)n(v)o(e)g(approach,)d(our)j(approach)e +(could,)h(under)g(certain)h(en-)523 1743 y(vironmental)37 +b(conditions,)h(consume)g(more)g(netw)o(ork)g(resources,)g(mainly)h +(communica-)523 1843 y(tions,)15 b(than)g(other)g(centralized)f +(approaches,)f(speci\002cally)i(in)h(\224perfect)e(en)m(vironment\224)e +(where)523 1943 y(nodes)27 b(and)g(communications)e(are)j(totally)f +(reliable)g(and)g(the)h(netw)o(ork)e(topology)g(is)i(\002x)o(ed.)523 +2042 y(Ne)n(v)o(ertheless,)h(we)i(note)g(here)f(that)g(our)g(concern)f +(is)j(more)d(focused)h(on)g Fy(\224noisy)h(en)m(vir)l(on-)523 +2142 y(ment\224)20 b FE(in)h(which)e(communication)f(unreliability)g +(and)i(nodes)f(f)o(ailures)h(are)g(usual.)523 2507 y +FC(1.2)41 b(Ov)o(er)o(view)24 b(of)h(A)-10 b(v)o(eraging)25 +b(Pr)n(oblem)g(in)g(Sensor)h(Netw)o(orks)523 2740 y FE(The)20 +b(\002rst)g(and)g(the)g(simplest)g(approach)e(for)h(distrib)n(uted)g(a) +n(v)o(erage)g(estimation)g(in)h(sensor)g(net-)523 2839 +y(w)o(orks)e(is)h(called)f Fy(\003ooding)e FE(approach)f([2].)j(In)f +(this)i(approach,)d(each)i(sensor)f(node)g(broadcasts)523 +2939 y(all)22 b(its)g(stored)e(and)g(recei)n(v)o(ed)g(data)h(to)g(its)h +(neighbours.)c(After)j(a)g(while,)g(each)g(node)e(will)j(hold)523 +3039 y(all)e(the)f(data)g(of)g(the)g(netw)o(ork)f(and)g(acts)i(as)g(a)f +(fusion)g(center)f(to)h(compute)f(the)h(estimate)h(of)e(the)523 +3138 y(unkno)n(wn)26 b(parameter)-5 b(.)27 b(This)i(technique)e(has)h +(ho)n(we)n(v)o(er)f(se)n(v)o(eral)h(disadv)n(antages)e([2)o(].)j +(First,)523 3238 y(it)22 b(results)g(in)f(huge)g(amount)f(of)h(e)o +(xchanged)e(duplicate)h(messages,)h(which)g(represents)g(a)g(real)523 +3337 y(limitation)c(in)h(en)m(vironments)d(lik)o(e)j(sensor)f(netw)o +(orks.)f(Second,)h(\003ooding)e(requires)i(that)h(each)523 +3437 y(node)24 b(stores)h(at)h(least)f(one)g(message)g(per)f(node)g +(\(in)h(order)f(to)h(compute)e(the)i(a)n(v)o(erage\).)e(This)523 +3537 y(could)k(lead)g(to)h(an)g(important)e(storage)h(memory)f +(requirement)f(in)j(case)g(of)g(a)g(lar)o(ge)f(sensor)523 +3636 y(netw)o(ork)19 b(with)h(the)f(associated)h(operations)e(\(reads)h +(and)g(writes\).)h(Finally)-5 b(,)19 b(it)i(is)f(ob)o(vious)e(that)523 +3736 y(those)23 b(requirements)e(will)j(consume)e(much)g(resources)g +(leading)g(to)h(an)h(important)d(decrease)523 3836 y(of)f(the)g(whole)g +(netw)o(ork)f(lifetime.)623 3935 y(Alternati)n(v)o(ely)-5 +b(,)22 b(in)j([3)o(])g(the)f(authors)g(proposed)f(a)i(scalable)f +(sensor)h(fusion)e(scenario)h(that)523 4035 y(performs)33 +b(fusion)h(of)g(sensor)h(measurements)e(combined)g(with)h(local)h +(Kalman)f(\002ltering.)523 4134 y(The)o(y)19 b(de)n(v)o(eloped)e(a)j +(distrib)n(uted)f(algorithm)g(that)g(allo)n(ws)i(the)e(sensor)h(nodes)f +(to)h(compute)e(the)523 4234 y(a)n(v)o(erage)e(of)g(all)i(of)f(their)f +(measurements.)g(It)h(is)h(w)o(orthy)d(to)i(note)g(that)g(man)o(y)f +(other)g(sensor)h(data)523 4334 y(fusion)i(approaches)g(are)h(based)f +(on)h(Kalman)g(\002lters)h(and)e(mobile)h(agents)g([4)o(,)g(7,)g(14)o +(,)h(10)o(,)f(11)o(].)p eop end +%%Page: 4 4 +TeXDict begin 4 3 bop 523 100 a FA(4)1011 b(Jacques)20 +b(M.)d(Bahi,)g(Abdallah)i(Makhoul)f(and)h(Ahmed)f(Mostef)o(aoui)623 +282 y FE(An)24 b(iterati)n(v)o(e)f(method)g(for)g(distrib)n(uted)g +(data)h(fusion)f(in)h(sensor)g(netw)o(orks)f(based)h(on)f(the)523 +382 y(calculation)i(of)i(an)f(a)n(v)o(erage)f(consensus)1762 +352 y Fw(1)1822 382 y FE(has)i(been)f(proposed)e(in)j([2)o(].)g(The)f +(authors)f(con-)523 482 y(sider)h(that)f(e)n(v)o(ery)g(node)f(tak)o(es) +i(a)g(noisy)f(measurement)f(of)i(the)f(unkno)n(wn)f(parameter)-5 +b(.)24 b(Each)523 581 y(node)d(broadcasts)g(its)j(data)e(to)g(its)i +(neighbours)19 b(and)j(updates)f(its)j(estimation)d(according)g(to)h(a) +523 681 y(weighted)c(sum)h(of)f(the)h(recei)n(v)o(ed)e(data.)h(In)h +(this)g(scheme)g(all)g(the)g(communications)d(are)j(direct)523 +780 y(ones.)623 880 y(Although)34 b(the)i(abo)o(v)o(e)e(mentioned)g(w)o +(orks)h(and)h(other)f(e)o(xisting)g(data)h(fusion)f(scenar)n(-)523 +980 y(ios)g(guarantee)e(some)h(le)n(v)o(el)g(of)g(rob)n(ustness)g(to)h +(nodes)f(f)o(ailures)g(and)g(dynamic)f(topology)523 1079 +y(changes)e([2)o(,)h(3,)g(4)o(,)g(9,)g(5],)f(the)o(y)g(either)h(put)f +(some)h(unpractical)e(assumptions)h(lik)o(e)h(nodes)523 +1179 y(synchronization)17 b(or)j(do)g(not)g(support)e(practical)i +(issues)h(as)g(the)f(communication)e(delays.)623 1279 +y(T)-7 b(o)25 b(the)g(best)g(of)g(our)f(kno)n(wledge,)e(the)j(abo)o(v)o +(e)f(issues)i(which)e(are)h(e)o(xtremely)e(important,)523 +1378 y(especially)29 b(in)h(noisy)f(en)m(vironments,)d(are)k(not)f(tak) +o(en)g(into)g(account)f(in)i(pre)n(vious)e(data)h(fu-)523 +1478 y(sion)d(approaches.)e(In)i(this)g(chapter)m(,)f(we)h(present)g +(an)g(asynchronous)d(data)j(fusion)f(scheme,)523 1577 +y(particularly)g(tailored)h(to)g(perturbed)f(sensor)h(netw)o(orks.)f +(It)i(focuses)f(on)h(a)g(distrib)n(uted)e(iter)n(-)523 +1677 y(ati)n(v)o(e)k(algorithm)e(for)i(calculating)f(a)n(v)o(erages)g +(o)o(v)o(er)g(asynchronous)e(sensor)j(netw)o(orks.)f(The)523 +1777 y(sensor)i(nodes)g(e)o(xchange)f(and)h(update)f(their)h(data)h(by) +f(the)h(mean)f(of)g(a)h(weighted)f(sum)g(in)523 1876 +y(order)24 b(to)h(achie)n(v)o(e)g(the)g(a)n(v)o(erage)f(consensus.)g +(The)h(suggested)f(algorithm)g(does)h(not)g(rely)g(on)523 +1976 y(synchronization)18 b(between)i(the)h(nodes)f(nor)h(does)f(it)i +(require)e(an)o(y)g(kno)n(wledge)f(of)h(the)h(global)523 +2076 y(topology)-5 b(.)25 b(T)-7 b(o)29 b(round)d(up,)h(the)h(con)m(v)o +(er)o(gence)d(of)i(the)h(proposed)e(algorithm)h(is)i(pro)o(v)o(ed)d(in) +i(a)523 2175 y(general)19 b(asynchronous)e(en)m(vironment.)523 +2540 y FC(1.3)41 b(Asynchr)n(onous)26 b(Fusion)f(Scheme)523 +2790 y Fv(1.3.1)41 b(F)-7 b(ormalization)523 3022 y FE(A)20 +b(sensor)e(netw)o(ork)g(is)i(modelled)e(as)i(a)f(connected)e +(undirected)g(graph)h Fu(G)23 b Ft(=)g(\()p Fu(V)5 b(;)14 +b(E)5 b Ft(\))p FE(.)20 b(The)f(set)523 3122 y(of)26 +b(nodes)g(is)i(denoted)d(by)h Fu(V)46 b FE(\(the)26 b(set)i(of)e(v)o +(ertices\),)g(and)g(the)g(links)h(between)f(nodes)g(by)g +Fu(E)523 3221 y FE(\(the)f(set)g(of)g(edges\).)f(The)g(nodes)g(are)h +(labelled)g Fu(i)31 b Ft(=)g(1)p Fu(;)14 b Ft(2)p Fu(;)g(:)g(:)g(:)f(;) +h(n)p FE(,)25 b(and)f(a)h(link)g(between)f(tw)o(o)523 +3321 y(nodes)g Fu(i)h FE(and)f Fu(j)31 b FE(is)25 b(denoted)f(by)g +Ft(\()p Fu(i;)14 b(j)5 b Ft(\))p FE(.)25 b(The)g(dynamic)e(topology)g +(changes)g(are)i(represented)523 3421 y(by)e(the)g(time)g(v)n(arying)e +(graph)h Fu(G)p Ft(\()p Fu(t)p Ft(\))30 b(=)e(\()p Fu(V)5 +b(;)14 b(E)5 b Ft(\()p Fu(t)p Ft(\)\))p FE(,)24 b(where)f +Fu(E)5 b Ft(\()p Fu(t)p Ft(\))24 b FE(is)g(the)f(set)h(of)f(acti)n(v)o +(e)g(edges)523 3520 y(at)28 b(time)g Fu(t)p FE(.)g(The)f(set)h(of)f +(neighbours)e(of)i(node)g Fu(i)h FE(at)g(time)f Fu(t)h +FE(is)h(denoted)d(by)h Fu(N)2855 3532 y FB(i)2882 3520 +y Ft(\()p Fu(t)p Ft(\))37 b(=)f Fx(f)p Fu(j)41 b Fx(2)523 +3620 y Fu(V)51 b Fx(j)32 b Ft(\()p Fu(i;)14 b(j)5 b Ft(\))31 +b Fx(2)i Fu(E)5 b Ft(\()p Fu(t)p Ft(\))p Fx(g)p FE(,)25 +b(and)f(the)h(de)o(gree)f(\(number)f(of)h(neighbours\))e(of)j(node)f +Fu(i)h FE(at)g(time)g Fu(t)h FE(by)523 3719 y Fu(\021)564 +3731 y FB(i)592 3719 y Ft(\()p Fu(t)p Ft(\))e(=)e Fx(j)p +Fu(N)887 3731 y FB(i)915 3719 y Ft(\()p Fu(t)p Ft(\))p +Fx(j)p FE(.)623 3819 y(Each)28 b(node)h(tak)o(es)g(initial)h +(measurement)d Fu(z)1944 3831 y FB(i)1971 3819 y FE(.)j(F)o(or)f(sak)o +(e)g(of)g(simplicity)g(let)h(us)f(suppose)523 3919 y(that)24 +b Fu(z)711 3931 y FB(i)767 3919 y Fx(2)30 b Fs(R)p FE(.)24 +b(Then,)e Fu(z)28 b FE(will)c(refer)f(to)h(the)f(v)o(ector)g(whose)g +Fu(i)p FE(th)g(component)e(is)k Fu(z)2883 3931 y FB(i)2934 +3919 y FE(in)f(case)g(we)523 4018 y(are)f(concerned)d(with)j(se)n(v)o +(eral)f(parameters.)g(Each)g(node)g(on)g(the)h(netw)o(ork)f(also)h +(maintains)f(a)523 4118 y(dynamic)d(state)i Fu(x)1050 +4130 y FB(i)1078 4118 y Ft(\()p Fu(t)p Ft(\))i Fx(2)h +Fs(R)c FE(which)g(is)h(initially)f(set)h(to)g Fu(x)2179 +4130 y FB(i)2207 4118 y Ft(\(0\))i(=)g Fu(z)2463 4130 +y FB(i)2490 4118 y FE(.)623 4218 y(Intuiti)n(v)o(ely)29 +b(each)i(node')-5 b(s)31 b(state)h Fu(x)1661 4230 y FB(i)1689 +4218 y Ft(\()p Fu(t)p Ft(\))g FE(is)g(its)g(current)e(estimate)i(of)f +(the)g(a)n(v)o(erage)f(v)n(alue)523 4255 y Fr(P)611 4275 +y FB(n)611 4342 y(i)p Fq(=1)736 4317 y Fu(z)775 4329 +y FB(i)802 4317 y Fu(=n)p FE(.)h(The)f(goal)g(of)h(the)f(a)n(v)o +(eraging)f(algorithm,)g(is)i(to)g(let)g(all)h(the)e(states)i +Fu(x)3050 4329 y FB(i)3078 4317 y Ft(\()p Fu(t)p Ft(\))g +FE(go)523 4417 y(to)e(the)f(a)n(v)o(erage)1034 4355 y +Fr(P)1122 4375 y FB(n)1122 4442 y(i)p Fq(=1)1247 4417 +y Fu(z)1286 4429 y FB(i)1314 4417 y Fu(=n)p FE(,)g(as)h +Fu(t)40 b Fx(!)g(1)p FE(.)30 b(This)f(will)h(be)g(done)e(through)f +(data)j(e)o(xchange)p 523 4495 851 4 v 523 4568 a Fp(1)574 +4591 y FA(In)23 b(the)f(rest)h(of)f(the)h(paper)m(,)g(the)f(terms)h +(\224a)o(v)o(erage)h(consensus\224)i(and)d(\224parameter)h +(estimation\224)e(are)i(used)f(to)523 4674 y(denote)c(the)f(same)g +(mechanism)h(of)g(\002nding)f(an)h(estimate)f(of)g(the)g(unkno)n(wn)h +(parameter)h(a)o(v)o(erage.)p eop end +%%Page: 5 5 +TeXDict begin 5 4 bop 523 100 a FA(1)42 b(An)18 b(Asynchronous)j(Dif)n +(fusion)e(Scheme)g(for)g(Data)f(Fusion)h(in)f(Sensor)h(Netw)o(orks)581 +b(5)523 282 y FE(between)30 b(neighbouring)c(nodes)k(where)f(each)h +(node)g(at)g(e)n(v)o(ery)f(time)i(iteration)e Fu(t)i +FE(performs)523 382 y(weighted)19 b(sum)h(of)g(the)g(recei)n(v)o(ed)f +(data)h(as)h(follo)n(ws)f([5)o(,)g(2]:)877 581 y Fu(x)924 +593 y FB(i)952 581 y Ft(\()p Fu(t)e Ft(+)g(1\))23 b(=)g +Fu(x)1347 593 y FB(i)1375 581 y Ft(\()p Fu(t)p Ft(\))c +Fx(\000)1588 502 y Fr(X)1571 680 y FB(j)s Fo(2)p FB(N)1699 +688 y Fn(i)1739 581 y Fu(\013)1792 593 y FB(ij)1851 581 +y Ft(\()p Fu(t)p Ft(\)\()p Fu(x)2024 593 y FB(i)2053 +581 y Ft(\()p Fu(t)p Ft(\))g Fx(\000)f Fu(x)2296 593 +y FB(j)2331 581 y Ft(\()p Fu(t)p Ft(\)\))p Fu(;)c(i)24 +b Ft(=)e(1)p Fu(;)14 b(:)g(:)g(:)f(;)h(n:)195 b FE(\(1.1\))623 +820 y(Where)20 b Fu(\013)918 832 y FB(ij)976 820 y Ft(\()p +Fu(t)p Ft(\))i FE(is)f(the)f(weight)g(on)f Fu(x)1687 +832 y FB(j)1723 820 y Ft(\()p Fu(t)p Ft(\))i FE(at)g(node)e +Fu(i)p FE(,)h(and)g Fu(\013)2365 832 y FB(ij)2423 820 +y Ft(\()p Fu(t)p Ft(\))k(=)f(0)d FE(for)f Fu(j)28 b Fx(62)c +Fu(N)3016 832 y FB(i)3043 820 y Ft(\()p Fu(t)p Ft(\))p +FE(.)623 920 y(In)18 b(order)f(to)h(handle)g(communication)d(delays,)j +(we)h(consider)e(that)h(at)h(time)g Fu(t)f FE(a)h(node)f +Fu(i)g FE(gets)523 1020 y(the)i(state)h(of)f(its)h(neighbour)d +Fu(j)25 b FE(at)c(time)f Fu(d)1716 989 y FB(i)1716 1041 +y(j)1752 1020 y Ft(\()p Fu(t)p Ft(\))p FE(,)h(where)e +Ft(0)k Fx(\024)g Fu(d)2307 989 y FB(i)2307 1041 y(j)2342 +1020 y Ft(\()p Fu(t)p Ft(\))g Fx(\024)g Fu(t)623 1129 +y(d)666 1099 y FB(i)666 1151 y(j)701 1129 y Ft(\()p Fu(t)p +Ft(\))g FE(represents)e(the)h(transmission)f(delay)h(between)f(nodes)g +Fu(i)h FE(and)g Fu(j)5 b FE(.)22 b(Therefore,)d(let)k(us)523 +1239 y(denote)f Fu(x)815 1209 y FB(i)815 1261 y(j)851 +1239 y Ft(\()p Fu(t)p Ft(\))29 b(=)f Fu(x)1114 1251 y +FB(j)1150 1239 y Ft(\()p Fu(d)1225 1209 y FB(i)1225 1261 +y(j)1260 1239 y Ft(\()p Fu(t)p Ft(\)\))h Fx(2)h Fs(R)23 +b FE(the)h(state)f(of)g(node)g Fu(j)28 b FE(at)c(time)f +Fu(d)2523 1209 y FB(i)2523 1261 y(j)2559 1239 y Ft(\()p +Fu(t)p Ft(\))p Fu(;)h FE(recei)n(v)o(ed)e(at)h(time)h +Fu(t)523 1339 y FE(by)e(node)f Fu(i)p FE(.)i(Then,)e(we)i(de\002ned)e +(the)i(e)o(xtended)d(neighbourhood)e(of)k(node)f Fu(i)i +FE(at)g(time)f Fu(t)h FE(as)g(the)523 1438 y(set:)p 729 +1654 76 4 v 729 1721 a Fu(N)805 1733 y FB(i)833 1721 +y Ft(\()p Fu(t)p Ft(\))g(=)1038 1653 y Fr(\010)1087 1721 +y Fu(j)28 b Fx(j)43 b(9)21 b Fu(d)1325 1686 y FB(i)1325 +1741 y(j)1360 1721 y Ft(\()p Fu(t)p Ft(\))j Fx(2)f(f)p +Fu(t)18 b Fx(\000)g Fu(B)23 b Ft(+)18 b(1)p Fu(;)c(:::;)g(t)p +Fx(g)f Fu(;)h FE(such)20 b(that)g Fu(j)28 b Fx(2)23 b +Fu(N)2730 1733 y FB(i)2758 1721 y Ft(\()p Fu(d)2833 1686 +y FB(i)2833 1741 y(j)2868 1721 y Ft(\()p Fu(t)p Ft(\)\))2994 +1653 y Fr(\011)3057 1721 y Ft(;)623 1917 y FE(note)c(that)i +Fu(N)999 1929 y FB(i)1026 1917 y Ft(\()p Fu(t)p Ft(\))j +Fx(\032)p 1231 1851 V 22 w Fu(N)1307 1929 y FB(i)1335 +1917 y Ft(\()p Fu(t)p Ft(\))p FE(.)623 2017 y(The)34 +b(problem,)e(as)k(for)e(an)o(y)f(distrib)n(uted)h(algorithmic)f +(approach,)f(is)k(ho)n(w)e(and)g(under)523 2116 y(which)23 +b(conditions,)f(will)i(we)f(ensure)g(con)m(v)o(er)o(gence)d(of)j(the)g +(proposed)e(algorithm?)h(In)h(other)523 2216 y(terms,)18 +b(are)f(we)i(sure)e(that)h(all)h(the)f(node')-5 b(s)17 +b Fu(x)1785 2228 y FB(i)1831 2216 y FE(will)i(con)m(v)o(er)o(ge)c(to)j +(the)f(right)h(estimate)g(of)f(the)h(un-)523 2316 y(kno)n(wn)f +(parameter)g(a)n(v)o(erage)h(v)n(alue?)g(Also,)h(ho)n(w)f(can)g(we)i +(choose)d(the)i(parameters)f Fu(\013)3041 2328 y FB(ij)3099 +2316 y Ft(\()p Fu(t)p Ft(\))i FE(so)523 2415 y(to)e(impro)o(v)o(e)e +(the)j(con)m(v)o(er)o(gence)14 b(speed)k(and)g(the)g(quality)f(of)h +(the)h(deri)n(v)o(ed)d(estimate?)i(Hereafter)523 2515 +y(we)j(present)e(and)h(analyse)f(our)h(proposal.)e(W)-7 +b(e)22 b(used)e(the)g(notations)f(reported)f(in)j(T)-7 +b(able)20 b(1.1)p 980 2703 1851 5 v 980 2707 V 978 2786 +5 84 v 1130 2761 a Fm(N)p FA(otation)p 1526 2786 V 637 +w(Description)p 2828 2786 V 980 2790 1851 5 v 978 2873 +5 84 v 1186 2848 a Fl(G)p Fk(\()p Fl(t)p Fk(\))p 1526 +2873 V 539 w FA(the)e(time)f(v)n(arying)j(graph)p 2828 +2873 V 980 2877 1851 5 v 978 2961 5 84 v 1172 2936 a +Fl(N)1228 2946 y Fj(i)1255 2936 y Fk(\()p Fl(t)p Fk(\))p +1526 2961 V 304 w FA(the)e(set)g(of)g(neighbors)i(of)e(node)h +Fl(i)f FA(at)g(time)f Fl(t)p 2828 2961 V 980 2965 1851 +5 v 978 3048 5 84 v 1224 3023 a(z)1257 3033 y Fj(i)p +1526 3048 V 1711 3023 a FA(the)h(initial)e(measurement)k(of)f(node)g +Fl(i)p 2828 3048 V 980 3052 1851 5 v 978 3135 5 84 v +1181 3110 a(x)1221 3120 y Fj(i)1247 3110 y Fk(\()p Fl(t)p +Fk(\))p 1526 3135 V 469 w FA(the)f(dynamic)h(state)f(of)g(node)h +Fl(i)p 2828 3135 V 980 3139 1851 5 v 978 3228 5 90 v +1179 3197 a(d)1215 3174 y Fj(i)1215 3219 y(j)1248 3197 +y Fk(\()p Fl(t)p Fk(\))p 1526 3228 V 213 w FA(the)f(transmission)h +(delay)g(between)g(nodes)g Fl(i)f FA(and)g Fl(j)p 2828 +3228 V 980 3232 1851 5 v 978 3322 5 90 v 993 3291 a(x)1033 +3267 y Fj(i)1033 3312 y(j)1064 3291 y Fk(\()p Fl(t)p +Fk(\))j(=)f Fl(x)1279 3301 y Fj(j)1311 3291 y Fk(\()p +Fl(d)1374 3267 y Fj(i)1374 3312 y(j)1407 3291 y Fk(\()p +Fl(t)p Fk(\)\))p 1523 3322 V 164 w FA(the)d(state)h(of)h(node)g +Fl(j)i FA(at)c(time)g Fl(t)g Fz(\000)e Fl(d)2568 3267 +y Fj(i)2568 3312 y(j)2601 3291 y Fk(\()p Fl(t)p Fk(\))p +2828 3322 V 980 3326 1851 5 v 978 3411 5 86 v 1169 3332 +64 3 v 1169 3386 a Fl(N)1232 3396 y Fj(i)1258 3386 y +Fk(\()p Fl(t)p Fk(\))p 1526 3411 5 86 v 272 w FA(the)j(e)o(xtended)h +(neighborhood)i(of)d Fl(i)g FA(at)f(time)g Fl(t)p 2828 +3411 V 980 3415 1851 5 v 978 3498 5 84 v 1170 3473 a(s)1203 +3483 y Fj(ij)1257 3473 y Fk(\()p Fl(t)p Fk(\))p 1526 +3498 V 413 w FA(the)h(data)g(sent)g(by)h Fl(i)e FA(to)h +Fl(j)j FA(at)c(time)g Fl(t)p 2828 3498 V 980 3502 1851 +5 v 978 3586 5 84 v 1170 3561 a(r)1202 3571 y Fj(j)s(i)1257 +3561 y Fk(\()p Fl(t)p Fk(\))p 1526 3586 V 310 w FA(the)h(data)h(recei)n +(v)o(ed)g(by)g Fl(i)e FA(from)i Fl(j)i FA(at)d(time)f +Fl(t)p 2828 3586 V 980 3590 1851 5 v 523 3681 a Fm(T)-6 +b(able)18 b(1.1)35 b FA(Notations)523 4287 y Fv(1.3.2)41 +b(Async)o(hronous)26 b(sc)o(heme)523 4519 y FE(Our)17 +b(algorithm)f(to)i(compute)e(the)i(a)n(v)o(erage)e(consensus)h(o)o(v)o +(er)f(the)h(netw)o(ork)g(is)h(based)f(on)g(infor)n(-)523 +4619 y(mation)24 b(dif)n(fusion)f(i.e.,)i(each)g(node)f(tak)o(es)h(a)h +(measurement)d(and)h(then)h(cooperates)e(with)i(its)p +eop end +%%Page: 6 6 +TeXDict begin 6 5 bop 523 100 a FA(6)1011 b(Jacques)20 +b(M.)d(Bahi,)g(Abdallah)i(Makhoul)f(and)h(Ahmed)f(Mostef)o(aoui)523 +282 y FE(neighbours)j(in)i(a)h(dif)n(fusion)d(manner)h(to)h(estimate)g +(the)g(a)n(v)o(erage)f(of)h(all)h(the)f(collected)f(infor)n(-)523 +382 y(mation.)e(It)i(is)h(inspired)d(from)h(the)g(w)o(ork)g(of)g +(Bertsekas)h(and)f(Tsitsiklis)i([15)n(,)f(section)f(7.4])g(on)523 +482 y(load)k(balancing)f(and)i(e)o(xtends)e(it)j(to)f(cope)f(with)h +(dynamic)e(topologies)g(and)i(messages)g(loss)523 581 +y(and)20 b(delays.)f(Algorithm)g(1)h(presents)g(the)g(main)g(steps)h +(of)f(our)f(proposed)f(algorithm.)p 523 780 2764 7 v +523 854 a FD(Algorithm)i(1)g FE(The)g(General)f(Algorithm.)p +523 892 2764 4 v 553 958 a FA(1:)35 b(Each)18 b(node)g(maintains)f(an)g +(instantaneous)i(state)e Fl(x)1916 968 y Fj(i)1942 958 +y Fk(\()p Fl(t)p Fk(\))k Fz(2)f Fi(R)p FA(,)c(and)i(at)e +Fl(t)21 b Fk(=)e(0)e FA(\(after)i(all)d(nodes)i(ha)o(v)o(e)g(tak)o(en) +643 1041 y(the)g(measurement\),)i(each)f(node)g(initializes)e(its)g +(state)h(as)h Fl(x)2124 1051 y Fj(i)2150 1041 y Fk(\(0\))h(=)g +Fl(z)2367 1051 y Fj(i)2393 1041 y FA(.)553 1124 y(2:)35 +b(At)17 b(e)n(v)o(ery)j(step)e Fl(t)g FA(each)h(node)g +Fl(i)p FA(:)643 1257 y Fz(\017)65 b FA(compares)20 b(its)d(state)h(to)g +(the)f(states)i(of)f(its)g(neighbours;)643 1340 y Fz(\017)65 +b FA(chooses)30 b(and)f(computes)g Fl(s)1455 1350 y Fj(ij)1510 +1340 y Fk(\()p Fl(t)p Fk(\))p FA(.)f(The)o(y)h(ha)o(v)o(e)g(to)f(be)g +(chosen)i(carefully)g(in)e(order)i(to)d(ensure)k(the)743 +1423 y(con)m(v)o(er)o(gence)21 b(of)d(the)g(algorithm;)643 +1506 y Fz(\017)65 b FA(dif)n(fuses)20 b(its)d(information;)643 +1589 y Fz(\017)65 b FA(recei)n(v)o(es)20 b(the)e(information)g(sent)h +(by)f(its)f(neighbours)j Fl(r)2110 1599 y Fj(j)s(i)2165 +1589 y Fk(\()p Fl(t)p Fk(\))p FA(;)643 1672 y Fz(\017)65 +b FA(updates)20 b(its)e(state)h(with)g(a)g(combination)g(of)h(its)e(o)n +(wn)i(state)f(and)g(the)g(states)h(at)f(its)f(instantaneous)j(and)743 +1755 y(e)o(xtended)e(neighbours)h(\()p 1368 1701 64 3 +v Fl(N)1432 1765 y Fj(i)1458 1755 y Fk(\()p Fl(t)p Fk(\))p +FA(\))g(as)e(follo)n(ws:)1267 1920 y Fl(x)1307 1930 y +Fj(i)1333 1920 y Fk(\()p Fl(t)e Fk(+)g(1\))k(=)g Fl(x)1669 +1930 y Fj(i)1695 1920 y Fk(\()p Fl(t)p Fk(\))d Fz(\000)1918 +1857 y Fh(X)1861 2005 y Fj(j)s Fg(2)p Fj(N)1979 2016 +y Fn(i)2006 2005 y Ff(\()p Fj(t)p Ff(\))2089 1920 y Fl(s)2122 +1930 y Fj(ij)2177 1920 y Fk(\()p Fl(t)p Fk(\))g(+)2403 +1857 y Fh(X)2343 2014 y Fj(j)s Fg(2)p 2413 1973 54 3 +v Fj(N)2467 2025 y Fn(i)2493 2014 y Ff(\()p Fj(t)p Ff(\))2576 +1920 y Fl(r)2608 1930 y Fj(j)s(i)2663 1920 y Fk(\()p +Fl(t)p Fk(\))p Fl(:)390 b FA(\(1.2\))p 523 2125 2764 +4 v 523 2491 a Fv(1.3.3)41 b(Theoretical)24 b(Analysis)h(\(Con)l(v)o +(ergence\))523 2723 y FE(W)-7 b(e)21 b(no)n(w)f(introduce)e(three)i +(assumptions)f(that)i(ensure)e(the)h(con)m(v)o(er)o(gence)d(of)i(our)h +(algorithm.)523 2889 y FD(Assumption)h(1)41 b Fy(Ther)m(e)21 +b(e)n(xists)g Fu(B)27 b Fx(2)d Fs(N)c Fy(suc)o(h)g(that)g +Fx(8)p Fu(t)j Fe(>)g Ft(0)p Fu(;)523 2989 y(t)i Fx(\000)g +Fu(B)43 b(<)d(d)922 2959 y FB(i)922 3010 y(j)957 2989 +y Ft(\()p Fu(t)p Ft(\))g Fx(\024)f Fu(t)30 b Fy(and)e(the)h(union)f(of) +h(communication)e(gr)o(aphs)2654 2927 y Fr(S)2723 2947 +y FB(t)p Fq(+)p FB(B)s Fo(\000)p Fq(1)2723 3014 y FB(\034)7 +b Fq(=)p FB(t)2955 2989 y Fu(G)p Ft(\()p Fu(\034)i Ft(\))31 +b Fy(is)f(a)523 3088 y(connected)18 b(gr)o(aph.)623 3254 +y FE(This)h(assumption,)e(kno)n(wn)h(as)i(jointly)e(connected)f +(condition)g([2)o(,)j(16)o(],)f(implies)g(that)g(each)523 +3354 y(node)f Fu(i)h FE(is)h(connected)e(to)h(a)h(node)e +Fu(j)24 b FE(within)19 b(an)o(y)f(time)i(interv)n(al)e(of)h(length)f +Fu(B)24 b FE(and)18 b(that)i(the)f(de-)523 3454 y(lay)e(between)e(tw)o +(o)i(nodes)f(cannot)f(e)o(xceeds)h Fu(B)t FE(.)h(Recall)g(that,)f(a)h +(graph)e(is)j(connected)c(if)j(for)f(an)o(y)523 3553 +y(tw)o(o)g(v)o(ertices)e Fu(i)i FE(and)e Fu(j)21 b FE(there)15 +b(e)o(xists)g(a)h(sequence)e(of)h(edges)g Ft(\()p Fu(i;)29 +b(k)2374 3565 y Fq(1)2412 3553 y Ft(\))p Fu(;)14 b Ft(\()p +Fu(k)2556 3565 y Fq(1)2594 3553 y Fu(;)g(k)2674 3565 +y Fq(2)2711 3553 y Ft(\))p Fu(;)g(:)g(:)g(:)g(;)g Ft(\()p +Fu(k)3003 3565 y FB(l)p Fo(\000)p Fq(1)3114 3553 y Fu(;)30 +b(k)3210 3565 y FB(l)3235 3553 y Ft(\))p Fu(;)523 3653 +y Ft(\()p Fu(k)598 3665 y FB(l)624 3653 y Fu(;)35 b(j)5 +b Ft(\))p FE(.)623 3753 y(In)20 b(Figure)g(1.1)g(we)h(sho)n(w)g(an)f(e) +o(xample)f(of)i(jointly)f(connected)f(graphs,)g(we)i(notice)f(that)h +(at)523 3852 y Fu(t)i Ft(=)g(1)c FE(the)g(graph)e Fu(G)1119 +3864 y Fq(1)1176 3852 y FE(is)j(not)f(connected;)e(the)i(same)g(case)h +(for)e Fu(G)2411 3864 y Fq(2)2468 3852 y FE(at)i Fu(t)j +Ft(=)g(2)p FE(;)c(while)g(the)g(union)523 3952 y Fu(G)i +FE(of)f Fu(G)764 3964 y Fq(1)822 3952 y FE(and)g Fu(G)1028 +3964 y Fq(2)1086 3952 y FE(is)h(a)g(connected)d(graph.)523 +4118 y FD(Assumption)j(2)41 b Fy(Ther)m(e)21 b(e)n(xists)g +Fu(\013)j(>)e Ft(0)p Fu(;)14 b Fx(8)p Fu(t)23 b Fe(>)f +Ft(0)p Fu(;)523 4218 y Fx(8)p Fu(i)h Fx(2)g Fu(N)t(;)14 +b Fx(8)p Fu(j)28 b Fx(2)c Fu(N)1061 4230 y FB(i)1088 +4218 y Ft(\()p Fu(t)p Ft(\))p Fy(,)d(suc)o(h)f(that)g +Fu(\013)p Ft(\()p Fu(x)1678 4230 y FB(i)1707 4218 y Ft(\()p +Fu(t)p Ft(\))f Fx(\000)f Fu(x)1950 4187 y FB(i)1950 4239 +y(j)1985 4218 y Ft(\()p Fu(t)p Ft(\)\))24 b Fx(\024)f +Fu(s)2262 4230 y FB(ij)2320 4218 y Ft(\()p Fu(t)p Ft(\))p +Fu(:)523 4262 y Fr(\000)561 4329 y Fu(s)600 4341 y FB(ij)658 +4329 y Ft(\()p Fu(t)p Ft(\))h(=)f(0)d Fy(if)h Ft(\()p +Fu(x)1072 4341 y FB(i)1100 4329 y Ft(\()p Fu(t)p Ft(\))j +Fx(\024)f Fu(x)1353 4299 y FB(i)1353 4351 y(j)1388 4329 +y Ft(\()p Fu(t)p Ft(\)\))f Fy(for)e(all)h Fu(j)28 b Fx(2)23 +b Fu(N)1969 4341 y FB(i)1996 4329 y Ft(\()p Fu(t)p Ft(\))2090 +4262 y Fr(\001)2129 4329 y Fy(.)623 4495 y FE(The)28 +b(second)h(assumption)e(postulates)i(that)g(when)g(a)g(node)f +Fu(i)h FE(detects)g(a)h(dif)n(ference)d(be-)523 4595 +y(tween)20 b(its)i(state)f(and)f(the)g(states)h(of)g(its)g(neighbours,) +d(it)j(therefore)d(computes)h(non)h(ne)o(gligible)523 +4695 y Fu(s)562 4707 y FB(ij)641 4695 y FE(to)h(all)f(nodes)g +Fu(j)25 b FE(where)20 b Ft(\()p Fu(x)1407 4707 y FB(i)1435 +4695 y Ft(\()p Fu(t)p Ft(\))k Fu(>)f(x)1688 4664 y FB(i)1688 +4716 y(j)1723 4695 y Ft(\()p Fu(t)p Ft(\)\))p FE(.)p +eop end +%%Page: 7 7 +TeXDict begin 7 6 bop 523 100 a FA(1)42 b(An)18 b(Asynchronous)j(Dif)n +(fusion)e(Scheme)g(for)g(Data)f(Fusion)h(in)f(Sensor)h(Netw)o(orks)581 +b(7)1121 1629 y @beginspecial 0 @llx 0 @lly 342 @urx +312 @ury 1881 @rwi @setspecial +%%BeginDocument: jointly.eps +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: jointly.fig +%%Creator: fig2dev Version 3.2 Patchlevel 5-alpha7 +%%CreationDate: Tue Apr 8 16:04:24 2008 +%%For: makhoul@soleil4 (makhoul,,,) +%%BoundingBox: 0 0 342 312 +%Magnification: 1.0000 +%%EndComments +/$F2psDict 200 dict def +$F2psDict begin +$F2psDict /mtrx matrix put +/col-1 {0 setgray} bind def +/col0 {0.000 0.000 0.000 srgb} bind def +/col1 {0.000 0.000 1.000 srgb} bind def +/col2 {0.000 1.000 0.000 srgb} bind def +/col3 {0.000 1.000 1.000 srgb} bind def +/col4 {1.000 0.000 0.000 srgb} bind def +/col5 {1.000 0.000 1.000 srgb} bind def +/col6 {1.000 1.000 0.000 srgb} bind def +/col7 {1.000 1.000 1.000 srgb} bind def +/col8 {0.000 0.000 0.560 srgb} bind def +/col9 {0.000 0.000 0.690 srgb} bind def +/col10 {0.000 0.000 0.820 srgb} bind def +/col11 {0.530 0.810 1.000 srgb} bind def +/col12 {0.000 0.560 0.000 srgb} bind def +/col13 {0.000 0.690 0.000 srgb} bind def +/col14 {0.000 0.820 0.000 srgb} bind def +/col15 {0.000 0.560 0.560 srgb} bind def +/col16 {0.000 0.690 0.690 srgb} bind def +/col17 {0.000 0.820 0.820 srgb} bind def +/col18 {0.560 0.000 0.000 srgb} bind def +/col19 {0.690 0.000 0.000 srgb} bind def +/col20 {0.820 0.000 0.000 srgb} bind def +/col21 {0.560 0.000 0.560 srgb} bind def +/col22 {0.690 0.000 0.690 srgb} bind def +/col23 {0.820 0.000 0.820 srgb} bind def +/col24 {0.500 0.190 0.000 srgb} bind def +/col25 {0.630 0.250 0.000 srgb} bind def +/col26 {0.750 0.380 0.000 srgb} bind def +/col27 {1.000 0.500 0.500 srgb} bind def +/col28 {1.000 0.630 0.630 srgb} bind def +/col29 {1.000 0.750 0.750 srgb} bind def +/col30 {1.000 0.880 0.880 srgb} bind def +/col31 {1.000 0.840 0.000 srgb} bind def + +end +save +newpath 0 312 moveto 0 0 lineto 342 0 lineto 342 312 lineto closepath clip newpath +-155.0 429.0 translate +1 -1 scale + +/cp {closepath} bind def +/ef {eofill} bind def +/gr {grestore} bind def +/gs {gsave} bind def +/sa {save} bind def +/rs {restore} bind def +/l {lineto} bind def +/m {moveto} bind def +/rm {rmoveto} bind def +/n {newpath} bind def +/s {stroke} bind def +/sh {show} bind def +/slc {setlinecap} bind def +/slj {setlinejoin} bind def +/slw {setlinewidth} bind def +/srgb {setrgbcolor} bind def +/rot {rotate} bind def +/sc {scale} bind def +/sd {setdash} bind def +/ff {findfont} bind def +/sf {setfont} bind def +/scf {scalefont} bind def +/sw {stringwidth} bind def +/tr {translate} bind def +/tnt {dup dup currentrgbcolor + 4 -2 roll dup 1 exch sub 3 -1 roll mul add + 4 -2 roll dup 1 exch sub 3 -1 roll mul add + 4 -2 roll dup 1 exch sub 3 -1 roll mul add srgb} + bind def +/shd {dup dup currentrgbcolor 4 -2 roll mul 4 -2 roll mul + 4 -2 roll mul srgb} bind def + /DrawEllipse { + /endangle exch def + /startangle exch def + /yrad exch def + /xrad exch def + /y exch def + /x exch def + /savematrix mtrx currentmatrix def + x y tr xrad yrad sc 0 0 1 startangle endangle arc + closepath + savematrix setmatrix + } def + +/$F2psBegin {$F2psDict begin /$F2psEnteredState save def} def +/$F2psEnd {$F2psEnteredState restore end} def + +$F2psBegin +10 setmiterlimit +0 slj 0 slc + 0.06299 0.06299 sc +% +% Fig objects follow +% +% +% here starts figure with depth 50 +% Ellipse +7.500 slw +n 2700 2250 64 64 0 360 DrawEllipse gs 0.00 setgray ef gr gs col0 s gr + +% Ellipse +n 2700 3600 64 64 0 360 DrawEllipse gs 0.00 setgray ef gr gs col0 s gr + +% Ellipse +n 4050 3600 64 64 0 360 DrawEllipse gs 0.00 setgray ef gr gs col0 s gr + +% Polyline +0 slj +0 slc +n 2700 2295 m 2700 3600 l + 4050 3600 l gs col0 s gr +% Polyline +n 3375 2925 m + 3825 1935 l gs col0 s gr +/Times-Bold ff 222.25 scf sf +2475 2340 m +gs 1 -1 sc (1) col0 sh gr +/Times-Bold ff 222.25 scf sf +2475 3690 m +gs 1 -1 sc (2) col0 sh gr +/Times-Bold ff 222.25 scf sf +3150 3015 m +gs 1 -1 sc (4) col0 sh gr +/Times-Bold ff 222.25 scf sf +3600 2025 m +gs 1 -1 sc (5) col0 sh gr +/Times-Bold ff 222.25 scf sf +4140 3690 m +gs 1 -1 sc (3) col0 sh gr +% Ellipse +n 3825 1935 64 64 0 360 DrawEllipse gs 0.00 setgray ef gr gs col0 s gr + +% Ellipse +n 3330 2925 64 64 0 360 DrawEllipse gs 0.00 setgray ef gr gs col0 s gr + +% Ellipse +n 4545 4950 64 64 0 360 DrawEllipse gs 0.00 setgray ef gr gs col0 s gr + +% Ellipse +n 4545 6300 64 64 0 360 DrawEllipse gs 0.00 setgray ef gr gs col0 s gr + +% Ellipse +n 5895 6300 64 64 0 360 DrawEllipse gs 0.00 setgray ef gr gs col0 s gr + +% Polyline +n 4545 4995 m 4545 6300 l + 5895 6300 l gs col0 s gr +% Polyline +n 5220 5625 m + 5670 4635 l gs col0 s gr +/Times-Bold ff 222.25 scf sf +4320 5040 m +gs 1 -1 sc (1) col0 sh gr +/Times-Bold ff 222.25 scf sf +4320 6390 m +gs 1 -1 sc (2) col0 sh gr +/Times-Bold ff 222.25 scf sf +4995 5715 m +gs 1 -1 sc (4) col0 sh gr +/Times-Bold ff 222.25 scf sf +5445 4725 m +gs 1 -1 sc (5) col0 sh gr +/Times-Bold ff 222.25 scf sf +5985 6390 m +gs 1 -1 sc (3) col0 sh gr +% Ellipse +n 5670 4635 64 64 0 360 DrawEllipse gs 0.00 setgray ef gr gs col0 s gr + +% Ellipse +n 5175 5625 64 64 0 360 DrawEllipse gs 0.00 setgray ef gr gs col0 s gr + +% Ellipse +n 6300 2250 64 64 0 360 DrawEllipse gs 0.00 setgray ef gr gs col0 s gr + +% Ellipse +n 6300 3600 64 64 0 360 DrawEllipse gs 0.00 setgray ef gr gs col0 s gr + +% Ellipse +n 7605 3600 64 64 0 360 DrawEllipse gs 0.00 setgray ef gr gs col0 s gr + +% Ellipse +n 6885 2880 64 64 0 360 DrawEllipse gs 0.00 setgray ef gr gs col0 s gr + +% Ellipse +n 7470 1935 64 64 0 360 DrawEllipse gs 0.00 setgray ef gr gs col0 s gr + +% Polyline +n 6300 2250 m 7470 1980 l + 6885 2880 l gs col0 s gr +% Polyline +n 6345 3600 m + 7650 3600 l gs col0 s gr +% Polyline +n 4500 4993 m + 5625 4678 l gs col0 s gr +/Times-Bold ff 222.25 scf sf +6075 2340 m +gs 1 -1 sc (1) col0 sh gr +/Times-Bold ff 222.25 scf sf +6660 2970 m +gs 1 -1 sc (4) col0 sh gr +/Times-Bold ff 222.25 scf sf +6075 3690 m +gs 1 -1 sc (2) col0 sh gr +/Times-Bold ff 222.25 scf sf +7245 2025 m +gs 1 -1 sc (5) col0 sh gr +/Times-Bold ff 222.25 scf sf +7740 3690 m +gs 1 -1 sc (3) col0 sh gr +/Times-Bold ff 238.13 scf sf +2745 4050 m +gs 1 -1 sc (G) col0 sh gr +/Times-Roman ff 190.50 scf sf +2970 4095 m +gs 1 -1 sc (1) col0 sh gr +/Times-Bold ff 238.13 scf sf +3150 4050 m +gs 1 -1 sc (@ t = 1) col0 sh gr +/Times-Bold ff 238.13 scf sf +6300 4050 m +gs 1 -1 sc (G) col0 sh gr +/Times-Bold ff 238.13 scf sf +6750 4050 m +gs 1 -1 sc (@ t = 2) col0 sh gr +/Times-Roman ff 190.50 scf sf +6525 4095 m +gs 1 -1 sc (2) col0 sh gr +/Times-Bold ff 238.13 scf sf +4590 6750 m +gs 1 -1 sc (G) col0 sh gr +/Times-Bold ff 238.13 scf sf +4860 6750 m +gs 1 -1 sc (=) col0 sh gr +/Times-Bold ff 238.13 scf sf +5130 6750 m +gs 1 -1 sc (G) col0 sh gr +/Times-Bold ff 238.13 scf sf +5850 6750 m +gs 1 -1 sc (G) col0 sh gr +/Times-Roman ff 190.50 scf sf +6075 6795 m +gs 1 -1 sc (2) col0 sh gr +/Times-Roman ff 190.50 scf sf +5355 6795 m +gs 1 -1 sc (1) col0 sh gr +/Times-Bold ff 206.38 scf sf +5535 6750 m +gs 1 -1 sc (U) col0 sh gr +% here ends figure; +$F2psEnd +rs +showpage +%%Trailer +%EOF + +%%EndDocument + @endspecial 523 1754 a Fm(Fig)o(.)17 b(1.1)36 b FA(Example)18 +b(of)h(jointly)e(connected)i(graphs)523 2051 y FD(Assumption)i(3)1254 +2164 y Fu(x)1301 2176 y FB(i)1329 2164 y Ft(\()p Fu(t)p +Ft(\))e Fx(\000)1584 2085 y Fr(X)1525 2267 y FB(k)q Fo(2)p +FB(N)1659 2275 y Fn(i)1686 2267 y Fq(\()p FB(t)p Fq(\))1777 +2164 y Fu(s)1816 2176 y FB(ik)1880 2164 y Ft(\()p Fu(t)p +Ft(\))k Fx(\025)g Fu(x)2132 2129 y FB(i)2132 2184 y(j)2168 +2164 y Ft(\()p Fu(t)p Ft(\))c(+)f Fu(s)2403 2176 y FB(ij)2461 +2164 y Ft(\()p Fu(t)p Ft(\))573 b FE(\(1.3\))523 2421 +y(The)29 b(third)f(assumption)g(prohibits)g(node)g Fu(i)h +FE(to)h(compute)d(v)o(ery)h(lar)o(ge)g Fu(s)2669 2433 +y FB(ij)2757 2421 y FE(which)h(creates)g(a)523 2521 y(ping-pong)15 +b(state.)j(Recall)g(that,)g(the)g(ping-pong)c(state)19 +b(is)f(established)g(when)f(tw)o(o)h(nodes)f(k)o(eep)523 +2620 y(sending)k(data)h(to)g(each)g(other)f(back)h(and)f(forth,)g +(without)h(e)n(v)o(er)f(reaching)g(equilibrium.)e(Note)523 +2720 y(that)30 b(these)h(tw)o(o)g(assumptions)e(are)h(similar)h(to)f +(assumption)g(4.2)f(introduced)f(in)j([15)n(,)g(sec-)523 +2819 y(tion)20 b(7.4].)523 2994 y FD(Theor)o(em)g(1.)k +Fy(if)c(the)e(assumptions)g(1,)h(2)f(and)g(3)h(ar)m(e)g(satis\002ed,)f +(Algorithm)g(1)h(guar)o(antees)e(that)1515 3239 y Ft(lim)1494 +3289 y FB(t)p Fo(!1)1665 3239 y Fu(x)1712 3251 y FB(i)1740 +3239 y Ft(\()p Fu(t)p Ft(\))24 b(=)1959 3183 y(1)p 1955 +3220 50 4 v 1955 3296 a Fu(n)2055 3135 y FB(n)2015 3160 +y Fr(X)2021 3337 y FB(i)p Fq(=1)2135 3239 y Fu(x)2182 +3251 y FB(i)2210 3239 y Ft(\(0\))812 b FE(\(1.4\))623 +3460 y Fy(i.e)o(.,)27 b(all)i(node)e(states)i(con)m(ver)m(g)o(e)e(to)i +(the)f(aver)o(a)o(g)o(e)f(of)i(the)f(initial)g(measur)m(ements)g(of)g +(the)523 3560 y(network.)523 3734 y(Pr)l(oof)623 3834 +y FE(Let)20 b Fu(m)p Ft(\()p Fu(t)p Ft(\))k(=)e(min)1171 +3846 y FB(i)1212 3834 y Ft(min)1350 3846 y FB(t)p Fo(\000)p +FB(B)s(<\034)7 b Fo(\024)p FB(t)1665 3834 y Fu(x)1712 +3846 y FB(i)1740 3834 y Ft(\()p Fu(\034)i Ft(\))p Fu(:)22 +b FE(Note)e(that)g Fu(x)2268 3804 y FB(i)2268 3855 y(j)2304 +3834 y Ft(\()p Fu(\034)9 b Ft(\))24 b Fx(\025)f Fu(m)p +Ft(\()p Fu(t)p Ft(\))p Fu(;)e Fx(8)p Fu(i;)14 b(j;)g(t:)523 +3933 y FE(Lemma)22 b(1)g(and)h(2)f(belo)n(w)g(can)h(be)f(pro)o(v)o(en)e +(similarly)j(to)f(the)h(lemma)f(of)g(pages)h(521)e(and)h(522)523 +4033 y(in)e([15)o(].)623 4179 y(Denote)e(by)g Fu(v)1024 +4191 y FB(ij)1083 4179 y Ft(\()p Fu(t)p Ft(\))24 b(=)1291 +4100 y FB(t)p Fo(\000)p Fq(1)1302 4117 y Fr(P)1288 4251 +y FB(s)p Fq(=0)1418 4179 y Ft(\()p Fu(s)1489 4191 y FB(ij)1547 +4179 y Ft(\()p Fu(s)p Ft(\))19 b Fx(\000)f Fu(r)1789 +4191 y FB(ij)1848 4179 y Ft(\()p Fu(s)p Ft(\)\))d Fu(;)k +FE(the)g(data)g(sent)g(by)g Fu(i)g FE(and)f(not)h(yet)g(recei)n(v)o(ed) +523 4330 y(by)h Fu(j)26 b FE(at)20 b(time)h Fu(t:)f FE(W)-7 +b(e)22 b(suppose)d(that)h Fu(v)1612 4342 y FB(ij)1671 +4330 y Ft(\(0\))j(=)g(0)p Fu(:)d FE(Then)f(by)h(data)g(conserv)n +(ation,)e(we)j(obtain)1022 4511 y FB(n)982 4536 y Fr(X)988 +4713 y FB(i)p Fq(=1)1116 4448 y Fr(0)1116 4598 y(@)1189 +4615 y Fu(x)1236 4627 y FB(i)1264 4615 y Ft(\()p Fu(t)p +Ft(\))e(+)1515 4536 y Fr(X)1460 4718 y FB(j)s Fo(2)p +FB(N)1588 4726 y Fn(i)1614 4718 y Fq(\()p FB(t)p Fq(\))1705 +4615 y Fu(v)1745 4627 y FB(ij)1804 4615 y Ft(\()p Fu(t)p +Ft(\))1898 4448 y Fr(1)1898 4598 y(A)1994 4615 y Ft(=)2121 +4511 y FB(n)2082 4536 y Fr(X)2088 4713 y FB(i)p Fq(=1)2215 +4615 y Fu(x)2262 4627 y FB(i)2290 4615 y Ft(\(0\))p Fu(;)180 +b Fx(8)p Fu(t)24 b Fe(>)e Ft(0)300 b FE(\(1.5\))p eop +end +%%Page: 8 8 +TeXDict begin 8 7 bop 523 100 a FA(8)1011 b(Jacques)20 +b(M.)d(Bahi,)g(Abdallah)i(Makhoul)f(and)h(Ahmed)f(Mostef)o(aoui)523 +282 y FE(\277From)30 b(assumption)g(1)h(we)g(can)g(conclude)e(that)i +(the)g(data)g Fu(v)2359 294 y FB(ij)2417 282 y Ft(\()p +Fu(t)p Ft(\))h FE(in)f(the)g(netw)o(ork)f(before)523 +382 y(time)23 b Fu(t)h FE(consists)g(in)f(data)g(sent)g(in)g(the)h +(interv)n(al)e(time)h Fx(f)o Fu(t)c Fx(\000)f Fu(B)23 +b Ft(+)18 b(1)p Fu(;)c(:::;)g(t)j Fx(\000)i Ft(1)p Fx(g)12 +b Fu(;)24 b FE(so)g Fu(v)3041 394 y FB(ij)3099 382 y +Ft(\()p Fu(t)p Ft(\))29 b Fx(\024)523 431 y Fr(P)611 +451 y FB(t)p Fo(\000)p Fq(1)611 518 y FB(\034)7 b Fq(=)p +FB(t)p Fo(\000)p FB(B)s Fq(+1)931 493 y Fu(s)970 505 +y FB(ij)1028 493 y Ft(\()p Fu(t)p Ft(\))p Fu(;)22 b Fx(8)p +Fu(nodei;)14 b Fx(8)p Fu(j)27 b Fx(2)d Fu(N)1704 505 +y FB(i)1731 493 y Ft(\()p Fu(t)p Ft(\))p Fu(:)523 664 +y FD(Lemma)d(1.)j Fy(The)40 b(sequence)e Fu(m)p Ft(\()p +Fu(t)p Ft(\))j Fy(is)f(monotone)o(,)d(nondecr)m(easing)g(and)i(con)m +(ver)m(g)o(es)f(and)523 763 y Fx(8)p Fu(i;)14 b Fx(8)p +Fu(s)23 b Fx(\025)f Ft(0)p Fu(;)1120 924 y(x)1167 936 +y FB(i)1195 924 y Ft(\()p Fu(t)d Ft(+)f Fu(s)p Ft(\))23 +b Fx(\025)g Fu(m)p Ft(\()p Fu(t)p Ft(\))c(+)1810 806 +y Fr(\022)1885 867 y Ft(1)p 1881 904 50 4 v 1881 981 +a Fu(n)1941 806 y Fr(\023)2002 824 y FB(t)2027 832 y +Fd(1)2059 824 y Fo(\000)p FB(t)2136 832 y Fd(0)2187 924 +y Ft(\()p Fu(x)2266 936 y FB(i)2294 924 y Ft(\()p Fu(t)p +Ft(\))g Fx(\000)f Fu(m)p Ft(\()p Fu(t)p Ft(\)\))623 1144 +y FE(Let)i Fu(i)k Fx(2)g Fu(V)5 b(;)14 b(t)1006 1156 +y Fq(0)1067 1144 y Fx(2)24 b Fs(N)p Fu(;)d FE(and)f Fu(t)k +Fx(\025)f Fu(t)1563 1156 y Fq(0)1600 1144 y Fu(;)f(j)28 +b Fx(2)c Fu(V)5 b(;)22 b FE(we)f(say)f(that)h(the)g(e)n(v)o(ent)e +Fu(E)2660 1156 y FB(j)2696 1144 y Ft(\()p Fu(t)p Ft(\))i +FE(occurs)f(if)h(there)523 1244 y(e)o(xists)g Fu(j)28 +b Fx(2)p 872 1177 76 4 v 23 w Fu(N)948 1256 y FB(i)975 +1244 y Ft(\()p Fu(t)p Ft(\))22 b FE(such)e(that)1187 +1447 y Fu(x)1234 1413 y FB(i)1234 1468 y(j)1270 1447 +y Ft(\()p Fu(t)p Ft(\))j Fu(<)g(m)p Ft(\()p Fu(t)1610 +1459 y Fq(0)1647 1447 y Ft(\))c(+)1879 1391 y Fu(\013)p +1791 1428 230 4 v 1791 1504 a Ft(2)p Fu(n)1883 1480 y +FB(t)p Fo(\000)p FB(t)1985 1488 y Fd(0)2045 1447 y Ft(\()p +Fu(x)2124 1459 y FB(i)2152 1447 y Ft(\()p Fu(t)2214 1459 +y Fq(0)2252 1447 y Ft(\))g Fx(\000)f Fu(m)p Ft(\()p Fu(t)2521 +1459 y Fq(0)2558 1447 y Ft(\)\))506 b FE(\(1.6\))523 +1652 y(and)1439 1752 y Fu(s)1478 1764 y FB(ij)1537 1752 +y Ft(\()p Fu(t)p Ft(\))23 b Fx(\025)g Fu(\013)1809 1685 +y Fr(\000)1847 1752 y Fu(x)1894 1764 y FB(i)1922 1752 +y Ft(\()p Fu(t)p Ft(\))c Fx(\000)f Fu(x)2165 1718 y FB(i)2165 +1773 y(j)2201 1752 y Ft(\()p Fu(t)p Ft(\))2295 1685 y +Fr(\001)2347 1752 y Fu(;)758 b FE(\(1.7\))523 1901 y(where)20 +b Fu(\013)h FE(is)g(de\002ned)e(in)h(assumption)f(2,)h(and)g +Fu(V)40 b FE(is)21 b(the)f(set)h(of)f(all)h(nodes.)523 +2072 y FD(Lemma)g(2.)j Fy(Let)29 b Fu(t)1068 2084 y Fq(1)1143 +2072 y Fx(\025)38 b Fu(t)1276 2084 y Fq(0)1313 2072 y +Fu(;)29 b Fy(if)g Fu(E)1501 2084 y FB(j)1537 2072 y Ft(\()p +Fu(t)1599 2084 y Fq(1)1636 2072 y Ft(\))g Fy(occur)o(s,)g(then)f +Fu(E)2201 2084 y FB(j)2236 2072 y Ft(\()p Fu(\034)9 b +Ft(\))30 b Fy(doesn')n(t)d(occur)h(for)h(any)e Fu(\034)48 +b Fx(\025)523 2172 y Fu(t)553 2184 y Fq(1)609 2172 y +Ft(+)18 b(2)p Fu(B)t Fy(.)523 2342 y FD(Lemma)j(3.)j +Fx(8)p Fu(i)f Fx(2)g Fu(V)5 b(;)14 b Fx(8)p Fu(t)1245 +2354 y Fq(0)1306 2342 y Fx(2)23 b Fs(N)p Fu(;)14 b Fx(8)p +Fu(j)28 b Fx(2)p 1667 2275 76 4 v 23 w Fu(N)1743 2354 +y FB(i)1771 2342 y Ft(\()p Fu(t)p Ft(\))p Fu(;)808 2590 +y(t)23 b Fx(\025)g Fu(t)979 2602 y Fq(0)1034 2590 y Ft(+)18 +b(3)p Fu(nB)27 b Fx(\))c Fu(x)1452 2602 y FB(j)1487 2590 +y Ft(\()p Fu(t)p Ft(\))h Fx(\025)f Fu(m)p Ft(\()p Fu(t)1828 +2602 y Fq(0)1865 2590 y Ft(\))c(+)f Fu(\021)2057 2473 +y Fr(\022)2132 2534 y Ft(1)p 2128 2571 50 4 v 2128 2647 +a Fu(n)2188 2473 y Fr(\023)2249 2490 y FB(t)p Fo(\000)p +FB(t)2351 2498 y Fd(0)2401 2590 y Ft(\()p Fu(x)2480 2602 +y FB(i)2509 2590 y Ft(\()p Fu(t)2571 2602 y Fq(0)2608 +2590 y Ft(\))h Fx(\000)f Fu(m)p Ft(\()p Fu(t)2877 2602 +y Fq(0)2914 2590 y Ft(\)\))p Fu(:)523 2850 y Fy(wher)m(e)j +Fu(\021)26 b Ft(=)908 2817 y FB(\013)p 908 2831 44 4 +v 913 2879 a Fq(2)975 2783 y Fr(\000)1027 2817 y Fq(1)p +1023 2831 42 4 v 1023 2879 a FB(n)1074 2783 y Fr(\001)1113 +2800 y FB(B)1183 2850 y Fu(:)523 3020 y Fy(Pr)l(oof)o(.)40 +b FE(Let)26 b(us)f(\002x)h Fu(i)f FE(and)g Fu(t)1349 +3032 y Fq(0)1386 3020 y Fu(:)h FE(Let)f(us)h(consider)e +Fu(t)2008 3032 y Fq(1)2045 3020 y Fu(;)14 b(:::;)g(t)2218 +3032 y FB(n)2289 3020 y FE(such)25 b(that)g Fu(t)2647 +3032 y FB(k)q Fo(\000)p Fq(1)2795 3020 y Ft(+)c(2)p Fu(B)36 +b Fx(\024)c Fu(t)3149 3032 y FB(k)3222 3020 y Fx(\024)523 +3120 y Fu(t)553 3132 y FB(k)q Fo(\000)p Fq(1)700 3120 +y Ft(+)21 b(3)p Fu(B)t(:)j FE(Lemma)g(2)g(implies)g(that)g(if)g +Fu(k)34 b Fx(6)p Ft(=)29 b Fu(l)r(;)c FE(then)e Fu(E)2254 +3132 y FB(j)2289 3120 y Ft(\()p Fu(t)2351 3132 y FB(k)2392 +3120 y Ft(\))i FE(and)f Fu(E)2655 3132 y FB(j)2690 3120 +y Ft(\()p Fu(t)2752 3132 y FB(l)2778 3120 y Ft(\))h FE(doesn')o(t)d +(occur)523 3220 y(together)-5 b(.)31 b(Hence,)h(there)g(e)o(xists)i +Fu(t)1561 3232 y FB(k)1634 3220 y FE(for)e(which)g(\(1.6\))g(is)h(not)f +(satis\002ed)i(for)e(all)h Fu(d)3015 3190 y FB(i)3015 +3241 y(j)3050 3220 y Ft(\()p Fu(t)3112 3232 y FB(k)3153 +3220 y Ft(\))46 b Fx(2)523 3329 y(f)p Fu(t)595 3341 y +FB(k)654 3329 y Fx(\000)18 b Fu(B)k Ft(+)c(1)p Fu(;)c(:::;)g(t)1120 +3341 y FB(k)1161 3329 y Fx(g)f Fu(;)21 b FE(and)f Fu(j)28 +b Fx(2)23 b Fu(N)1608 3341 y FB(i)1635 3329 y Ft(\()p +Fu(d)1710 3299 y FB(i)1710 3351 y(j)1746 3329 y Ft(\()p +Fu(t)1808 3341 y FB(k)1849 3329 y Ft(\)\))p Fu(:)623 +3439 y FE(Let)g Fu(j)796 3409 y Fo(\003)864 3439 y Fx(2)29 +b Fu(N)1015 3451 y FB(i)1043 3439 y Ft(\()p Fu(d)1118 +3409 y FB(i)1118 3461 y(j)1153 3439 y Ft(\()p Fu(t)1215 +3451 y FB(k)1256 3439 y Ft(\)\))c FE(such)e(that)h Fu(x)1717 +3409 y FB(i)1717 3461 y(j)1747 3444 y Fc(\003)1787 3439 +y Ft(\()p Fu(t)1849 3451 y FB(k)1890 3439 y Ft(\))30 +b Fx(\024)f Fu(x)2093 3409 y FB(i)2093 3461 y(j)2128 +3439 y Ft(\()p Fu(t)2190 3451 y FB(k)2231 3439 y Ft(\))p +Fu(;)14 b Fx(8)p Fu(j)35 b Fx(2)29 b Fu(N)2566 3451 y +FB(i)2594 3439 y Ft(\()p Fu(d)2669 3409 y FB(i)2669 3461 +y(j)2704 3439 y Ft(\()p Fu(t)2766 3451 y FB(k)2807 3439 +y Ft(\)\))p Fu(:)c FE(Since)f(\(1.6\))523 3539 y(is)d(not)f +(satis\002ed)h(for)e Fu(j)28 b Ft(=)23 b Fu(j)1325 3509 +y Fo(\003)1363 3539 y Fu(;)e FE(we)g(ha)n(v)o(e)787 3800 +y Fu(x)834 3769 y FB(i)834 3821 y(j)869 3800 y Ft(\()p +Fu(t)931 3812 y FB(k)973 3800 y Ft(\))i Fx(\025)h Fu(x)1164 +3769 y FB(i)1164 3821 y(j)1194 3805 y Fc(\003)1235 3800 +y Ft(\()p Fu(t)1297 3812 y FB(k)1338 3800 y Ft(\))752 +3919 y Fu(x)799 3888 y FB(i)799 3940 y(j)829 3924 y Fc(\003)869 +3919 y Ft(\()p Fu(t)931 3931 y FB(k)973 3919 y Ft(\))f +Fx(\025)h Fu(m)p Ft(\()p Fu(t)1252 3931 y Fq(0)1290 3919 +y Ft(\))19 b(+)1434 3886 y FB(\013)p 1434 3900 44 4 v +1439 3947 a Fq(2)1500 3851 y Fr(\000)1552 3886 y Fq(1)p +1549 3900 42 4 v 1549 3947 a FB(n)1600 3851 y Fr(\001)1638 +3868 y FB(t)1663 3877 y Fn(k)1699 3868 y Fo(\000)p FB(t)1776 +3876 y Fd(0)1826 3919 y Ft(\()q Fu(x)1906 3931 y FB(i)1934 +3919 y Ft(\()p Fu(t)1996 3931 y Fq(0)2033 3919 y Ft(\))g +Fx(\000)f Fu(m)p Ft(\()p Fu(t)2302 3931 y Fq(0)2339 3919 +y Ft(\)\))d Fu(;)34 b Fx(8)p Fu(j)29 b Fx(2)23 b Fu(N)2729 +3931 y FB(i)2756 3919 y Ft(\()p Fu(d)2831 3888 y FB(i)2831 +3940 y(j)2867 3919 y Ft(\()p Fu(t)2929 3931 y FB(k)2970 +3919 y Ft(\)\))p Fu(:)623 4111 y FE(F)o(or)c Fu(t)24 +b Fx(\025)e Fu(t)928 4123 y Fq(0)984 4111 y Ft(+)c(3)p +Fu(nB)t(;)i FE(we)h(ha)n(v)o(e)e Fu(t)k Fx(\025)g Fu(t)1732 +4123 y FB(k)1796 4111 y Fx(\025)g Fu(d)1927 4081 y FB(i)1927 +4133 y(j)1962 4111 y Ft(\()p Fu(t)2024 4123 y FB(k)2065 +4111 y Ft(\))p Fu(:)e FE(Lemma)e(1)i(gi)n(v)o(es,)e Fx(8)p +Fu(j)28 b Fx(2)c Fu(N)2945 4123 y FB(i)2972 4111 y Ft(\()p +Fu(d)3047 4081 y FB(i)3047 4133 y(j)3082 4111 y Ft(\()p +Fu(t)3144 4123 y FB(k)3186 4111 y Ft(\)\))890 4322 y +Fu(x)937 4334 y FB(j)972 4322 y Ft(\()p Fu(t)p Ft(\))g +Fx(\025)g Fu(m)p Ft(\()p Fu(d)1327 4292 y FB(i)1327 4344 +y(j)1363 4322 y Ft(\()p Fu(t)1425 4334 y FB(k)1466 4322 +y Ft(\)\))19 b(+)1632 4255 y Fr(\000)1684 4289 y Fq(1)p +1680 4303 V 1680 4351 a FB(n)1731 4255 y Fr(\001)1769 +4272 y FB(t)p Fo(\000)p FB(d)1881 4247 y Fn(i)1881 4289 +y(j)1911 4272 y Fq(\()p FB(t)1962 4281 y Fn(k)1999 4272 +y Fq(\))2043 4322 y Ft(\()p Fu(x)2122 4334 y FB(j)2157 +4322 y Ft(\()p Fu(d)2232 4292 y FB(i)2232 4344 y(j)2268 +4322 y Ft(\()p Fu(t)2330 4334 y FB(k)2371 4322 y Ft(\)\))g +Fx(\000)f Fu(m)p Ft(\()p Fu(d)2685 4292 y FB(i)2685 4344 +y(j)2720 4322 y Ft(\()p Fu(t)2782 4334 y FB(k)2823 4322 +y Ft(\)\)\))1090 4445 y Fx(\025)24 b Fu(m)p Ft(\()p Fu(t)1314 +4457 y Fq(0)1352 4445 y Ft(\))18 b(+)1495 4412 y FB(\013)p +1495 4426 44 4 v 1500 4473 a Fq(2)1562 4377 y Fr(\000)1614 +4412 y Fq(1)p 1610 4426 42 4 v 1610 4473 a FB(n)1661 +4377 y Fr(\001)1699 4395 y FB(B)1770 4377 y Fr(\000)1822 +4412 y Fq(1)p 1818 4426 V 1818 4473 a FB(n)1869 4377 +y Fr(\001)1907 4395 y FB(t)p Fo(\000)p FB(t)2009 4403 +y Fd(0)2060 4445 y Ft(\()p Fu(x)2139 4457 y FB(i)2167 +4445 y Ft(\()p Fu(t)2229 4457 y Fq(0)2267 4445 y Ft(\))g +Fx(\000)g Fu(m)p Ft(\()p Fu(t)2535 4457 y Fq(0)2573 4445 +y Ft(\)\))c Fu(:)523 4611 y FD(De\002nition)20 b(1.)25 +b FE(W)-7 b(e)39 b(say)f(that)g(a)g(sensor)f Fu(j)44 +b FE(is)39 b Fu(l)r FE(-connected)c(to)j(a)g(sensor)f +Fu(i)h FE(if)h(it)f(is)h(logi-)523 4711 y(cally)g(connected)e(to)i +Fu(i)g FE(by)f Fu(l)j FE(communication)36 b(graphs,)h(i.e.)i(if)g +(there)f(e)o(xists)h Fu(r)2999 4681 y FB(i)2997 4735 +y(k)3039 4711 y Ft(\()p Fu(t)3101 4723 y FB(k)3142 4711 +y Ft(\))57 b Fx(2)p eop end +%%Page: 9 9 +TeXDict begin 9 8 bop 523 100 a FA(1)42 b(An)18 b(Asynchronous)j(Dif)n +(fusion)e(Scheme)g(for)g(Data)f(Fusion)h(in)f(Sensor)h(Netw)o(orks)581 +b(9)523 282 y Fx(f)p Fu(t)595 294 y FB(k)654 282 y Fx(\000)18 +b Fu(B)k Ft(+)c(1)p Fu(;)c(:::;)g(t)1120 294 y FB(k)1161 +282 y Fx(g)f Fu(;)23 b FE(where)f Fu(k)30 b Fx(2)d(f)p +Fu(i)1714 294 y Fq(1)1751 282 y Fu(;)14 b(:::;)g(i)1923 +294 y FB(l)1948 282 y Fx(g)o FE(,)23 b(such)f(that)h +Fu(i)j Ft(=)h Fu(i)2532 294 y Fq(1)2596 282 y Fx(2)h +Fu(N)2746 294 y FB(i)2769 302 y Fd(2)2805 282 y Ft(\()p +Fu(r)2876 245 y FB(i)2899 253 y Fd(2)2874 305 y FB(i)2897 +313 y Fd(1)2937 282 y Ft(\()p Fu(t)2999 294 y Fq(1)3037 +282 y Ft(\)\))p Fu(;)14 b(i)3167 294 y Fq(2)3231 282 +y Fx(2)523 397 y Fu(N)590 409 y FB(i)613 417 y Fd(3)650 +397 y Ft(\()p Fu(r)721 360 y FB(i)744 368 y Fd(3)719 +421 y FB(i)742 429 y Fd(2)782 397 y Ft(\()p Fu(t)844 +409 y Fq(2)881 397 y Ft(\)\))p Fu(;)g(:::;)523 515 y(i)552 +527 y FB(l)600 515 y Fx(2)24 b Fu(N)746 527 y FB(j)780 +515 y Ft(\()p Fu(r)851 476 y FB(j)849 541 y(l)887 515 +y Ft(\()p Fu(t)949 527 y FB(l)975 515 y Ft(\)\))p Fu(:)523 +690 y FD(Lemma)d(4.)j Fy(If)d(sensor)f Fu(j)26 b Fy(is)21 +b Fu(l)r Fy(-connected)c(to)k(sensor)f Fu(i)g Fy(then)746 +908 y Fx(8)p Fu(t)j Fx(\025)g Fu(t)963 920 y Fq(0)1019 +908 y Ft(+)18 b(3)p Fu(nl)r(B)t(;)33 b(x)1391 920 y FB(j)1427 +908 y Ft(\()p Fu(t)p Ft(\))23 b Fx(\025)g Fu(m)p Ft(\()p +Fu(t)1767 920 y Fq(0)1804 908 y Ft(\))c(+)f(\()p Fu(\021)s +Ft(\))2047 866 y FB(l)2086 908 y Ft(\()2133 852 y(1)p +2128 889 50 4 v 2128 965 a Fu(n)2188 908 y Ft(\))2220 +874 y Fq(\()p FB(t)p Fo(\000)p FB(t)2348 882 y Fd(0)2381 +874 y Fq(\))2407 849 y Fn(l)2449 908 y Ft(\()p Fu(x)2528 +920 y FB(i)2556 908 y Ft(\()p Fu(t)2618 920 y Fq(0)2656 +908 y Ft(\))h Fx(\000)f Fu(m)p Ft(\()p Fu(t)2925 920 +y Fq(0)2962 908 y Ft(\)\))c Fu(:)523 1114 y Fy(Pr)l(oof)o(.)40 +b FE(By)32 b(induction.)d(Suppose)i(that)g(the)g(lemma)g(is)h(true)f +(for)g Fu(t)2532 1126 y Fq(0)2595 1114 y Ft(+)c(3)p Fu(nl)r(B)34 +b FE(then)d(if)h Fu(j)k FE(is)523 1214 y Fu(l)r FE(-connected)17 +b(to)k Fu(j)5 b FE(,)20 b(we)h(ha)n(v)o(e)819 1462 y +Fu(x)866 1474 y FB(l)892 1462 y Ft(\()p Fu(t)954 1474 +y Fq(0)1010 1462 y Ft(+)d(3)p Fu(nl)r(B)t Ft(\))23 b +Fx(\025)f Fu(m)p Ft(\()p Fu(t)1556 1474 y Fq(0)1594 1462 +y Ft(\))c(+)g(\()q Fu(\021)s Ft(\))1836 1420 y FB(l)1875 +1345 y Fr(\022)1937 1462 y Ft(\()1983 1405 y(1)p 1979 +1443 V 1979 1519 a Fu(n)2039 1462 y Ft(\))2071 1427 y +Fq(\(3)p FB(nlB)s Fq(\))2275 1345 y Fr(\023)2337 1362 +y FB(l)2376 1462 y Ft(\()p Fu(x)2455 1474 y FB(i)2483 +1462 y Ft(\()p Fu(t)2545 1474 y Fq(0)2583 1462 y Ft(\))g +Fx(\000)h Fu(m)p Ft(\()p Fu(t)2852 1474 y Fq(0)2889 1462 +y Ft(\)\))14 b Fu(:)623 1661 y FE(Consider)23 b(a)i(sensor)f +Fu(k)j FE(connected)22 b(to)j Fu(j)k FE(\()p Fu(k)e FE(is)f +Ft(\()p Fu(l)20 b Ft(+)e(1\))o FE(-connected)k(to)j Fu(i)p +FE(\),)e(Lemma)h(3)g(and)523 1761 y(the)c(abo)o(v)o(e)f(inequality)g +(gi)n(v)o(e)g(\(replacing)f Fu(t)1762 1773 y Fq(0)1820 +1761 y FE(by)i Fu(t)1954 1773 y Fq(0)2010 1761 y Ft(+)e(3)p +Fu(nl)r(B)t Ft(\))p Fu(;)2799 2021 y(x)2846 2033 y FB(k)2887 +2021 y Ft(\()p Fu(t)p Ft(\))24 b Fx(\025)716 2147 y Fu(m)p +Ft(\()p Fu(t)851 2159 y Fq(0)907 2147 y Ft(+)18 b(3)p +Fu(nl)r(B)t Ft(\))f(+)h Fu(\021)s Ft(\()1399 2114 y Fq(1)p +1395 2128 42 4 v 1395 2175 a FB(n)1446 2147 y Ft(\))1478 +2091 y Fn(t)p Fc(\000)p Fn(t)1569 2103 y Fd(0)1602 2091 +y Fc(\000)p Fd(3)p Fn(nlB)1799 2054 y Fr(\020)1849 2147 +y Ft(\()p Fu(\021)s Ft(\))1957 2105 y FB(l)1997 2079 +y Fr(\000)2035 2147 y Ft(\()2081 2114 y Fq(1)p 2077 2128 +V 2077 2175 a FB(n)2128 2147 y Ft(\))2160 2116 y Fq(\(3)p +FB(nlB)s Fq(\))2365 2079 y Fr(\001)2403 2093 y FB(l)2442 +2147 y Ft(\()p Fu(x)2521 2159 y FB(i)2549 2147 y Ft(\()p +Fu(t)2611 2159 y Fq(0)2649 2147 y Ft(\))h Fx(\000)f Fu(m)p +Ft(\()p Fu(t)2918 2159 y Fq(0)2955 2147 y Ft(\)\))3020 +2054 y Fr(\021)3005 2270 y Fx(\025)1401 2394 y Fu(m)p +Ft(\()p Fu(t)1536 2406 y Fq(0)1573 2394 y Ft(\))h(+)f(\()p +Fu(\021)s Ft(\))1816 2352 y FB(l)p Fq(+1)1939 2326 y +Fr(\000)1977 2394 y Ft(\()2024 2361 y Fq(1)p 2020 2375 +V 2020 2422 a FB(n)2071 2394 y Ft(\))2103 2364 y Fq(\()p +FB(t)p Fo(\000)p FB(t)2231 2372 y Fd(0)2263 2364 y Fq(\))2293 +2326 y Fr(\001)2331 2341 y FB(l)p Fq(+1)2455 2394 y Ft(\()p +Fu(x)2534 2406 y FB(i)2562 2394 y Ft(\()p Fu(t)2624 2406 +y Fq(0)2662 2394 y Ft(\))g Fx(\000)g Fu(m)p Ft(\()p Fu(t)2930 +2406 y Fq(0)2968 2394 y Ft(\)\))c Fu(:)523 2572 y Fy(Pr)l(oof)41 +b(\(Pr)l(oof)35 b(of)g(Theor)m(em)f(1\).)h FE(Consider)f(a)i(sensor)e +Fu(i)h FE(and)g(a)g(time)h Fu(t)2713 2584 y Fq(0)2750 +2572 y Fu(:)f FE(Assumption)f(1)523 2671 y(implies)40 +b(that)h(sensor)f Fu(i)h FE(is)g Fu(B)t FE(-connected)d(to)j(an)o(y)e +(sensor)i Fu(j:)g FE(Lemma)e(4)i(gi)n(v)o(es:)f Fx(8)p +Fu(t)60 b Fx(2)523 2771 y Ft([)p Fu(t)576 2783 y Fq(0)632 +2771 y Ft(+)18 b(3)p Fu(nM)9 b(B)t(;)14 b(t)1031 2783 +y Fq(0)1085 2771 y Ft(+)k(3)p Fu(nM)9 b(B)22 b Ft(+)c +Fu(B)t Ft(])c Fu(;)21 b Fx(8)p Fu(j)28 b Fx(2)23 b Fu(V)5 +b(;)996 2954 y(x)1043 2966 y FB(j)1079 2954 y Ft(\()p +Fu(t)1141 2966 y Fq(0)1196 2954 y Ft(+)19 b(3)p Fu(nM)9 +b(B)21 b Ft(+)d Fu(B)t Ft(\))24 b Fx(\025)e Fu(m)p Ft(\()p +Fu(t)1974 2966 y Fq(0)2012 2954 y Ft(\))c(+)g Fu(\016)f +Ft(\()q Fu(x)2279 2966 y FB(i)2307 2954 y Ft(\()p Fu(t)2369 +2966 y Fq(0)2406 2954 y Ft(\))i Fx(\000)f Fu(m)p Ft(\()p +Fu(t)2675 2966 y Fq(0)2712 2954 y Ft(\)\))d Fu(;)523 +3136 y FE(where)20 b Fu(\016)26 b(>)c Ft(0)p Fu(:)f FE(Thus,)899 +3335 y Fu(m)p Ft(\()p Fu(t)1034 3347 y Fq(0)1090 3335 +y Ft(+)d(3)p Fu(nM)9 b(B)22 b Ft(+)c Fu(B)t Ft(\))23 +b Fx(\025)g Fu(m)p Ft(\()p Fu(t)1868 3347 y Fq(0)1905 +3335 y Ft(\))c(+)f Fu(\016)2093 3243 y Fr(\020)2143 3335 +y Ft(max)2208 3387 y FB(i)2311 3335 y Fu(x)2358 3347 +y FB(i)2386 3335 y Ft(\()p Fu(t)2448 3347 y Fq(0)2486 +3335 y Ft(\))g Fx(\000)g Fu(m)p Ft(\()p Fu(t)2754 3347 +y Fq(0)2792 3335 y Ft(\))2824 3243 y Fr(\021)2887 3335 +y Fu(:)523 3549 y FE(Note)i(that)g Ft(lim)966 3561 y +FB(t)991 3569 y Fd(0)1023 3561 y Fo(!1)1174 3549 y Ft(max)1328 +3561 y FB(i)1370 3549 y Fu(x)1417 3561 y FB(i)1445 3549 +y Ft(\()p Fu(t)1507 3561 y Fq(0)1544 3549 y Ft(\))f Fx(\000)f +Fu(m)p Ft(\()p Fu(t)1813 3561 y Fq(0)1850 3549 y Ft(\))24 +b(=)e(0)f FE(\(otherwise)523 3649 y Ft(lim)638 3661 y +FB(t)663 3669 y Fd(0)696 3661 y Fo(!1)846 3649 y Fu(m)p +Ft(\()p Fu(t)981 3661 y Fq(0)1019 3649 y Ft(\))30 b(=)g(+)p +Fx(1)p FE(\).)23 b(On)h(the)g(other)f(hand,)g(as)h Ft(lim)2259 +3661 y FB(t)p Fo(!1)2434 3649 y Fu(m)p Ft(\()p Fu(t)p +Ft(\))31 b(=)e Fu(c)c FE(and)e(as)i Fu(m)p Ft(\()p Fu(t)p +Ft(\))30 b Fx(\024)523 3748 y Fu(x)570 3760 y FB(j)605 +3748 y Ft(\()p Fu(t)p Ft(\))24 b Fx(\024)f Ft(max)965 +3760 y FB(i)1007 3748 y Fu(x)1054 3760 y FB(i)1082 3748 +y Ft(\()p Fu(t)p Ft(\))p Fu(;)d FE(we)g(deduce)e(that)h +Fx(8)p Fu(j)28 b Fx(2)c Fu(V)5 b(;)20 b Ft(lim)2133 3760 +y FB(t)p Fo(!1)2309 3748 y Fu(x)2356 3760 y FB(j)2391 +3748 y Ft(\()p Fu(t)p Ft(\))k(=)e Fu(c;)e FE(which)f(implies)g(that)523 +3848 y Ft(lim)638 3860 y FB(t)p Fo(!1)814 3848 y Fu(s)853 +3860 y FB(ij)911 3848 y Ft(\()p Fu(t)p Ft(\))33 b(=)f(0)p +FE(.)25 b(Thanks)f(to)h(assumption)f(1,)h(we)h(deduce)e(that)h +Ft(lim)2724 3860 y FB(t)p Fo(!1)2900 3848 y Fu(v)2940 +3860 y FB(ij)2999 3848 y Ft(\()p Fu(t)p Ft(\))32 b(=)g(0)p +Fu(;)523 3948 y FE(and)c(thanks)h(to)g(\(1.5\),)e(we)i(deduce)f(that)h +Fu(nc)39 b Ft(=)f(lim)2111 3960 y FB(t)p Fo(!1)2286 3948 +y Fu(x)2333 3960 y FB(i)2361 3948 y Ft(\()p Fu(t)p Ft(\))i(=)2599 +3885 y Fr(P)2686 3906 y FB(n)2686 3972 y(i)p Fq(=1)2812 +3948 y Fu(x)2859 3960 y FB(i)2887 3948 y Ft(\(0\))p Fu(;)p +FE(i.e.)29 b Fu(c)39 b Ft(=)523 4056 y Fr(P)611 4076 +y FB(n)611 4143 y(i)p Fq(=1)736 4118 y Fu(x)783 4130 +y FB(i)811 4118 y Ft(\(0\))p Fu(=n;)21 b FE(which)e(yields)h(to)h +Ft(lim)1696 4130 y FB(t)p Fo(!1)1871 4118 y Fu(x)1918 +4130 y FB(i)1946 4118 y Ft(\()p Fu(t)p Ft(\))j(=)2166 +4085 y Fq(1)p 2162 4099 V 2162 4146 a FB(n)2252 4014 +y(n)2213 4039 y Fr(X)2219 4216 y FB(i)p Fq(=1)2333 4118 +y Fu(x)2380 4130 y FB(i)2408 4118 y Ft(\(0\))d FE(pro)o(ving)c(Theorem) +i(1.)p eop end +%%Page: 10 10 +TeXDict begin 10 9 bop 523 100 a FA(10)976 b(Jacques)20 +b(M.)d(Bahi,)g(Abdallah)i(Makhoul)f(and)h(Ahmed)f(Mostef)o(aoui)523 +282 y Fv(1.3.4)41 b(Practical)24 b(Issues)523 515 y FE(W)-7 +b(e)37 b(no)n(w)e(discuss)h(some)f(practical)g(aspects)h(related)f(to)h +(the)f(implementation)f(of)h(Algo-)523 614 y(rithm)27 +b(1.)g(The)g(main)g(tw)o(o)h(points)f(are)g(ho)n(w)g(to)g(choose)g +Fu(s)2243 626 y FB(ij)2301 614 y Ft(\()p Fu(t)p Ft(\))h +FE(and)f(ho)n(w)g(to)h(o)o(v)o(ercome)c(the)523 714 y(loss)d(of)f +(messages?)623 814 y(Each)g(node)g(updates)f(its)j(state)g(follo)n +(wing)d(equation)g(\(1.2\).)g(This)i(is)h(achie)n(v)o(ed,)c(by)j +(updat-)523 913 y(ing)26 b(each)f(sensors)h Fu(s)1144 +925 y FB(ij)1202 913 y Ft(\()p Fu(t)p Ft(\))h FE(through)d(time.)i(F)o +(or)f(sak)o(e)h(of)g(simplicity)-5 b(,)25 b(the)g(v)n(alue)h(of)f +Fu(s)3052 925 y FB(ij)3111 913 y Ft(\()p Fu(t)p Ft(\))h +FE(is)523 1013 y(chosen)18 b(to)g(be)g(computed)f(by)h(the)g(weighted)g +(dif)n(ference)e(between)i(the)g(states)i(of)e(nodes)f +Fu(i)i FE(and)523 1112 y Fu(j)26 b FE(as)21 b(follo)n(ws:)933 +1342 y Fu(s)972 1354 y FB(ij)1030 1342 y Ft(\()p Fu(t)p +Ft(\))j(=)1235 1225 y Fr(\032)1310 1290 y Fu(\013)1363 +1302 y FB(ij)1422 1290 y Ft(\()p Fu(t)p Ft(\)\()p Fu(x)1595 +1302 y FB(i)1624 1290 y Ft(\()p Fu(t)p Ft(\))19 b Fx(\000)f +Fu(x)1867 1260 y FB(i)1867 1312 y(j)1902 1290 y Ft(\()p +Fu(t)p Ft(\)\))192 b FE(if)83 b Fu(x)2401 1302 y FB(i)2429 +1290 y Ft(\()p Fu(t)p Ft(\))23 b Fu(>)g(x)2681 1260 y +FB(i)2681 1312 y(j)2716 1290 y Ft(\()p Fu(t)p Ft(\))f +Fu(;)1310 1393 y Ft(0)868 b FE(otherwise)o Fu(:)623 1543 +y FE(The)15 b(choice)g(of)h Fu(s)1126 1555 y FB(ij)1184 +1543 y Ft(\()p Fu(t)p Ft(\))h FE(is)g(then)f(deduced)e(from)h(the)g +(proper)g(choice)g(of)g(the)h(weights)g Fu(\013)3113 +1555 y FB(ij)3172 1543 y Ft(\()p Fu(t)p Ft(\))p FE(.)523 +1643 y(Hence,)24 b Fu(\013)834 1655 y FB(ij)893 1643 +y Ft(\()p Fu(t)p Ft(\))i FE(must)e(be)h(chosen)f(such)h(that)g(the)f +(states)i(of)f(all)g(the)g(nodes)f(con)m(v)o(er)o(ge)d(to)k(the)523 +1742 y(a)n(v)o(erage)799 1680 y Fr(P)887 1701 y FB(n)887 +1767 y(i)p Fq(=1)1012 1742 y Fu(z)1051 1754 y FB(i)1078 +1742 y Fu(=n)p FE(,)20 b(i.e.,)g(assumptions)g(2)g(and)f(3)i(must)f(be) +g(satis\002ed.)623 1842 y(Denote)25 b(by)h Fu(j)1038 +1812 y Fo(\003)1103 1842 y FE(the)g(sensor)g(node)f(satisfying)h +Fu(x)2055 1812 y FB(i)2055 1864 y(j)2085 1847 y Fc(\003)2159 +1842 y Ft(=)34 b(min)2396 1857 y FB(k)q Fo(2)p FB(N)2530 +1865 y Fn(i)2556 1857 y Fq(\()p FB(t)p Fq(\))2651 1842 +y Fu(x)2698 1812 y FB(i)2698 1865 y(k)2740 1842 y Ft(\()p +Fu(t)p Ft(\))27 b FE(\(note)e(that)i Fu(j)3249 1812 y +Fo(\003)523 1942 y FE(depends)20 b(on)g Fu(i)h FE(and)f(time)h +Fu(t)p FE(\))p Fu(:)h FE(The)e(v)n(alues)h(of)f Fu(\013)1909 +1954 y FB(ij)1968 1942 y Ft(\()p Fu(t)p Ft(\))i FE(must)f(be)g +(selected)f(so)i(that)f(to)g(a)n(v)n(oid)f(the)523 2041 +y(ping)f(pong)g(condition)g(presented)g(in)h(assumption)f(3.)623 +2141 y(This)i(is)i(equi)n(v)n(alent)c(to)j(choose)e Fu(\013)1625 +2153 y FB(ij)1684 2141 y Ft(\()p Fu(t)p Ft(\))j FE(so)e(that)h +Fx(8)p Fu(t)j Fe(>)g Ft(0)p Fu(;)14 b Fx(8)p Fu(i)25 +b Fx(2)g Fu(N)t(;)e FE(and)e Fu(j)30 b Fx(6)p Ft(=)25 +b Fu(j)2945 2111 y Fo(\003)3008 2141 y Fx(2)p 3089 2074 +76 4 v 26 w Fu(N)3165 2153 y FB(i)3192 2141 y Ft(\()p +Fu(t)p Ft(\))523 2240 y FE(satisfying)20 b Fu(x)914 2252 +y FB(i)942 2240 y Ft(\()p Fu(t)p Ft(\))j Fu(>)g(x)1194 +2210 y FB(i)1194 2262 y(j)1229 2240 y Ft(\()p Fu(t)p +Ft(\))p Fu(;)1015 2494 y Ft(0)f Fx(\024)h Fu(\013)1220 +2506 y FB(ij)1279 2494 y Ft(\()p Fu(t)p Ft(\))g Fx(\024)1494 +2438 y Ft(1)p 1494 2475 42 4 v 1494 2551 a(2)1559 2352 +y Fr( )1625 2494 y Ft(1)18 b Fx(\000)1778 2363 y Fr(P)1865 +2450 y FB(j)s Fo(6)p Fq(=)p FB(i)1989 2425 y Fu(\013)2042 +2437 y FB(ik)2106 2425 y Ft(\()p Fu(t)p Ft(\)\()p Fu(x)2279 +2437 y FB(i)2308 2425 y Ft(\()p Fu(t)p Ft(\))h Fx(\000)f +Fu(x)2551 2395 y FB(k)2551 2447 y(i)2592 2425 y Ft(\()p +Fu(t)p Ft(\)\))p 1778 2475 942 4 v 1992 2563 a(\()p Fu(x)2071 +2575 y FB(i)2100 2563 y Ft(\()p Fu(t)p Ft(\))h Fx(\000)f +Fu(x)2343 2523 y FB(j)2343 2586 y(i)2378 2563 y Ft(\()p +Fu(t)p Ft(\)\))2729 2352 y Fr(!)3128 2494 y FE(\(1.8\))623 +2718 y(The)25 b(weights)g Fu(\013)1115 2730 y FB(ij)1174 +2718 y Ft(\()p Fu(t)p Ft(\))h FE(must)g(also)g(be)f(chosen)g(in)g +(order)g(to)g(respect)h(assumption)e(2.)h(This)523 2817 +y(assumption)19 b(can)h(be)g(carried)f(out)h(by)g(\002xing)g(a)g +(constant)g Fu(\014)27 b Fx(2)c Ft([0)p Fu(;)14 b Ft(1])20 +b FE(and)g(choosing)889 2930 y Fr(8)889 3005 y(<)889 +3154 y(:)976 2933 y(P)1063 3020 y FB(k)q Fo(6)p Fq(=)p +FB(j)1180 3003 y Fc(\003)1216 3020 y Fo(2)p FB(N)1314 +3028 y Fn(i)1340 3020 y Fq(\()p FB(t)p Fq(\))1435 2995 +y Fu(\013)1488 3007 y FB(ik)1552 2995 y Ft(\()p Fu(t)p +Ft(\)\()p Fu(x)1725 3007 y FB(i)1754 2995 y Ft(\()p Fu(t)p +Ft(\))f Fx(\000)f Fu(x)1997 2965 y FB(i)1997 3019 y(k)2039 +2995 y Ft(\()p Fu(t)p Ft(\)\))24 b Fx(\024)e Fu(\014)t +Ft(\()p Fu(x)2406 3007 y FB(i)2435 2995 y Ft(\()p Fu(t)p +Ft(\))d Fx(\000)f Fu(x)2678 2965 y FB(i)2678 3017 y(j)2708 +3000 y Fc(\003)2748 2995 y Ft(\()p Fu(t)p Ft(\)\))p Fu(;)976 +3155 y(\013)1029 3167 y FB(ij)1082 3151 y Fc(\003)1122 +3155 y Ft(\()p Fu(t)p Ft(\))24 b(=)1337 3122 y Fq(1)p +1337 3136 34 4 v 1337 3184 a(2)1394 3038 y Fr(\022)1455 +3155 y Ft(1)18 b Fx(\000)1608 3059 y Fb(P)1678 3121 y +Fn(k)q Fc(6)p Fd(=)p Fn(j)1779 3109 y Fc(\003)1830 3102 +y FB(\013)1873 3111 y Fn(ik)1931 3102 y Fq(\()p FB(t)p +Fq(\)\()p FB(x)2072 3110 y Fn(i)2098 3102 y Fq(\()p FB(t)p +Fq(\))p Fo(\000)p FB(x)2265 3077 y Fn(i)2265 3119 y(k)2301 +3102 y Fq(\()p FB(t)p Fq(\)\))p 1608 3136 796 4 v 1793 +3187 a(\()p FB(x)1857 3195 y Fn(i)1883 3187 y Fq(\()p +FB(t)p Fq(\))p Fo(\000)p FB(x)2050 3167 y Fn(i)2050 3210 +y(j)2076 3198 y Fc(\003)2116 3187 y Fq(\()p FB(t)p Fq(\)\))2414 +3038 y Fr(\023)3128 3100 y FE(\(1.9\))523 3349 y(Indeed,)g(from)i +(\(1.9\))e(we)j(deduce)839 3588 y Fu(\013)892 3600 y +FB(ij)945 3584 y Fc(\003)986 3588 y Ft(\()p Fu(t)p Ft(\))i +Fx(\025)1201 3523 y Ft(\()p Fu(x)1280 3535 y FB(i)1308 +3523 y Ft(\()p Fu(t)p Ft(\))c Fx(\000)f Fu(x)1551 3493 +y FB(i)1551 3545 y(j)1581 3528 y Fc(\003)1621 3523 y +Ft(\()p Fu(t)p Ft(\)\))i Fx(\000)e Fu(\014)t Ft(\()p +Fu(x)1980 3535 y FB(i)2008 3523 y Ft(\()p Fu(t)p Ft(\))h +Fx(\000)f Fu(x)2251 3493 y FB(i)2251 3545 y(j)2281 3528 +y Fc(\003)2322 3523 y Ft(\()p Fu(t)p Ft(\)\))p 1201 3569 +1248 4 v 1530 3646 a(2\()p Fu(x)1651 3658 y FB(i)1679 +3646 y Ft(\()p Fu(t)p Ft(\))h Fx(\000)f Fu(x)1922 3618 +y FB(i)1922 3670 y(j)1952 3653 y Fc(\003)1992 3646 y +Ft(\()p Fu(t)p Ft(\)\))2481 3588 y(=)2579 3532 y(1)g +Fx(\000)g Fu(\014)p 2579 3569 195 4 v 2655 3645 a Ft(2)2806 +3588 y(=)23 b Fu(\013:)523 3846 y FE(Hence,)d Fx(8)p +Fu(i;)14 b(j)928 3815 y Fo(\003)965 3846 y Fu(;)g(t)21 +b FE(such)f(that)g Fu(j)1410 3815 y Fo(\003)1471 3846 +y Fx(2)p 1550 3779 76 4 v 24 w Fu(N)1626 3858 y FB(i)1653 +3846 y Ft(\()p Fu(t)p Ft(\))h FE(and)f Fu(x)1956 3815 +y FB(i)1956 3867 y(j)1986 3851 y Fc(\003)2026 3846 y +Ft(\()p Fu(t)p Ft(\))k(=)e(min)2370 3861 y FB(k)q Fo(2)p +FB(N)2504 3869 y Fn(i)2530 3861 y Fq(\()p FB(t)p Fq(\))2625 +3846 y Fu(x)2672 3815 y FB(i)2672 3869 y(k)2713 3846 +y Ft(\()p Fu(t)p Ft(\))p Fu(;)943 4042 y(s)982 4054 y +FB(ij)1035 4038 y Fc(\003)1075 4042 y Ft(\()p Fu(t)p +Ft(\))h(=)g Fu(\013)1333 4054 y FB(ij)1386 4038 y Fc(\003)1426 +4042 y Ft(\()p Fu(t)p Ft(\))1534 3975 y Fr(\000)1573 +4042 y Fu(x)1620 4054 y FB(i)1648 4042 y Ft(\()p Fu(t)p +Ft(\))c Fx(\000)f Fu(x)1891 4008 y FB(i)1891 4063 y(j)1921 +4046 y Fc(\003)1961 4042 y Ft(\()p Fu(t)p Ft(\))2055 +3975 y Fr(\001)2117 4042 y Fx(\025)k Fu(\013)2271 3975 +y Fr(\000)2310 4042 y Fu(x)2357 4054 y FB(i)2385 4042 +y Ft(\()p Fu(t)p Ft(\))d Fx(\000)f Fu(x)2628 4008 y FB(i)2628 +4063 y(j)2658 4046 y Fc(\003)2698 4042 y Ft(\()p Fu(t)p +Ft(\))2792 3975 y Fr(\001)2844 4042 y Fu(:)623 4225 y +FE(The)23 b(\002rst)i(inequation)d(of)i(\(1.9\))f(can)g(be)h(written)g +(as)2179 4163 y Fr(P)2267 4250 y FB(k)q Fo(6)p Fq(=)p +FB(j)2384 4233 y Fc(\003)2420 4250 y Fo(2)p FB(V)2504 +4258 y Fn(i)2530 4250 y Fq(\()p FB(t)p Fq(\))2625 4225 +y Fu(s)2664 4237 y FB(ik)2728 4225 y Ft(\()p Fu(t)p Ft(\))31 +b Fx(\024)f Fu(\014)t Ft(\()p Fu(x)3078 4237 y FB(i)3106 +4225 y Ft(\()p Fu(t)p Ft(\))22 b Fx(\000)523 4341 y Fu(x)570 +4311 y FB(i)570 4363 y(j)600 4346 y Fc(\003)640 4341 +y Ft(\()p Fu(t)p Ft(\)\))p Fu(;)27 b FE(this)e(means)f(that)h(the)g +(totality)g(of)g(data)f(sent)i(to)f(the)g(neighbours)d(of)i +Fu(i)i FE(\(e)o(xcept)d Fu(j)3221 4311 y Fo(\003)3259 +4341 y FE(\))523 4451 y(doesn')o(t)c(e)o(xceed)g(a)h(portion)f +Fu(\014)25 b FE(of)20 b Ft(\()p Fu(x)1596 4463 y FB(i)1624 +4451 y Ft(\()p Fu(t)p Ft(\))f Fx(\000)f Fu(x)1867 4421 +y FB(i)1867 4473 y(j)1897 4456 y Fc(\003)1937 4451 y +Ft(\()p Fu(t)p Ft(\)\))p Fu(:)623 4551 y FE(Equations)25 +b(\(1.8\))g(and)g(\(1.9\))g(are)i(deri)n(v)o(ed)d(from)h(the)i +(assumptions)e(2)i(and)e(3.)i(Therefore)523 4651 y(the)20 +b(choice)g(of)g(the)g(weights)g Fu(\013)1427 4663 y FB(ij)1506 +4651 y FE(must)g(tak)o(e)h(into)f(consideration)e(these)i(tw)o(o)g +(equations.)p eop end +%%Page: 11 11 +TeXDict begin 11 10 bop 523 100 a FA(1)42 b(An)18 b(Asynchronous)j(Dif) +n(fusion)e(Scheme)g(for)g(Data)f(Fusion)h(in)f(Sensor)h(Netw)o(orks)545 +b(11)p 523 206 2764 7 v 523 280 a FD(Algorithm)20 b(2)g +FE(T)-6 b(emporally)18 b(updating)h(weights)h(of)g(node)f +Fu(i)p FE(.)p 523 318 2764 4 v 553 383 a FA(1:)35 b Fm(f)n(or)19 +b Fl(j)k Fz( )c Fk(1)f FA(to)g Fl(n)f Fm(do)553 466 y +FA(2:)118 b Fm(if)18 b Fl(j)23 b Fz(6)p Fk(=)c Fl(i)f +Fm(then)553 549 y FA(3:)201 b Fl(s)842 559 y Fj(ij)916 +549 y Fz( )19 b Fk(0)553 632 y FA(4:)201 b Fl(\013)854 +642 y Fj(ij)929 632 y Fz( )19 b Fk(0)553 715 y FA(5:)118 +b Fm(end)18 b(if)553 798 y FA(6:)35 b Fm(end)18 b(f)n(or)553 +881 y FA(7:)35 b Fl(k)21 b Fz( )e Fk(0)553 964 y FA(8:)35 +b Fl(S)t(um)20 b Fz( )f Fk(0)553 1047 y FA(9:)35 b(\002nd)18 +b Fl(`)g FA(such)h(that)e Fl(\001)1146 1024 y Fj(`)1146 +1069 y(i)1196 1047 y Fk(=)i Fl(D)r(el)q(ta)1447 1057 +y Fj(i)1474 1047 y Fk([)p Fl(k)r Fk(])523 1130 y FA(10:)36 +b Fl(\013)694 1142 y Fj(i`)766 1130 y Fk(=)19 b(1)p Fl(=)p +Fk(\()p Fl(\021)972 1140 y Fj(i)1016 1130 y Fk(+)c(1\))523 +1213 y FA(11:)36 b Fl(s)682 1225 y Fj(i`)753 1213 y Fk(=)19 +b Fl(\013)872 1225 y Fj(i`)941 1213 y Fz(\002)c Fl(\001)1070 +1190 y Fj(`)1070 1235 y(i)523 1296 y FA(12:)36 b Fm(r)o(epeat)523 +1379 y FA(13:)119 b Fl(S)t(um)19 b Fz( )g Fl(S)t(um)d +Fk(+)f Fl(s)1260 1391 y Fj(il)523 1462 y FA(14:)119 b +Fl(k)21 b Fz( )e Fl(k)e Fk(+)f(1)523 1545 y FA(15:)119 +b(\002nd)18 b Fl(`)f FA(such)i(that)f Fl(\001)1235 1522 +y Fj(`)1235 1567 y(i)1284 1545 y Fk(=)i Fl(D)r(el)q(ta)1536 +1555 y Fj(i)1563 1545 y Fk([)p Fl(k)r Fk(])523 1628 y +FA(16:)119 b Fl(\013)777 1640 y Fj(i`)849 1628 y Fz( )19 +b Fk(1)p Fl(=)p Fk(\()p Fl(\021)1071 1638 y Fj(i)1114 +1628 y Fk(+)d(1\))523 1711 y FA(17:)119 b Fl(s)765 1723 +y Fj(i`)836 1711 y Fz( )19 b Fl(\013)971 1723 y Fj(i`)1039 +1711 y Fz(\002)d Fl(\001)1169 1688 y Fj(`)1169 1733 y(i)523 +1794 y FA(18:)36 b Fm(until)f Fl(N)7 b(O)r(T)27 b FA(\()p +Fk(\()p Fl(x)1102 1804 y Fj(i)1145 1794 y Fz(\000)15 +b Fl(S)t(um)20 b Fz(\025)f Fl(x)1499 1771 y Fj(i)1499 +1817 y(`)1545 1794 y Fk(+)c Fl(s)1648 1806 y Fj(i`)1700 +1794 y Fk(\))j Fl(AN)7 b(D)20 b Fk(\()p Fl(k)h(<)f(n)p +Fk(\))p FA(\))p 523 1851 V 623 2134 a FE(First)h(let)f(de\002ne)g(the)g +(de)n(viation)f Fu(\001)1642 2094 y FB(j)1642 2157 y(i)1677 +2134 y Ft(\()p Fu(t)p Ft(\))i FE(of)f(node)g Fu(i)g FE(as:)861 +2363 y Fu(\001)930 2324 y FB(j)930 2387 y(i)965 2363 +y Ft(\()p Fu(t)p Ft(\))k(=)1170 2246 y Fr(\032)1245 2311 +y Fu(x)1292 2323 y FB(i)1320 2311 y Ft(\()p Fu(t)p Ft(\))19 +b Fx(\000)f Fu(x)1563 2281 y FB(i)1563 2333 y(j)1599 +2311 y Ft(\()p Fu(t)p Ft(\))191 b FE(if)p Fu(j)28 b Fx(2)23 +b Fu(N)2142 2323 y FB(i)2170 2311 y Ft(\()p Fu(t)p Ft(\))e +FE(and)e Fu(x)2472 2323 y FB(i)2501 2311 y Ft(\()p Fu(t)p +Ft(\))k Fu(>)g(x)2753 2281 y FB(i)2753 2333 y(j)2788 +2311 y Ft(\()p Fu(t)p Ft(\))f Fu(;)1245 2414 y Ft(0)597 +b FE(otherwise.)623 2559 y(Algorithm)17 b(2)i(presents)f(our)g(method)f +(for)h(temporally)f(updating)g(the)i(a)n(v)o(eraging)e(weights.)523 +2658 y(Node)27 b Fu(i)i FE(computes)d(the)j(dif)n(ference)d(between)h +(its)i(current)e(state)h(and)g(current)f(states)i(of)e(its)523 +2758 y(neighbours.)16 b(The)i(positi)n(v)o(e)f(de)n(viations)h(\()p +Fu(\001)1814 2718 y FB(j)1814 2781 y(i)1871 2758 y Fu(>)23 +b Ft(0)p FE(\))18 b(are)h(then)f(stored)f(in)i(the)f(array)g +Fu(D)r(el)r(ta)3156 2770 y FB(i)3182 2758 y FE(,)h(in)523 +2857 y(a)j(decreasing)f(order)-5 b(.)21 b(Then,)f(it)j(sets)g(the)f +(weight)f Fu(\013)2028 2869 y FB(ij)2110 2857 y FE(to)h +Ft(1)p Fu(=)p Ft(\()p Fu(\021)2354 2869 y FB(i)2381 2857 +y Ft(\()p Fu(t)p Ft(\))e(+)f(1\))p FE(,)j(where)g Fu(\021)2963 +2869 y FB(i)2991 2857 y Ft(\()p Fu(t)p Ft(\))h FE(is)f(the)523 +2957 y(current)c(number)g(of)h(its)h(neighbours,)c(starting)j(by)g(its) +i(neighbours)16 b(nodes)j Fu(j)25 b FE(whose)19 b(ha)n(v)o(e)f(the)523 +3057 y(lar)o(ger)h(de)n(viations)g(while)h(respecting)f(assumption)g +(3.)623 3156 y(In)29 b(order)f(to)i(cope)e(with)i(the)g(problem)d(of)j +(message)f(loss,)h(we)g(adopted)e(the)h(follo)n(wing)523 +3256 y(strate)o(gy:)c(instead)h(of)g(sending)f Fu(s)1516 +3268 y FB(ij)1574 3256 y Ft(\()p Fu(t)p Ft(\))i FE(from)f(node)f +Fu(i)h FE(to)g(node)f Fu(j)5 b FE(,)26 b(it)h(is)g(the)f(sum)g +Fu(\006)3005 3268 y FB(s)3036 3276 y Fn(ij)3094 3256 +y Ft(\()p Fu(t)p Ft(\))34 b(=)523 3293 y Fr(P)611 3380 +y Fq(0)p Fo(\024)p FB(\034)7 b Fo(\024)p FB(t)828 3356 +y Fu(s)867 3368 y FB(ij)925 3356 y Ft(\()p Fu(\034)i +Ft(\))29 b FE(that)d(is)h(sent.)g(Symmetrically)e(the)h(recei)n(v)o +(ers)g(maintains)f(the)i(sum)f(of)g(the)523 3455 y(recei)n(v)o(ed)i +(data)h Fu(\006)1064 3467 y FB(r)1095 3475 y Fn(j)r(i)1152 +3455 y Ft(\()p Fu(t)p Ft(\))40 b(=)1391 3393 y Fr(P)1478 +3480 y Fq(0)p Fo(\024)p FB(\034)7 b Fo(\024)p FB(t)1696 +3455 y Fu(r)1733 3467 y FB(j)s(i)1792 3455 y Ft(\()p +Fu(\034)i Ft(\))p FE(.)30 b(Upon)f(recei)n(ving,)e(at)j(a)g(time)f +Fu(t)p FE(,)h(a)g(message)523 3578 y(from)17 b(node)g +Fu(i)p FE(,)i(a)f(node)g Fu(j)23 b FE(can)18 b(no)n(w)g(reco)o(v)o(er)e +(all)j(the)f(data)g(that)h(w)o(as)g(sent)f(before)f(time)i +Fu(d)3067 3538 y FB(j)3067 3601 y(i)3102 3578 y Ft(\()p +Fu(t)p Ft(\))p FE(.)g(It)523 3687 y(has)f(only)e(to)i(calculate)f(the)g +(dif)n(ference)f(between)g(the)i(recei)n(v)o(ed)e Fu(\006)2460 +3699 y FB(s)2491 3707 y Fn(ij)2548 3687 y Ft(\()p Fu(d)2623 +3647 y FB(j)2623 3710 y(i)2659 3687 y Ft(\()p Fu(t)p +Ft(\)\))i FE(and)f(the)h(locally)523 3787 y(stored)i +Fu(\006)812 3799 y FB(r)843 3807 y Fn(j)r(i)900 3787 +y Ft(\()p Fu(t)p Ft(\))p FE(.)623 3887 y(T)-7 b(o)18 +b(conclude,)e(the)i(state)h(messages)f(e)o(xchanged)e(during)g(the)i(e) +o(x)o(ecution)e(of)i(the)g(algorithm)523 3986 y(are)h(composed)e(of)i +(tw)o(o)h(scalar)f(v)n(alues)g(:)g(the)g(current)f(state)i(of)f(the)g +(node,)f Fu(x)2725 3998 y FB(i)2753 3986 y Ft(\()p Fu(t)p +Ft(\))p FE(,)i(and)e(the)h(sum)523 4086 y(of)h(the)g(sent)h(data)f +Fu(\006)1114 4098 y FB(s)1145 4106 y Fn(ij)1202 4086 +y Ft(\()p Fu(t)p Ft(\))p FE(.)p eop end +%%Page: 12 12 +TeXDict begin 12 11 bop 523 100 a FA(12)976 b(Jacques)20 +b(M.)d(Bahi,)g(Abdallah)i(Makhoul)f(and)h(Ahmed)f(Mostef)o(aoui)523 +282 y Fv(1.3.5)41 b(Illustrativ)o(e)23 b(Example)523 +515 y FE(T)-7 b(o)26 b(illustrate)g(the)g(beha)n(viour)e(of)i(our)f +(proposed)f(approach,)f(les)k(us)f(consider)f(the)h(e)o(xample)523 +614 y(presented)20 b(in)h(Figure)g(1.2.)f(It)h(consists)h(in)f(a)h +(netw)o(ork)e(of)h(four)f(nodes.)g(The)h(initial)h(measure-)523 +714 y(ment)e(of)g(each)g(node)f Fu(i)h FE(is)h(kno)n(wn)e(by)h +Fu(z)1668 726 y FB(i)1716 714 y FE(and)f(the)i(initial)f(state)h +Fu(x)2413 726 y FB(i)2441 714 y Ft(\(0\))i(=)g Fu(z)2697 +726 y FB(i)2724 714 y FE(.)881 1808 y @beginspecial 0 +@llx 0 @lly 447 @urx 198 @ury 2458 @rwi @setspecial +%%BeginDocument: exampleFusion.eps +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: example.fig +%%Creator: fig2dev Version 3.2 Patchlevel 5-alpha7 +%%CreationDate: Wed Apr 9 11:24:09 2008 +%%For: makhoul@soleil4 (makhoul,,,) +%%BoundingBox: 0 0 447 198 +%Magnification: 1.0000 +%%EndComments +/$F2psDict 200 dict def +$F2psDict begin +$F2psDict /mtrx matrix put +/col-1 {0 setgray} bind def +/col0 {0.000 0.000 0.000 srgb} bind def +/col1 {0.000 0.000 1.000 srgb} bind def +/col2 {0.000 1.000 0.000 srgb} bind def +/col3 {0.000 1.000 1.000 srgb} bind def +/col4 {1.000 0.000 0.000 srgb} bind def +/col5 {1.000 0.000 1.000 srgb} bind def +/col6 {1.000 1.000 0.000 srgb} bind def +/col7 {1.000 1.000 1.000 srgb} bind def +/col8 {0.000 0.000 0.560 srgb} bind def +/col9 {0.000 0.000 0.690 srgb} bind def +/col10 {0.000 0.000 0.820 srgb} bind def +/col11 {0.530 0.810 1.000 srgb} bind def +/col12 {0.000 0.560 0.000 srgb} bind def +/col13 {0.000 0.690 0.000 srgb} bind def +/col14 {0.000 0.820 0.000 srgb} bind def +/col15 {0.000 0.560 0.560 srgb} bind def +/col16 {0.000 0.690 0.690 srgb} bind def +/col17 {0.000 0.820 0.820 srgb} bind def +/col18 {0.560 0.000 0.000 srgb} bind def +/col19 {0.690 0.000 0.000 srgb} bind def +/col20 {0.820 0.000 0.000 srgb} bind def +/col21 {0.560 0.000 0.560 srgb} bind def +/col22 {0.690 0.000 0.690 srgb} bind def +/col23 {0.820 0.000 0.820 srgb} bind def +/col24 {0.500 0.190 0.000 srgb} bind def +/col25 {0.630 0.250 0.000 srgb} bind def +/col26 {0.750 0.380 0.000 srgb} bind def +/col27 {1.000 0.500 0.500 srgb} bind def +/col28 {1.000 0.630 0.630 srgb} bind def +/col29 {1.000 0.750 0.750 srgb} bind def +/col30 {1.000 0.880 0.880 srgb} bind def +/col31 {1.000 0.840 0.000 srgb} bind def + +end +save +newpath 0 198 moveto 0 0 lineto 447 0 lineto 447 198 lineto closepath clip newpath +-208.8 326.9 translate +1 -1 scale + +/cp {closepath} bind def +/ef {eofill} bind def +/gr {grestore} bind def +/gs {gsave} bind def +/sa {save} bind def +/rs {restore} bind def +/l {lineto} bind def +/m {moveto} bind def +/rm {rmoveto} bind def +/n {newpath} bind def +/s {stroke} bind def +/sh {show} bind def +/slc {setlinecap} bind def +/slj {setlinejoin} bind def +/slw {setlinewidth} bind def +/srgb {setrgbcolor} bind def +/rot {rotate} bind def +/sc {scale} bind def +/sd {setdash} bind def +/ff {findfont} bind def +/sf {setfont} bind def +/scf {scalefont} bind def +/sw {stringwidth} bind def +/tr {translate} bind def +/tnt {dup dup currentrgbcolor + 4 -2 roll dup 1 exch sub 3 -1 roll mul add + 4 -2 roll dup 1 exch sub 3 -1 roll mul add + 4 -2 roll dup 1 exch sub 3 -1 roll mul add srgb} + bind def +/shd {dup dup currentrgbcolor 4 -2 roll mul 4 -2 roll mul + 4 -2 roll mul srgb} bind def + /DrawEllipse { + /endangle exch def + /startangle exch def + /yrad exch def + /xrad exch def + /y exch def + /x exch def + /savematrix mtrx currentmatrix def + x y tr xrad yrad sc 0 0 1 startangle endangle arc + closepath + savematrix setmatrix + } def + +/$F2psBegin {$F2psDict begin /$F2psEnteredState save def} def +/$F2psEnd {$F2psEnteredState restore end} def + +$F2psBegin +10 setmiterlimit +0 slj 0 slc + 0.06299 0.06299 sc +% +% Fig objects follow +% +% +% here starts figure with depth 50 +% Ellipse +30.000 slw +n 3825 2565 487 487 0 360 DrawEllipse gs col0 s gr + +% Ellipse +n 7380 2565 487 487 0 360 DrawEllipse gs col0 s gr + +% Ellipse +n 4320 4680 487 487 0 360 DrawEllipse gs col0 s gr + +% Ellipse +n 9900 4455 487 487 0 360 DrawEllipse gs col0 s gr + +% Polyline +0 slj +0 slc +n 3825 3060 m + 4185 4230 l gs col0 s gr +% Polyline +n 4320 2565 m + 6885 2565 l gs col0 s gr +% Polyline +n 4815 4545 m + 7110 2970 l gs col0 s gr +% Polyline +n 7740 2925 m + 9585 4095 l gs col0 s gr +/Times-Bold ff 254.00 scf sf +3420 2610 m +gs 1 -1 sc (z) col0 sh gr +/Times-Roman ff 190.50 scf sf +3555 2700 m +gs 1 -1 sc (2) col0 sh gr +/Times-Bold ff 222.25 scf sf +3690 2610 m +gs 1 -1 sc (= 0.5) col0 sh gr +/Times-Roman ff 190.50 scf sf +7155 2655 m +gs 1 -1 sc (4) col0 sh gr +/Times-Bold ff 222.25 scf sf +7245 2565 m +gs 1 -1 sc (= 0.9) col0 sh gr +/Times-Bold ff 254.00 scf sf +7020 2565 m +gs 1 -1 sc (z) col0 sh gr +/Times-Bold ff 254.00 scf sf +9495 4500 m +gs 1 -1 sc (z) col0 sh gr +/Times-Roman ff 190.50 scf sf +9630 4590 m +gs 1 -1 sc (1) col0 sh gr +/Times-Bold ff 222.25 scf sf +9765 4500 m +gs 1 -1 sc (= 0.7) col0 sh gr +/Times-Bold ff 254.00 scf sf +3960 4770 m +gs 1 -1 sc (z) col0 sh gr +/Times-Bold ff 222.25 scf sf +4230 4770 m +gs 1 -1 sc (= 0.2) col0 sh gr +/Times-Roman ff 190.50 scf sf +4095 4860 m +gs 1 -1 sc (3) col0 sh gr +% here ends figure; +$F2psEnd +rs +showpage +%%Trailer +%EOF + +%%EndDocument + @endspecial 523 1933 a Fm(Fig)o(.)16 b(1.2)36 b FA(An)17 +b(e)o(xample)g(of)h(a)f(sensor)h(netw)o(ork)h(composed)f(of)g(four)g +(nodes)g(with)e(their)h(initial)e(measurements.)623 2193 +y FE(F)o(ollo)n(wing)21 b(the)i(second)f(step)h(of)f(Algorithm)g(1,)g +(each)h(node)e(computes)h(the)h(weights)f Fu(\013)3228 +2205 y FB(ij)523 2293 y FE(for)e(its)h(neighbours.)c(This)k(is)g(done)e +(by)h(using)f(Algorithm)g(2.)623 2392 y(Let)36 b(us)g(focus)f(on)h(the) +f(case)i(of)e Fu(node)1810 2404 y Fq(4)1884 2392 y FE(for)g(instance.)g +(W)-7 b(e)37 b(notice)e(that)h(it)h(has)f(three)523 2492 +y(neighbours)19 b(and)i(the)g(high)g(de)n(viation)f Fu(\001)i +FE(corresponds)d(to)j Fu(node)2451 2504 y Fq(3)2488 2492 +y FE(.)f(Therefore,)e(it)k(computes)523 2592 y Fu(\013)576 +2604 y Fq(43)646 2592 y Ft(\(0\))45 b(=)976 2559 y Fq(1)p +917 2573 151 4 v 917 2620 a FB(\021)951 2628 y Fd(4)983 +2620 y Fq(+1)1122 2592 y Ft(=)1242 2559 y Fq(1)p 1242 +2573 34 4 v 1242 2620 a(4)1317 2592 y FE(\002rst,)33 +b(such)e(that)i Fu(\021)1883 2604 y Fq(4)1953 2592 y +FE(is)f(the)g(number)f(of)g(its)i(neighbours.)c(Then,)523 +2710 y Fu(s)562 2722 y Fq(43)632 2710 y Ft(\(0\))e(=)867 +2677 y Fq(1)p 867 2691 V 867 2739 a(4)910 2710 y Ft(\()p +Fu(x)989 2722 y Fq(4)1027 2710 y Ft(\(0\))20 b Fx(\000)g +Fu(x)1285 2722 y Fq(3)1323 2710 y Ft(\(0\)\))27 b(=)g(0)p +Fu(:)p Ft(175)p FE(.)20 b(F)o(or)i(the)h(tw)o(o)f(reminder)f +(neighbours)f Fu(node)3107 2722 y Fq(1)3167 2710 y FE(and)523 +2810 y Fu(node)695 2822 y Fq(2)732 2810 y FE(,)25 b Fu(node)950 +2822 y Fq(4)1013 2810 y FE(computes)f Fu(\013)1410 2822 +y Fq(42)1480 2810 y Ft(\(0\))i FE(\002rst)f(for)f(the)h(reason)f(that)h +Fu(\001)2476 2779 y Fq(2)2476 2830 y(4)2539 2810 y FE(is)h(higher)d +(than)i Fu(\001)3095 2779 y Fq(1)3095 2830 y(4)3132 2810 +y FE(.)g(W)-7 b(e)523 2909 y(note)24 b(that)h(for)e Fu(node)1134 +2921 y Fq(2)1196 2909 y FE(the)i(Assumption)e(3)i(\(ping)e(pong)g +(condition\))f(is)k(satis\002ed)f(while)f(it)h(is)523 +3009 y(not)20 b(the)g(case)h(for)e Fu(node)1225 3021 +y Fq(1)1283 3009 y FE(which)h(leads)g(to)h Fu(\013)1837 +3021 y Fq(41)1907 3009 y Ft(\(0\))i(=)g(0)p FE(.)623 +3108 y(All)j(the)g(nodes)e(compute)h(their)g(weights)g(and)g(then)h +(dif)n(fuse)e(their)i(information)d(to)j(their)523 3208 +y(neighbours)c(to)k(update)d(their)i(states)h(follo)n(wing)d(Equation)h +(\(1.2\).)f(F)o(or)i(the)g(abo)o(v)o(e)e(e)o(xample)523 +3308 y(after)d(the)g(\002rst)h(step)g(we)f(obtain:)623 +3474 y Fu(x)670 3486 y Fq(1)707 3474 y Ft(\(1\))k(=)e(0)p +Fu(:)p Ft(7)623 3573 y Fu(x)670 3585 y Fq(2)707 3573 +y Ft(\(1\))i(=)e(0)p Fu(:)p Ft(5)c(+)g(0)p Fu(:)p Ft(1)f +Fx(\000)h Ft(0)p Fu(:)p Ft(1)k(=)h(0)p Fu(:)p Ft(5)623 +3673 y Fu(x)670 3685 y Fq(3)707 3673 y Ft(\(1\))h(=)e(0)p +Fu(:)p Ft(2)c(+)g(0)p Fu(:)p Ft(1)f(+)h(0)p Fu(:)p Ft(175)j(=)i(0)p +Fu(:)p Ft(475)623 3773 y Fu(x)670 3785 y Fq(4)707 3773 +y Ft(\(1\))h(=)e(0)p Fu(:)p Ft(9)c Fx(\000)g Ft(0)p Fu(:)p +Ft(1)f Fx(\000)h Ft(0)p Fu(:)p Ft(175)j(=)i(0)p Fu(:)p +Ft(625)623 3939 y FE(This)31 b(process)f(is)i(repeated)d(for)i(se)n(v)o +(eral)f(iterations)g(until)h(all)g(the)g(states)h(of)e(the)h(nodes)523 +4038 y(con)m(v)o(er)o(ge)26 b(to)k(the)g(a)n(v)o(erage)e(of)i(the)g +(initial)g(measurements.)e(W)-7 b(e)30 b(note)g(that)f(our)g(scheme)g +(is)523 4138 y(rob)n(ust)c(to)g(the)h(topology)d(changes)h(and)h(the)g +(loss)h(of)f(messages)h(as)g(discussed)f(in)h(details)f(in)523 +4238 y(the)20 b(ne)o(xt)g(section.)p eop end +%%Page: 13 13 +TeXDict begin 13 12 bop 523 100 a FA(1)42 b(An)18 b(Asynchronous)j(Dif) +n(fusion)e(Scheme)g(for)g(Data)f(Fusion)h(in)f(Sensor)h(Netw)o(orks)545 +b(13)523 282 y FC(1.4)41 b(Experimental)26 b(Results)523 +515 y FE(In)21 b(order)g(to)g(e)n(v)n(aluate)g(the)h(performance)c(of)k +(our)e(approach,)g(we)i(ha)n(v)o(e)f(implemented)e(a)j(sim-)523 +614 y(ulation)j(package)f(using)i(the)g(discrete)f(e)n(v)o(ent)g +(simulator)g(OMNET++)g([17)o(].)h(This)g(package)523 +714 y(includes)f(our)g(asynchronous)e(algorithm)h(as)j(well)f(as)g(a)h +(synchronous)c(one.)i(As)h(con\002rmed)523 814 y(in)c(pre)n(vious)d +(related)i(w)o(orks)g([2)o(,)h(5],)f(distrib)n(uted)f(approaches)g(out) +h(perform)e(centralised)i(ap-)523 913 y(proaches,)h(in)i(particular)f +(in)h(noisy)f(netw)o(orks.)g(F)o(or)h(this)g(reason,)f(we)h(ha)n(v)o(e) +f(not)h(included)e(in)523 1013 y(our)30 b(comparison)e(centralised)i +(approaches,)f(and)h(focuses)g(instead)g(on)g(synchronous)e(dis-)523 +1112 y(trib)n(uted)19 b(approaches)g(that)h(are)g(more)f(closed)h(to)h +(our)e(w)o(ork.)623 1212 y(W)-7 b(e)27 b(performed)c(se)n(v)o(eral)i +(runs)g(of)g(the)h(algorithms)f(\(an)g(a)n(v)o(erage)f(of)i(100)f +(runs\).)f(In)i(each)523 1312 y(e)o(xperimental)h(run,)g(the)i(netw)o +(ork)e(graph)h(is)h(randomly)e(generated,)g(where)h(the)g(nodes)g(are) +523 1411 y(distrib)n(uted)17 b(o)o(v)o(er)f(a)i Ft([0)p +Fu(;)c Ft(100])c Fx(\002)g Ft([0)p Fu(;)k Ft(100])g FE(\002eld.)j(The)h +(node)e(communication)f(range)i(w)o(as)i(set)f(to)523 +1511 y(30.)23 b(The)h(initial)g(node)f(measurements)g +Fu(z)1748 1523 y FB(i)1800 1511 y FE(were)h(also)g(randomly)e +(generated.)g(Each)h(node)g(is)523 1611 y(a)o(w)o(are)d(of)f(its)i +(immediate)e(neighbours)e(through)h(a)i(\224hello\224)f(message.)h +(Once)f(the)h(neighbour)n(-)523 1710 y(hood)27 b(is)j(identi\002ed,)d +(each)i(node)e(run)h(the)g(algorithm)f(i.e.,)i(be)o(gins)e(e)o +(xchanging)f(data)j(until)523 1810 y(con)m(v)o(er)o(gence.)623 +1910 y(W)-7 b(e)18 b(studied)e(the)i(performance)c(of)j(our)f +(algorithm)f(with)j(re)o(gard)d(to)i(the)g(follo)n(wing)f(param-)523 +2009 y(eters:)523 2159 y Fx(\017)58 b FE(Rob)n(ustness)20 +b(in)g(front)f(of)h(communication)d(f)o(ailures:)j(we)g(mainly)f(v)n +(aried)g(the)h(probability)623 2258 y(of)32 b(communication)d(f)o +(ailure,)i(noted)h Fu(p)p FE(.)g(This)g(parameter)f(allo)n(ws)i(us)f +(to)h(highlight)d(the)623 2358 y(beha)n(viour)18 b(of)i(our)f(scheme)h +(in)g(noisy)g(en)m(vironment)d(and)j(in)g(dynamic)f(topologies.)523 +2457 y Fx(\017)58 b FE(Scalability:)23 b(we)h(v)n(aried)e(the)h(number) +f(of)h(sensor)g(nodes)f(deplo)o(yed)g(in)h(the)h(same)f(area)g(to)623 +2557 y(see)d(ho)n(w)g(our)g(proposed)e(approach)g(scales?)623 +2707 y(The)30 b(main)g(metrics)h(we)g(measured)e(in)i(this)g(paper)e +(are:)i(\(a\))f(the)h(mean)f(error)f(between)523 2806 +y(the)24 b(current)g(estimate)g Fu(x)1258 2818 y FB(i)1311 +2806 y FE(and)g(the)h(a)n(v)o(erage)e(of)h(the)g(initial)h(data,)f +(\(b\))g(the)g(mean)g(number)f(of)523 2906 y(iterations)i(necessary)g +(to)h(reach)f(con)m(v)o(er)o(gence)c(and)k(\(c\))g(the)h(o)o(v)o(erall) +e(time)i(before)e(reaching)523 3005 y(the)h(global)e(con)m(v)o(er)o +(gence.)d(W)-7 b(e)26 b(note)e(here)g(that)g(in)h(asynchronous)c +(algorithms,)i(there)h(is)i(no)523 3105 y(direct)15 b(correlation)e +(between)i(the)g(number)f(of)h(iterations)f(and)h(the)g(total)h(time)f +(to)h(con)m(v)o(er)o(gence,)523 3205 y(contrary)k(to)j(synchronous)c +(approaches.)h(In)i(f)o(act,)g(as)h(there)e(are)h(no)g(delays)g +(between)f(nodes,)523 3304 y(the)i(number)e(of)i(iterations)f(could)h +(be)f(relati)n(v)o(ely)g(high.)g(This)h(does)g(not)g(mean)f(that)h(the) +g(total)523 3404 y(time)17 b(to)g(con)m(v)o(er)o(gence)d(could)i(be)h +(long)f(too.)g(F)o(or)h(this)h(reason,)e(we)h(ha)n(v)o(e)g(made)f(the)h +(distinction)523 3504 y(between)25 b(the)g(number)f(of)h(iterations)g +(and)g(the)g(time)h(tak)o(en)f(to)h(reach)f(con)m(v)o(er)o(gence.)c(As) +26 b(we)523 3603 y(run)f(a)h(discrete)g(e)n(v)o(ent)f(simulation)g +(package,)f(this)j(time)f(is)g(the)g(one)g(gi)n(v)o(en)e(by)i(the)g +(discrete)523 3703 y(simulator)17 b(OMNET++)h([17)n(];)h(we)f(named)f +(it)i Fy(simulated)f(time)p FE(.)g(F)o(or)g(all)g(the)g(e)o +(xperiments,)e(the)523 3802 y(global)g(con)m(v)o(er)o(gence)e(state)k +(is)g(said)g(to)f(be)g(reached)f(when)h Fu(")2266 3814 +y FB(i)2317 3802 y Ft(=)22 b Fx(j)p Fu(x)2474 3814 y +FB(i)2510 3802 y Fx(\000)2583 3740 y Fr(P)2670 3761 y +FB(n)2670 3827 y(i)p Fq(=1)2796 3802 y Fu(y)2837 3814 +y FB(i)2864 3802 y Fu(=n)p Fx(j)17 b FE(becomes)523 3902 +y(less)k(than)f(some)g(\002x)o(ed)g(constant)f Fu(")p +FE(.)623 4002 y(Note)26 b(that,)g(in)h(the)f(\002gures)g(ne)o(xt)f +(sections,)i(the)f(points)g(represent)f(the)h(obtained)f(results)523 +4101 y(and)20 b(the)g(curv)o(es)f(are)h(an)g(e)o(xtrapolation)e(of)i +(these)g(points.)p eop end +%%Page: 14 14 +TeXDict begin 14 13 bop 523 100 a FA(14)976 b(Jacques)20 +b(M.)d(Bahi,)g(Abdallah)i(Makhoul)f(and)h(Ahmed)f(Mostef)o(aoui)523 +282 y Fv(1.4.1)41 b(Basic)25 b(Behaviour)523 515 y FE(First,)e(we)f +(sho)n(w)f(simulation)g(results)i(for)e(the)h(case)g(where)f(we)i(ha)n +(v)o(e)e(a)h(\002x)o(ed)g(topology)d(with)523 614 y(a)28 +b(\002x)o(ed)e(number)g(of)h(nodes)g(\(50)f(nodes\))g(and)h +Fu(")36 b Ft(=)g(10)2176 584 y Fo(\000)p Fq(4)2264 614 +y FE(.)28 b(The)f(mean)g(error)f(of)h(the)g(nodes)523 +714 y Fu(")562 684 y Fo(0)626 714 y Ft(=)732 652 y Fr(P)820 +672 y FB(n)820 739 y(i)p Fq(=1)946 714 y Fu(")985 726 +y FB(i)1012 714 y Fu(=n)j FE(w)o(as)h(plotted)e(in)h(Figure)g(1.3.)f +(As)i(e)o(xpected,)d(it)j(can)f(be)g(seen)g(that)g(the)523 +814 y(con)m(v)o(er)o(gence)24 b(in)j(the)h(synchronous)d(mode)h(is)j(f) +o(aster)e(than)h(the)f(con)m(v)o(er)o(gence)d(in)j(the)h(asyn-)523 +913 y(chronous)18 b(one.)i(It)g(is)h(also)g(noticed)e(that)h(the)g(tw)o +(o)h(graphs)e(ha)n(v)o(e)g(the)i(same)f(pace.)623 1013 +y(Ho)n(we)n(v)o(er)m(,)25 b(in)j(man)o(y)e(scenarios)h(an)g(e)o(xact)g +(a)n(v)o(erage)f(is)i(not)f(required,)f(and)h(one)g(may)f(be)523 +1112 y(willing)k(to)g(trade)f(precision)g(for)g(simplicity)-5 +b(.)29 b(F)o(or)h(instance,)f(minimizing)g(the)h(number)e(of)523 +1212 y(iterations)f(to)g(reduce)g(the)g(ener)o(gy)e(consumption)g(can)i +(be)h(pri)n(vile)o(ged)d(in)i(sensor)g(netw)o(orks)523 +1312 y(applications)19 b(where)h(e)o(xact)f(a)n(v)o(eraging)f(is)k(not) +d(essential.)1080 2651 y @beginspecial 50 @llx 50 @lly +410 @urx 302 @ury 1980 @rwi @setspecial +%%BeginDocument: ErrorNbIteration.ps +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: ErrorNbIteration.ps +%%Creator: gnuplot 4.0 patchlevel 0 +%%CreationDate: Tue Feb 5 17:27:47 2008 +%%DocumentFonts: (atend) +%%BoundingBox: 50 50 410 302 +%%Orientation: Portrait +%%EndComments +/gnudict 256 dict def +gnudict begin +/Color false def +/Solid false def +/gnulinewidth 5.000 def +/userlinewidth gnulinewidth def +/vshift -66 def +/dl {10.0 mul} def +/hpt_ 31.5 def +/vpt_ 31.5 def +/hpt hpt_ def +/vpt vpt_ def +/Rounded false def +/M {moveto} bind def +/L {lineto} bind def +/R {rmoveto} bind def +/V {rlineto} bind def +/N {newpath moveto} bind def +/C {setrgbcolor} bind def +/f {rlineto fill} bind def +/vpt2 vpt 2 mul def +/hpt2 hpt 2 mul def +/Lshow { currentpoint stroke M + 0 vshift R show } def +/Rshow { currentpoint stroke M + dup stringwidth pop neg vshift R show } def +/Cshow { currentpoint stroke M + dup stringwidth pop -2 div vshift R show } def +/UP { dup vpt_ mul /vpt exch def hpt_ mul /hpt exch def + /hpt2 hpt 2 mul def /vpt2 vpt 2 mul def } def +/DL { Color {setrgbcolor Solid {pop []} if 0 setdash } + {pop pop pop 0 setgray Solid {pop []} if 0 setdash} ifelse } def +/BL { stroke userlinewidth 2 mul setlinewidth + Rounded { 1 setlinejoin 1 setlinecap } if } def +/AL { stroke userlinewidth 2 div setlinewidth + Rounded { 1 setlinejoin 1 setlinecap } if } def +/UL { dup gnulinewidth mul /userlinewidth exch def + dup 1 lt {pop 1} if 10 mul /udl exch def } def +/PL { stroke userlinewidth setlinewidth + Rounded { 1 setlinejoin 1 setlinecap } if } def +/LTw { PL [] 1 setgray } def +/LTb { BL [] 0 0 0 DL } def +/LTa { AL [1 udl mul 2 udl mul] 0 setdash 0 0 0 setrgbcolor } def +/LT0 { PL [] 1 0 0 DL } def +/LT1 { PL [4 dl 2 dl] 0 1 0 DL } def +/LT2 { PL [2 dl 3 dl] 0 0 1 DL } def +/LT3 { PL [1 dl 1.5 dl] 1 0 1 DL } def +/LT4 { PL [5 dl 2 dl 1 dl 2 dl] 0 1 1 DL } def +/LT5 { PL [4 dl 3 dl 1 dl 3 dl] 1 1 0 DL } def +/LT6 { PL [2 dl 2 dl 2 dl 4 dl] 0 0 0 DL } def +/LT7 { PL [2 dl 2 dl 2 dl 2 dl 2 dl 4 dl] 1 0.3 0 DL } def +/LT8 { PL [2 dl 2 dl 2 dl 2 dl 2 dl 2 dl 2 dl 4 dl] 0.5 0.5 0.5 DL } def +/Pnt { stroke [] 0 setdash + gsave 1 setlinecap M 0 0 V stroke grestore } def +/Dia { stroke [] 0 setdash 2 copy vpt add M + hpt neg vpt neg V hpt vpt neg V + hpt vpt V hpt neg vpt V closepath stroke + Pnt } def +/Pls { stroke [] 0 setdash vpt sub M 0 vpt2 V + currentpoint stroke M + hpt neg vpt neg R hpt2 0 V stroke + } def +/Box { stroke [] 0 setdash 2 copy exch hpt sub exch vpt add M + 0 vpt2 neg V hpt2 0 V 0 vpt2 V + hpt2 neg 0 V closepath stroke + Pnt } def +/Crs { stroke [] 0 setdash exch hpt sub exch vpt add M + hpt2 vpt2 neg V currentpoint stroke M + hpt2 neg 0 R hpt2 vpt2 V stroke } def +/TriU { stroke [] 0 setdash 2 copy vpt 1.12 mul add M + hpt neg vpt -1.62 mul V + hpt 2 mul 0 V + hpt neg vpt 1.62 mul V closepath stroke + Pnt } def +/Star { 2 copy Pls Crs } def +/BoxF { stroke [] 0 setdash exch hpt sub exch vpt add M + 0 vpt2 neg V hpt2 0 V 0 vpt2 V + hpt2 neg 0 V closepath fill } def +/TriUF { stroke [] 0 setdash vpt 1.12 mul add M + hpt neg vpt -1.62 mul V + hpt 2 mul 0 V + hpt neg vpt 1.62 mul V closepath fill } def +/TriD { stroke [] 0 setdash 2 copy vpt 1.12 mul sub M + hpt neg vpt 1.62 mul V + hpt 2 mul 0 V + hpt neg vpt -1.62 mul V closepath stroke + Pnt } def +/TriDF { stroke [] 0 setdash vpt 1.12 mul sub M + hpt neg vpt 1.62 mul V + hpt 2 mul 0 V + hpt neg vpt -1.62 mul V closepath fill} def +/DiaF { stroke [] 0 setdash vpt add M + hpt neg vpt neg V hpt vpt neg V + hpt vpt V hpt neg vpt V closepath fill } def +/Pent { stroke [] 0 setdash 2 copy gsave + translate 0 hpt M 4 {72 rotate 0 hpt L} repeat + closepath stroke grestore Pnt } def +/PentF { stroke [] 0 setdash gsave + translate 0 hpt M 4 {72 rotate 0 hpt L} repeat + closepath fill grestore } def +/Circle { stroke [] 0 setdash 2 copy + hpt 0 360 arc stroke Pnt } def +/CircleF { stroke [] 0 setdash hpt 0 360 arc fill } def +/C0 { BL [] 0 setdash 2 copy moveto vpt 90 450 arc } bind def +/C1 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 90 arc closepath fill + vpt 0 360 arc closepath } bind def +/C2 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 90 180 arc closepath fill + vpt 0 360 arc closepath } bind def +/C3 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 180 arc closepath fill + vpt 0 360 arc closepath } bind def +/C4 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 180 270 arc closepath fill + vpt 0 360 arc closepath } bind def +/C5 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 90 arc + 2 copy moveto + 2 copy vpt 180 270 arc closepath fill + vpt 0 360 arc } bind def +/C6 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 90 270 arc closepath fill + vpt 0 360 arc closepath } bind def +/C7 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 270 arc closepath fill + vpt 0 360 arc closepath } bind def +/C8 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 270 360 arc closepath fill + vpt 0 360 arc closepath } bind def +/C9 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 270 450 arc closepath fill + vpt 0 360 arc closepath } bind def +/C10 { BL [] 0 setdash 2 copy 2 copy moveto vpt 270 360 arc closepath fill + 2 copy moveto + 2 copy vpt 90 180 arc closepath fill + vpt 0 360 arc closepath } bind def +/C11 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 180 arc closepath fill + 2 copy moveto + 2 copy vpt 270 360 arc closepath fill + vpt 0 360 arc closepath } bind def +/C12 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 180 360 arc closepath fill + vpt 0 360 arc closepath } bind def +/C13 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 90 arc closepath fill + 2 copy moveto + 2 copy vpt 180 360 arc closepath fill + vpt 0 360 arc closepath } bind def +/C14 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 90 360 arc closepath fill + vpt 0 360 arc } bind def +/C15 { BL [] 0 setdash 2 copy vpt 0 360 arc closepath fill + vpt 0 360 arc closepath } bind def +/Rec { newpath 4 2 roll moveto 1 index 0 rlineto 0 exch rlineto + neg 0 rlineto closepath } bind def +/Square { dup Rec } bind def +/Bsquare { vpt sub exch vpt sub exch vpt2 Square } bind def +/S0 { BL [] 0 setdash 2 copy moveto 0 vpt rlineto BL Bsquare } bind def +/S1 { BL [] 0 setdash 2 copy vpt Square fill Bsquare } bind def +/S2 { BL [] 0 setdash 2 copy exch vpt sub exch vpt Square fill Bsquare } bind def +/S3 { BL [] 0 setdash 2 copy exch vpt sub exch vpt2 vpt Rec fill Bsquare } bind def +/S4 { BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt Square fill Bsquare } bind def +/S5 { BL [] 0 setdash 2 copy 2 copy vpt Square fill + exch vpt sub exch vpt sub vpt Square fill Bsquare } bind def +/S6 { BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt vpt2 Rec fill Bsquare } bind def +/S7 { BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt vpt2 Rec fill + 2 copy vpt Square fill + Bsquare } bind def +/S8 { BL [] 0 setdash 2 copy vpt sub vpt Square fill Bsquare } bind def +/S9 { BL [] 0 setdash 2 copy vpt sub vpt vpt2 Rec fill Bsquare } bind def +/S10 { BL [] 0 setdash 2 copy vpt sub vpt Square fill 2 copy exch vpt sub exch vpt Square fill + Bsquare } bind def +/S11 { BL [] 0 setdash 2 copy vpt sub vpt Square fill 2 copy exch vpt sub exch vpt2 vpt Rec fill + Bsquare } bind def +/S12 { BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill Bsquare } bind def +/S13 { BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill + 2 copy vpt Square fill Bsquare } bind def +/S14 { BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill + 2 copy exch vpt sub exch vpt Square fill Bsquare } bind def +/S15 { BL [] 0 setdash 2 copy Bsquare fill Bsquare } bind def +/D0 { gsave translate 45 rotate 0 0 S0 stroke grestore } bind def +/D1 { gsave translate 45 rotate 0 0 S1 stroke grestore } bind def +/D2 { gsave translate 45 rotate 0 0 S2 stroke grestore } bind def +/D3 { gsave translate 45 rotate 0 0 S3 stroke grestore } bind def +/D4 { gsave translate 45 rotate 0 0 S4 stroke grestore } bind def +/D5 { gsave translate 45 rotate 0 0 S5 stroke grestore } bind def +/D6 { gsave translate 45 rotate 0 0 S6 stroke grestore } bind def +/D7 { gsave translate 45 rotate 0 0 S7 stroke grestore } bind def +/D8 { gsave translate 45 rotate 0 0 S8 stroke grestore } bind def +/D9 { gsave translate 45 rotate 0 0 S9 stroke grestore } bind def +/D10 { gsave translate 45 rotate 0 0 S10 stroke grestore } bind def +/D11 { gsave translate 45 rotate 0 0 S11 stroke grestore } bind def +/D12 { gsave translate 45 rotate 0 0 S12 stroke grestore } bind def +/D13 { gsave translate 45 rotate 0 0 S13 stroke grestore } bind def +/D14 { gsave translate 45 rotate 0 0 S14 stroke grestore } bind def +/D15 { gsave translate 45 rotate 0 0 S15 stroke grestore } bind def +/DiaE { stroke [] 0 setdash vpt add M + hpt neg vpt neg V hpt vpt neg V + hpt vpt V hpt neg vpt V closepath stroke } def +/BoxE { stroke [] 0 setdash exch hpt sub exch vpt add M + 0 vpt2 neg V hpt2 0 V 0 vpt2 V + hpt2 neg 0 V closepath stroke } def +/TriUE { stroke [] 0 setdash vpt 1.12 mul add M + hpt neg vpt -1.62 mul V + hpt 2 mul 0 V + hpt neg vpt 1.62 mul V closepath stroke } def +/TriDE { stroke [] 0 setdash vpt 1.12 mul sub M + hpt neg vpt 1.62 mul V + hpt 2 mul 0 V + hpt neg vpt -1.62 mul V closepath stroke } def +/PentE { stroke [] 0 setdash gsave + translate 0 hpt M 4 {72 rotate 0 hpt L} repeat + closepath stroke grestore } def +/CircE { stroke [] 0 setdash + hpt 0 360 arc stroke } def +/Opaque { gsave closepath 1 setgray fill grestore 0 setgray closepath } def +/DiaW { stroke [] 0 setdash vpt add M + hpt neg vpt neg V hpt vpt neg V + hpt vpt V hpt neg vpt V Opaque stroke } def +/BoxW { stroke [] 0 setdash exch hpt sub exch vpt add M + 0 vpt2 neg V hpt2 0 V 0 vpt2 V + hpt2 neg 0 V Opaque stroke } def +/TriUW { stroke [] 0 setdash vpt 1.12 mul add M + hpt neg vpt -1.62 mul V + hpt 2 mul 0 V + hpt neg vpt 1.62 mul V Opaque stroke } def +/TriDW { stroke [] 0 setdash vpt 1.12 mul sub M + hpt neg vpt 1.62 mul V + hpt 2 mul 0 V + hpt neg vpt -1.62 mul V Opaque stroke } def +/PentW { stroke [] 0 setdash gsave + translate 0 hpt M 4 {72 rotate 0 hpt L} repeat + Opaque stroke grestore } def +/CircW { stroke [] 0 setdash + hpt 0 360 arc Opaque stroke } def +/BoxFill { gsave Rec 1 setgray fill grestore } def +/BoxColFill { + gsave Rec + /Fillden exch def + currentrgbcolor + /ColB exch def /ColG exch def /ColR exch def + /ColR ColR Fillden mul Fillden sub 1 add def + /ColG ColG Fillden mul Fillden sub 1 add def + /ColB ColB Fillden mul Fillden sub 1 add def + ColR ColG ColB setrgbcolor + fill grestore } def +% +% PostScript Level 1 Pattern Fill routine +% Usage: x y w h s a XX PatternFill +% x,y = lower left corner of box to be filled +% w,h = width and height of box +% a = angle in degrees between lines and x-axis +% XX = 0/1 for no/yes cross-hatch +% +/PatternFill { gsave /PFa [ 9 2 roll ] def + PFa 0 get PFa 2 get 2 div add PFa 1 get PFa 3 get 2 div add translate + PFa 2 get -2 div PFa 3 get -2 div PFa 2 get PFa 3 get Rec + gsave 1 setgray fill grestore clip + currentlinewidth 0.5 mul setlinewidth + /PFs PFa 2 get dup mul PFa 3 get dup mul add sqrt def + 0 0 M PFa 5 get rotate PFs -2 div dup translate + 0 1 PFs PFa 4 get div 1 add floor cvi + { PFa 4 get mul 0 M 0 PFs V } for + 0 PFa 6 get ne { + 0 1 PFs PFa 4 get div 1 add floor cvi + { PFa 4 get mul 0 2 1 roll M PFs 0 V } for + } if + stroke grestore } def +% +/Symbol-Oblique /Symbol findfont [1 0 .167 1 0 0] makefont +dup length dict begin {1 index /FID eq {pop pop} {def} ifelse} forall +currentdict end definefont pop +end +%%EndProlog +gnudict begin +gsave +50 50 translate +0.050 0.050 scale +0 setgray +newpath +(Helvetica) findfont 200 scalefont setfont +1.000 UL +LTb +1260 600 M +63 0 V +5537 0 R +-63 0 V +-5657 0 R +gsave 0 setgray +( 1e-06) Rshow +grestore +1.000 UL +LTb +1260 811 M +31 0 V +5569 0 R +-31 0 V +1260 1089 M +31 0 V +5569 0 R +-31 0 V +1260 1232 M +31 0 V +5569 0 R +-31 0 V +-5569 68 R +63 0 V +5537 0 R +-63 0 V +-5657 0 R +gsave 0 setgray +( 1e-05) Rshow +grestore +1.000 UL +LTb +1260 1511 M +31 0 V +5569 0 R +-31 0 V +1260 1789 M +31 0 V +5569 0 R +-31 0 V +1260 1932 M +31 0 V +5569 0 R +-31 0 V +-5569 68 R +63 0 V +5537 0 R +-63 0 V +-5657 0 R +gsave 0 setgray +( 1e-04) Rshow +grestore +1.000 UL +LTb +1260 2211 M +31 0 V +5569 0 R +-31 0 V +1260 2489 M +31 0 V +5569 0 R +-31 0 V +1260 2632 M +31 0 V +5569 0 R +-31 0 V +-5569 68 R +63 0 V +5537 0 R +-63 0 V +-5657 0 R +gsave 0 setgray +( 0.001) Rshow +grestore +1.000 UL +LTb +1260 2911 M +31 0 V +5569 0 R +-31 0 V +1260 3189 M +31 0 V +5569 0 R +-31 0 V +1260 3332 M +31 0 V +5569 0 R +-31 0 V +-5569 68 R +63 0 V +5537 0 R +-63 0 V +-5657 0 R +gsave 0 setgray +( 0.01) Rshow +grestore +1.000 UL +LTb +1260 3611 M +31 0 V +5569 0 R +-31 0 V +1260 3889 M +31 0 V +5569 0 R +-31 0 V +1260 4032 M +31 0 V +5569 0 R +-31 0 V +-5569 68 R +63 0 V +5537 0 R +-63 0 V +-5657 0 R +gsave 0 setgray +( 0.1) Rshow +grestore +1.000 UL +LTb +1260 4311 M +31 0 V +5569 0 R +-31 0 V +1260 4589 M +31 0 V +5569 0 R +-31 0 V +1260 4732 M +31 0 V +5569 0 R +-31 0 V +-5569 68 R +63 0 V +5537 0 R +-63 0 V +-5657 0 R +gsave 0 setgray +( 1) Rshow +grestore +1.000 UL +LTb +1260 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 0) Cshow +grestore +1.000 UL +LTb +2007 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 20) Cshow +grestore +1.000 UL +LTb +2753 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 40) Cshow +grestore +1.000 UL +LTb +3500 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 60) Cshow +grestore +1.000 UL +LTb +4247 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 80) Cshow +grestore +1.000 UL +LTb +4993 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 100) Cshow +grestore +1.000 UL +LTb +5740 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 120) Cshow +grestore +1.000 UL +LTb +6487 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 140) Cshow +grestore +1.000 UL +LTb +1.000 UL +LTb +1260 600 M +5600 0 V +0 4200 V +-5600 0 V +0 -4200 V +LTb +200 2700 M +gsave 0 setgray +currentpoint gsave translate 90 rotate 0 0 M +(Mean Error ) Cshow +grestore +grestore +LTb +4060 100 M +gsave 0 setgray +(Number of Iterations) Cshow +grestore +1.000 UP +1.000 UL +LT0 +LTb +5957 4637 M +gsave 0 setgray +(Synchronous Algorithm) Rshow +grestore +LT0 +6077 4637 M +543 0 V +1297 4800 M +25 -42 V +26 -43 V +25 -42 V +26 -43 V +26 -42 V +26 -43 V +27 -42 V +27 -42 V +27 -43 V +27 -42 V +28 -43 V +28 -42 V +28 -43 V +29 -42 V +29 -42 V +29 -43 V +30 -42 V +30 -43 V +31 -42 V +30 -42 V +31 -43 V +32 -42 V +32 -43 V +32 -42 V +32 -43 V +33 -42 V +33 -42 V +33 -43 V +34 -42 V +34 -43 V +35 -42 V +34 -43 V +35 -42 V +36 -42 V +35 -43 V +36 -42 V +36 -43 V +37 -42 V +37 -43 V +36 -42 V +38 -42 V +37 -43 V +38 -42 V +37 -43 V +38 -42 V +38 -43 V +39 -42 V +38 -42 V +39 -43 V +38 -42 V +39 -43 V +39 -42 V +39 -42 V +39 -43 V +39 -42 V +39 -43 V +39 -42 V +39 -43 V +39 -42 V +39 -42 V +39 -43 V +39 -42 V +39 -43 V +39 -42 V +38 -43 V +39 -42 V +38 -42 V +39 -43 V +38 -42 V +38 -43 V +38 -42 V +37 -43 V +38 -42 V +37 -42 V +37 -43 V +37 -42 V +37 -43 V +37 -42 V +36 -43 V +36 -42 V +36 -42 V +36 -43 V +36 -42 V +35 -43 V +36 -42 V +35 -42 V +35 -43 V +35 -42 V +35 -43 V +35 -42 V +35 -43 V +35 -42 V +35 -42 V +35 -43 V +35 -42 V +36 -43 V +35 -42 V +36 -43 V +36 -42 V +1.000 UL +LT1 +LTb +5957 4437 M +gsave 0 setgray +(Asynchronous Algorithm) Rshow +grestore +LT1 +6077 4437 M +543 0 V +1297 4800 M +43 -42 V +43 -43 V +42 -42 V +43 -43 V +42 -42 V +42 -43 V +42 -42 V +42 -42 V +41 -43 V +42 -42 V +42 -43 V +41 -42 V +41 -43 V +42 -42 V +41 -42 V +42 -43 V +41 -42 V +41 -43 V +41 -42 V +41 -42 V +42 -43 V +41 -42 V +41 -43 V +41 -42 V +41 -43 V +41 -42 V +42 -42 V +41 -43 V +41 -42 V +41 -43 V +41 -42 V +41 -43 V +41 -42 V +42 -42 V +41 -43 V +41 -42 V +41 -43 V +42 -42 V +41 -43 V +41 -42 V +42 -42 V +41 -43 V +41 -42 V +42 -43 V +41 -42 V +42 -43 V +42 -42 V +41 -42 V +42 -43 V +42 -42 V +42 -43 V +42 -42 V +43 -42 V +42 -43 V +42 -42 V +43 -43 V +43 -42 V +43 -43 V +43 -42 V +43 -42 V +44 -43 V +43 -42 V +44 -43 V +44 -42 V +45 -43 V +44 -42 V +45 -42 V +45 -43 V +45 -42 V +46 -43 V +46 -42 V +46 -43 V +46 -42 V +47 -42 V +47 -43 V +48 -42 V +47 -43 V +48 -42 V +49 -43 V +49 -42 V +49 -42 V +49 -43 V +50 -42 V +50 -43 V +50 -42 V +51 -42 V +51 -43 V +52 -42 V +52 -43 V +52 -42 V +52 -43 V +53 -42 V +53 -42 V +53 -43 V +54 -42 V +53 -43 V +54 -42 V +54 -43 V +55 -42 V +1.000 UL +LTb +1260 600 M +5600 0 V +0 4200 V +-5600 0 V +0 -4200 V +1.000 UP +stroke +grestore +end +showpage +%%Trailer +%%DocumentFonts: Helvetica + +%%EndDocument + @endspecial 523 2775 a Fm(Fig)o(.)e(1.3)36 b FA(The)18 +b(Mean)g(Error)i Fl(")523 3303 y Fv(1.4.2)41 b(Dynamic)25 +b(topology)523 3535 y FE(In)g(a)h(ne)o(xt)e(step,)h(we)h(simulated)f +(the)g(proposed)e(sensor)i(fusion)f(scheme)h(with)g(dynamically)523 +3635 y(changing)32 b(communication)f(graphs.)i(W)-7 b(e)36 +b(generated)c(the)i(sequence)f(of)h(communication)523 +3735 y(graphs)24 b(as)h(follo)n(ws:)f(at)h(each)g(time)g(step,)f(each)h +(edge)f(in)h(the)f(graph)g(is)h(only)f(a)n(v)n(ailable)g(with)523 +3834 y(a)i(selected)f(probability)f Fu(p)p FE(,)h(independent)e(of)i +(the)g(other)g(edges)g(and)g(all)h(pre)n(vious)d(steps.)j(T)-7 +b(o)523 3934 y(ensure)18 b(the)h(jointly)f(connected)e(condition)h(of)h +(the)h(generated)e(graphs,)g(we)i(selected)g(a)g(period)523 +4034 y(of)h(time)g Fu(\034)31 b FE(in)20 b(which)g(an)g(edge)f(cannot)g +(stay)i(disconnected)d(more)i(than)f Fu(\034)31 b FE(time.)623 +4133 y(W)-7 b(e)29 b(\002x)o(ed)e(the)i(number)d(of)i(sensor)g(nodes)f +(to)h(50)g(and)f Fu(")38 b Ft(=)f(10)2543 4103 y Fo(\000)p +Fq(4)2631 4133 y FE(.)29 b(In)f(preliminary)e(re-)523 +4233 y(sults,)i(the)g(period)e Fu(\034)38 b FE(w)o(as)29 +b(chosen)e(in)g(a)i(w)o(ay)e(that)h(is)h(equal)e(to)h(three)f(times)h +(the)g(time)g(of)f(a)523 4333 y(communication.)16 b(W)-7 +b(e)21 b(sho)n(w)e(in)g(\002gure)f(1.4)h(and)g(\002gure)f(1.5)h(the)g +(v)n(ariation)f(of)h(the)g(number)f(of)523 4432 y(iterations)25 +b(and)f(the)h(time)h(simulation)e(with)h(the)g(probability)e(of)i(link) +g(f)o(ailure)f Fu(p)p FE(.)i(W)-7 b(e)26 b(notice)523 +4532 y(that)e(the)g(number)f(of)g(iterations)h(and)g(the)g(o)o(v)o +(erall)f(time)h(increase)f(with)i(the)f(increase)g(of)f(the)523 +4631 y(probability)-5 b(,)18 b(b)n(ut)i(not)g(in)g(an)g(e)o(xponential) +e(w)o(ay)-5 b(.)p eop end +%%Page: 15 15 +TeXDict begin 15 14 bop 523 100 a FA(1)42 b(An)18 b(Asynchronous)j(Dif) +n(fusion)e(Scheme)g(for)g(Data)f(Fusion)h(in)f(Sensor)h(Netw)o(orks)545 +b(15)1080 1354 y @beginspecial 50 @llx 50 @lly 410 @urx +302 @ury 1980 @rwi @setspecial +%%BeginDocument: DynamicTopology.ps +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: DynamicTopology.ps +%%Creator: gnuplot 4.0 patchlevel 0 +%%CreationDate: Tue Feb 5 17:23:08 2008 +%%DocumentFonts: (atend) +%%BoundingBox: 50 50 410 302 +%%Orientation: Portrait +%%EndComments +/gnudict 256 dict def +gnudict begin +/Color false def +/Solid false def +/gnulinewidth 5.000 def +/userlinewidth gnulinewidth def +/vshift -66 def +/dl {10.0 mul} def +/hpt_ 31.5 def +/vpt_ 31.5 def +/hpt hpt_ def +/vpt vpt_ def +/Rounded false def +/M {moveto} bind def +/L {lineto} bind def +/R {rmoveto} bind def +/V {rlineto} bind def +/N {newpath moveto} bind def +/C {setrgbcolor} bind def +/f {rlineto fill} bind def +/vpt2 vpt 2 mul def +/hpt2 hpt 2 mul def +/Lshow { currentpoint stroke M + 0 vshift R show } def +/Rshow { currentpoint stroke M + dup stringwidth pop neg vshift R show } def +/Cshow { currentpoint stroke M + dup stringwidth pop -2 div vshift R show } def +/UP { dup vpt_ mul /vpt exch def hpt_ mul /hpt exch def + /hpt2 hpt 2 mul def /vpt2 vpt 2 mul def } def +/DL { Color {setrgbcolor Solid {pop []} if 0 setdash } + {pop pop pop 0 setgray Solid {pop []} if 0 setdash} ifelse } def +/BL { stroke userlinewidth 2 mul setlinewidth + Rounded { 1 setlinejoin 1 setlinecap } if } def +/AL { stroke userlinewidth 2 div setlinewidth + Rounded { 1 setlinejoin 1 setlinecap } if } def +/UL { dup gnulinewidth mul /userlinewidth exch def + dup 1 lt {pop 1} if 10 mul /udl exch def } def +/PL { stroke userlinewidth setlinewidth + Rounded { 1 setlinejoin 1 setlinecap } if } def +/LTw { PL [] 1 setgray } def +/LTb { BL [] 0 0 0 DL } def +/LTa { AL [1 udl mul 2 udl mul] 0 setdash 0 0 0 setrgbcolor } def +/LT0 { PL [] 1 0 0 DL } def +/LT1 { PL [4 dl 2 dl] 0 1 0 DL } def +/LT2 { PL [2 dl 3 dl] 0 0 1 DL } def +/LT3 { PL [1 dl 1.5 dl] 1 0 1 DL } def +/LT4 { PL [5 dl 2 dl 1 dl 2 dl] 0 1 1 DL } def +/LT5 { PL [4 dl 3 dl 1 dl 3 dl] 1 1 0 DL } def +/LT6 { PL [2 dl 2 dl 2 dl 4 dl] 0 0 0 DL } def +/LT7 { PL [2 dl 2 dl 2 dl 2 dl 2 dl 4 dl] 1 0.3 0 DL } def +/LT8 { PL [2 dl 2 dl 2 dl 2 dl 2 dl 2 dl 2 dl 4 dl] 0.5 0.5 0.5 DL } def +/Pnt { stroke [] 0 setdash + gsave 1 setlinecap M 0 0 V stroke grestore } def +/Dia { stroke [] 0 setdash 2 copy vpt add M + hpt neg vpt neg V hpt vpt neg V + hpt vpt V hpt neg vpt V closepath stroke + Pnt } def +/Pls { stroke [] 0 setdash vpt sub M 0 vpt2 V + currentpoint stroke M + hpt neg vpt neg R hpt2 0 V stroke + } def +/Box { stroke [] 0 setdash 2 copy exch hpt sub exch vpt add M + 0 vpt2 neg V hpt2 0 V 0 vpt2 V + hpt2 neg 0 V closepath stroke + Pnt } def +/Crs { stroke [] 0 setdash exch hpt sub exch vpt add M + hpt2 vpt2 neg V currentpoint stroke M + hpt2 neg 0 R hpt2 vpt2 V stroke } def +/TriU { stroke [] 0 setdash 2 copy vpt 1.12 mul add M + hpt neg vpt -1.62 mul V + hpt 2 mul 0 V + hpt neg vpt 1.62 mul V closepath stroke + Pnt } def +/Star { 2 copy Pls Crs } def +/BoxF { stroke [] 0 setdash exch hpt sub exch vpt add M + 0 vpt2 neg V hpt2 0 V 0 vpt2 V + hpt2 neg 0 V closepath fill } def +/TriUF { stroke [] 0 setdash vpt 1.12 mul add M + hpt neg vpt -1.62 mul V + hpt 2 mul 0 V + hpt neg vpt 1.62 mul V closepath fill } def +/TriD { stroke [] 0 setdash 2 copy vpt 1.12 mul sub M + hpt neg vpt 1.62 mul V + hpt 2 mul 0 V + hpt neg vpt -1.62 mul V closepath stroke + Pnt } def +/TriDF { stroke [] 0 setdash vpt 1.12 mul sub M + hpt neg vpt 1.62 mul V + hpt 2 mul 0 V + hpt neg vpt -1.62 mul V closepath fill} def +/DiaF { stroke [] 0 setdash vpt add M + hpt neg vpt neg V hpt vpt neg V + hpt vpt V hpt neg vpt V closepath fill } def +/Pent { stroke [] 0 setdash 2 copy gsave + translate 0 hpt M 4 {72 rotate 0 hpt L} repeat + closepath stroke grestore Pnt } def +/PentF { stroke [] 0 setdash gsave + translate 0 hpt M 4 {72 rotate 0 hpt L} repeat + closepath fill grestore } def +/Circle { stroke [] 0 setdash 2 copy + hpt 0 360 arc stroke Pnt } def +/CircleF { stroke [] 0 setdash hpt 0 360 arc fill } def +/C0 { BL [] 0 setdash 2 copy moveto vpt 90 450 arc } bind def +/C1 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 90 arc closepath fill + vpt 0 360 arc closepath } bind def +/C2 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 90 180 arc closepath fill + vpt 0 360 arc closepath } bind def +/C3 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 180 arc closepath fill + vpt 0 360 arc closepath } bind def +/C4 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 180 270 arc closepath fill + vpt 0 360 arc closepath } bind def +/C5 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 90 arc + 2 copy moveto + 2 copy vpt 180 270 arc closepath fill + vpt 0 360 arc } bind def +/C6 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 90 270 arc closepath fill + vpt 0 360 arc closepath } bind def +/C7 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 270 arc closepath fill + vpt 0 360 arc closepath } bind def +/C8 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 270 360 arc closepath fill + vpt 0 360 arc closepath } bind def +/C9 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 270 450 arc closepath fill + vpt 0 360 arc closepath } bind def +/C10 { BL [] 0 setdash 2 copy 2 copy moveto vpt 270 360 arc closepath fill + 2 copy moveto + 2 copy vpt 90 180 arc closepath fill + vpt 0 360 arc closepath } bind def +/C11 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 180 arc closepath fill + 2 copy moveto + 2 copy vpt 270 360 arc closepath fill + vpt 0 360 arc closepath } bind def +/C12 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 180 360 arc closepath fill + vpt 0 360 arc closepath } bind def +/C13 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 90 arc closepath fill + 2 copy moveto + 2 copy vpt 180 360 arc closepath fill + vpt 0 360 arc closepath } bind def +/C14 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 90 360 arc closepath fill + vpt 0 360 arc } bind def +/C15 { BL [] 0 setdash 2 copy vpt 0 360 arc closepath fill + vpt 0 360 arc closepath } bind def +/Rec { newpath 4 2 roll moveto 1 index 0 rlineto 0 exch rlineto + neg 0 rlineto closepath } bind def +/Square { dup Rec } bind def +/Bsquare { vpt sub exch vpt sub exch vpt2 Square } bind def +/S0 { BL [] 0 setdash 2 copy moveto 0 vpt rlineto BL Bsquare } bind def +/S1 { BL [] 0 setdash 2 copy vpt Square fill Bsquare } bind def +/S2 { BL [] 0 setdash 2 copy exch vpt sub exch vpt Square fill Bsquare } bind def +/S3 { BL [] 0 setdash 2 copy exch vpt sub exch vpt2 vpt Rec fill Bsquare } bind def +/S4 { BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt Square fill Bsquare } bind def +/S5 { BL [] 0 setdash 2 copy 2 copy vpt Square fill + exch vpt sub exch vpt sub vpt Square fill Bsquare } bind def +/S6 { BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt vpt2 Rec fill Bsquare } bind def +/S7 { BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt vpt2 Rec fill + 2 copy vpt Square fill + Bsquare } bind def +/S8 { BL [] 0 setdash 2 copy vpt sub vpt Square fill Bsquare } bind def +/S9 { BL [] 0 setdash 2 copy vpt sub vpt vpt2 Rec fill Bsquare } bind def +/S10 { BL [] 0 setdash 2 copy vpt sub vpt Square fill 2 copy exch vpt sub exch vpt Square fill + Bsquare } bind def +/S11 { BL [] 0 setdash 2 copy vpt sub vpt Square fill 2 copy exch vpt sub exch vpt2 vpt Rec fill + Bsquare } bind def +/S12 { BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill Bsquare } bind def +/S13 { BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill + 2 copy vpt Square fill Bsquare } bind def +/S14 { BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill + 2 copy exch vpt sub exch vpt Square fill Bsquare } bind def +/S15 { BL [] 0 setdash 2 copy Bsquare fill Bsquare } bind def +/D0 { gsave translate 45 rotate 0 0 S0 stroke grestore } bind def +/D1 { gsave translate 45 rotate 0 0 S1 stroke grestore } bind def +/D2 { gsave translate 45 rotate 0 0 S2 stroke grestore } bind def +/D3 { gsave translate 45 rotate 0 0 S3 stroke grestore } bind def +/D4 { gsave translate 45 rotate 0 0 S4 stroke grestore } bind def +/D5 { gsave translate 45 rotate 0 0 S5 stroke grestore } bind def +/D6 { gsave translate 45 rotate 0 0 S6 stroke grestore } bind def +/D7 { gsave translate 45 rotate 0 0 S7 stroke grestore } bind def +/D8 { gsave translate 45 rotate 0 0 S8 stroke grestore } bind def +/D9 { gsave translate 45 rotate 0 0 S9 stroke grestore } bind def +/D10 { gsave translate 45 rotate 0 0 S10 stroke grestore } bind def +/D11 { gsave translate 45 rotate 0 0 S11 stroke grestore } bind def +/D12 { gsave translate 45 rotate 0 0 S12 stroke grestore } bind def +/D13 { gsave translate 45 rotate 0 0 S13 stroke grestore } bind def +/D14 { gsave translate 45 rotate 0 0 S14 stroke grestore } bind def +/D15 { gsave translate 45 rotate 0 0 S15 stroke grestore } bind def +/DiaE { stroke [] 0 setdash vpt add M + hpt neg vpt neg V hpt vpt neg V + hpt vpt V hpt neg vpt V closepath stroke } def +/BoxE { stroke [] 0 setdash exch hpt sub exch vpt add M + 0 vpt2 neg V hpt2 0 V 0 vpt2 V + hpt2 neg 0 V closepath stroke } def +/TriUE { stroke [] 0 setdash vpt 1.12 mul add M + hpt neg vpt -1.62 mul V + hpt 2 mul 0 V + hpt neg vpt 1.62 mul V closepath stroke } def +/TriDE { stroke [] 0 setdash vpt 1.12 mul sub M + hpt neg vpt 1.62 mul V + hpt 2 mul 0 V + hpt neg vpt -1.62 mul V closepath stroke } def +/PentE { stroke [] 0 setdash gsave + translate 0 hpt M 4 {72 rotate 0 hpt L} repeat + closepath stroke grestore } def +/CircE { stroke [] 0 setdash + hpt 0 360 arc stroke } def +/Opaque { gsave closepath 1 setgray fill grestore 0 setgray closepath } def +/DiaW { stroke [] 0 setdash vpt add M + hpt neg vpt neg V hpt vpt neg V + hpt vpt V hpt neg vpt V Opaque stroke } def +/BoxW { stroke [] 0 setdash exch hpt sub exch vpt add M + 0 vpt2 neg V hpt2 0 V 0 vpt2 V + hpt2 neg 0 V Opaque stroke } def +/TriUW { stroke [] 0 setdash vpt 1.12 mul add M + hpt neg vpt -1.62 mul V + hpt 2 mul 0 V + hpt neg vpt 1.62 mul V Opaque stroke } def +/TriDW { stroke [] 0 setdash vpt 1.12 mul sub M + hpt neg vpt 1.62 mul V + hpt 2 mul 0 V + hpt neg vpt -1.62 mul V Opaque stroke } def +/PentW { stroke [] 0 setdash gsave + translate 0 hpt M 4 {72 rotate 0 hpt L} repeat + Opaque stroke grestore } def +/CircW { stroke [] 0 setdash + hpt 0 360 arc Opaque stroke } def +/BoxFill { gsave Rec 1 setgray fill grestore } def +/BoxColFill { + gsave Rec + /Fillden exch def + currentrgbcolor + /ColB exch def /ColG exch def /ColR exch def + /ColR ColR Fillden mul Fillden sub 1 add def + /ColG ColG Fillden mul Fillden sub 1 add def + /ColB ColB Fillden mul Fillden sub 1 add def + ColR ColG ColB setrgbcolor + fill grestore } def +% +% PostScript Level 1 Pattern Fill routine +% Usage: x y w h s a XX PatternFill +% x,y = lower left corner of box to be filled +% w,h = width and height of box +% a = angle in degrees between lines and x-axis +% XX = 0/1 for no/yes cross-hatch +% +/PatternFill { gsave /PFa [ 9 2 roll ] def + PFa 0 get PFa 2 get 2 div add PFa 1 get PFa 3 get 2 div add translate + PFa 2 get -2 div PFa 3 get -2 div PFa 2 get PFa 3 get Rec + gsave 1 setgray fill grestore clip + currentlinewidth 0.5 mul setlinewidth + /PFs PFa 2 get dup mul PFa 3 get dup mul add sqrt def + 0 0 M PFa 5 get rotate PFs -2 div dup translate + 0 1 PFs PFa 4 get div 1 add floor cvi + { PFa 4 get mul 0 M 0 PFs V } for + 0 PFa 6 get ne { + 0 1 PFs PFa 4 get div 1 add floor cvi + { PFa 4 get mul 0 2 1 roll M PFs 0 V } for + } if + stroke grestore } def +% +/Symbol-Oblique /Symbol findfont [1 0 .167 1 0 0] makefont +dup length dict begin {1 index /FID eq {pop pop} {def} ifelse} forall +currentdict end definefont pop +end +%%EndProlog +gnudict begin +gsave +50 50 translate +0.050 0.050 scale +0 setgray +newpath +(Helvetica) findfont 200 scalefont setfont +1.000 UL +LTb +1020 600 M +63 0 V +5777 0 R +-63 0 V +900 600 M +gsave 0 setgray +( 60) Rshow +grestore +1.000 UL +LTb +1020 1067 M +63 0 V +5777 0 R +-63 0 V +-5897 0 R +gsave 0 setgray +( 80) Rshow +grestore +1.000 UL +LTb +1020 1533 M +63 0 V +5777 0 R +-63 0 V +-5897 0 R +gsave 0 setgray +( 100) Rshow +grestore +1.000 UL +LTb +1020 2000 M +63 0 V +5777 0 R +-63 0 V +-5897 0 R +gsave 0 setgray +( 120) Rshow +grestore +1.000 UL +LTb +1020 2467 M +63 0 V +5777 0 R +-63 0 V +-5897 0 R +gsave 0 setgray +( 140) Rshow +grestore +1.000 UL +LTb +1020 2933 M +63 0 V +5777 0 R +-63 0 V +-5897 0 R +gsave 0 setgray +( 160) Rshow +grestore +1.000 UL +LTb +1020 3400 M +63 0 V +5777 0 R +-63 0 V +-5897 0 R +gsave 0 setgray +( 180) Rshow +grestore +1.000 UL +LTb +1020 3867 M +63 0 V +5777 0 R +-63 0 V +-5897 0 R +gsave 0 setgray +( 200) Rshow +grestore +1.000 UL +LTb +1020 4333 M +63 0 V +5777 0 R +-63 0 V +-5897 0 R +gsave 0 setgray +( 220) Rshow +grestore +1.000 UL +LTb +1020 4800 M +63 0 V +5777 0 R +-63 0 V +-5897 0 R +gsave 0 setgray +( 240) Rshow +grestore +1.000 UL +LTb +1020 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 0) Cshow +grestore +1.000 UL +LTb +2188 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 0.1) Cshow +grestore +1.000 UL +LTb +3356 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 0.2) Cshow +grestore +1.000 UL +LTb +4524 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 0.3) Cshow +grestore +1.000 UL +LTb +5692 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 0.4) Cshow +grestore +1.000 UL +LTb +6860 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 0.5) Cshow +grestore +1.000 UL +LTb +1.000 UL +LTb +1020 600 M +5840 0 V +0 4200 V +-5840 0 V +0 -4200 V +LTb +200 2700 M +gsave 0 setgray +currentpoint gsave translate 90 rotate 0 0 M +(number of iterations) Cshow +grestore +grestore +LTb +3940 100 M +gsave 0 setgray +(Probability of link failure) Cshow +grestore +1.000 UP +1.000 UL +LT0 +LTb +5957 4637 M +gsave 0 setgray +(Asynchronous Algorithm) Rshow +grestore +LT0 +6077 4637 M +543 0 V +1020 833 M +104 24 V +100 23 V +97 23 V +92 23 V +90 24 V +87 23 V +84 23 V +81 23 V +79 23 V +77 23 V +75 23 V +73 23 V +71 23 V +69 23 V +68 23 V +67 23 V +65 24 V +65 23 V +63 23 V +62 24 V +62 24 V +60 23 V +60 24 V +59 24 V +59 25 V +58 24 V +57 25 V +57 24 V +57 25 V +56 26 V +56 25 V +56 25 V +55 26 V +55 26 V +55 26 V +54 26 V +55 26 V +54 27 V +54 26 V +54 27 V +54 27 V +54 27 V +53 27 V +54 28 V +54 27 V +53 28 V +53 28 V +54 28 V +53 29 V +54 28 V +53 29 V +53 28 V +53 30 V +53 29 V +54 29 V +53 30 V +53 30 V +53 31 V +53 30 V +53 31 V +53 32 V +54 32 V +53 32 V +53 33 V +53 34 V +53 34 V +53 35 V +53 35 V +53 37 V +53 37 V +53 38 V +54 40 V +53 40 V +53 42 V +53 42 V +53 45 V +53 45 V +53 48 V +53 49 V +53 50 V +53 53 V +53 55 V +54 57 V +53 59 V +53 62 V +53 64 V +53 67 V +53 70 V +53 72 V +53 76 V +53 79 V +53 83 V +53 86 V +54 90 V +53 93 V +53 98 V +53 102 V +53 105 V +53 111 V +1.000 UP +1.000 UL +LT1 +1020 833 Pls +2188 1090 Pls +2772 1347 Pls +3356 1557 Pls +3940 1907 Pls +4524 2210 Pls +5108 2537 Pls +5692 2770 Pls +6276 3400 Pls +6860 4637 Pls +1.000 UL +LTb +1020 600 M +5840 0 V +0 4200 V +-5840 0 V +0 -4200 V +1.000 UP +stroke +grestore +end +showpage +%%Trailer +%%DocumentFonts: Helvetica + +%%EndDocument + @endspecial 523 1479 a Fm(Fig)o(.)17 b(1.4)36 b FA(Number)19 +b(of)f(Iterations)1080 2748 y @beginspecial 50 @llx 50 +@lly 410 @urx 302 @ury 1980 @rwi @setspecial +%%BeginDocument: DynamicTopologyTime.ps +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: DynamicTopologyTime.ps +%%Creator: gnuplot 4.0 patchlevel 0 +%%CreationDate: Tue Apr 8 13:22:28 2008 +%%DocumentFonts: (atend) +%%BoundingBox: 50 50 410 302 +%%Orientation: Portrait +%%EndComments +/gnudict 256 dict def +gnudict begin +/Color false def +/Solid false def +/gnulinewidth 5.000 def +/userlinewidth gnulinewidth def +/vshift -66 def +/dl {10.0 mul} def +/hpt_ 31.5 def +/vpt_ 31.5 def +/hpt hpt_ def +/vpt vpt_ def +/Rounded false def +/M {moveto} bind def +/L {lineto} bind def +/R {rmoveto} bind def +/V {rlineto} bind def +/N {newpath moveto} bind def +/C {setrgbcolor} bind def +/f {rlineto fill} bind def +/vpt2 vpt 2 mul def +/hpt2 hpt 2 mul def +/Lshow { currentpoint stroke M + 0 vshift R show } def +/Rshow { currentpoint stroke M + dup stringwidth pop neg vshift R show } def +/Cshow { currentpoint stroke M + dup stringwidth pop -2 div vshift R show } def +/UP { dup vpt_ mul /vpt exch def hpt_ mul /hpt exch def + /hpt2 hpt 2 mul def /vpt2 vpt 2 mul def } def +/DL { Color {setrgbcolor Solid {pop []} if 0 setdash } + {pop pop pop 0 setgray Solid {pop []} if 0 setdash} ifelse } def +/BL { stroke userlinewidth 2 mul setlinewidth + Rounded { 1 setlinejoin 1 setlinecap } if } def +/AL { stroke userlinewidth 2 div setlinewidth + Rounded { 1 setlinejoin 1 setlinecap } if } def +/UL { dup gnulinewidth mul /userlinewidth exch def + dup 1 lt {pop 1} if 10 mul /udl exch def } def +/PL { stroke userlinewidth setlinewidth + Rounded { 1 setlinejoin 1 setlinecap } if } def +/LTw { PL [] 1 setgray } def +/LTb { BL [] 0 0 0 DL } def +/LTa { AL [1 udl mul 2 udl mul] 0 setdash 0 0 0 setrgbcolor } def +/LT0 { PL [] 1 0 0 DL } def +/LT1 { PL [4 dl 2 dl] 0 1 0 DL } def +/LT2 { PL [2 dl 3 dl] 0 0 1 DL } def +/LT3 { PL [1 dl 1.5 dl] 1 0 1 DL } def +/LT4 { PL [5 dl 2 dl 1 dl 2 dl] 0 1 1 DL } def +/LT5 { PL [4 dl 3 dl 1 dl 3 dl] 1 1 0 DL } def +/LT6 { PL [2 dl 2 dl 2 dl 4 dl] 0 0 0 DL } def +/LT7 { PL [2 dl 2 dl 2 dl 2 dl 2 dl 4 dl] 1 0.3 0 DL } def +/LT8 { PL [2 dl 2 dl 2 dl 2 dl 2 dl 2 dl 2 dl 4 dl] 0.5 0.5 0.5 DL } def +/Pnt { stroke [] 0 setdash + gsave 1 setlinecap M 0 0 V stroke grestore } def +/Dia { stroke [] 0 setdash 2 copy vpt add M + hpt neg vpt neg V hpt vpt neg V + hpt vpt V hpt neg vpt V closepath stroke + Pnt } def +/Pls { stroke [] 0 setdash vpt sub M 0 vpt2 V + currentpoint stroke M + hpt neg vpt neg R hpt2 0 V stroke + } def +/Box { stroke [] 0 setdash 2 copy exch hpt sub exch vpt add M + 0 vpt2 neg V hpt2 0 V 0 vpt2 V + hpt2 neg 0 V closepath stroke + Pnt } def +/Crs { stroke [] 0 setdash exch hpt sub exch vpt add M + hpt2 vpt2 neg V currentpoint stroke M + hpt2 neg 0 R hpt2 vpt2 V stroke } def +/TriU { stroke [] 0 setdash 2 copy vpt 1.12 mul add M + hpt neg vpt -1.62 mul V + hpt 2 mul 0 V + hpt neg vpt 1.62 mul V closepath stroke + Pnt } def +/Star { 2 copy Pls Crs } def +/BoxF { stroke [] 0 setdash exch hpt sub exch vpt add M + 0 vpt2 neg V hpt2 0 V 0 vpt2 V + hpt2 neg 0 V closepath fill } def +/TriUF { stroke [] 0 setdash vpt 1.12 mul add M + hpt neg vpt -1.62 mul V + hpt 2 mul 0 V + hpt neg vpt 1.62 mul V closepath fill } def +/TriD { stroke [] 0 setdash 2 copy vpt 1.12 mul sub M + hpt neg vpt 1.62 mul V + hpt 2 mul 0 V + hpt neg vpt -1.62 mul V closepath stroke + Pnt } def +/TriDF { stroke [] 0 setdash vpt 1.12 mul sub M + hpt neg vpt 1.62 mul V + hpt 2 mul 0 V + hpt neg vpt -1.62 mul V closepath fill} def +/DiaF { stroke [] 0 setdash vpt add M + hpt neg vpt neg V hpt vpt neg V + hpt vpt V hpt neg vpt V closepath fill } def +/Pent { stroke [] 0 setdash 2 copy gsave + translate 0 hpt M 4 {72 rotate 0 hpt L} repeat + closepath stroke grestore Pnt } def +/PentF { stroke [] 0 setdash gsave + translate 0 hpt M 4 {72 rotate 0 hpt L} repeat + closepath fill grestore } def +/Circle { stroke [] 0 setdash 2 copy + hpt 0 360 arc stroke Pnt } def +/CircleF { stroke [] 0 setdash hpt 0 360 arc fill } def +/C0 { BL [] 0 setdash 2 copy moveto vpt 90 450 arc } bind def +/C1 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 90 arc closepath fill + vpt 0 360 arc closepath } bind def +/C2 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 90 180 arc closepath fill + vpt 0 360 arc closepath } bind def +/C3 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 180 arc closepath fill + vpt 0 360 arc closepath } bind def +/C4 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 180 270 arc closepath fill + vpt 0 360 arc closepath } bind def +/C5 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 90 arc + 2 copy moveto + 2 copy vpt 180 270 arc closepath fill + vpt 0 360 arc } bind def +/C6 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 90 270 arc closepath fill + vpt 0 360 arc closepath } bind def +/C7 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 270 arc closepath fill + vpt 0 360 arc closepath } bind def +/C8 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 270 360 arc closepath fill + vpt 0 360 arc closepath } bind def +/C9 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 270 450 arc closepath fill + vpt 0 360 arc closepath } bind def +/C10 { BL [] 0 setdash 2 copy 2 copy moveto vpt 270 360 arc closepath fill + 2 copy moveto + 2 copy vpt 90 180 arc closepath fill + vpt 0 360 arc closepath } bind def +/C11 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 180 arc closepath fill + 2 copy moveto + 2 copy vpt 270 360 arc closepath fill + vpt 0 360 arc closepath } bind def +/C12 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 180 360 arc closepath fill + vpt 0 360 arc closepath } bind def +/C13 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 90 arc closepath fill + 2 copy moveto + 2 copy vpt 180 360 arc closepath fill + vpt 0 360 arc closepath } bind def +/C14 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 90 360 arc closepath fill + vpt 0 360 arc } bind def +/C15 { BL [] 0 setdash 2 copy vpt 0 360 arc closepath fill + vpt 0 360 arc closepath } bind def +/Rec { newpath 4 2 roll moveto 1 index 0 rlineto 0 exch rlineto + neg 0 rlineto closepath } bind def +/Square { dup Rec } bind def +/Bsquare { vpt sub exch vpt sub exch vpt2 Square } bind def +/S0 { BL [] 0 setdash 2 copy moveto 0 vpt rlineto BL Bsquare } bind def +/S1 { BL [] 0 setdash 2 copy vpt Square fill Bsquare } bind def +/S2 { BL [] 0 setdash 2 copy exch vpt sub exch vpt Square fill Bsquare } bind def +/S3 { BL [] 0 setdash 2 copy exch vpt sub exch vpt2 vpt Rec fill Bsquare } bind def +/S4 { BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt Square fill Bsquare } bind def +/S5 { BL [] 0 setdash 2 copy 2 copy vpt Square fill + exch vpt sub exch vpt sub vpt Square fill Bsquare } bind def +/S6 { BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt vpt2 Rec fill Bsquare } bind def +/S7 { BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt vpt2 Rec fill + 2 copy vpt Square fill + Bsquare } bind def +/S8 { BL [] 0 setdash 2 copy vpt sub vpt Square fill Bsquare } bind def +/S9 { BL [] 0 setdash 2 copy vpt sub vpt vpt2 Rec fill Bsquare } bind def +/S10 { BL [] 0 setdash 2 copy vpt sub vpt Square fill 2 copy exch vpt sub exch vpt Square fill + Bsquare } bind def +/S11 { BL [] 0 setdash 2 copy vpt sub vpt Square fill 2 copy exch vpt sub exch vpt2 vpt Rec fill + Bsquare } bind def +/S12 { BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill Bsquare } bind def +/S13 { BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill + 2 copy vpt Square fill Bsquare } bind def +/S14 { BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill + 2 copy exch vpt sub exch vpt Square fill Bsquare } bind def +/S15 { BL [] 0 setdash 2 copy Bsquare fill Bsquare } bind def +/D0 { gsave translate 45 rotate 0 0 S0 stroke grestore } bind def +/D1 { gsave translate 45 rotate 0 0 S1 stroke grestore } bind def +/D2 { gsave translate 45 rotate 0 0 S2 stroke grestore } bind def +/D3 { gsave translate 45 rotate 0 0 S3 stroke grestore } bind def +/D4 { gsave translate 45 rotate 0 0 S4 stroke grestore } bind def +/D5 { gsave translate 45 rotate 0 0 S5 stroke grestore } bind def +/D6 { gsave translate 45 rotate 0 0 S6 stroke grestore } bind def +/D7 { gsave translate 45 rotate 0 0 S7 stroke grestore } bind def +/D8 { gsave translate 45 rotate 0 0 S8 stroke grestore } bind def +/D9 { gsave translate 45 rotate 0 0 S9 stroke grestore } bind def +/D10 { gsave translate 45 rotate 0 0 S10 stroke grestore } bind def +/D11 { gsave translate 45 rotate 0 0 S11 stroke grestore } bind def +/D12 { gsave translate 45 rotate 0 0 S12 stroke grestore } bind def +/D13 { gsave translate 45 rotate 0 0 S13 stroke grestore } bind def +/D14 { gsave translate 45 rotate 0 0 S14 stroke grestore } bind def +/D15 { gsave translate 45 rotate 0 0 S15 stroke grestore } bind def +/DiaE { stroke [] 0 setdash vpt add M + hpt neg vpt neg V hpt vpt neg V + hpt vpt V hpt neg vpt V closepath stroke } def +/BoxE { stroke [] 0 setdash exch hpt sub exch vpt add M + 0 vpt2 neg V hpt2 0 V 0 vpt2 V + hpt2 neg 0 V closepath stroke } def +/TriUE { stroke [] 0 setdash vpt 1.12 mul add M + hpt neg vpt -1.62 mul V + hpt 2 mul 0 V + hpt neg vpt 1.62 mul V closepath stroke } def +/TriDE { stroke [] 0 setdash vpt 1.12 mul sub M + hpt neg vpt 1.62 mul V + hpt 2 mul 0 V + hpt neg vpt -1.62 mul V closepath stroke } def +/PentE { stroke [] 0 setdash gsave + translate 0 hpt M 4 {72 rotate 0 hpt L} repeat + closepath stroke grestore } def +/CircE { stroke [] 0 setdash + hpt 0 360 arc stroke } def +/Opaque { gsave closepath 1 setgray fill grestore 0 setgray closepath } def +/DiaW { stroke [] 0 setdash vpt add M + hpt neg vpt neg V hpt vpt neg V + hpt vpt V hpt neg vpt V Opaque stroke } def +/BoxW { stroke [] 0 setdash exch hpt sub exch vpt add M + 0 vpt2 neg V hpt2 0 V 0 vpt2 V + hpt2 neg 0 V Opaque stroke } def +/TriUW { stroke [] 0 setdash vpt 1.12 mul add M + hpt neg vpt -1.62 mul V + hpt 2 mul 0 V + hpt neg vpt 1.62 mul V Opaque stroke } def +/TriDW { stroke [] 0 setdash vpt 1.12 mul sub M + hpt neg vpt 1.62 mul V + hpt 2 mul 0 V + hpt neg vpt -1.62 mul V Opaque stroke } def +/PentW { stroke [] 0 setdash gsave + translate 0 hpt M 4 {72 rotate 0 hpt L} repeat + Opaque stroke grestore } def +/CircW { stroke [] 0 setdash + hpt 0 360 arc Opaque stroke } def +/BoxFill { gsave Rec 1 setgray fill grestore } def +/BoxColFill { + gsave Rec + /Fillden exch def + currentrgbcolor + /ColB exch def /ColG exch def /ColR exch def + /ColR ColR Fillden mul Fillden sub 1 add def + /ColG ColG Fillden mul Fillden sub 1 add def + /ColB ColB Fillden mul Fillden sub 1 add def + ColR ColG ColB setrgbcolor + fill grestore } def +% +% PostScript Level 1 Pattern Fill routine +% Usage: x y w h s a XX PatternFill +% x,y = lower left corner of box to be filled +% w,h = width and height of box +% a = angle in degrees between lines and x-axis +% XX = 0/1 for no/yes cross-hatch +% +/PatternFill { gsave /PFa [ 9 2 roll ] def + PFa 0 get PFa 2 get 2 div add PFa 1 get PFa 3 get 2 div add translate + PFa 2 get -2 div PFa 3 get -2 div PFa 2 get PFa 3 get Rec + gsave 1 setgray fill grestore clip + currentlinewidth 0.5 mul setlinewidth + /PFs PFa 2 get dup mul PFa 3 get dup mul add sqrt def + 0 0 M PFa 5 get rotate PFs -2 div dup translate + 0 1 PFs PFa 4 get div 1 add floor cvi + { PFa 4 get mul 0 M 0 PFs V } for + 0 PFa 6 get ne { + 0 1 PFs PFa 4 get div 1 add floor cvi + { PFa 4 get mul 0 2 1 roll M PFs 0 V } for + } if + stroke grestore } def +% +/Symbol-Oblique /Symbol findfont [1 0 .167 1 0 0] makefont +dup length dict begin {1 index /FID eq {pop pop} {def} ifelse} forall +currentdict end definefont pop +end +%%EndProlog +gnudict begin +gsave +50 50 translate +0.050 0.050 scale +0 setgray +newpath +(Helvetica) findfont 200 scalefont setfont +1.000 UL +LTb +900 600 M +63 0 V +5897 0 R +-63 0 V +780 600 M +gsave 0 setgray +( 15) Rshow +grestore +1.000 UL +LTb +900 1200 M +63 0 V +5897 0 R +-63 0 V +-6017 0 R +gsave 0 setgray +( 20) Rshow +grestore +1.000 UL +LTb +900 1800 M +63 0 V +5897 0 R +-63 0 V +-6017 0 R +gsave 0 setgray +( 25) Rshow +grestore +1.000 UL +LTb +900 2400 M +63 0 V +5897 0 R +-63 0 V +-6017 0 R +gsave 0 setgray +( 30) Rshow +grestore +1.000 UL +LTb +900 3000 M +63 0 V +5897 0 R +-63 0 V +-6017 0 R +gsave 0 setgray +( 35) Rshow +grestore +1.000 UL +LTb +900 3600 M +63 0 V +5897 0 R +-63 0 V +-6017 0 R +gsave 0 setgray +( 40) Rshow +grestore +1.000 UL +LTb +900 4200 M +63 0 V +5897 0 R +-63 0 V +-6017 0 R +gsave 0 setgray +( 45) Rshow +grestore +1.000 UL +LTb +900 4800 M +63 0 V +5897 0 R +-63 0 V +-6017 0 R +gsave 0 setgray +( 50) Rshow +grestore +1.000 UL +LTb +900 600 M +0 63 V +0 4137 R +0 -63 V +900 400 M +gsave 0 setgray +( 0) Cshow +grestore +1.000 UL +LTb +2092 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 0.1) Cshow +grestore +1.000 UL +LTb +3284 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 0.2) Cshow +grestore +1.000 UL +LTb +4476 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 0.3) Cshow +grestore +1.000 UL +LTb +5668 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 0.4) Cshow +grestore +1.000 UL +LTb +6860 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 0.5) Cshow +grestore +1.000 UL +LTb +1.000 UL +LTb +900 600 M +5960 0 V +0 4200 V +-5960 0 V +900 600 L +LTb +200 2700 M +gsave 0 setgray +currentpoint gsave translate 90 rotate 0 0 M +(Simulated time) Cshow +grestore +grestore +LTb +3880 100 M +gsave 0 setgray +(Probability of link failure) Cshow +grestore +1.000 UP +1.000 UL +LT0 +LTb +5957 4637 M +gsave 0 setgray +(Asynchronous Algorithm) Rshow +grestore +LT0 +6077 4637 M +543 0 V +900 774 M +106 19 V +102 19 V +99 20 V +95 19 V +91 20 V +89 19 V +85 20 V +83 19 V +81 20 V +78 19 V +77 20 V +74 20 V +72 19 V +71 20 V +70 20 V +68 20 V +67 20 V +65 21 V +65 20 V +63 21 V +63 21 V +62 21 V +61 22 V +60 21 V +60 22 V +59 22 V +59 23 V +58 22 V +58 24 V +57 23 V +57 23 V +57 24 V +56 25 V +57 24 V +56 25 V +55 25 V +56 25 V +55 26 V +56 26 V +55 26 V +55 26 V +54 27 V +55 26 V +55 28 V +55 27 V +54 27 V +55 28 V +54 28 V +55 29 V +54 28 V +54 29 V +55 29 V +54 29 V +54 30 V +55 29 V +54 31 V +54 30 V +54 31 V +55 31 V +54 32 V +54 32 V +54 32 V +54 33 V +55 34 V +54 34 V +54 35 V +54 36 V +54 36 V +55 38 V +54 38 V +54 39 V +54 40 V +54 42 V +54 43 V +55 44 V +54 45 V +54 47 V +54 49 V +54 50 V +55 52 V +54 54 V +54 57 V +54 58 V +54 61 V +54 63 V +55 66 V +54 69 V +54 72 V +54 74 V +54 78 V +55 81 V +54 84 V +54 88 V +54 92 V +54 96 V +54 99 V +55 104 V +54 108 V +54 112 V +1.000 UP +1.000 UL +LT1 +900 774 Pls +2092 984 Pls +2688 1219 Pls +3284 1360 Pls +3880 1740 Pls +4476 2048 Pls +5072 2368 Pls +5668 2618 Pls +6264 3270 Pls +6860 4529 Pls +1.000 UL +LTb +900 600 M +5960 0 V +0 4200 V +-5960 0 V +900 600 L +1.000 UP +stroke +grestore +end +showpage +%%Trailer +%%DocumentFonts: Helvetica + +%%EndDocument + @endspecial 523 2872 a Fm(Fig)o(.)f(1.5)36 b FA(Simulated)18 +b(T)n(ime)623 3169 y FE(Note)i(that)g(we)g(also)h(tried)e(to)i(run)e +(the)h(synchronous)d(algorithm)i(with)h(dynamic)f(topology)523 +3269 y(changes,)k(b)n(ut)g(the)h(e)o(x)o(ecution)e(times)i(were)f(so)i +(prohibiti)n(v)o(e,)c(that)i(we)i(abandoned)20 b(those)k(e)o(x-)523 +3368 y(periments.)18 b(These)h(results)h(con\002rm)e(that)h +(synchronous)d(algorithms)i(are)h(infeasible)g(for)f(real)523 +3468 y(sensor)i(netw)o(orks.)523 3833 y Fv(1.4.3)41 b(Larger)24 +b(Sensor)h(Netw)o(ork)523 4066 y FE(Our)16 b(scheme)g(can)g(be)g +(applied)f(to)h(sensor)g(netw)o(orks)f(where)h(a)h(lar)o(ge)e(number)f +(of)i(sensor)g(nodes)523 4165 y(are)23 b(deplo)o(yed,)e(since)i(it)h +(is)g(fully)f(distrib)n(uted)f(and)g(there)h(is)h(no)f(centralized)f +(control.)f(In)i(our)523 4265 y(simulations)f(we)g(v)n(aried)g(the)g +(number)e(of)j(sensor)e(nodes)h(from)f(20)h(to)h(200)e(nodes,)g(deplo)o +(yed)523 4364 y(in)f(the)h(re)o(gion)d Ft([0)p Fu(;)c +Ft(100])j Fx(\002)h Ft([0)p Fu(;)c Ft(100])p FE(,)k(we)j(selected)f +(for)g(all)g(nodes)g Fu(i)p FE(,)g Fu(")j Ft(=)f(10)2748 +4334 y Fo(\000)p Fq(4)2837 4364 y FE(.)623 4464 y(Ho)n(we)n(v)o(er)m(,) +16 b(as)j(sho)n(wn)e(in)i(the)f(tw)o(o)h(Figures)f(\(Figure)f(1.6)g +(and)h(Figure)g(1.7\),)f(as)i(the)f(number)523 4564 y(of)24 +b(sensor)f(nodes)h(increases,)f(the)h(a)n(v)o(erage)f(of)h(the)g +(iterations)f(number)f(as)j(well)g(as)f(the)g(time)523 +4663 y(needed)29 b(to)i(reach)e(global)h(con)m(v)o(er)o(gence)c +(decreases)k(in)h(the)f(tw)o(o)h(cases)g(synchronous)d(and)p +eop end +%%Page: 16 16 +TeXDict begin 16 15 bop 523 100 a FA(16)976 b(Jacques)20 +b(M.)d(Bahi,)g(Abdallah)i(Makhoul)f(and)h(Ahmed)f(Mostef)o(aoui)523 +282 y FE(asynchronous.)f(W)-7 b(e)22 b(notice)d(that)i(in)f(the)h +(synchronous)c(mode)i(we)i(obtained)e(less)i(number)e(of)523 +382 y(iterations,)f(on)h(the)g(other)f(hand)g(it)i(tak)o(es)f(more)f +(time)h(to)g(reach)g(the)g(global)f(con)m(v)o(er)o(gence)d(than)523 +482 y(the)20 b(asynchronous)e(one.)1080 1816 y @beginspecial +50 @llx 50 @lly 410 @urx 302 @ury 1980 @rwi @setspecial +%%BeginDocument: Density.ps +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: Density.ps +%%Creator: gnuplot 4.0 patchlevel 0 +%%CreationDate: Tue Feb 5 17:29:59 2008 +%%DocumentFonts: (atend) +%%BoundingBox: 50 50 410 302 +%%Orientation: Portrait +%%EndComments +/gnudict 256 dict def +gnudict begin +/Color false def +/Solid false def +/gnulinewidth 5.000 def +/userlinewidth gnulinewidth def +/vshift -66 def +/dl {10.0 mul} def +/hpt_ 31.5 def +/vpt_ 31.5 def +/hpt hpt_ def +/vpt vpt_ def +/Rounded false def +/M {moveto} bind def +/L {lineto} bind def +/R {rmoveto} bind def +/V {rlineto} bind def +/N {newpath moveto} bind def +/C {setrgbcolor} bind def +/f {rlineto fill} bind def +/vpt2 vpt 2 mul def +/hpt2 hpt 2 mul def +/Lshow { currentpoint stroke M + 0 vshift R show } def +/Rshow { currentpoint stroke M + dup stringwidth pop neg vshift R show } def +/Cshow { currentpoint stroke M + dup stringwidth pop -2 div vshift R show } def +/UP { dup vpt_ mul /vpt exch def hpt_ mul /hpt exch def + /hpt2 hpt 2 mul def /vpt2 vpt 2 mul def } def +/DL { Color {setrgbcolor Solid {pop []} if 0 setdash } + {pop pop pop 0 setgray Solid {pop []} if 0 setdash} ifelse } def +/BL { stroke userlinewidth 2 mul setlinewidth + Rounded { 1 setlinejoin 1 setlinecap } if } def +/AL { stroke userlinewidth 2 div setlinewidth + Rounded { 1 setlinejoin 1 setlinecap } if } def +/UL { dup gnulinewidth mul /userlinewidth exch def + dup 1 lt {pop 1} if 10 mul /udl exch def } def +/PL { stroke userlinewidth setlinewidth + Rounded { 1 setlinejoin 1 setlinecap } if } def +/LTw { PL [] 1 setgray } def +/LTb { BL [] 0 0 0 DL } def +/LTa { AL [1 udl mul 2 udl mul] 0 setdash 0 0 0 setrgbcolor } def +/LT0 { PL [] 1 0 0 DL } def +/LT1 { PL [4 dl 2 dl] 0 1 0 DL } def +/LT2 { PL [2 dl 3 dl] 0 0 1 DL } def +/LT3 { PL [1 dl 1.5 dl] 1 0 1 DL } def +/LT4 { PL [5 dl 2 dl 1 dl 2 dl] 0 1 1 DL } def +/LT5 { PL [4 dl 3 dl 1 dl 3 dl] 1 1 0 DL } def +/LT6 { PL [2 dl 2 dl 2 dl 4 dl] 0 0 0 DL } def +/LT7 { PL [2 dl 2 dl 2 dl 2 dl 2 dl 4 dl] 1 0.3 0 DL } def +/LT8 { PL [2 dl 2 dl 2 dl 2 dl 2 dl 2 dl 2 dl 4 dl] 0.5 0.5 0.5 DL } def +/Pnt { stroke [] 0 setdash + gsave 1 setlinecap M 0 0 V stroke grestore } def +/Dia { stroke [] 0 setdash 2 copy vpt add M + hpt neg vpt neg V hpt vpt neg V + hpt vpt V hpt neg vpt V closepath stroke + Pnt } def +/Pls { stroke [] 0 setdash vpt sub M 0 vpt2 V + currentpoint stroke M + hpt neg vpt neg R hpt2 0 V stroke + } def +/Box { stroke [] 0 setdash 2 copy exch hpt sub exch vpt add M + 0 vpt2 neg V hpt2 0 V 0 vpt2 V + hpt2 neg 0 V closepath stroke + Pnt } def +/Crs { stroke [] 0 setdash exch hpt sub exch vpt add M + hpt2 vpt2 neg V currentpoint stroke M + hpt2 neg 0 R hpt2 vpt2 V stroke } def +/TriU { stroke [] 0 setdash 2 copy vpt 1.12 mul add M + hpt neg vpt -1.62 mul V + hpt 2 mul 0 V + hpt neg vpt 1.62 mul V closepath stroke + Pnt } def +/Star { 2 copy Pls Crs } def +/BoxF { stroke [] 0 setdash exch hpt sub exch vpt add M + 0 vpt2 neg V hpt2 0 V 0 vpt2 V + hpt2 neg 0 V closepath fill } def +/TriUF { stroke [] 0 setdash vpt 1.12 mul add M + hpt neg vpt -1.62 mul V + hpt 2 mul 0 V + hpt neg vpt 1.62 mul V closepath fill } def +/TriD { stroke [] 0 setdash 2 copy vpt 1.12 mul sub M + hpt neg vpt 1.62 mul V + hpt 2 mul 0 V + hpt neg vpt -1.62 mul V closepath stroke + Pnt } def +/TriDF { stroke [] 0 setdash vpt 1.12 mul sub M + hpt neg vpt 1.62 mul V + hpt 2 mul 0 V + hpt neg vpt -1.62 mul V closepath fill} def +/DiaF { stroke [] 0 setdash vpt add M + hpt neg vpt neg V hpt vpt neg V + hpt vpt V hpt neg vpt V closepath fill } def +/Pent { stroke [] 0 setdash 2 copy gsave + translate 0 hpt M 4 {72 rotate 0 hpt L} repeat + closepath stroke grestore Pnt } def +/PentF { stroke [] 0 setdash gsave + translate 0 hpt M 4 {72 rotate 0 hpt L} repeat + closepath fill grestore } def +/Circle { stroke [] 0 setdash 2 copy + hpt 0 360 arc stroke Pnt } def +/CircleF { stroke [] 0 setdash hpt 0 360 arc fill } def +/C0 { BL [] 0 setdash 2 copy moveto vpt 90 450 arc } bind def +/C1 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 90 arc closepath fill + vpt 0 360 arc closepath } bind def +/C2 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 90 180 arc closepath fill + vpt 0 360 arc closepath } bind def +/C3 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 180 arc closepath fill + vpt 0 360 arc closepath } bind def +/C4 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 180 270 arc closepath fill + vpt 0 360 arc closepath } bind def +/C5 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 90 arc + 2 copy moveto + 2 copy vpt 180 270 arc closepath fill + vpt 0 360 arc } bind def +/C6 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 90 270 arc closepath fill + vpt 0 360 arc closepath } bind def +/C7 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 270 arc closepath fill + vpt 0 360 arc closepath } bind def +/C8 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 270 360 arc closepath fill + vpt 0 360 arc closepath } bind def +/C9 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 270 450 arc closepath fill + vpt 0 360 arc closepath } bind def +/C10 { BL [] 0 setdash 2 copy 2 copy moveto vpt 270 360 arc closepath fill + 2 copy moveto + 2 copy vpt 90 180 arc closepath fill + vpt 0 360 arc closepath } bind def +/C11 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 180 arc closepath fill + 2 copy moveto + 2 copy vpt 270 360 arc closepath fill + vpt 0 360 arc closepath } bind def +/C12 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 180 360 arc closepath fill + vpt 0 360 arc closepath } bind def +/C13 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 90 arc closepath fill + 2 copy moveto + 2 copy vpt 180 360 arc closepath fill + vpt 0 360 arc closepath } bind def +/C14 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 90 360 arc closepath fill + vpt 0 360 arc } bind def +/C15 { BL [] 0 setdash 2 copy vpt 0 360 arc closepath fill + vpt 0 360 arc closepath } bind def +/Rec { newpath 4 2 roll moveto 1 index 0 rlineto 0 exch rlineto + neg 0 rlineto closepath } bind def +/Square { dup Rec } bind def +/Bsquare { vpt sub exch vpt sub exch vpt2 Square } bind def +/S0 { BL [] 0 setdash 2 copy moveto 0 vpt rlineto BL Bsquare } bind def +/S1 { BL [] 0 setdash 2 copy vpt Square fill Bsquare } bind def +/S2 { BL [] 0 setdash 2 copy exch vpt sub exch vpt Square fill Bsquare } bind def +/S3 { BL [] 0 setdash 2 copy exch vpt sub exch vpt2 vpt Rec fill Bsquare } bind def +/S4 { BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt Square fill Bsquare } bind def +/S5 { BL [] 0 setdash 2 copy 2 copy vpt Square fill + exch vpt sub exch vpt sub vpt Square fill Bsquare } bind def +/S6 { BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt vpt2 Rec fill Bsquare } bind def +/S7 { BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt vpt2 Rec fill + 2 copy vpt Square fill + Bsquare } bind def +/S8 { BL [] 0 setdash 2 copy vpt sub vpt Square fill Bsquare } bind def +/S9 { BL [] 0 setdash 2 copy vpt sub vpt vpt2 Rec fill Bsquare } bind def +/S10 { BL [] 0 setdash 2 copy vpt sub vpt Square fill 2 copy exch vpt sub exch vpt Square fill + Bsquare } bind def +/S11 { BL [] 0 setdash 2 copy vpt sub vpt Square fill 2 copy exch vpt sub exch vpt2 vpt Rec fill + Bsquare } bind def +/S12 { BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill Bsquare } bind def +/S13 { BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill + 2 copy vpt Square fill Bsquare } bind def +/S14 { BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill + 2 copy exch vpt sub exch vpt Square fill Bsquare } bind def +/S15 { BL [] 0 setdash 2 copy Bsquare fill Bsquare } bind def +/D0 { gsave translate 45 rotate 0 0 S0 stroke grestore } bind def +/D1 { gsave translate 45 rotate 0 0 S1 stroke grestore } bind def +/D2 { gsave translate 45 rotate 0 0 S2 stroke grestore } bind def +/D3 { gsave translate 45 rotate 0 0 S3 stroke grestore } bind def +/D4 { gsave translate 45 rotate 0 0 S4 stroke grestore } bind def +/D5 { gsave translate 45 rotate 0 0 S5 stroke grestore } bind def +/D6 { gsave translate 45 rotate 0 0 S6 stroke grestore } bind def +/D7 { gsave translate 45 rotate 0 0 S7 stroke grestore } bind def +/D8 { gsave translate 45 rotate 0 0 S8 stroke grestore } bind def +/D9 { gsave translate 45 rotate 0 0 S9 stroke grestore } bind def +/D10 { gsave translate 45 rotate 0 0 S10 stroke grestore } bind def +/D11 { gsave translate 45 rotate 0 0 S11 stroke grestore } bind def +/D12 { gsave translate 45 rotate 0 0 S12 stroke grestore } bind def +/D13 { gsave translate 45 rotate 0 0 S13 stroke grestore } bind def +/D14 { gsave translate 45 rotate 0 0 S14 stroke grestore } bind def +/D15 { gsave translate 45 rotate 0 0 S15 stroke grestore } bind def +/DiaE { stroke [] 0 setdash vpt add M + hpt neg vpt neg V hpt vpt neg V + hpt vpt V hpt neg vpt V closepath stroke } def +/BoxE { stroke [] 0 setdash exch hpt sub exch vpt add M + 0 vpt2 neg V hpt2 0 V 0 vpt2 V + hpt2 neg 0 V closepath stroke } def +/TriUE { stroke [] 0 setdash vpt 1.12 mul add M + hpt neg vpt -1.62 mul V + hpt 2 mul 0 V + hpt neg vpt 1.62 mul V closepath stroke } def +/TriDE { stroke [] 0 setdash vpt 1.12 mul sub M + hpt neg vpt 1.62 mul V + hpt 2 mul 0 V + hpt neg vpt -1.62 mul V closepath stroke } def +/PentE { stroke [] 0 setdash gsave + translate 0 hpt M 4 {72 rotate 0 hpt L} repeat + closepath stroke grestore } def +/CircE { stroke [] 0 setdash + hpt 0 360 arc stroke } def +/Opaque { gsave closepath 1 setgray fill grestore 0 setgray closepath } def +/DiaW { stroke [] 0 setdash vpt add M + hpt neg vpt neg V hpt vpt neg V + hpt vpt V hpt neg vpt V Opaque stroke } def +/BoxW { stroke [] 0 setdash exch hpt sub exch vpt add M + 0 vpt2 neg V hpt2 0 V 0 vpt2 V + hpt2 neg 0 V Opaque stroke } def +/TriUW { stroke [] 0 setdash vpt 1.12 mul add M + hpt neg vpt -1.62 mul V + hpt 2 mul 0 V + hpt neg vpt 1.62 mul V Opaque stroke } def +/TriDW { stroke [] 0 setdash vpt 1.12 mul sub M + hpt neg vpt 1.62 mul V + hpt 2 mul 0 V + hpt neg vpt -1.62 mul V Opaque stroke } def +/PentW { stroke [] 0 setdash gsave + translate 0 hpt M 4 {72 rotate 0 hpt L} repeat + Opaque stroke grestore } def +/CircW { stroke [] 0 setdash + hpt 0 360 arc Opaque stroke } def +/BoxFill { gsave Rec 1 setgray fill grestore } def +/BoxColFill { + gsave Rec + /Fillden exch def + currentrgbcolor + /ColB exch def /ColG exch def /ColR exch def + /ColR ColR Fillden mul Fillden sub 1 add def + /ColG ColG Fillden mul Fillden sub 1 add def + /ColB ColB Fillden mul Fillden sub 1 add def + ColR ColG ColB setrgbcolor + fill grestore } def +% +% PostScript Level 1 Pattern Fill routine +% Usage: x y w h s a XX PatternFill +% x,y = lower left corner of box to be filled +% w,h = width and height of box +% a = angle in degrees between lines and x-axis +% XX = 0/1 for no/yes cross-hatch +% +/PatternFill { gsave /PFa [ 9 2 roll ] def + PFa 0 get PFa 2 get 2 div add PFa 1 get PFa 3 get 2 div add translate + PFa 2 get -2 div PFa 3 get -2 div PFa 2 get PFa 3 get Rec + gsave 1 setgray fill grestore clip + currentlinewidth 0.5 mul setlinewidth + /PFs PFa 2 get dup mul PFa 3 get dup mul add sqrt def + 0 0 M PFa 5 get rotate PFs -2 div dup translate + 0 1 PFs PFa 4 get div 1 add floor cvi + { PFa 4 get mul 0 M 0 PFs V } for + 0 PFa 6 get ne { + 0 1 PFs PFa 4 get div 1 add floor cvi + { PFa 4 get mul 0 2 1 roll M PFs 0 V } for + } if + stroke grestore } def +% +/Symbol-Oblique /Symbol findfont [1 0 .167 1 0 0] makefont +dup length dict begin {1 index /FID eq {pop pop} {def} ifelse} forall +currentdict end definefont pop +end +%%EndProlog +gnudict begin +gsave +50 50 translate +0.050 0.050 scale +0 setgray +newpath +(Helvetica) findfont 200 scalefont setfont +1.000 UL +LTb +1020 600 M +63 0 V +5777 0 R +-63 0 V +900 600 M +gsave 0 setgray +( 20) Rshow +grestore +1.000 UL +LTb +1020 1067 M +63 0 V +5777 0 R +-63 0 V +-5897 0 R +gsave 0 setgray +( 30) Rshow +grestore +1.000 UL +LTb +1020 1533 M +63 0 V +5777 0 R +-63 0 V +-5897 0 R +gsave 0 setgray +( 40) Rshow +grestore +1.000 UL +LTb +1020 2000 M +63 0 V +5777 0 R +-63 0 V +-5897 0 R +gsave 0 setgray +( 50) Rshow +grestore +1.000 UL +LTb +1020 2467 M +63 0 V +5777 0 R +-63 0 V +-5897 0 R +gsave 0 setgray +( 60) Rshow +grestore +1.000 UL +LTb +1020 2933 M +63 0 V +5777 0 R +-63 0 V +-5897 0 R +gsave 0 setgray +( 70) Rshow +grestore +1.000 UL +LTb +1020 3400 M +63 0 V +5777 0 R +-63 0 V +-5897 0 R +gsave 0 setgray +( 80) Rshow +grestore +1.000 UL +LTb +1020 3867 M +63 0 V +5777 0 R +-63 0 V +-5897 0 R +gsave 0 setgray +( 90) Rshow +grestore +1.000 UL +LTb +1020 4333 M +63 0 V +5777 0 R +-63 0 V +-5897 0 R +gsave 0 setgray +( 100) Rshow +grestore +1.000 UL +LTb +1020 4800 M +63 0 V +5777 0 R +-63 0 V +-5897 0 R +gsave 0 setgray +( 110) Rshow +grestore +1.000 UL +LTb +1521 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 40) Cshow +grestore +1.000 UL +LTb +2188 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 60) Cshow +grestore +1.000 UL +LTb +2855 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 80) Cshow +grestore +1.000 UL +LTb +3523 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 100) Cshow +grestore +1.000 UL +LTb +4190 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 120) Cshow +grestore +1.000 UL +LTb +4858 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 140) Cshow +grestore +1.000 UL +LTb +5525 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 160) Cshow +grestore +1.000 UL +LTb +6193 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 180) Cshow +grestore +1.000 UL +LTb +6860 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 200) Cshow +grestore +1.000 UL +LTb +1.000 UL +LTb +1020 600 M +5840 0 V +0 4200 V +-5840 0 V +0 -4200 V +LTb +200 2700 M +gsave 0 setgray +currentpoint gsave translate 90 rotate 0 0 M +(Number of Iterations) Cshow +grestore +grestore +LTb +3940 100 M +gsave 0 setgray +(Nodes Density) Cshow +grestore +1.000 UP +1.000 UL +LT0 +LTb +5957 4637 M +gsave 0 setgray +(Synchronous Algorithm) Rshow +grestore +LT0 +6077 4637 M +543 0 V +1020 3493 M +42 -42 V +42 -41 V +42 -41 V +43 -41 V +42 -40 V +42 -39 V +42 -39 V +42 -38 V +42 -38 V +43 -37 V +42 -36 V +42 -37 V +43 -35 V +42 -35 V +43 -35 V +43 -34 V +43 -33 V +43 -33 V +43 -32 V +43 -32 V +43 -32 V +44 -31 V +44 -30 V +44 -30 V +44 -30 V +44 -29 V +45 -28 V +45 -29 V +45 -27 V +46 -27 V +46 -27 V +46 -26 V +47 -26 V +47 -26 V +47 -25 V +48 -24 V +48 -24 V +49 -24 V +49 -23 V +50 -23 V +50 -23 V +50 -22 V +52 -21 V +51 -22 V +53 -21 V +52 -20 V +54 -20 V +54 -20 V +55 -19 V +55 -19 V +56 -19 V +56 -18 V +58 -18 V +58 -18 V +58 -17 V +60 -17 V +60 -16 V +61 -16 V +61 -16 V +62 -16 V +63 -15 V +64 -15 V +64 -14 V +66 -14 V +66 -14 V +66 -14 V +68 -13 V +68 -13 V +69 -12 V +70 -12 V +70 -12 V +72 -12 V +72 -11 V +72 -11 V +74 -11 V +74 -10 V +75 -10 V +75 -10 V +76 -9 V +77 -9 V +78 -9 V +78 -8 V +78 -8 V +80 -8 V +80 -7 V +80 -7 V +81 -7 V +81 -6 V +82 -7 V +82 -5 V +83 -6 V +83 -5 V +83 -5 V +84 -4 V +83 -4 V +84 -4 V +85 -3 V +84 -3 V +84 -2 V +1.000 UL +LT1 +LTb +5957 4437 M +gsave 0 setgray +(Asynchronous Algorithm) Rshow +grestore +LT1 +6077 4437 M +543 0 V +-5600 83 R +42 -74 V +42 -72 V +42 -70 V +43 -67 V +42 -66 V +42 -63 V +42 -61 V +42 -59 V +42 -57 V +43 -56 V +42 -53 V +42 -52 V +43 -50 V +42 -49 V +43 -46 V +43 -46 V +43 -43 V +43 -42 V +43 -41 V +43 -39 V +43 -38 V +44 -37 V +44 -35 V +44 -34 V +44 -33 V +44 -32 V +45 -30 V +45 -30 V +45 -28 V +46 -27 V +46 -27 V +46 -25 V +47 -25 V +47 -23 V +47 -23 V +48 -22 V +48 -21 V +49 -20 V +49 -19 V +50 -19 V +50 -18 V +50 -18 V +52 -16 V +51 -17 V +53 -15 V +52 -15 V +54 -14 V +54 -14 V +55 -14 V +55 -12 V +56 -13 V +56 -12 V +58 -11 V +58 -11 V +58 -11 V +60 -10 V +60 -10 V +61 -9 V +61 -9 V +62 -9 V +63 -9 V +64 -8 V +64 -8 V +66 -7 V +66 -8 V +66 -7 V +68 -7 V +68 -6 V +69 -7 V +70 -6 V +70 -6 V +72 -6 V +72 -5 V +72 -6 V +74 -5 V +74 -5 V +75 -5 V +75 -5 V +76 -4 V +77 -5 V +78 -4 V +78 -4 V +78 -5 V +80 -4 V +80 -3 V +80 -4 V +81 -4 V +81 -3 V +82 -4 V +82 -3 V +83 -3 V +83 -3 V +83 -3 V +84 -3 V +83 -3 V +84 -3 V +85 -2 V +84 -3 V +84 -2 V +1.000 UP +1.000 UL +LT2 +1020 3493 Pls +1854 2653 Pls +2689 2093 Pls +3523 1767 Pls +5191 1533 Pls +6860 1487 Pls +1.000 UP +1.000 UL +LT3 +1020 4520 Crs +1854 3027 Crs +2689 2700 Crs +3523 2560 Crs +5191 2467 Crs +6860 2420 Crs +1.000 UL +LTb +1020 600 M +5840 0 V +0 4200 V +-5840 0 V +0 -4200 V +1.000 UP +stroke +grestore +end +showpage +%%Trailer +%%DocumentFonts: Helvetica + +%%EndDocument + @endspecial 523 1940 a Fm(Fig)o(.)f(1.6)36 b FA(Number)19 +b(of)f(iterations)1080 3433 y @beginspecial 50 @llx 50 +@lly 410 @urx 302 @ury 1980 @rwi @setspecial +%%BeginDocument: TimeDensity.ps +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: TimeDensity.ps +%%Creator: gnuplot 4.0 patchlevel 0 +%%CreationDate: Tue Feb 5 17:29:16 2008 +%%DocumentFonts: (atend) +%%BoundingBox: 50 50 410 302 +%%Orientation: Portrait +%%EndComments +/gnudict 256 dict def +gnudict begin +/Color false def +/Solid false def +/gnulinewidth 5.000 def +/userlinewidth gnulinewidth def +/vshift -66 def +/dl {10.0 mul} def +/hpt_ 31.5 def +/vpt_ 31.5 def +/hpt hpt_ def +/vpt vpt_ def +/Rounded false def +/M {moveto} bind def +/L {lineto} bind def +/R {rmoveto} bind def +/V {rlineto} bind def +/N {newpath moveto} bind def +/C {setrgbcolor} bind def +/f {rlineto fill} bind def +/vpt2 vpt 2 mul def +/hpt2 hpt 2 mul def +/Lshow { currentpoint stroke M + 0 vshift R show } def +/Rshow { currentpoint stroke M + dup stringwidth pop neg vshift R show } def +/Cshow { currentpoint stroke M + dup stringwidth pop -2 div vshift R show } def +/UP { dup vpt_ mul /vpt exch def hpt_ mul /hpt exch def + /hpt2 hpt 2 mul def /vpt2 vpt 2 mul def } def +/DL { Color {setrgbcolor Solid {pop []} if 0 setdash } + {pop pop pop 0 setgray Solid {pop []} if 0 setdash} ifelse } def +/BL { stroke userlinewidth 2 mul setlinewidth + Rounded { 1 setlinejoin 1 setlinecap } if } def +/AL { stroke userlinewidth 2 div setlinewidth + Rounded { 1 setlinejoin 1 setlinecap } if } def +/UL { dup gnulinewidth mul /userlinewidth exch def + dup 1 lt {pop 1} if 10 mul /udl exch def } def +/PL { stroke userlinewidth setlinewidth + Rounded { 1 setlinejoin 1 setlinecap } if } def +/LTw { PL [] 1 setgray } def +/LTb { BL [] 0 0 0 DL } def +/LTa { AL [1 udl mul 2 udl mul] 0 setdash 0 0 0 setrgbcolor } def +/LT0 { PL [] 1 0 0 DL } def +/LT1 { PL [4 dl 2 dl] 0 1 0 DL } def +/LT2 { PL [2 dl 3 dl] 0 0 1 DL } def +/LT3 { PL [1 dl 1.5 dl] 1 0 1 DL } def +/LT4 { PL [5 dl 2 dl 1 dl 2 dl] 0 1 1 DL } def +/LT5 { PL [4 dl 3 dl 1 dl 3 dl] 1 1 0 DL } def +/LT6 { PL [2 dl 2 dl 2 dl 4 dl] 0 0 0 DL } def +/LT7 { PL [2 dl 2 dl 2 dl 2 dl 2 dl 4 dl] 1 0.3 0 DL } def +/LT8 { PL [2 dl 2 dl 2 dl 2 dl 2 dl 2 dl 2 dl 4 dl] 0.5 0.5 0.5 DL } def +/Pnt { stroke [] 0 setdash + gsave 1 setlinecap M 0 0 V stroke grestore } def +/Dia { stroke [] 0 setdash 2 copy vpt add M + hpt neg vpt neg V hpt vpt neg V + hpt vpt V hpt neg vpt V closepath stroke + Pnt } def +/Pls { stroke [] 0 setdash vpt sub M 0 vpt2 V + currentpoint stroke M + hpt neg vpt neg R hpt2 0 V stroke + } def +/Box { stroke [] 0 setdash 2 copy exch hpt sub exch vpt add M + 0 vpt2 neg V hpt2 0 V 0 vpt2 V + hpt2 neg 0 V closepath stroke + Pnt } def +/Crs { stroke [] 0 setdash exch hpt sub exch vpt add M + hpt2 vpt2 neg V currentpoint stroke M + hpt2 neg 0 R hpt2 vpt2 V stroke } def +/TriU { stroke [] 0 setdash 2 copy vpt 1.12 mul add M + hpt neg vpt -1.62 mul V + hpt 2 mul 0 V + hpt neg vpt 1.62 mul V closepath stroke + Pnt } def +/Star { 2 copy Pls Crs } def +/BoxF { stroke [] 0 setdash exch hpt sub exch vpt add M + 0 vpt2 neg V hpt2 0 V 0 vpt2 V + hpt2 neg 0 V closepath fill } def +/TriUF { stroke [] 0 setdash vpt 1.12 mul add M + hpt neg vpt -1.62 mul V + hpt 2 mul 0 V + hpt neg vpt 1.62 mul V closepath fill } def +/TriD { stroke [] 0 setdash 2 copy vpt 1.12 mul sub M + hpt neg vpt 1.62 mul V + hpt 2 mul 0 V + hpt neg vpt -1.62 mul V closepath stroke + Pnt } def +/TriDF { stroke [] 0 setdash vpt 1.12 mul sub M + hpt neg vpt 1.62 mul V + hpt 2 mul 0 V + hpt neg vpt -1.62 mul V closepath fill} def +/DiaF { stroke [] 0 setdash vpt add M + hpt neg vpt neg V hpt vpt neg V + hpt vpt V hpt neg vpt V closepath fill } def +/Pent { stroke [] 0 setdash 2 copy gsave + translate 0 hpt M 4 {72 rotate 0 hpt L} repeat + closepath stroke grestore Pnt } def +/PentF { stroke [] 0 setdash gsave + translate 0 hpt M 4 {72 rotate 0 hpt L} repeat + closepath fill grestore } def +/Circle { stroke [] 0 setdash 2 copy + hpt 0 360 arc stroke Pnt } def +/CircleF { stroke [] 0 setdash hpt 0 360 arc fill } def +/C0 { BL [] 0 setdash 2 copy moveto vpt 90 450 arc } bind def +/C1 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 90 arc closepath fill + vpt 0 360 arc closepath } bind def +/C2 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 90 180 arc closepath fill + vpt 0 360 arc closepath } bind def +/C3 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 180 arc closepath fill + vpt 0 360 arc closepath } bind def +/C4 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 180 270 arc closepath fill + vpt 0 360 arc closepath } bind def +/C5 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 90 arc + 2 copy moveto + 2 copy vpt 180 270 arc closepath fill + vpt 0 360 arc } bind def +/C6 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 90 270 arc closepath fill + vpt 0 360 arc closepath } bind def +/C7 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 270 arc closepath fill + vpt 0 360 arc closepath } bind def +/C8 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 270 360 arc closepath fill + vpt 0 360 arc closepath } bind def +/C9 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 270 450 arc closepath fill + vpt 0 360 arc closepath } bind def +/C10 { BL [] 0 setdash 2 copy 2 copy moveto vpt 270 360 arc closepath fill + 2 copy moveto + 2 copy vpt 90 180 arc closepath fill + vpt 0 360 arc closepath } bind def +/C11 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 180 arc closepath fill + 2 copy moveto + 2 copy vpt 270 360 arc closepath fill + vpt 0 360 arc closepath } bind def +/C12 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 180 360 arc closepath fill + vpt 0 360 arc closepath } bind def +/C13 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 90 arc closepath fill + 2 copy moveto + 2 copy vpt 180 360 arc closepath fill + vpt 0 360 arc closepath } bind def +/C14 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 90 360 arc closepath fill + vpt 0 360 arc } bind def +/C15 { BL [] 0 setdash 2 copy vpt 0 360 arc closepath fill + vpt 0 360 arc closepath } bind def +/Rec { newpath 4 2 roll moveto 1 index 0 rlineto 0 exch rlineto + neg 0 rlineto closepath } bind def +/Square { dup Rec } bind def +/Bsquare { vpt sub exch vpt sub exch vpt2 Square } bind def +/S0 { BL [] 0 setdash 2 copy moveto 0 vpt rlineto BL Bsquare } bind def +/S1 { BL [] 0 setdash 2 copy vpt Square fill Bsquare } bind def +/S2 { BL [] 0 setdash 2 copy exch vpt sub exch vpt Square fill Bsquare } bind def +/S3 { BL [] 0 setdash 2 copy exch vpt sub exch vpt2 vpt Rec fill Bsquare } bind def +/S4 { BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt Square fill Bsquare } bind def +/S5 { BL [] 0 setdash 2 copy 2 copy vpt Square fill + exch vpt sub exch vpt sub vpt Square fill Bsquare } bind def +/S6 { BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt vpt2 Rec fill Bsquare } bind def +/S7 { BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt vpt2 Rec fill + 2 copy vpt Square fill + Bsquare } bind def +/S8 { BL [] 0 setdash 2 copy vpt sub vpt Square fill Bsquare } bind def +/S9 { BL [] 0 setdash 2 copy vpt sub vpt vpt2 Rec fill Bsquare } bind def +/S10 { BL [] 0 setdash 2 copy vpt sub vpt Square fill 2 copy exch vpt sub exch vpt Square fill + Bsquare } bind def +/S11 { BL [] 0 setdash 2 copy vpt sub vpt Square fill 2 copy exch vpt sub exch vpt2 vpt Rec fill + Bsquare } bind def +/S12 { BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill Bsquare } bind def +/S13 { BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill + 2 copy vpt Square fill Bsquare } bind def +/S14 { BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill + 2 copy exch vpt sub exch vpt Square fill Bsquare } bind def +/S15 { BL [] 0 setdash 2 copy Bsquare fill Bsquare } bind def +/D0 { gsave translate 45 rotate 0 0 S0 stroke grestore } bind def +/D1 { gsave translate 45 rotate 0 0 S1 stroke grestore } bind def +/D2 { gsave translate 45 rotate 0 0 S2 stroke grestore } bind def +/D3 { gsave translate 45 rotate 0 0 S3 stroke grestore } bind def +/D4 { gsave translate 45 rotate 0 0 S4 stroke grestore } bind def +/D5 { gsave translate 45 rotate 0 0 S5 stroke grestore } bind def +/D6 { gsave translate 45 rotate 0 0 S6 stroke grestore } bind def +/D7 { gsave translate 45 rotate 0 0 S7 stroke grestore } bind def +/D8 { gsave translate 45 rotate 0 0 S8 stroke grestore } bind def +/D9 { gsave translate 45 rotate 0 0 S9 stroke grestore } bind def +/D10 { gsave translate 45 rotate 0 0 S10 stroke grestore } bind def +/D11 { gsave translate 45 rotate 0 0 S11 stroke grestore } bind def +/D12 { gsave translate 45 rotate 0 0 S12 stroke grestore } bind def +/D13 { gsave translate 45 rotate 0 0 S13 stroke grestore } bind def +/D14 { gsave translate 45 rotate 0 0 S14 stroke grestore } bind def +/D15 { gsave translate 45 rotate 0 0 S15 stroke grestore } bind def +/DiaE { stroke [] 0 setdash vpt add M + hpt neg vpt neg V hpt vpt neg V + hpt vpt V hpt neg vpt V closepath stroke } def +/BoxE { stroke [] 0 setdash exch hpt sub exch vpt add M + 0 vpt2 neg V hpt2 0 V 0 vpt2 V + hpt2 neg 0 V closepath stroke } def +/TriUE { stroke [] 0 setdash vpt 1.12 mul add M + hpt neg vpt -1.62 mul V + hpt 2 mul 0 V + hpt neg vpt 1.62 mul V closepath stroke } def +/TriDE { stroke [] 0 setdash vpt 1.12 mul sub M + hpt neg vpt 1.62 mul V + hpt 2 mul 0 V + hpt neg vpt -1.62 mul V closepath stroke } def +/PentE { stroke [] 0 setdash gsave + translate 0 hpt M 4 {72 rotate 0 hpt L} repeat + closepath stroke grestore } def +/CircE { stroke [] 0 setdash + hpt 0 360 arc stroke } def +/Opaque { gsave closepath 1 setgray fill grestore 0 setgray closepath } def +/DiaW { stroke [] 0 setdash vpt add M + hpt neg vpt neg V hpt vpt neg V + hpt vpt V hpt neg vpt V Opaque stroke } def +/BoxW { stroke [] 0 setdash exch hpt sub exch vpt add M + 0 vpt2 neg V hpt2 0 V 0 vpt2 V + hpt2 neg 0 V Opaque stroke } def +/TriUW { stroke [] 0 setdash vpt 1.12 mul add M + hpt neg vpt -1.62 mul V + hpt 2 mul 0 V + hpt neg vpt 1.62 mul V Opaque stroke } def +/TriDW { stroke [] 0 setdash vpt 1.12 mul sub M + hpt neg vpt 1.62 mul V + hpt 2 mul 0 V + hpt neg vpt -1.62 mul V Opaque stroke } def +/PentW { stroke [] 0 setdash gsave + translate 0 hpt M 4 {72 rotate 0 hpt L} repeat + Opaque stroke grestore } def +/CircW { stroke [] 0 setdash + hpt 0 360 arc Opaque stroke } def +/BoxFill { gsave Rec 1 setgray fill grestore } def +/BoxColFill { + gsave Rec + /Fillden exch def + currentrgbcolor + /ColB exch def /ColG exch def /ColR exch def + /ColR ColR Fillden mul Fillden sub 1 add def + /ColG ColG Fillden mul Fillden sub 1 add def + /ColB ColB Fillden mul Fillden sub 1 add def + ColR ColG ColB setrgbcolor + fill grestore } def +% +% PostScript Level 1 Pattern Fill routine +% Usage: x y w h s a XX PatternFill +% x,y = lower left corner of box to be filled +% w,h = width and height of box +% a = angle in degrees between lines and x-axis +% XX = 0/1 for no/yes cross-hatch +% +/PatternFill { gsave /PFa [ 9 2 roll ] def + PFa 0 get PFa 2 get 2 div add PFa 1 get PFa 3 get 2 div add translate + PFa 2 get -2 div PFa 3 get -2 div PFa 2 get PFa 3 get Rec + gsave 1 setgray fill grestore clip + currentlinewidth 0.5 mul setlinewidth + /PFs PFa 2 get dup mul PFa 3 get dup mul add sqrt def + 0 0 M PFa 5 get rotate PFs -2 div dup translate + 0 1 PFs PFa 4 get div 1 add floor cvi + { PFa 4 get mul 0 M 0 PFs V } for + 0 PFa 6 get ne { + 0 1 PFs PFa 4 get div 1 add floor cvi + { PFa 4 get mul 0 2 1 roll M PFs 0 V } for + } if + stroke grestore } def +% +/Symbol-Oblique /Symbol findfont [1 0 .167 1 0 0] makefont +dup length dict begin {1 index /FID eq {pop pop} {def} ifelse} forall +currentdict end definefont pop +end +%%EndProlog +gnudict begin +gsave +50 50 translate +0.050 0.050 scale +0 setgray +newpath +(Helvetica) findfont 200 scalefont setfont +1.000 UL +LTb +900 600 M +63 0 V +5897 0 R +-63 0 V +780 600 M +gsave 0 setgray +( 10) Rshow +grestore +1.000 UL +LTb +900 1650 M +63 0 V +5897 0 R +-63 0 V +-6017 0 R +gsave 0 setgray +( 15) Rshow +grestore +1.000 UL +LTb +900 2700 M +63 0 V +5897 0 R +-63 0 V +-6017 0 R +gsave 0 setgray +( 20) Rshow +grestore +1.000 UL +LTb +900 3750 M +63 0 V +5897 0 R +-63 0 V +-6017 0 R +gsave 0 setgray +( 25) Rshow +grestore +1.000 UL +LTb +900 4800 M +63 0 V +5897 0 R +-63 0 V +-6017 0 R +gsave 0 setgray +( 30) Rshow +grestore +1.000 UL +LTb +1411 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 40) Cshow +grestore +1.000 UL +LTb +2092 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 60) Cshow +grestore +1.000 UL +LTb +2773 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 80) Cshow +grestore +1.000 UL +LTb +3454 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 100) Cshow +grestore +1.000 UL +LTb +4135 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 120) Cshow +grestore +1.000 UL +LTb +4817 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 140) Cshow +grestore +1.000 UL +LTb +5498 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 160) Cshow +grestore +1.000 UL +LTb +6179 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 180) Cshow +grestore +1.000 UL +LTb +6860 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 200) Cshow +grestore +1.000 UL +LTb +1.000 UL +LTb +900 600 M +5960 0 V +0 4200 V +-5960 0 V +900 600 L +LTb +200 2700 M +gsave 0 setgray +currentpoint gsave translate 90 rotate 0 0 M +(Simulated Time) Cshow +grestore +grestore +LTb +3880 100 M +gsave 0 setgray +(Nodes Density) Cshow +grestore +1.000 UP +1.000 UL +LT0 +LTb +5957 4637 M +gsave 0 setgray +(Synchronous Algorithm) Rshow +grestore +LT0 +6077 4637 M +543 0 V +900 4632 M +43 -68 V +43 -67 V +43 -65 V +43 -63 V +43 -62 V +43 -61 V +43 -59 V +43 -57 V +43 -57 V +43 -55 V +44 -53 V +43 -53 V +43 -51 V +44 -50 V +43 -50 V +44 -48 V +43 -47 V +44 -46 V +44 -45 V +44 -44 V +45 -43 V +44 -42 V +45 -42 V +45 -40 V +45 -40 V +45 -39 V +46 -38 V +46 -38 V +46 -36 V +46 -36 V +47 -36 V +48 -34 V +47 -34 V +48 -34 V +48 -32 V +49 -32 V +49 -32 V +50 -31 V +50 -30 V +51 -30 V +51 -29 V +52 -28 V +52 -28 V +53 -28 V +53 -27 V +54 -26 V +55 -26 V +55 -25 V +56 -25 V +56 -25 V +57 -23 V +58 -24 V +58 -23 V +60 -22 V +59 -22 V +61 -21 V +61 -21 V +62 -20 V +63 -20 V +64 -19 V +64 -19 V +65 -19 V +66 -18 V +66 -17 V +68 -17 V +68 -17 V +69 -16 V +69 -15 V +71 -15 V +71 -15 V +72 -14 V +72 -14 V +74 -13 V +74 -13 V +75 -12 V +76 -12 V +76 -11 V +77 -11 V +78 -10 V +78 -10 V +79 -10 V +80 -9 V +80 -8 V +81 -8 V +82 -8 V +82 -8 V +82 -6 V +83 -7 V +84 -6 V +84 -6 V +84 -5 V +85 -5 V +85 -4 V +85 -5 V +86 -3 V +85 -4 V +86 -3 V +86 -3 V +86 -3 V +1.000 UL +LT1 +LTb +5957 4437 M +gsave 0 setgray +(Asynchronous Algorithm) Rshow +grestore +LT1 +6077 4437 M +543 0 V +900 3378 M +43 -66 V +43 -65 V +43 -63 V +43 -61 V +43 -59 V +43 -57 V +43 -56 V +43 -54 V +43 -53 V +43 -50 V +44 -50 V +43 -48 V +43 -46 V +44 -45 V +43 -43 V +44 -43 V +43 -40 V +44 -40 V +44 -38 V +44 -37 V +45 -35 V +44 -35 V +45 -33 V +45 -33 V +45 -31 V +45 -30 V +46 -29 V +46 -28 V +46 -27 V +46 -26 V +47 -25 V +48 -24 V +47 -23 V +48 -23 V +48 -21 V +49 -21 V +49 -20 V +50 -19 V +50 -19 V +51 -18 V +51 -17 V +52 -16 V +52 -16 V +53 -15 V +53 -14 V +54 -14 V +55 -14 V +55 -13 V +56 -12 V +56 -12 V +57 -11 V +58 -11 V +58 -10 V +60 -10 V +59 -10 V +61 -9 V +61 -8 V +62 -9 V +63 -7 V +64 -8 V +64 -7 V +65 -7 V +66 -7 V +66 -6 V +68 -6 V +68 -6 V +69 -5 V +69 -6 V +71 -5 V +71 -5 V +72 -4 V +72 -4 V +74 -5 V +74 -4 V +75 -3 V +76 -4 V +76 -3 V +77 -4 V +78 -3 V +78 -3 V +79 -3 V +80 -2 V +80 -3 V +81 -2 V +82 -3 V +82 -2 V +82 -2 V +83 -2 V +84 -2 V +84 -1 V +84 -2 V +85 -1 V +85 -2 V +85 -1 V +86 -1 V +85 -1 V +86 -2 V +86 0 V +86 -1 V +1.000 UP +1.000 UL +LT2 +900 4632 Pls +1751 3263 Pls +2603 2742 Pls +3454 2164 Pls +5157 1980 Pls +6860 1931 Pls +1.000 UP +1.000 UL +LT3 +900 3378 Crs +1751 2043 Crs +2603 1650 Crs +3454 1560 Crs +5157 1493 Crs +6860 1478 Crs +1.000 UL +LTb +900 600 M +5960 0 V +0 4200 V +-5960 0 V +900 600 L +1.000 UP +stroke +grestore +end +showpage +%%Trailer +%%DocumentFonts: Helvetica + +%%EndDocument + @endspecial 523 3557 a Fm(Fig)o(.)f(1.7)36 b FA(Simulated)18 +b(T)n(ime)523 4080 y FC(1.5)41 b(Further)27 b(Discussions)523 +4313 y FE(In)h(this)h(section,)f(we)h(gi)n(v)o(e)e(further)g +(consideration)f(to)j(our)e(data)i(fusion)e(scheme)h(from)f(the)523 +4412 y(vie)n(wpoints)d(of)g(rob)n(ustness)h(to)g(the)g(delays)f(and)g +(loss)i(of)f(messages)g(and)f(ener)o(gy)f(ef)n(\002cienc)o(y)523 +4512 y(in)d(comparison)f(to)h(other)f(e)o(xisting)h(w)o(orks.)623 +4611 y(Sensor)g(nodes)h(are)g(small-scale)g(de)n(vices.)f(Such)h(small) +h(de)n(vices)e(are)h(v)o(ery)f(limited)h(in)g(the)523 +4711 y(amount)30 b(of)h(ener)o(gy)f(the)o(y)g(can)i(store)f(or)g(harv)o +(est)g(from)f(the)i(en)m(vironment.)c(Thus,)i(ener)o(gy)p +eop end +%%Page: 17 17 +TeXDict begin 17 16 bop 523 100 a FA(1)42 b(An)18 b(Asynchronous)j(Dif) +n(fusion)e(Scheme)g(for)g(Data)f(Fusion)h(in)f(Sensor)h(Netw)o(orks)545 +b(17)523 282 y FE(ef)n(\002cienc)o(y)24 b(is)j(a)f(major)e(concern)g +(in)i(a)g(sensor)f(netw)o(ork.)f(In)h(addition,)f(man)o(y)h(thousands)f +(of)523 382 y(sensors)32 b(may)g(ha)n(v)o(e)f(to)h(be)g(deplo)o(yed)e +(for)h(a)i(gi)n(v)o(en)e(task.)h(An)g(indi)n(vidual)e(sensor')-5 +b(s)32 b(small)523 482 y(ef)n(fecti)n(v)o(e)19 b(range)g(relati)n(v)o +(e)g(to)i(a)f(lar)o(ge)g(area)g(of)f(interest)i(mak)o(es)f(this)g(a)h +(requirement.)623 581 y(Therefore,)16 b(scalability)j(is)i(another)c +(critical)j(f)o(actor)e(in)i(the)f(netw)o(ork)f(design.)g(Sensor)h +(net-)523 681 y(w)o(orks)j(are)f(subject)h(to)g(frequent)e(partial)i(f) +o(ailures)g(such)f(as)i(e)o(xhausted)d(batteries,)i(nodes)f(de-)523 +780 y(stro)o(yed)e(due)h(to)g(en)m(vironmental)d(f)o(actors,)i(or)h +(communication)d(f)o(ailures)j(due)f(to)h(obstacles)g(in)523 +880 y(the)g(en)m(vironment.)d(Message)k(delays)f(can)g(be)g(rather)f +(high)h(in)g(sensor)g(netw)o(orks)f(due)h(to)h(their)523 +980 y(typically)e(limited)h(communication)d(capacity)i(which)g(is)i +(shared)e(by)g(nodes)g(within)h(commu-)523 1079 y(nication)g(range)g +(of)h(each)f(other)-5 b(.)20 b(The)h(o)o(v)o(erall)f(operation)f(of)h +(the)h(sensor)g(netw)o(ork)f(should)f(be)523 1179 y(rob)n(ust)h +(despite)g(such)g(partial)f(f)o(ailures.)623 1279 y(In)h(our)f(scheme,) +h(we)h(presented)e(a)i(scalable)f(asynchronous)d(method)i(for)h(a)n(v)o +(eraging)f(data)523 1378 y(fusion)i(in)h(sensor)g(netw)o(orks.)f(The)h +(simulations)f(we)i(conducted)d(sho)n(w)i(that,)g(the)g(higher)e(the) +523 1478 y(density)30 b(of)g(the)h(deplo)o(yed)d(nodes,)i(the)h(more)e +(the)i(precise)f(of)g(the)h(estimation)f(w)o(ould)g(be.)523 +1577 y(On)22 b(the)g(other)f(hand,)f(our)h(algorithm)g(is)i(totally)e +(asynchronous,)e(where)i(we)h(consider)f(delay)523 1677 +y(transmission)g(and)h(loss)h(of)e(messages)i(in)f(the)g(proposed)e +(model.)h(These)h(aspects)g(which)f(are)523 1777 y(highly)d(important)h +(are)g(not)h(tak)o(en)f(into)g(account)g(in)h(pre)n(vious)e(sensor)h +(fusion)g(w)o(orks)g([2)o(,)h(12)o(].)623 1876 y(Another)f(important)h +(practical)h(issue)g(in)h(sensor)e(netw)o(ork)g(is)i(the)g(po)n(wer)e +(ef)n(\002cienc)o(y)-5 b(.)19 b(Op-)523 1976 y(timizing)e(the)g(ener)o +(gy)f(consumption)f(in)i(sensor)g(netw)o(orks)g(is)h(related)f(to)h +(minimize)e(the)i(num-)523 2076 y(ber)24 b(of)h(the)g(netw)o(ork)e +(communications)f(as)k(the)f(radio)e(is)j(the)f(main)f(ener)o(gy)f +(consumer)g(in)i(a)523 2175 y(sensor)f(node)f([1)o(].)h(Considering)e +(the)i(distrib)n(uted)f(iterati)n(v)o(e)h(procedure)d(for)j +(calculating)e(a)n(v-)523 2275 y(erages,)h(the)h(only)f(w)o(ay)g(to)h +(minimize)f(the)h(ener)o(gy)d(consumption)h(is)i(to)g(reduce)e(the)i +(number)523 2374 y(of)31 b(iterations)g(before)f(attending)h(the)g(con) +m(v)o(er)o(gence.)c(T)-7 b(o)32 b(sho)n(w)f(ho)n(w)g(well)h(our)f +(algorithm)523 2474 y(sa)n(v)o(es)23 b(ener)o(gy)-5 b(,)19 +b(we)k(compared)d(our)i(obtained)f(results)h(to)h(those)f(reported)e +(by)i(another)f(dif)n(fu-)523 2574 y(si)n(v)o(e)d(scheme)f(for)g(a)n(v) +o(erage)f(computation)f(in)j(sensor)f(netw)o(orks)g([2)o(].)h(F)o(or)f +(instance,)g(in)h(a)g(static)523 2673 y(topology)13 b(our)i(algorithm)f +(con)m(v)o(er)o(ges)f(after)i Ft(69)g FE(iterations)g(with)h(a)g(mean)e +(error)h(of)g Ft(10)2998 2643 y Fo(\000)p Fq(4)3102 2673 +y FE(while)523 2773 y(the)h(best)h(results)f(in)h(the)f(second)f +(approach)f(reached)h Ft(85)h FE(iterations)g(for)f(the)h(same)h(mean)e +(error)-5 b(.)523 2873 y(F)o(or)23 b(the)h(dynamic)e(topology)g(mode,)g +(we)j(obtained)d Ft(105)h FE(iterations,)g(mean)g(error)f +Ft(10)3054 2842 y Fo(\000)p Fq(4)3167 2873 y FE(and)523 +2972 y(probability)f(of)i(link)f(f)o(ailure)g Ft(0)p +Fu(:)p Ft(25)p FE(,)g(while)h(the)g(number)e(of)i(iterations)f(is)i(v)o +(ery)e(high)g(\()p Fx(\031)27 b Ft(300)523 3072 y FE(iterations\))19 +b(in)i([2)o(].)523 3437 y FC(1.6)41 b(Conclusion)25 b(and)h(Futur)n(e)g +(W)-7 b(ork)523 3670 y FE(In)32 b(this)h(paper)m(,)d(we)j(introduced)c +(a)k(f)o(ault)f(tolerant)f(dif)n(fusion)g(scheme)g(for)h(data)g(fusion) +f(in)523 3769 y(sensor)g(netw)o(orks.)g(This)g(algorithm)f(is)j(based)e +(on)g(data)g(dif)n(fusion;)f(the)h(nodes)g(cooperate)523 +3869 y(and)23 b(e)o(xchange)e(their)i(information)e(only)i(with)h +(their)f(direct)g(instantaneous)f(neighbours.)f(In)523 +3968 y(contrast)26 b(to)g(e)o(xisting)g(w)o(orks,)g(our)g(algorithm)e +(does)j(not)f(rely)g(on)g(synchronization)d(nor)j(on)523 +4068 y(the)16 b(kno)n(wledge)e(of)i(the)h(global)e(topology)-5 +b(.)14 b(W)-7 b(e)17 b(pro)o(v)o(e)e(that)h(under)f(suitable)h +(assumptions,)f(our)523 4168 y(algorithm)24 b(achie)n(v)o(es)h(the)g +(global)g(con)m(v)o(er)o(gence)d(in)j(the)h(sense)g(that,)f(after)h +(some)f(iterations,)523 4267 y(each)i(node)e(has)i(an)g(estimation)f +(of)h(the)g(a)n(v)o(erage)e(consensus)h(o)o(v)o(erall)g(the)h(whole)f +(netw)o(ork.)523 4367 y(T)-7 b(o)21 b(sho)n(w)f(the)h(ef)n(fecti)n(v)o +(eness)e(of)h(our)g(algorithm,)e(we)j(conducted)e(series)i(of)f +(simulations)g(and)523 4467 y(studied)g(our)f(algorithm)g(under)f(v)n +(arious)i(metrics.)623 4566 y(In)j(our)h(scenario,)f(we)h(ha)n(v)o(e)f +(focused)g(on)h(de)n(v)o(eloping)d(a)j(reliable)g(and)f(rob)n(ust)h +(algorithm)523 4666 y(from)16 b(the)i(vie)n(w)f(points)g(of)h +(asynchronism)d(and)i(f)o(ault)g(tolerance)f(in)i(a)g(dynamically)d +(changing)p eop end +%%Page: 18 18 +TeXDict begin 18 17 bop 523 100 a FA(18)976 b(Jacques)20 +b(M.)d(Bahi,)g(Abdallah)i(Makhoul)f(and)h(Ahmed)f(Mostef)o(aoui)523 +282 y FE(topology)-5 b(.)18 b(W)-7 b(e)23 b(ha)n(v)o(e)e(tak)o(en)f +(into)h(account)f(tw)o(o)i(points)f(which)g(don')o(t)e(ha)n(v)o(e)i +(been)f(pre)n(viously)523 382 y(addressed)i(by)h(other)f(authors,)g +(namely)g(the)h(delays)g(between)g(nodes)f(and)h(the)g(loss)h(of)e +(mes-)523 482 y(sages.)f(Kno)n(wing)e(that)i(in)h(real)e(sensor)h(netw) +o(orks)f(the)h(nodes)f(are)h(prone)e(to)j(f)o(ailures.)e(One)h(of)523 +581 y(the)e(near)f(future)g(goals)h(is)h(to)f(allo)n(w)g(nodes)f(to)h +(be)g(dynamically)e(added)h(and)h(remo)o(v)o(ed)d(during)523 +681 y(the)25 b(e)o(x)o(ecution)e(of)h(the)h(data)g(fusion)f(algorithm.) +f(W)-7 b(e)26 b(also)f(plan)g(to)g(test)g(our)g(algorithm)e(in)i(a)523 +780 y(real-w)o(orld)19 b(sensor)h(netw)o(ork.)523 1146 +y FC(Refer)n(ences)558 1362 y FA(1.)42 b(I.)25 b(Ak)o(yildiz,)g(W)-6 +b(.)24 b(Su,)i(Y)-9 b(.)25 b(Sankarasubramniam,)k(and)d(E.)f(Cayirci.) +51 b(A)25 b(surv)o(e)o(y)j(on)e(sensor)h(netw)o(orks.)653 +1445 y Fa(IEEE)18 b(Communications)h(Ma)o(gazine)p FA(,)g(pages)g +(102\226114,)h(2002.)558 1528 y(2.)42 b(L.)22 b(Xiao,)g(S.)g(Bo)o(yd,)h +(and)h(S.)e(lall.)39 b(A)23 b(scheme)h(for)f(rob)o(ust)h(distrib)o +(uted)e(sensor)j(fusion)f(based)g(on)f(a)o(v)o(er)o(-)653 +1611 y(age)i(consensus.)49 b Fa(Pr)m(oc.)24 b(of)g(the)h(International) +g(Confer)m(ence)i(on)e(Information)g(pr)m(ocessing)i(in)d(Sensor)653 +1694 y(Networks)19 b(\(IPSN\))p FA(,)g(pages)h(63\22670,)e(2005.)558 +1777 y(3.)42 b(R.)14 b(Olf)o(ati-Saber)i(and)f(J.)f(S.)g(Shamma.)k +(Consensus)f(\002lters)e(for)g(sensor)i(netw)o(orks)f(and)f(distrib)o +(uted)g(sensor)653 1860 y(fusion.)26 b Fa(Pr)m(oceedings)20 +b(of)e(44th)g(IEEE)h(Confer)m(ence)h(on)e(Decision)h(and)f(Contr)m(ol)g +(CDC-ECC)p FA(,)g(2005.)558 1943 y(4.)42 b(R.)15 b(Olf)o(ati-Saber)l(.) +21 b(Distrib)o(uted)16 b(kalman)f(\002lter)h(with)e(embeded)j +(consensus)h(\002lters.)j Fa(Pr)m(oceedings)c(of)e(44th)653 +2026 y(IEEE)j(Confer)m(ence)j(on)d(Decision)g(and)h(Contr)m(ol)p +FA(,)f(2005.)558 2109 y(5.)42 b(R.)17 b(Olf)o(ati-Saber)i(and)g(R.)e +(M.)f(Murray)-5 b(.)27 b(Consensus)20 b(problems)f(in)e(netw)o(orks)j +(of)e(agents)h(with)d(switching)653 2192 y(topology)i(and)h +(time-delays.)26 b Fa(IEEE)19 b(T)l(r)o(ansaction)h(on)e(A)o(utomatic)f +(Contr)m(ol)p FA(,)h(49\(9\):1520\2261533.)558 2275 y(6.)42 +b(Jacques)28 b(Bahi,)d(Arnaud)i(Giersch,)g(and)g(Abdallah)f(Makhoul.)51 +b(A)26 b(scalable)g(f)o(ault)h(tolerant)f(dif)n(fusion)653 +2358 y(scheme)j(for)g(data)g(fusion)g(in)f(sensor)i(netw)o(orks.)60 +b Fa(The)28 b(Thir)m(d)h(International)h(ICST)f(Confer)m(ence)h(on)653 +2441 y(Scalable)18 b(Information)h(Systems,)g(Infoscale)g(2008,)g(A)n +(CM)p FA(,)e(june)h(2008.)558 2524 y(7.)42 b(A.)24 b(Speranzon,)j(C.)d +(Fischione,)i(and)f(K.H.)f(Johansson.)50 b(Distrib)o(uted)25 +b(and)h(collaborati)n(v)o(e)g(estimation)653 2607 y(o)o(v)o(er)21 +b(wireless)g(sensor)h(netw)o(orks.)34 b Fa(Pr)m(oceedings)22 +b(of)e(45th)g(IEEE)h(Confer)m(ence)h(on)e(Decision)h(and)g(Con-)653 +2690 y(tr)m(ol)p FA(,)c(2006.)558 2773 y(8.)42 b(L.)21 +b(Xiao,)g(S.)g(Bo)o(yd,)h(and)g(S.)f(Lall.)36 b(A)21 +b(space-time)h(dif)n(fusion)i(scheme)e(for)h(peer)o(-to-peer)h +(least-squares)653 2856 y(estimation.)30 b Fa(Pr)m(oc.)20 +b(of)f(F)m(ifth)g(International)h(Conf)o(.)g(on)f(Information)i(Pr)m +(ocessing)h(in)d(Sensor)i(Networks)653 2939 y(\(IPSN)e(2006\))p +FA(,)g(pages)g(168\226176,)g(2006.)558 3022 y(9.)42 b(Mohammad)15 +b(S.)g(T)-6 b(alebi,)15 b(Mahdi)f(K)n(ef)o(ayati,)i(Babak)g(H.)e +(Khalaj,)g(and)i(Hamid)e(R.)h(Rabiee.)k(Adapti)n(v)o(e)c(con-)653 +3105 y(sensus)i(a)o(v)o(eraging)g(for)f(information)h(fusion)f(o)o(v)o +(er)h(sensor)g(netw)o(orks.)22 b Fa(In)15 b(the)h(pr)m(oceedings)i(of)d +(The)h(Thir)m(d)653 3188 y(IEEE)i(International)h(Confer)m(ence)i(on)d +(Mobile)f(Ad-hoc)j(and)e(Sensor)i(Systems)f(\(MASS'06\))p +FA(,)h(2006.)523 3271 y(10.)42 b(D.)19 b(Spanos,)j(R.)d(Olf)o +(ati-Saber)m(,)j(and)f(R.M.)d(Murray)-5 b(.)34 b(Distrib)o(uted)20 +b(sensor)j(fusion)e(using)g(dynamic)f(con-)653 3354 y(sensus.)27 +b Fa(pr)m(oceedings)20 b(of)e(IF)-8 b(A)n(C)p FA(,)18 +b(2005.)523 3437 y(11.)42 b(D.S.)18 b(Scherber)k(and)d(H.C.)g(P)o +(apadopoulos.)31 b(Distrib)o(uted)19 b(computation)h(of)g(a)o(v)o +(erages)h(o)o(v)o(er)f(ad)f(hoc)h(net-)653 3520 y(w)o(orks.)27 +b Fa(IEEE)18 b(journal)h(on)f(Selected)h(Ar)m(eas)g(in)f +(Communications)p FA(,)g(23\(4\):776\226787,)j(April)d(2005.)523 +3603 y(12.)42 b(Mohammad)15 b(S.)g(T)-6 b(alebi,)15 b(Mahdi)f(K)n(ef)o +(ayati,)i(Babak)g(H.)e(Khalaj,)g(and)i(Hamid)e(R.)h(Rabiee.)k(Adapti)n +(v)o(e)c(con-)653 3686 y(sensus)i(a)o(v)o(eraging)g(for)f(information)g +(fusion)h(o)o(v)o(er)f(sensor)h(netw)o(orks.)22 b Fa(IEEE)16 +b(International)g(Confer)m(ence)653 3769 y(on)i(Mobile)g(Adhoc)g(and)h +(Sensor)h(Systems)f(\(MASS\))p FA(,)g(pages)g(562\226565,)g(2006.)523 +3852 y(13.)42 b(J)24 b(A.)g(Le)o(gg.)47 b(T)n(racking)25 +b(and)g(sensor)h(fusion)g(issues)f(in)f(the)h(tactical)f(land)g(en)m +(vironement.)48 b Fa(T)-6 b(ec)o(hnical)653 3935 y(Report)18 +b(TN.0605)p FA(,)h(2005.)523 4018 y(14.)42 b(R.)18 b(Olf)o(ati-Saber)m +(,)j(J.A.)e(F)o(ax,)g(and)h(R.M.)e(Murray)-5 b(.)31 b(Consensus)22 +b(and)e(cooperation)h(in)e(netw)o(ork)o(ed)i(multi-)653 +4101 y(agent)d(systems.)27 b Fa(Pr)m(oc.)18 b(of)g(IEEE)p +FA(,)g(pages)h(215\226233,)g(2007.)523 4184 y(15.)42 +b(Dimitri)15 b(P)-8 b(.)16 b(Bertsekas)i(and)f(John)g(N.)f(Tsitsiklis.) +21 b Fa(P)-6 b(ar)o(allel)17 b(and)g(Distrib)o(uted)f(Computation:)h +(Numerical)653 4267 y(Methods)p FA(.)26 b(Athena)18 b(Scienti\002c,)g +(1997.)523 4350 y(16.)42 b(Jacques)17 b(Bahi,)d(Raphael)i(Couturier)m +(,)g(and)f(Fla)o(vien)g(V)-8 b(ernier)l(.)20 b(Synchronous)e(distrib)o +(uted)c(load)h(balancing)653 4433 y(on)25 b(dynamic)h(netw)o(orks.)50 +b Fa(J)n(ournal)27 b(of)e(P)-6 b(ar)o(allel)25 b(and)h(Distrib)o(uted)f +(Computing)p FA(,)g(65\(11\):1397\2261405,)653 4516 y(2005.)523 +4599 y(17.)42 b(OMNeT++.)24 b(http://www)-5 b(.omnetpp.or)o(g/.)p +eop end +%%Trailer + +userdict /end-hook known{end-hook}if +%%EOF diff --git a/chapitre-2009/Fusion-chapter.tex b/chapitre-2009/Fusion-chapter.tex new file mode 100644 index 0000000..67c1e5c --- /dev/null +++ b/chapitre-2009/Fusion-chapter.tex @@ -0,0 +1,1103 @@ +\documentclass{svmult}% +%\documentclass[]{llncs} +\usepackage{amsmath} + +\usepackage{amsfonts} +\usepackage{amssymb} +\usepackage{graphicx}% +\usepackage{algorithm} +\usepackage{algorithmic} +\usepackage{amsmath} +%\setcounter{MaxMatrixCols}{30} +%\newtheorem{theorem}{Theorem} +%\newtheorem{acknowledgement}[theorem]{Acknowledgement} +%\newtheorem{algorithm}[theorem]{Algorithm} +%\newtheorem{axiom}[theorem]{Axiom} +%\newtheorem{case}[theorem]{Case} +%\newtheorem{claim}[theorem]{Claim} +\newtheorem{assumption}{Assumption} +%\newtheorem{conclusion}[theorem]{Conclusion} +%\newtheorem{condition}[theorem]{Condition} +%\newtheorem{conjecture}[theorem]{Conjecture} +%\newtheorem{corollary}[theorem]{Corollary} +%\newtheorem{criterion}[theorem]{Criterion} +%\newtheorem{definition}[theorem]{Definition} +%\newtheorem{example}[theorem]{Example} +%\newtheorem{exercise}[theorem]{Exercise} +%\newtheorem{lemma}[theorem]{Lemma} +%\newtheorem{notation}[theorem]{Notation} +%\newtheorem{problem}[theorem]{Problem} +%\newtheorem{proposition}[theorem]{Proposition} +%\newtheorem{remark}[theorem]{Remark} +%\newtheorem{solution}[theorem]{Solution} +%\newtheorem{summary}[theorem]{Summary} +%\newenvironment{proof}[1][Proof]{\noindent\textbf{#1.} }{\ \rule{0.5em}{0.5em}} +% +% +% +%\documentclass[]{llncs} +% +%\smartqed + %\usepackage{graphicx} + \usepackage{amsmath} +% %\usepackage{amsthm} + \usepackage{amssymb} +\usepackage{times} + \usepackage{algorithm} +\usepackage{algorithmic} +% %\newtheorem{definition}{Definition} + +\begin{document} +%\renewcommand{\baselinestretch}{1} +\title{Distributed Average Consensus in Large Asynchronous Sensor Networks} + +\author{Jacques M. Bahi, Arnaud Giersh, Abdallah Makhoul and Ahmed Mostefaoui} + \institute{Computer Science Laboratory, University of Franche-Comt\'e (LIFC) \at + Rue Engel-Gros, BP 527\\ + 90016 Belfort Cedex, France\\ + \email{\{firstname.lastname\}@univ-fcomte.fr} +} + + +\maketitle + +\abstract { One important issue in sensor networks is parameters + estimation based on nodes measurements. Several approaches have been + proposed in the literature (centralized and distributed + ones). Because of the particular noisy environment, usually observed + in sensor networks, centralized approaches are not efficient and + present several drawbacks (important energy consumption, routing + information maintaining, etc.). In distributed approaches however, + nodes exchange data with their neighbours and update their own data + accordingly until reaching convergence to the right parameters + estimate. These approaches, although provide some robustness against + nodes failure, does not address important issues as communication + delay tolerance and asynchronism (i.e., they require that nodes + remain synchronous in communication and processing). In this + chapter, we tackle these issues by proposing a totally asynchronous + scheme that is communication delay tolerant. The extensive + simulations series we conducted have showed the effectiveness of our + approach. } + +%------------------------------------------------------------------------------------------------------------------------ +\section{Introduction} +Recent years have witnessed significant advances in wireless sensor +networks which emerge as one of the most promising technologies for +the 21$^{st}$ century~\cite{12}. In fact, they present huge potential +in several domains ranging from health care applications to military +applications. In general, the primary objective of a wireless sensor +network is to collect data from the monitored area and to transmit it +to a base station (sink) for processing. Many applications envisioned +for sensor networks consist of low–power and low–cost nodes. For +instance, applications such as data fusion and distributed +coordination require distributed function computation/parameter +estimation under topology changes and power constraints. Distributed +average consensus, in ad hoc networks, is an important issue in +distributed agreement and synchronization problems~\cite{22} and is +also a central topic for load balancing (with divisible tasks) in +parallel computers~\cite{23}. More recently, it has also found +applications in distributed coordination of mobile autonomous +agents~\cite{24,20} and distributed data fusion in sensor +networks~\cite{21,25}. In this chapter, we focus on a particular class +of iterative algorithms based on information diffusion for average +consensus, widely used in the applications cited above. Each node +broadcasts its data to its neighbours and updates its estimation +according to a weighted sum of the received data until the algorithm +convergence. + +To illustrate the average consensus problem, let us consider the +example of petrol tanks. We suppose that in a oil station we have +large number of tanks related to each other in mechanical and sensor +networks. The role of sensors is to dectect the level of each oil +tank. The objective of this application is to keep the level of oil +on all tanks the same. When a sensor node detects some changes in its +level, it launchs an average consenus process to calculate the +average level of all tranks and then thanks to the mechanical network +an oil transfer operation is done to regulate the level. The average +consensus process is used to compute the average level, each sensor +node exchanges its information with its neighbors by iterative manner +until the convergence to the average consensus. + +%\subsection {Motivations} The above data processing scheme is usually +%known as {\it centralized data fusion}. In this scheme, each sensor +%sends its data either directly, if it is located in the immediate +%neighbourhood of the sink, or by multi hops relays to the data fusion +%center via wireless communications. Besides the important cost in term +%of energy resources consumption due mainly to wireless communications +%(i.e., sensors that are located very far away from the base station, +%requires an important amount of energy to send/receive data to/from +%the sink), this scheme does not hold good robustness against +%communication loss neither against nodes failures. Furthermore, it +%requires that each node maintains rooting information to reach the +%sink. This is particularly challenging and resources consuming in case +%where network topology is constantly changing due either to nodes +%failures or communications unreliability or nodes mobility. + +%Distributed approaches were proposed as interesting alternates based +%on {\it in-network} processing which may, in many cases, significantly +%decrease the energy consumed. In fact, in such approaches, nodes do +%not need to hold global knowledge about the current network topology +%since each node communicates only with its immediate neighbours. The +%unknown parameter estimate is then successively carried out through +%local computation from the exchanged data. The advantages of such +%approaches are numerous: (a) no central data fusion base station is +%required as every node holds the estimate of the unknown parameter; +%(b) multi-hop communications are avoided (only direct communications +%between neighbours are needed) and consequently maintaining rooting +%data is not needed any more; (c) better behaviour is observed in front +%of communication unreliability; (d) Network scalability is better +%supported than in centralized approach due mainly to direct +%communications between neighbours; etc. + +To calculate the average consensus, many distributed approaches have +been proposed. On the other hand, these existing approaches present +some insufficiencies (see next section). For instance, the flooding +approach requires that each node holds a relatively important storage +space. Other approaches make the unpractical assumption of +communication synchronization between sensors~\cite{2,20} and do not +tolerate communication delays neither nodes failures. These weaknesses +remain very restrictive in sensor network environment where on one +hand nodes are prone to frequent failures as they are driven by +batteries and on the other hand communications are almost unreliable +and prone to delays. Moreover, these two limitative features lead, in +addition to nodes mobility, to dynamically changing network +topologies. + +%\subsection {Contributions} + +In order to overcome the above mentioned weaknesses, we propose and +investigate in this chapter a novel approach for data fusion in sensor +networks. The key idea behind is to develop a consensus algorithm that +allows all nodes of the sensor network to track the average of their +previous measurements~\cite{21,2,20,5,9,10,16,17,18}. More +specifically, our proposition is based on an {\it in-network + asynchronous iterative algorithm}, run by each node and in which +nodes communicate with only their immediate neighbours. + +In this context, let us discuss the primary contributions of this chapter: + +\begin{itemize} + +\item Our approach does not require any synchronization between nodes + as it is basically asynchronous. In other words, each node + communicates its data to its instantaneous neighbours at its own + "rhythm" i.e., no delays between nodes are observed in our + approach. This is particularly important because in the synchronous + schemes, as the one reported in~\cite{2}, any delay between two + nodes in the network will result in a global delay over the whole + network since all the nodes are synchronous. This is particularly + limitative in heterogeneous sensor networks where nodes have + different processing speeds. + +\item As a consequence of its asynchronism, our proposed approach + totally tolerates communication delays. This feature is of an + important matter because sensor networks, as it is commonly known, + are prone to environmental perturbations~\cite{1} when communication + delays occur more frequently. + +\item The proposed distributed algorithm, as proven theoretical and + validated experimentally, supports dynamic topologies and guarantees + that each sensor node will converge to the average consensus. + +\end{itemize} + + +However, as for any iterative approach, our approach could, under +certain environmental conditions, consume more network resources, +mainly communications, than other centralized approaches, specifically +in "perfect environment" where nodes and communications are totally +reliable and the network topology is fixed. Nevertheless, we note +here that our concern is more focused on {\it "noisy environment"} in +which communication unreliability and nodes failures are usual. + +%----------------------------------------------------------------------------------------------------------------------- + +\section{Overview of Averaging Problem in Sensor Networks} + +The first and the simplest approach for distributed average estimation +in sensor networks is called {\it flooding} approach~\cite{2}. In this +approach, each sensor node broadcasts all its stored and received data +to its neighbours. After a while, each node will hold all the data of +the network and acts as a fusion center to compute the estimate of the +unknown parameter. This technique has however several +disadvantages~\cite{2}. First, it results in huge amount of exchanged +duplicate messages, which represents a real limitation in environments +like sensor networks. Second, flooding requires that each node stores +at least one message per node (in order to compute the average). This +could lead to an important storage memory requirement in case of a +large sensor network with the associated operations (reads and +writes). Finally, it is obvious that those requirements will consume +much resources leading to an important decrease of the whole network +lifetime. + +Alternatively, in~\cite{3} the authors proposed a scalable sensor +fusion scenario that performs fusion of sensor measurements combined +with local Kalman filtering. They developed a distributed algorithm +that allows the sensor nodes to compute the average of all of their +measurements. It is worthy to note that many other sensor data fusion +approaches are based on Kalman filters and mobile +agents~\cite{4,5,11,16,17}. + +An iterative method for distributed data fusion in sensor networks +based on the calculation of an average consensus~\footnote{In the rest + of the paper, the terms "average consensus" and "parameter + estimation" are used to denote the same mechanism of finding an + estimate of the unknown parameter average.} has been proposed +in~\cite{2}. The authors consider that every node takes a noisy +measurement of the unknown parameter. Each node broadcasts its data to +its neighbours and updates its estimation according to a weighted sum +of the received data. In this scheme all the communications are direct +ones. + +Although the above mentioned works and other existing data fusion +scenarios guarantee some level of robustness to nodes failures and +dynamic topology changes~\cite{2,3,4,10,20}, they either put some +unpractical assumptions like nodes synchronization or do not support +practical issues as the communication delays. + +To the best of our knowledge, the above issues which are extremely +important, especially in noisy environments, are not taken into +account in previous data fusion approaches. In this chapter, we +present an asynchronous data fusion scheme, particularly tailored to +perturbed sensor networks. It focuses on a distributed iterative +algorithm for calculating averages over asynchronous sensor +networks. The sensor nodes exchange and update their data by the mean +of a weighted sum in order to achieve the average consensus. The +suggested algorithm does not rely on synchronization between the nodes +nor does it require any knowledge of the global topology. To round up, +the convergence of the proposed algorithm is proved in a general +asynchronous environment. + +%----------------------------------------------------------------------------------------------------------------- + +\section{Asynchronous Distributed Consensus with Messages Loss} + +\subsection{Problem Formulation} + +A sensor network is modelled as a connected undirected graph $G = (V, +E)$. The set of nodes is denoted by $V$ (the set of vertices), and the +links between nodes by $E$ (the set of edges). The nodes are labelled +$i = 1,2, \ldots, n$, and a link between two nodes $i$ and $j$ is +denoted by $(i, j)$. The dynamic topology changes are represented by +the time varying graph $G(t) = (V, E(t))$, where $E(t)$ is the set of +active edges at time $t$. The set of neighbours of node $i$ at time +$t$ is denoted by $N_{i}(t) = \{j\in V \mid (i,j) \in E(t)\}$, and the +degree (number of neighbours) of node $i$ at time $t$ by $\eta_{i}(t) += |N_{i}(t)|$. + +Each node takes initial measurement $z_{i}$. For sake of simplicity +let us suppose that $z_{i}\in\mathbb{R}$. Then, $z$ will refer to the +vector whose $i$th component is $z_{i}$ in case we are concerned with +several parameters. Each node on the network also maintains a dynamic +state $x_{i}(t)\in\mathbb{R}$ which is initially set to $x_{i}(0) = +z_{i}$. + +Intuitively each node's state $x_{i}(t)$ is its current estimate of +the average value $\sum_{i=1}^{n} z_{i} / n$. The goal of the +averaging algorithm, is to let all the states $x_{i}(t)$ go to the +average $\sum_{i=1}^{n} z_{i} / n$, as $t \rightarrow \infty$. This +will be done through data exchange between neighbouring nodes where +each node at every time iteration $t$ performs weighted sum of the +received data as follows~\cite{20,2}: + +\begin{equation} + x_{i}(t+1) = x_{i}(t) - \sum_{j\in{N}_{i}}\alpha_{ij}(t)(x_{i}(t) - x_{j}(t)) , i = 1, \ldots, n. + \label{eqno1} + \end{equation} + +Where $\alpha_{ij}(t)$ is the weight on $x_{j}(t)$ at node $i$, and + $\alpha_{ij}(t) = 0$ for $j \not\in N_{i}(t)$. + +In order to handle communication delays, we consider that at time $t$ +a node $i$ gets the state of its neighbour $j$ at time $d_{j}^{i}(t)$, +where $0\leq d_{j}^{i}(t)\leq t$ + +$d_{j}^{i}(t)$ represents the transmission delay between nodes $i$ and +$j$. Therefore, let us denote +$x_{j}^{i}(t)=x_{j}(d_{j}^{i}(t))\in\mathbb{R}$ the state of node $j$ +at time $d_{j}^{i}(t),$ received at time $t$ by node $i$. Then, we +defined the extended neighbourhood of node $i$ at time $t$ as the set: + +\begin{equation*} +\overline{N}_{i}(t)=\left\{j \mid \text{ }\exists \ d_{j}^{i}(t)\in\left\{ +t-B+1,...,t\right\} ,\text{such that }j\in N_{i}(d_{j}^{i}(t))\right\}; +\end{equation*} + +note that $ N_{i}(t) \subset \overline{N}_{i}(t)$. + + +The problem, as for any distributed algorithmic approach, is how and +under which conditions, will we ensure convergence of the proposed +algorithm? In other terms, are we sure that all the node's $x_{i}$ +will converge to the right estimate of the unknown parameter average +value? Also, how can we choose the parameters $\alpha_{ij}(t)$ so to +improve the convergence speed and the quality of the derived estimate? +Hereafter we present and analyse our proposal. We used the notations +reported in Table~\ref{notations} + + +\begin{table}[h] +\begin{center} +\footnotesize +\begin{tabular}{|c|c|} +\hline +\cline{1-2} +\textbf Notation&Description\\ +\hline +\textbf{$G(t)$}&the time varying graph\\ +\hline +\textbf{$N_{i}(t)$}&the set of neighbors of node $i$ at time $t$\\ +\hline +\textbf{$z_{i}$}&the initial measurement of node $i$\\ +\hline +\textbf{$x_{i}(t)$}&the dynamic state of node $i$\\ +\hline +\textbf{$d_{j}^{i}(t)$}&the transmission delay between nodes $i$ and $j$\\ +\hline +\textbf{$x_{j}^{i}(t)=x_{j}(d_{j}^{i}(t))$}&the state of node $j$ at time $t-d_{j}^{i}(t)$\\ +\hline +\textbf{$\overline{N}_{i}(t)$}&the extended neighborhood of $i$ at time $t$\\ +\hline +\textbf{$s_{ij}(t)$}& the data sent by $i$ to $j$ at time $t$\\ +\hline +\textbf{$r_{ji}(t)$}&the data received by $i$ from $j$ at time $t$\\ +\hline +\end{tabular} +\caption{Notations} +\label{notations} +\end{center} +\end{table} + +%-------------------------------------------------------------------------------------------------------------------------------- +\subsection{Asynchronous scheme} + +Our algorithm to compute the average consensus over the network is +based on information diffusion i.e., each node takes a measurement and +then cooperates with its neighbours in a diffusion manner to estimate +the average of all the collected information. It is inspired from the +work of Bertsekas and Tsitsiklis~\cite[section~7.4]{6} on load +balancing and extends it to cope with dynamic topologies and messages +loss and delays. Algorithm~\ref{general} presents the main steps of +our proposed algorithm. + +\begin{algorithm}[H] +\begin{small} +\caption{The General Algorithm.} +\begin{algorithmic}[1] +\label{general} +\STATE Each node maintains an instantaneous state $x_{i}(t) \in +\mathbb{R}$, and at $t=0$ (after all nodes have taken +the measurement), each node initializes its state as $x_{i}(0) = +z_{i}$. \STATE At every step $t$ each node $i$: +\begin{itemize} +\item compares its state to the states of its neighbours; +\item chooses and computes $s_{ij}(t)$. They have to be chosen + carefully in order to ensure the convergence of the algorithm; +\item diffuses its information; +\item receives the information sent by its neighbours $r_{ji}(t)$; +\item updates its state with a combination of its own state and the states at its +instantaneous and extended neighbours ($\overline{N}_{i}(t)$) as follows: +\begin{equation} + x_{i}(t+1)=x_{i}(t)-\sum_{j\in N_{i}(t)}s_{ij}(t)+\sum_{j\in\overline +{N}_{i}(t)}r_{ji}(t). +\label{x_(t+1)}% +\end{equation} +\end{itemize} +\end{algorithmic} +\end{small} +\end{algorithm} + +\subsection{Theoretical Analysis (Convergence)} + +We now introduce three assumptions that ensure the convergence of our algorithm. + +\begin{assumption} +\label{assump:ConnectedGraph} +$\text{There exists}\ B\in\mathbb{N}$ such that $\forall +t\geqslant0,$\\ $t-B0,\forall + t\geqslant0, \\ \forall i\in N,\forall j\in N_{i}(t)$, such that + $\alpha(x_{i}(t)-x_{j}^{i}(t)) \leq s_{ij}(t).$ \\ $\ \left(s_{ij}(t)=0 + \ \text{if} \ (x_{i}(t) \leq x_{j}^{i}(t)) \ \text{for all} \ j + \in N_{i}(t)\right) $. +\end{assumption} + +The second assumption postulates that when a node $i$ detects a +difference between its state and the states of its neighbours, it +therefore computes non negligible $s_{ij}$ to all nodes $j$ where +$(x_{i}(t) > x_{j}^{i}(t))$. + +\begin{assumption} +\label{PingPong}% +\begin{equation} +x_{i}(t)-\sum_{k\in N_{i}(t)}s_{ik}(t)\geq x_{j}^{i}(t)+s_{ij}(t) +\label{h5_2}% +\end{equation} +\end{assumption} +The third assumption prohibits node $i$ to compute very large $s_{ij}$ +which creates a ping-pong state. Recall that, the ping-pong state is +established when two nodes keep sending data to each other back and +forth, without ever reaching equilibrium. Note that these two +assumptions are similar to assumption 4.2 introduced +in~\cite[section~7.4]{6}. + +\begin{theorem} +\label{THE} +if the assumptions \ref{assump:ConnectedGraph}, \ref{Inf Assumption} +and \ref{PingPong} are satisfied, Algorithm~\ref{general} guarantees that + +\begin{equation} +\lim_{t\rightarrow\infty}x_{i}(t)=\frac{1}{n} {\displaystyle\sum\limits_{i=1}^{n}} x_{i}(0) +\end{equation} + +i.e., all node states converge to the average of the initial measurements of the network. +\end{theorem} + +%------------------------------------------------------------preuve +\noindent{\it Proof} +%\begin{small} + +Let $m(t)=\min_{i}\min_{t-B<\tau\leq t}x_{i}(\tau).$ Note that $x_{j}^{i}% +(\tau)\geq m(t),$ $\forall i,j,t.$\newline Lemma \ref{lemma:1} and +\ref{lemma:2} below can be proven similarly to the lemma of pages 521 and 522 +in~\cite{6}. + +Denote by $v_{ij}(t)=\sum\limits_{s=0}^{t-1}\left( s_{ij}(s)-r_{ij}% + (s)\right) ,$ the data sent by $i$ and not yet received by +$j$ at time $t.$ We suppose that $v_{ij}(0)=0.$ Then by data +conservation, we obtain% +\begin{equation} +\sum_{i=1}^{n}\left( x_{i}(t)+\sum_{j\in N_{i}(t)}v_{ij}(t)\right) +=\sum_{i=1}^{n}x_{i}(0),\qquad\forall t\geqslant0\label{conservation}% +\end{equation} +% +>From assumption~\ref{assump:ConnectedGraph} we can conclude that the +data $v_{ij}(t)$ in the network before time $t$ consists in +data sent in the interval time $\left\{ t-B+1,...,t-1\right\} ,$ so +$v_{ij}(t)\leq\sum_{\tau=t-B+1}^{t-1}s_{ij}(t),$ $\forall node +i,\forall j\in N_{i}(t).$ + +\begin{lemma} +\label{lemma:1}The sequence $m(t)$ is monotone, nondecreasing and converges +and $\forall i,\forall s\geq0,$% +\begin{equation*} +x_{i}(t+s)\geq m(t)+\left( \frac{1}{n}\right) ^{t_{1}-t_{0}}(x_{i}(t)-m(t)) +\end{equation*} + +\end{lemma} + +Let $i\in V,t_{0}\in\mathbb{N},$ and $t\geq t_{0},$ $j\in V,$ we say that the +event $E_{j}(t)$ occurs if there exists $j\in\overline{N}_{i}(t)$ such +that +\begin{equation} +x_{j}^{i}(t)0.$ Thus,% +\begin{equation*} +m(t_{0}+3nMB+B)\geq m(t_{0})+\delta\left( \max_{i}x_{i}(t_{0})-m(t_{0}% +)\right) . +\end{equation*} +Note that $\lim_{t_{0}\rightarrow\infty}\max_{i}x_{i}(t_{0})-m(t_{0})=0$ +(otherwise \\$\lim_{t_{0}\rightarrow\infty}m(t_{0})=+\infty$). On the other +hand, as $\lim_{t\rightarrow\infty}m(t)=c$ and as $m(t)\leq x_{j}(t)\leq +\max_{i}x_{i}(t),$ we deduce that $\forall j\in V,$ $\lim_{t\rightarrow\infty +}x_{j}(t)=c,$ which implies that $\lim_{t\rightarrow\infty}s_{ij}(t)=0$. +Thanks to assumption 1, we deduce that $\lim_{t\rightarrow\infty}v_{ij}(t)=0,$ +and thanks to (\ref{conservation}), we deduce that $nc=\lim_{t\rightarrow +\infty}x_{i}(t)=\sum_{i=1}^{n}x_{i}(0),$i.e. $c=\sum_{i=1}^{n}x_{i}(0)/n,$ +which yields to $\lim_{t\rightarrow\infty}x_{i}(t)=\frac{1}{n}% +%TCIMACRO{\dsum \limits_{i=1}^{n}}% +%BeginExpansion +{\displaystyle\sum\limits_{i=1}^{n}} +%EndExpansion +x_{i}(0)$ proving Theorem 1. +\end{proof} +%\end{small} +%----------------------------------------------------------preuve + + +\subsection{Practical Issues} + +We now discuss some practical aspects related to the implementation of +Algorithm~\ref{general}. The main two points are how to choose +$s_{ij}(t)$ and how to overcome the loss of messages? + +Each node updates its state following equation (\ref{x_(t+1)}). This +is achieved, by updating each sensors $s_{ij}(t)$ through time. For +sake of simplicity, the value of $s_{ij}(t)$ is chosen to be computed +by the weighted difference between the states of nodes $i$ and $j$ as +follows: + +\begin{equation*} + s_{ij}(t) = \left\{ + \begin{array}{ll} + \alpha_{ij}(t) (x_{i}(t) - x_{j}^{i}(t)) & \qquad \text{if} \quad x_{i}(t) > x_{j}^{i}(t) \ ,\\ + 0 & \qquad \text{otherwise}.\\ + \end{array} + \right. +\end{equation*} + +The choice of $s_{ij}(t)$ is then deduced from the proper choice of +the weights $\alpha_{ij}(t)$. Hence, $\alpha_{ij}(t)$ must be chosen +such that the states of all the nodes converge to the average +$\sum_{i=1}^{n} z_{i} / n$, i.e., assumptions \ref{Inf Assumption} and +\ref{PingPong} must be satisfied. + +Denote by $j^{\ast}$ the sensor node satisfying +$x_{j^{\ast}}^{i}=\min_{k\in N_{i}(t)} x_{k}^{i}(t)$ (note that +$j^{\ast}$ depends on $i$ and time $t$)$.$ The values of +$\alpha_{ij}(t)$ must be selected so that to avoid the ping pong +condition presented in assumption~\ref{PingPong}. + +This is equivalent to choose $\alpha_{ij}(t)$ so that $\forall +t\geqslant 0,\forall i\in N,$ and $j\neq +j^{\ast}\in\overline{N}_{i}(t)$ satisfying $x_{i}(t)>x_{j}^{i}(t),$ + +\begin{equation} +0\leq\alpha_{ij}(t)\leq\frac{1}{2}\left( 1-\frac{\sum_{j\neq i}\alpha +_{ik}(t)(x_{i}(t)-x_{i}^{k}(t))}{(x_{i}(t)-x_{i}^{j}(t))}\right) +\label{h5_2bis}% +\end{equation} + +The weights $\alpha_{ij}(t)$ must also be chosen in order to respect +assumption~\ref{Inf Assumption}. This assumption can be carried out by +fixing a constant $\beta\in\left[ 0,1\right] $ and choosing + +\begin{equation} +\left\{ +\begin{array} +[c]{l}% +\sum_{k\neq j^{\ast}\in N_{i}(t)}\alpha_{ik}(t)(x_{i}(t)-x_{k}^{i}% +(t))\leq\beta(x_{i}(t)-x_{j^{\ast}}^{i}(t)),\\ +\alpha_{ij^{\ast}}(t)=\frac{1}{2}\left( 1-\frac{\sum_{k\neq j^{\ast}}% +\alpha_{ik}(t)(x_{i}(t)-x_{k}^{i}(t))}{(x_{i}(t)-x_{j^{\ast}}^{i}(t))}\right) +\end{array} +\right. \label{h6}% +\end{equation} +Indeed, from (\ref{h6}) we deduce% +\begin{equation*} +\alpha_{ij^{\ast}}(t)\geq\frac{(x_{i}(t)-x_{j^{\ast}}^{i}(t))-\beta +(x_{i}(t)-x_{j^{\ast}}^{i}(t))}{2(x_{i}(t)-x_{j^{\ast}}^{i}(t))}=\frac +{1-\beta}{2}=\alpha. +\end{equation*} +Hence, $\forall i,j^{\ast},t$ such that $j^{\ast}\in\overline{N}_{i}(t)$ +and $x_{j^{\ast}}^{i}(t)=\min_{k\in N_{i}(t)}x_{k}^{i}(t),$% +\begin{equation*} +s_{ij^{\ast}}(t)=\alpha_{ij^{\ast}}(t)\left( x_{i}(t)-x_{j^{\ast}}% +^{i}(t)\right) \geq\alpha\left( x_{i}(t)-x_{j^{\ast}}^{i}(t)\right). +\end{equation*} + +The first inequation of (\ref{h6}) can be written as $\sum_{k\neq + j^{\ast}\in + V_{i}(t)}s_{ik}(t)\leq\beta(x_{i}(t)-x_{j^{\ast}}^{i}(t)),$ this +means that the totality of data sent to the neighbours of $i$ (except +$j^{\ast }$) doesn't exceed a portion $\beta$ of +$(x_{i}(t)-x_{j^{\ast}}^{i}(t)).$ + +Equations (\ref{h5_2bis}) and (\ref{h6}) are derived from the +assumptions \ref{Inf Assumption} and \ref{PingPong}. Therefore the +choice of the weights $\alpha_{ij}$ must take into consideration these +two equations. + +First let define the deviation $\Delta_{i}^{j}(t)$ of node $i$ as: + +\begin{equation*} + \Delta_{i}^{j}(t) = \left\{ + \begin{array}{ll} + x_{i}(t) - x_{j}^{i}(t) & \qquad \text{if} j\in N_{i}(t) \ \text{and} \ x_{i}(t) > x_{j}^{i}(t) \ ,\\ + 0 & \qquad \text{otherwise.}\\ + \end{array} + \right. +\end{equation*} + +Algorithm~\ref{WeightUpdate} presents our method for temporally +updating the averaging weights. Node $i$ computes the difference +between its current state and current states of its neighbours. The +positive deviations ($\Delta_{i}^{j} > 0$) are then stored in the +array $Delta_{i}$, in a decreasing order. Then, it sets the weight +$\alpha_{ij}$ to $1/(\eta_{i}(t) + 1)$, where $\eta_{i}(t)$ is the +current number of its neighbours, starting by its neighbours nodes $j$ +whose have the larger deviations while respecting +assumption~\ref{PingPong}. + +\begin{algorithm}[t] +\begin{small} +\caption{Temporally updating weights of node $i$.} +\begin{algorithmic}[1] +\label{WeightUpdate} +\FOR {$j \gets 1$ to $n$} +\IF {$j \neq i$} +\STATE $s_{ij} \gets 0$ +\STATE $\alpha_{ij} \gets 0$ +\ENDIF +\ENDFOR +\STATE $k \gets 0$ +\STATE $Sum \gets 0$ +\STATE find $\ell$ such that $\Delta_{i}^{\ell} = Delta_{i}[k]$ +\STATE $\alpha_{i\ell} = 1/(\eta_{i} + 1)$ +\STATE $s_{i\ell} = \alpha_{i\ell} \times \Delta_{i}^{\ell}$ +\REPEAT +\STATE $Sum \gets Sum + s_{il}$ +\STATE $k \gets k+1$ +\STATE find $\ell$ such that $\Delta_{i}^{\ell} = Delta_{i}[k]$ +\STATE $\alpha_{i\ell} \gets 1/(\eta_{i} + 1)$ +\STATE $s_{i\ell} \gets \alpha_{i\ell} \times \Delta_{i}^{\ell}$ +\UNTIL{ $NOT$ ($(x_{i}- Sum \geq x_{\ell}^{i}+s_{i\ell})$ $AND$ $(k < n)$)} +\end{algorithmic} +\end{small} +\end{algorithm} + + +In order to cope with the problem of message loss, we adopted the +following strategy: instead of sending $s_{ij}(t)$ from node $i$ to +node $j$, it is the sum $\Sigma_{s_{ij}}(t) = \sum_{0\leq \tau\leq t} +s_{ij}(\tau)$ that is sent. Symmetrically the receivers maintains the +sum of the received data $\Sigma_{r_{ji}}(t) = \sum_{0\leq \tau\leq t} +r_{ji}(\tau)$. Upon receiving, at a time $t$, a message from node $i$, +a node $j$ can now recover all the data that was sent before time +$d_i^j(t)$. It has only to calculate the difference between the +received $\Sigma_{s_{ij}}(d_i^j(t))$ and the locally stored +$\Sigma_{r_{ji}}(t)$. + +To conclude, the state messages exchanged during the execution of the +algorithm are composed of two scalar values : the current state of the +node, $x_i(t)$, and the sum of the sent data $\Sigma_{s_{ij}}(t)$. + +\subsection{Illustrative Example} +To illustrate the behaviour of our proposed approach, les us consider +the example presented in Figure~\ref{fig:example}. It consists in a +network of four nodes. The initial measurement of each node $i$ is +known by $z_{i}$ and the initial state $x_{i}(0) = z_{i}$. + +\begin{figure}[h] +\centering + \includegraphics[scale=.55]{exampleFusion} +%\vspace{-1mm} +\caption{An example of a sensor network composed of four nodes with their initial measurements. } +\label{fig:example} +\end{figure} + +Following the second step of Algorithm~\ref{general}, each node computes the weights $\alpha_{ij}$ for its neighbours. This is done by using Algorithm~\ref{WeightUpdate}. + +Let us focus on the case of $node_{4}$ for instance. We notice that it +has three neighbours and the high deviation $\Delta$ corresponds to +$node_{3}$. Therefore, it computes $ \alpha_{43}(0) = +\frac{1}{\eta_{4} + 1} = \frac{1}{4} $ first, such that $\eta_{4}$ is +the number of its neighbours. Then, $s_{43}(0) = \frac{1}{4} (x_{4}(0) +- x_{3}(0)) = 0.175$. For the two reminder neighbours $node_{1}$ and +$node_{2}$, $node_{4}$ computes $\alpha_{42}(0)$ first for the reason +that $\Delta_{4}^{2}$ is higher than $\Delta_{4}^{1}$. We note that +for $node_{2}$ the Assumption~\ref{PingPong} (ping pong condition) is +satisfied while it is not the case for $node_{1}$ which leads to $ +\alpha_{41}(0) = 0 $. + +All the nodes compute their weights and then diffuse their information +to their neighbours to update their states following +Equation~(\ref{x_(t+1)}). For the above example after the first step +we obtain: + +\begin{itemize} +\item[] $x_{1}(1) = 0.7$ +\item[] $x_{2}(1) = 0.5 + 0.1 - 0.1 = 0.5$ +\item[] $x_{3}(1) = 0.2 + 0.1 + 0.175 = 0.475$ +\item[] $x_{4}(1) = 0.9 - 0.1 - 0.175 = 0.625$ +\end{itemize} + +This process is repeated for several iterations until all the states +of the nodes converge to the average of the initial measurements. We +note that our scheme is robust to the topology changes and the loss of +messages as discussed in details in the next section. + +%----------------------------------------------------------------------------------------------------- +\section{Experimental Results} +\label{Exp} +In order to evaluate the performance of our approach, we have +implemented a simulation package using the discrete event simulator +OMNET++~\cite{8}. This package includes our asynchronous algorithm as +well as a synchronous one. As confirmed in previous related +works~\cite{2,20}, distributed approaches out perform centralised +approaches, in particular in noisy networks. For this reason, we have +not included in our comparison centralised approaches, and focuses +instead on synchronous distributed approaches that are more closed to +our work. + + +We performed several runs of the algorithms (an average of 100 +runs). In each experimental run, the network graph is randomly +generated, where the nodes are distributed over a $[0, 100] \times [0, + 100]$ field. The node communication range was set to 30. The initial +node measurements $z_{i}$ were also randomly generated. Each node is +aware of its immediate neighbours through a "hello" message. Once the +neighbourhood is identified, each node run the algorithm i.e., begins +exchanging data until convergence. + +We studied the performance of our algorithm with regard to the following parameters: +\begin{itemize} + +\item Robustness in front of communication failures: we mainly varied + the probability of communication failure, noted $p$. This parameter + allows us to highlight the behaviour of our scheme in noisy + environment and in dynamic topologies. + +\item Scalability: we varied the number of sensor nodes deployed in the same area to see how our proposed approach scales? + +\end{itemize} + +The main metrics we measured in this paper are: (a) the mean error +between the current estimate $x_{i}$ and the average of the initial +data, (b) the mean number of iterations necessary to reach convergence +and (c) the overall time before reaching the global convergence. We +note here that in asynchronous algorithms, there is no direct +correlation between the number of iterations and the total time to +convergence, contrary to synchronous approaches. In fact, as there are +no delays between nodes, the number of iterations could be relatively +high. This does not mean that the total time to convergence could be +long too. For this reason, we have made the distinction between the +number of iterations and the time taken to reach convergence. As we +run a discrete event simulation package, this time is the one given by +the discrete simulator OMNET++~\cite{8}; we named it {\it simulated + time}. For all the experiments, the global convergence state is said +to be reached when $\varepsilon_{i} =| x_{i} - \sum_{i=1}^{n} y_{i} / +n |$ becomes less than some fixed constant $\varepsilon$. + +Note that, in the figures next sections, the points represent the obtained results and the curves are an extrapolation of these points. + + + + +\subsection{Basic Behaviour} +\label{BH} + +First, we show simulation results for the case where we have a fixed +topology with a fixed number of nodes (50 nodes) and $\varepsilon = +10^{-4}$. The mean error of the nodes $\varepsilon' = \sum_{i=1}^{n} +\varepsilon_{i} / n$ was plotted in Figure~\ref{Error}. As expected, +it can be seen that the convergence in the synchronous mode is faster +than the convergence in the asynchronous one. It is also noticed that +the two graphs have the same pace. + +However, in many scenarios an exact average is not required, and one +may be willing to trade precision for simplicity. For instance, +minimizing the number of iterations to reduce the energy consumption +can be privileged in sensor networks applications where exact +averaging is not essential. + +\begin{figure}[h] +\centering + \includegraphics[scale=.55]{ErrorNbIteration.ps} +%\vspace{-1mm} +\caption{The Mean Error $\varepsilon$} +\label{Error} +\end{figure} + + +\subsection{Dynamic topology} +In a next step, we simulated the proposed sensor fusion scheme with +dynamically changing communication graphs. We generated the sequence +of communication graphs as follows: at each time step, each edge in +the graph is only available with a selected probability $p$, +independent of the other edges and all previous steps. To ensure the +jointly connected condition of the generated graphs, we selected a +period of time $\tau$ in which an edge cannot stay disconnected more +than $\tau$ time. + +We fixed the number of sensor nodes to 50 and $\varepsilon = +10^{-4}$. In preliminary results, the period $\tau$ was chosen in a +way that is equal to three times the time of a communication. We show +in figure~\ref{Dynamic} and figure~\ref{DynamicTime} the variation of +the number of iterations and the time simulation with the probability +of link failure $p$. We notice that the number of iterations and the +overall time increase with the increase of the probability, but not in +an exponential way. + +%\begin{figure*}[t] +%\vspace{-5mm} + % \begin{minipage}[t]{.5\textwidth} +\begin{figure}[h] + \centering + \includegraphics[scale=.55]{DynamicTopology.ps} + \caption{Number of Iterations} + \label{Dynamic} + %\end{minipage}% + %\hfill% +%\vspace{-5mm} +\end{figure} + +\begin{figure}[h] + %\begin{minipage}[t]{.5\textwidth} + \centering + \includegraphics[scale=.55]{DynamicTopologyTime.ps} + %\vspace{2.75mm} + \caption{Simulated Time} + \label{DynamicTime} +% \end{minipage}% + % \hfill% +\end{figure} + +Note that we also tried to run the synchronous algorithm with dynamic +topology changes, but the execution times were so prohibitive, that we +abandoned those experiments. These results confirm that synchronous +algorithms are infeasible for real sensor networks. + +\subsection{Larger Sensor Network} + +Our scheme can be applied to sensor networks where a large number of +sensor nodes are deployed, since it is fully distributed and there is +no centralized control. In our simulations we varied the number of +sensor nodes from 20 to 200 nodes, deployed in the region $[0, 100] +\times [0, 100]$, we selected for all nodes $i$, $\varepsilon = +10^{-4}$. + +However, as shown in the two Figures (Figure~\ref{Density} and +Figure~\ref{DensityTime}), as the number of sensor nodes increases, +the average of the iterations number as well as the time needed to +reach global convergence decreases in the two cases synchronous and +asynchronous. We notice that in the synchronous mode we obtained less +number of iterations, on the other hand it takes more time to reach +the global convergence than the asynchronous one. + +%\begin{figure*}[t] +%\vspace{-5mm} + %\begin{minipage}[b]{.5\textwidth} +\begin{figure}[h] + \centering + \includegraphics[scale=.55]{Density.ps} + \caption{Number of iterations} + \label{Density} + %\end{minipage}% + %\hfill% +\end{figure} +%\vspace{-5mm} + % \begin{minipage}[b]{.50\textwidth} +\begin{figure}[h] + \centering + \includegraphics[scale=.55]{TimeDensity.ps} + %\vspace{2.75mm} + \caption{Simulated Time} + \label{DensityTime} + %\end{minipage}% + %\hfill% +\end{figure} + + + \section{Further Discussions and Comparison to Other Existing Works} +\label{DISC} +In this section, we give further consideration to our data fusion +scheme from the viewpoints of robustness to the delays and loss of +messages and energy efficiency in comparison to other existing works. + +Sensor nodes are small-scale devices. Such small devices are very +limited in the amount of energy they can store or harvest from the +environment. Thus, energy efficiency is a major concern in a sensor +network. In addition, many thousands of sensors may have to be +deployed for a given task. An individual sensor's small effective +range relative to a large area of interest makes this a requirement. + +Therefore, scalability is another critical factor in the network +design. Sensor networks are subject to frequent partial failures such +as exhausted batteries, nodes destroyed due to environmental factors, +or communication failures due to obstacles in the environment. Message +delays can be rather high in sensor networks due to their typically +limited communication capacity which is shared by nodes within +communication range of each other. The overall operation of the sensor +network should be robust despite such partial failures. + + In our scheme, we presented a scalable asynchronous method for + averaging data fusion in sensor networks. The simulations we + conducted show that, the higher the density of the deployed nodes, + the more the precise of the estimation would be. On the other hand, + our algorithm is totally asynchronous, where we consider delay + transmission and loss of messages in the proposed model. These + aspects which are highly important are not taken into account in + previous sensor fusion works~\cite{2,18}. + + Another important practical issue in sensor network is the power + efficiency. Optimizing the energy consumption in sensor networks is + related to minimize the number of the network communications as the + radio is the main energy consumer in a sensor + node~\cite{12}. Considering the distributed iterative procedure for + calculating averages, the only way to minimize the energy consumption + is to reduce the number of iterations before attending the + convergence. To show how well our algorithm saves energy, we compared + our obtained results to those reported by another diffusive scheme + for average computation in sensor networks~\cite{2}. For instance, in + a static topology our algorithm converges after $69$ iterations with + a mean error of $10^{-4}$ while the best results in the second + approach reached $85$ iterations for the same mean error. For the + dynamic topology mode, we obtained $105$ iterations, mean error + $10^{-4}$ and probability of link failure $0.25$, while the number of + iterations is very high ($\approx 300$ iterations) in~\cite{2}. In + figure~\ref{} and figure~\ref{} we present a comparison between our + approach and the iterative solution presented + in~\cite{2}. For~\cite{2} we used the metropolis weights that gives + best convergence and number of iterations results. + + + + + + +\section{Conclusion and Future Work} +In this chapter, we introduced a distributed asynchronous average +consensus in sensor networks. Our approach is based on data diffusion; +the nodes cooperate and exchange their information only with their +direct instantaneous neighbours. In contrast to existing works, our +algorithm does not rely on synchronization nor on the knowledge of the +global topology. We prove that under suitable assumptions, our +algorithm achieves the global convergence in the sense that, after +some iterations, each node has an estimation of the average consensus +overall the whole network. To show the effectiveness of our algorithm, +we conducted series of simulations and studied our algorithm under +various metrics. + +In our scenario, we have focused on developing a reliable and robust +algorithm from the view points of asynchronism and fault tolerance in +a dynamically changing topology. We have taken into account two points +which don't have been previously addressed by other authors, namely +the delays between nodes and the loss of messages. Knowing that in +real sensor networks the nodes are prone to failures. One of the near +future goals is to allow nodes to be dynamically added and removed +during the execution of the algorithm. We also plan to test our +algorithm in a real-world sensor network. + +\bibliographystyle{unsrt} +\bibliography{references} + +\end{document} diff --git a/chapitre-2009/NewNbIterations.ps b/chapitre-2009/NewNbIterations.ps new file mode 100644 index 0000000..2495436 --- /dev/null +++ b/chapitre-2009/NewNbIterations.ps @@ -0,0 +1,799 @@ +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: NewNbIterations.ps +%%Creator: gnuplot 4.0 patchlevel 0 +%%CreationDate: Tue Feb 5 17:31:30 2008 +%%DocumentFonts: (atend) +%%BoundingBox: 50 50 410 302 +%%Orientation: Portrait +%%EndComments +/gnudict 256 dict def +gnudict begin +/Color false def +/Solid false def +/gnulinewidth 5.000 def +/userlinewidth gnulinewidth def +/vshift -66 def +/dl {10.0 mul} def +/hpt_ 31.5 def +/vpt_ 31.5 def +/hpt hpt_ def +/vpt vpt_ def +/Rounded false def +/M {moveto} bind def +/L {lineto} bind def +/R {rmoveto} bind def +/V {rlineto} bind def +/N {newpath moveto} bind def +/C {setrgbcolor} bind def +/f {rlineto fill} bind def +/vpt2 vpt 2 mul def +/hpt2 hpt 2 mul def +/Lshow { currentpoint stroke M + 0 vshift R show } def +/Rshow { currentpoint stroke M + dup stringwidth pop neg vshift R show } def +/Cshow { currentpoint stroke M + dup stringwidth pop -2 div vshift R show } def +/UP { dup vpt_ mul /vpt exch def hpt_ mul /hpt exch def + /hpt2 hpt 2 mul def /vpt2 vpt 2 mul def } def +/DL { Color {setrgbcolor Solid {pop []} if 0 setdash } + {pop pop pop 0 setgray Solid {pop []} if 0 setdash} ifelse } def +/BL { stroke userlinewidth 2 mul setlinewidth + Rounded { 1 setlinejoin 1 setlinecap } if } def +/AL { stroke userlinewidth 2 div setlinewidth + Rounded { 1 setlinejoin 1 setlinecap } if } def +/UL { dup gnulinewidth mul /userlinewidth exch def + dup 1 lt {pop 1} if 10 mul /udl exch def } def +/PL { stroke userlinewidth setlinewidth + Rounded { 1 setlinejoin 1 setlinecap } if } def +/LTw { PL [] 1 setgray } def +/LTb { BL [] 0 0 0 DL } def +/LTa { AL [1 udl mul 2 udl mul] 0 setdash 0 0 0 setrgbcolor } def +/LT0 { PL [] 1 0 0 DL } def +/LT1 { PL [4 dl 2 dl] 0 1 0 DL } def +/LT2 { PL [2 dl 3 dl] 0 0 1 DL } def +/LT3 { PL [1 dl 1.5 dl] 1 0 1 DL } def +/LT4 { PL [5 dl 2 dl 1 dl 2 dl] 0 1 1 DL } def +/LT5 { PL [4 dl 3 dl 1 dl 3 dl] 1 1 0 DL } def +/LT6 { PL [2 dl 2 dl 2 dl 4 dl] 0 0 0 DL } def +/LT7 { PL [2 dl 2 dl 2 dl 2 dl 2 dl 4 dl] 1 0.3 0 DL } def +/LT8 { PL [2 dl 2 dl 2 dl 2 dl 2 dl 2 dl 2 dl 4 dl] 0.5 0.5 0.5 DL } def +/Pnt { stroke [] 0 setdash + gsave 1 setlinecap M 0 0 V stroke grestore } def +/Dia { stroke [] 0 setdash 2 copy vpt add M + hpt neg vpt neg V hpt vpt neg V + hpt vpt V hpt neg vpt V closepath stroke + Pnt } def +/Pls { stroke [] 0 setdash vpt sub M 0 vpt2 V + currentpoint stroke M + hpt neg vpt neg R hpt2 0 V stroke + } def +/Box { stroke [] 0 setdash 2 copy exch hpt sub exch vpt add M + 0 vpt2 neg V hpt2 0 V 0 vpt2 V + hpt2 neg 0 V closepath stroke + Pnt } def +/Crs { stroke [] 0 setdash exch hpt sub exch vpt add M + hpt2 vpt2 neg V currentpoint stroke M + hpt2 neg 0 R hpt2 vpt2 V stroke } def +/TriU { stroke [] 0 setdash 2 copy vpt 1.12 mul add M + hpt neg vpt -1.62 mul V + hpt 2 mul 0 V + hpt neg vpt 1.62 mul V closepath stroke + Pnt } def +/Star { 2 copy Pls Crs } def +/BoxF { stroke [] 0 setdash exch hpt sub exch vpt add M + 0 vpt2 neg V hpt2 0 V 0 vpt2 V + hpt2 neg 0 V closepath fill } def +/TriUF { stroke [] 0 setdash vpt 1.12 mul add M + hpt neg vpt -1.62 mul V + hpt 2 mul 0 V + hpt neg vpt 1.62 mul V closepath fill } def +/TriD { stroke [] 0 setdash 2 copy vpt 1.12 mul sub M + hpt neg vpt 1.62 mul V + hpt 2 mul 0 V + hpt neg vpt -1.62 mul V closepath stroke + Pnt } def +/TriDF { stroke [] 0 setdash vpt 1.12 mul sub M + hpt neg vpt 1.62 mul V + hpt 2 mul 0 V + hpt neg vpt -1.62 mul V closepath fill} def +/DiaF { stroke [] 0 setdash vpt add M + hpt neg vpt neg V hpt vpt neg V + hpt vpt V hpt neg vpt V closepath fill } def +/Pent { stroke [] 0 setdash 2 copy gsave + translate 0 hpt M 4 {72 rotate 0 hpt L} repeat + closepath stroke grestore Pnt } def +/PentF { stroke [] 0 setdash gsave + translate 0 hpt M 4 {72 rotate 0 hpt L} repeat + closepath fill grestore } def +/Circle { stroke [] 0 setdash 2 copy + hpt 0 360 arc stroke Pnt } def +/CircleF { stroke [] 0 setdash hpt 0 360 arc fill } def +/C0 { BL [] 0 setdash 2 copy moveto vpt 90 450 arc } bind def +/C1 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 90 arc closepath fill + vpt 0 360 arc closepath } bind def +/C2 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 90 180 arc closepath fill + vpt 0 360 arc closepath } bind def +/C3 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 180 arc closepath fill + vpt 0 360 arc closepath } bind def +/C4 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 180 270 arc closepath fill + vpt 0 360 arc closepath } bind def +/C5 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 90 arc + 2 copy moveto + 2 copy vpt 180 270 arc closepath fill + vpt 0 360 arc } bind def +/C6 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 90 270 arc closepath fill + vpt 0 360 arc closepath } bind def +/C7 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 270 arc closepath fill + vpt 0 360 arc closepath } bind def +/C8 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 270 360 arc closepath fill + vpt 0 360 arc closepath } bind def +/C9 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 270 450 arc closepath fill + vpt 0 360 arc closepath } bind def +/C10 { BL [] 0 setdash 2 copy 2 copy moveto vpt 270 360 arc closepath fill + 2 copy moveto + 2 copy vpt 90 180 arc closepath fill + vpt 0 360 arc closepath } bind def +/C11 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 180 arc closepath fill + 2 copy moveto + 2 copy vpt 270 360 arc closepath fill + vpt 0 360 arc closepath } bind def +/C12 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 180 360 arc closepath fill + vpt 0 360 arc closepath } bind def +/C13 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 90 arc closepath fill + 2 copy moveto + 2 copy vpt 180 360 arc closepath fill + vpt 0 360 arc closepath } bind def +/C14 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 90 360 arc closepath fill + vpt 0 360 arc } bind def +/C15 { BL [] 0 setdash 2 copy vpt 0 360 arc closepath fill + vpt 0 360 arc closepath } bind def +/Rec { newpath 4 2 roll moveto 1 index 0 rlineto 0 exch rlineto + neg 0 rlineto closepath } bind def +/Square { dup Rec } bind def +/Bsquare { vpt sub exch vpt sub exch vpt2 Square } bind def +/S0 { BL [] 0 setdash 2 copy moveto 0 vpt rlineto BL Bsquare } bind def +/S1 { BL [] 0 setdash 2 copy vpt Square fill Bsquare } bind def +/S2 { BL [] 0 setdash 2 copy exch vpt sub exch vpt Square fill Bsquare } bind def +/S3 { BL [] 0 setdash 2 copy exch vpt sub exch vpt2 vpt Rec fill Bsquare } bind def +/S4 { BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt Square fill Bsquare } bind def +/S5 { BL [] 0 setdash 2 copy 2 copy vpt Square fill + exch vpt sub exch vpt sub vpt Square fill Bsquare } bind def +/S6 { BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt vpt2 Rec fill Bsquare } bind def +/S7 { BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt vpt2 Rec fill + 2 copy vpt Square fill + Bsquare } bind def +/S8 { BL [] 0 setdash 2 copy vpt sub vpt Square fill Bsquare } bind def +/S9 { BL [] 0 setdash 2 copy vpt sub vpt vpt2 Rec fill Bsquare } bind def +/S10 { BL [] 0 setdash 2 copy vpt sub vpt Square fill 2 copy exch vpt sub exch vpt Square fill + Bsquare } bind def +/S11 { BL [] 0 setdash 2 copy vpt sub vpt Square fill 2 copy exch vpt sub exch vpt2 vpt Rec fill + Bsquare } bind def +/S12 { BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill Bsquare } bind def +/S13 { BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill + 2 copy vpt Square fill Bsquare } bind def +/S14 { BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill + 2 copy exch vpt sub exch vpt Square fill Bsquare } bind def +/S15 { BL [] 0 setdash 2 copy Bsquare fill Bsquare } bind def +/D0 { gsave translate 45 rotate 0 0 S0 stroke grestore } bind def +/D1 { gsave translate 45 rotate 0 0 S1 stroke grestore } bind def +/D2 { gsave translate 45 rotate 0 0 S2 stroke grestore } bind def +/D3 { gsave translate 45 rotate 0 0 S3 stroke grestore } bind def +/D4 { gsave translate 45 rotate 0 0 S4 stroke grestore } bind def +/D5 { gsave translate 45 rotate 0 0 S5 stroke grestore } bind def +/D6 { gsave translate 45 rotate 0 0 S6 stroke grestore } bind def +/D7 { gsave translate 45 rotate 0 0 S7 stroke grestore } bind def +/D8 { gsave translate 45 rotate 0 0 S8 stroke grestore } bind def +/D9 { gsave translate 45 rotate 0 0 S9 stroke grestore } bind def +/D10 { gsave translate 45 rotate 0 0 S10 stroke grestore } bind def +/D11 { gsave translate 45 rotate 0 0 S11 stroke grestore } bind def +/D12 { gsave translate 45 rotate 0 0 S12 stroke grestore } bind def +/D13 { gsave translate 45 rotate 0 0 S13 stroke grestore } bind def +/D14 { gsave translate 45 rotate 0 0 S14 stroke grestore } bind def +/D15 { gsave translate 45 rotate 0 0 S15 stroke grestore } bind def +/DiaE { stroke [] 0 setdash vpt add M + hpt neg vpt neg V hpt vpt neg V + hpt vpt V hpt neg vpt V closepath stroke } def +/BoxE { stroke [] 0 setdash exch hpt sub exch vpt add M + 0 vpt2 neg V hpt2 0 V 0 vpt2 V + hpt2 neg 0 V closepath stroke } def +/TriUE { stroke [] 0 setdash vpt 1.12 mul add M + hpt neg vpt -1.62 mul V + hpt 2 mul 0 V + hpt neg vpt 1.62 mul V closepath stroke } def +/TriDE { stroke [] 0 setdash vpt 1.12 mul sub M + hpt neg vpt 1.62 mul V + hpt 2 mul 0 V + hpt neg vpt -1.62 mul V closepath stroke } def +/PentE { stroke [] 0 setdash gsave + translate 0 hpt M 4 {72 rotate 0 hpt L} repeat + closepath stroke grestore } def +/CircE { stroke [] 0 setdash + hpt 0 360 arc stroke } def +/Opaque { gsave closepath 1 setgray fill grestore 0 setgray closepath } def +/DiaW { stroke [] 0 setdash vpt add M + hpt neg vpt neg V hpt vpt neg V + hpt vpt V hpt neg vpt V Opaque stroke } def +/BoxW { stroke [] 0 setdash exch hpt sub exch vpt add M + 0 vpt2 neg V hpt2 0 V 0 vpt2 V + hpt2 neg 0 V Opaque stroke } def +/TriUW { stroke [] 0 setdash vpt 1.12 mul add M + hpt neg vpt -1.62 mul V + hpt 2 mul 0 V + hpt neg vpt 1.62 mul V Opaque stroke } def +/TriDW { stroke [] 0 setdash vpt 1.12 mul sub M + hpt neg vpt 1.62 mul V + hpt 2 mul 0 V + hpt neg vpt -1.62 mul V Opaque stroke } def +/PentW { stroke [] 0 setdash gsave + translate 0 hpt M 4 {72 rotate 0 hpt L} repeat + Opaque stroke grestore } def +/CircW { stroke [] 0 setdash + hpt 0 360 arc Opaque stroke } def +/BoxFill { gsave Rec 1 setgray fill grestore } def +/BoxColFill { + gsave Rec + /Fillden exch def + currentrgbcolor + /ColB exch def /ColG exch def /ColR exch def + /ColR ColR Fillden mul Fillden sub 1 add def + /ColG ColG Fillden mul Fillden sub 1 add def + /ColB ColB Fillden mul Fillden sub 1 add def + ColR ColG ColB setrgbcolor + fill grestore } def +% +% PostScript Level 1 Pattern Fill routine +% Usage: x y w h s a XX PatternFill +% x,y = lower left corner of box to be filled +% w,h = width and height of box +% a = angle in degrees between lines and x-axis +% XX = 0/1 for no/yes cross-hatch +% +/PatternFill { gsave /PFa [ 9 2 roll ] def + PFa 0 get PFa 2 get 2 div add PFa 1 get PFa 3 get 2 div add translate + PFa 2 get -2 div PFa 3 get -2 div PFa 2 get PFa 3 get Rec + gsave 1 setgray fill grestore clip + currentlinewidth 0.5 mul setlinewidth + /PFs PFa 2 get dup mul PFa 3 get dup mul add sqrt def + 0 0 M PFa 5 get rotate PFs -2 div dup translate + 0 1 PFs PFa 4 get div 1 add floor cvi + { PFa 4 get mul 0 M 0 PFs V } for + 0 PFa 6 get ne { + 0 1 PFs PFa 4 get div 1 add floor cvi + { PFa 4 get mul 0 2 1 roll M PFs 0 V } for + } if + stroke grestore } def +% +/Symbol-Oblique /Symbol findfont [1 0 .167 1 0 0] makefont +dup length dict begin {1 index /FID eq {pop pop} {def} ifelse} forall +currentdict end definefont pop +end +%%EndProlog +gnudict begin +gsave +50 50 translate +0.050 0.050 scale +0 setgray +newpath +(Helvetica) findfont 200 scalefont setfont +1.000 UL +LTb +1020 821 M +63 0 V +5777 0 R +-63 0 V +900 821 M +gsave 0 setgray +( 40) Rshow +grestore +1.000 UL +LTb +1020 1263 M +63 0 V +5777 0 R +-63 0 V +-5897 0 R +gsave 0 setgray +( 60) Rshow +grestore +1.000 UL +LTb +1020 1705 M +63 0 V +5777 0 R +-63 0 V +-5897 0 R +gsave 0 setgray +( 80) Rshow +grestore +1.000 UL +LTb +1020 2147 M +63 0 V +5777 0 R +-63 0 V +-5897 0 R +gsave 0 setgray +( 100) Rshow +grestore +1.000 UL +LTb +1020 2589 M +63 0 V +5777 0 R +-63 0 V +-5897 0 R +gsave 0 setgray +( 120) Rshow +grestore +1.000 UL +LTb +1020 3032 M +63 0 V +5777 0 R +-63 0 V +-5897 0 R +gsave 0 setgray +( 140) Rshow +grestore +1.000 UL +LTb +1020 3474 M +63 0 V +5777 0 R +-63 0 V +-5897 0 R +gsave 0 setgray +( 160) Rshow +grestore +1.000 UL +LTb +1020 3916 M +63 0 V +5777 0 R +-63 0 V +-5897 0 R +gsave 0 setgray +( 180) Rshow +grestore +1.000 UL +LTb +1020 4358 M +63 0 V +5777 0 R +-63 0 V +-5897 0 R +gsave 0 setgray +( 200) Rshow +grestore +1.000 UL +LTb +1020 4800 M +63 0 V +5777 0 R +-63 0 V +-5897 0 R +gsave 0 setgray +( 220) Rshow +grestore +1.000 UL +LTb +1020 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 0) Cshow +grestore +1.000 UL +LTb +1604 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 1) Cshow +grestore +1.000 UL +LTb +2188 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 2) Cshow +grestore +1.000 UL +LTb +2772 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 3) Cshow +grestore +1.000 UL +LTb +3356 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 4) Cshow +grestore +1.000 UL +LTb +3940 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 5) Cshow +grestore +1.000 UL +LTb +4524 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 6) Cshow +grestore +1.000 UL +LTb +5108 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 7) Cshow +grestore +1.000 UL +LTb +5692 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 8) Cshow +grestore +1.000 UL +LTb +6276 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 9) Cshow +grestore +1.000 UL +LTb +6860 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 10) Cshow +grestore +1.000 UL +LTb +1.000 UL +LTb +1020 600 M +5840 0 V +0 4200 V +-5840 0 V +0 -4200 V +LTb +200 2700 M +gsave 0 setgray +currentpoint gsave translate 90 rotate 0 0 M +(Number of Iterations) Cshow +grestore +grestore +LTb +3940 100 M +gsave 0 setgray +(Tr) Cshow +grestore +1.000 UP +1.000 UL +LT0 +LTb +5957 4637 M +gsave 0 setgray +(Synchronous Algorithm) Rshow +grestore +LT0 +6077 4637 M +543 0 V +1312 1374 M +50 0 V +50 0 V +48 0 V +48 0 V +46 0 V +44 0 V +43 0 V +42 0 V +40 0 V +38 0 V +37 0 V +36 0 V +35 0 V +34 0 V +32 0 V +32 0 V +31 0 V +30 0 V +29 0 V +29 0 V +29 0 V +28 0 V +27 0 V +28 0 V +27 0 V +28 0 V +27 0 V +27 0 V +28 0 V +27 0 V +28 0 V +28 0 V +28 0 V +29 0 V +30 0 V +29 0 V +31 0 V +31 0 V +32 0 V +32 0 V +33 0 V +34 0 V +35 0 V +36 0 V +37 0 V +37 0 V +39 0 V +40 0 V +41 0 V +42 0 V +43 0 V +44 0 V +46 0 V +47 0 V +48 0 V +49 0 V +51 0 V +52 0 V +54 0 V +55 0 V +56 0 V +59 0 V +59 0 V +62 0 V +63 0 V +65 0 V +67 0 V +69 0 V +70 0 V +73 0 V +74 0 V +76 0 V +78 0 V +81 0 V +82 0 V +83 0 V +86 0 V +87 0 V +89 0 V +91 0 V +92 0 V +93 0 V +95 0 V +96 0 V +96 0 V +98 0 V +98 0 V +99 0 V +99 0 V +99 0 V +100 0 V +100 0 V +100 0 V +101 0 V +100 0 V +100 0 V +100 0 V +101 0 V +100 0 V +1.000 UL +LT1 +LTb +5957 4437 M +gsave 0 setgray +(Asynchronous Algorithm) Rshow +grestore +LT1 +6077 4437 M +543 0 V +1312 4689 M +50 -378 V +50 -335 V +48 -296 V +48 -262 V +46 -230 V +44 -204 V +43 -180 V +42 -159 V +40 -140 V +38 -123 V +37 -110 V +36 -97 V +35 -85 V +34 -77 V +32 -67 V +32 -60 V +31 -53 V +30 -48 V +29 -43 V +29 -38 V +29 -34 V +28 -30 V +27 -27 V +28 -25 V +27 -22 V +28 -20 V +27 -18 V +27 -16 V +28 -15 V +27 -13 V +28 -12 V +28 -11 V +28 -9 V +29 -9 V +30 -8 V +29 -7 V +31 -6 V +31 -6 V +32 -5 V +32 -4 V +33 -5 V +34 -3 V +35 -3 V +36 -3 V +37 -3 V +37 -2 V +39 -2 V +40 -1 V +41 -2 V +42 -1 V +43 -1 V +44 0 V +46 -1 V +47 0 V +48 0 V +49 0 V +51 0 V +52 0 V +54 1 V +55 0 V +56 1 V +59 1 V +59 2 V +62 1 V +63 2 V +65 2 V +67 2 V +69 3 V +70 2 V +73 3 V +74 4 V +76 3 V +78 4 V +81 4 V +82 5 V +83 5 V +86 5 V +87 5 V +89 6 V +91 6 V +92 6 V +93 6 V +95 7 V +96 6 V +96 6 V +98 7 V +98 6 V +99 6 V +99 6 V +99 5 V +100 5 V +100 4 V +100 4 V +101 2 V +100 3 V +100 1 V +100 1 V +101 0 V +100 0 V +1.000 UP +1.000 UL +LT2 +1312 1374 Pls +1604 1374 Pls +1896 1374 Pls +2042 1374 Pls +2188 1374 Pls +2334 1374 Pls +2480 1374 Pls +2626 1374 Pls +2772 1374 Pls +3064 1374 Pls +3356 1374 Pls +3648 1374 Pls +3940 1374 Pls +4524 1374 Pls +5108 1374 Pls +5692 1374 Pls +6276 1374 Pls +6860 1374 Pls +1.000 UP +1.000 UL +LT3 +1312 4689 Crs +1604 2346 Crs +1896 1772 Crs +2042 1639 Crs +2188 1484 Crs +2334 1418 Crs +2480 1396 Crs +2626 1374 Crs +2772 1374 Crs +3064 1374 Crs +3356 1374 Crs +3648 1374 Crs +3940 1374 Crs +4524 1396 Crs +5108 1440 Crs +5692 1528 Crs +6276 1528 Crs +6860 1528 Crs +1.000 UL +LTb +1020 600 M +5840 0 V +0 4200 V +-5840 0 V +0 -4200 V +1.000 UP +stroke +grestore +end +showpage +%%Trailer +%%DocumentFonts: Helvetica diff --git a/chapitre-2009/Ratio.ps b/chapitre-2009/Ratio.ps new file mode 100644 index 0000000..2fce237 --- /dev/null +++ b/chapitre-2009/Ratio.ps @@ -0,0 +1,737 @@ +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: Ratio.ps +%%Creator: gnuplot 4.0 patchlevel 0 +%%CreationDate: Tue Feb 5 17:26:42 2008 +%%DocumentFonts: (atend) +%%BoundingBox: 50 50 410 302 +%%Orientation: Portrait +%%EndComments +/gnudict 256 dict def +gnudict begin +/Color false def +/Solid false def +/gnulinewidth 5.000 def +/userlinewidth gnulinewidth def +/vshift -66 def +/dl {10.0 mul} def +/hpt_ 31.5 def +/vpt_ 31.5 def +/hpt hpt_ def +/vpt vpt_ def +/Rounded false def +/M {moveto} bind def +/L {lineto} bind def +/R {rmoveto} bind def +/V {rlineto} bind def +/N {newpath moveto} bind def +/C {setrgbcolor} bind def +/f {rlineto fill} bind def +/vpt2 vpt 2 mul def +/hpt2 hpt 2 mul def +/Lshow { currentpoint stroke M + 0 vshift R show } def +/Rshow { currentpoint stroke M + dup stringwidth pop neg vshift R show } def +/Cshow { currentpoint stroke M + dup stringwidth pop -2 div vshift R show } def +/UP { dup vpt_ mul /vpt exch def hpt_ mul /hpt exch def + /hpt2 hpt 2 mul def /vpt2 vpt 2 mul def } def +/DL { Color {setrgbcolor Solid {pop []} if 0 setdash } + {pop pop pop 0 setgray Solid {pop []} if 0 setdash} ifelse } def +/BL { stroke userlinewidth 2 mul setlinewidth + Rounded { 1 setlinejoin 1 setlinecap } if } def +/AL { stroke userlinewidth 2 div setlinewidth + Rounded { 1 setlinejoin 1 setlinecap } if } def +/UL { dup gnulinewidth mul /userlinewidth exch def + dup 1 lt {pop 1} if 10 mul /udl exch def } def +/PL { stroke userlinewidth setlinewidth + Rounded { 1 setlinejoin 1 setlinecap } if } def +/LTw { PL [] 1 setgray } def +/LTb { BL [] 0 0 0 DL } def +/LTa { AL [1 udl mul 2 udl mul] 0 setdash 0 0 0 setrgbcolor } def +/LT0 { PL [] 1 0 0 DL } def +/LT1 { PL [4 dl 2 dl] 0 1 0 DL } def +/LT2 { PL [2 dl 3 dl] 0 0 1 DL } def +/LT3 { PL [1 dl 1.5 dl] 1 0 1 DL } def +/LT4 { PL [5 dl 2 dl 1 dl 2 dl] 0 1 1 DL } def +/LT5 { PL [4 dl 3 dl 1 dl 3 dl] 1 1 0 DL } def +/LT6 { PL [2 dl 2 dl 2 dl 4 dl] 0 0 0 DL } def +/LT7 { PL [2 dl 2 dl 2 dl 2 dl 2 dl 4 dl] 1 0.3 0 DL } def +/LT8 { PL [2 dl 2 dl 2 dl 2 dl 2 dl 2 dl 2 dl 4 dl] 0.5 0.5 0.5 DL } def +/Pnt { stroke [] 0 setdash + gsave 1 setlinecap M 0 0 V stroke grestore } def +/Dia { stroke [] 0 setdash 2 copy vpt add M + hpt neg vpt neg V hpt vpt neg V + hpt vpt V hpt neg vpt V closepath stroke + Pnt } def +/Pls { stroke [] 0 setdash vpt sub M 0 vpt2 V + currentpoint stroke M + hpt neg vpt neg R hpt2 0 V stroke + } def +/Box { stroke [] 0 setdash 2 copy exch hpt sub exch vpt add M + 0 vpt2 neg V hpt2 0 V 0 vpt2 V + hpt2 neg 0 V closepath stroke + Pnt } def +/Crs { stroke [] 0 setdash exch hpt sub exch vpt add M + hpt2 vpt2 neg V currentpoint stroke M + hpt2 neg 0 R hpt2 vpt2 V stroke } def +/TriU { stroke [] 0 setdash 2 copy vpt 1.12 mul add M + hpt neg vpt -1.62 mul V + hpt 2 mul 0 V + hpt neg vpt 1.62 mul V closepath stroke + Pnt } def +/Star { 2 copy Pls Crs } def +/BoxF { stroke [] 0 setdash exch hpt sub exch vpt add M + 0 vpt2 neg V hpt2 0 V 0 vpt2 V + hpt2 neg 0 V closepath fill } def +/TriUF { stroke [] 0 setdash vpt 1.12 mul add M + hpt neg vpt -1.62 mul V + hpt 2 mul 0 V + hpt neg vpt 1.62 mul V closepath fill } def +/TriD { stroke [] 0 setdash 2 copy vpt 1.12 mul sub M + hpt neg vpt 1.62 mul V + hpt 2 mul 0 V + hpt neg vpt -1.62 mul V closepath stroke + Pnt } def +/TriDF { stroke [] 0 setdash vpt 1.12 mul sub M + hpt neg vpt 1.62 mul V + hpt 2 mul 0 V + hpt neg vpt -1.62 mul V closepath fill} def +/DiaF { stroke [] 0 setdash vpt add M + hpt neg vpt neg V hpt vpt neg V + hpt vpt V hpt neg vpt V closepath fill } def +/Pent { stroke [] 0 setdash 2 copy gsave + translate 0 hpt M 4 {72 rotate 0 hpt L} repeat + closepath stroke grestore Pnt } def +/PentF { stroke [] 0 setdash gsave + translate 0 hpt M 4 {72 rotate 0 hpt L} repeat + closepath fill grestore } def +/Circle { stroke [] 0 setdash 2 copy + hpt 0 360 arc stroke Pnt } def +/CircleF { stroke [] 0 setdash hpt 0 360 arc fill } def +/C0 { BL [] 0 setdash 2 copy moveto vpt 90 450 arc } bind def +/C1 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 90 arc closepath fill + vpt 0 360 arc closepath } bind def +/C2 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 90 180 arc closepath fill + vpt 0 360 arc closepath } bind def +/C3 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 180 arc closepath fill + vpt 0 360 arc closepath } bind def +/C4 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 180 270 arc closepath fill + vpt 0 360 arc closepath } bind def +/C5 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 90 arc + 2 copy moveto + 2 copy vpt 180 270 arc closepath fill + vpt 0 360 arc } bind def +/C6 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 90 270 arc closepath fill + vpt 0 360 arc closepath } bind def +/C7 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 270 arc closepath fill + vpt 0 360 arc closepath } bind def +/C8 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 270 360 arc closepath fill + vpt 0 360 arc closepath } bind def +/C9 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 270 450 arc closepath fill + vpt 0 360 arc closepath } bind def +/C10 { BL [] 0 setdash 2 copy 2 copy moveto vpt 270 360 arc closepath fill + 2 copy moveto + 2 copy vpt 90 180 arc closepath fill + vpt 0 360 arc closepath } bind def +/C11 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 180 arc closepath fill + 2 copy moveto + 2 copy vpt 270 360 arc closepath fill + vpt 0 360 arc closepath } bind def +/C12 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 180 360 arc closepath fill + vpt 0 360 arc closepath } bind def +/C13 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 90 arc closepath fill + 2 copy moveto + 2 copy vpt 180 360 arc closepath fill + vpt 0 360 arc closepath } bind def +/C14 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 90 360 arc closepath fill + vpt 0 360 arc } bind def +/C15 { BL [] 0 setdash 2 copy vpt 0 360 arc closepath fill + vpt 0 360 arc closepath } bind def +/Rec { newpath 4 2 roll moveto 1 index 0 rlineto 0 exch rlineto + neg 0 rlineto closepath } bind def +/Square { dup Rec } bind def +/Bsquare { vpt sub exch vpt sub exch vpt2 Square } bind def +/S0 { BL [] 0 setdash 2 copy moveto 0 vpt rlineto BL Bsquare } bind def +/S1 { BL [] 0 setdash 2 copy vpt Square fill Bsquare } bind def +/S2 { BL [] 0 setdash 2 copy exch vpt sub exch vpt Square fill Bsquare } bind def +/S3 { BL [] 0 setdash 2 copy exch vpt sub exch vpt2 vpt Rec fill Bsquare } bind def +/S4 { BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt Square fill Bsquare } bind def +/S5 { BL [] 0 setdash 2 copy 2 copy vpt Square fill + exch vpt sub exch vpt sub vpt Square fill Bsquare } bind def +/S6 { BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt vpt2 Rec fill Bsquare } bind def +/S7 { BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt vpt2 Rec fill + 2 copy vpt Square fill + Bsquare } bind def +/S8 { BL [] 0 setdash 2 copy vpt sub vpt Square fill Bsquare } bind def +/S9 { BL [] 0 setdash 2 copy vpt sub vpt vpt2 Rec fill Bsquare } bind def +/S10 { BL [] 0 setdash 2 copy vpt sub vpt Square fill 2 copy exch vpt sub exch vpt Square fill + Bsquare } bind def +/S11 { BL [] 0 setdash 2 copy vpt sub vpt Square fill 2 copy exch vpt sub exch vpt2 vpt Rec fill + Bsquare } bind def +/S12 { BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill Bsquare } bind def +/S13 { BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill + 2 copy vpt Square fill Bsquare } bind def +/S14 { BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill + 2 copy exch vpt sub exch vpt Square fill Bsquare } bind def +/S15 { BL [] 0 setdash 2 copy Bsquare fill Bsquare } bind def +/D0 { gsave translate 45 rotate 0 0 S0 stroke grestore } bind def +/D1 { gsave translate 45 rotate 0 0 S1 stroke grestore } bind def +/D2 { gsave translate 45 rotate 0 0 S2 stroke grestore } bind def +/D3 { gsave translate 45 rotate 0 0 S3 stroke grestore } bind def +/D4 { gsave translate 45 rotate 0 0 S4 stroke grestore } bind def +/D5 { gsave translate 45 rotate 0 0 S5 stroke grestore } bind def +/D6 { gsave translate 45 rotate 0 0 S6 stroke grestore } bind def +/D7 { gsave translate 45 rotate 0 0 S7 stroke grestore } bind def +/D8 { gsave translate 45 rotate 0 0 S8 stroke grestore } bind def +/D9 { gsave translate 45 rotate 0 0 S9 stroke grestore } bind def +/D10 { gsave translate 45 rotate 0 0 S10 stroke grestore } bind def +/D11 { gsave translate 45 rotate 0 0 S11 stroke grestore } bind def +/D12 { gsave translate 45 rotate 0 0 S12 stroke grestore } bind def +/D13 { gsave translate 45 rotate 0 0 S13 stroke grestore } bind def +/D14 { gsave translate 45 rotate 0 0 S14 stroke grestore } bind def +/D15 { gsave translate 45 rotate 0 0 S15 stroke grestore } bind def +/DiaE { stroke [] 0 setdash vpt add M + hpt neg vpt neg V hpt vpt neg V + hpt vpt V hpt neg vpt V closepath stroke } def +/BoxE { stroke [] 0 setdash exch hpt sub exch vpt add M + 0 vpt2 neg V hpt2 0 V 0 vpt2 V + hpt2 neg 0 V closepath stroke } def +/TriUE { stroke [] 0 setdash vpt 1.12 mul add M + hpt neg vpt -1.62 mul V + hpt 2 mul 0 V + hpt neg vpt 1.62 mul V closepath stroke } def +/TriDE { stroke [] 0 setdash vpt 1.12 mul sub M + hpt neg vpt 1.62 mul V + hpt 2 mul 0 V + hpt neg vpt -1.62 mul V closepath stroke } def +/PentE { stroke [] 0 setdash gsave + translate 0 hpt M 4 {72 rotate 0 hpt L} repeat + closepath stroke grestore } def +/CircE { stroke [] 0 setdash + hpt 0 360 arc stroke } def +/Opaque { gsave closepath 1 setgray fill grestore 0 setgray closepath } def +/DiaW { stroke [] 0 setdash vpt add M + hpt neg vpt neg V hpt vpt neg V + hpt vpt V hpt neg vpt V Opaque stroke } def +/BoxW { stroke [] 0 setdash exch hpt sub exch vpt add M + 0 vpt2 neg V hpt2 0 V 0 vpt2 V + hpt2 neg 0 V Opaque stroke } def +/TriUW { stroke [] 0 setdash vpt 1.12 mul add M + hpt neg vpt -1.62 mul V + hpt 2 mul 0 V + hpt neg vpt 1.62 mul V Opaque stroke } def +/TriDW { stroke [] 0 setdash vpt 1.12 mul sub M + hpt neg vpt 1.62 mul V + hpt 2 mul 0 V + hpt neg vpt -1.62 mul V Opaque stroke } def +/PentW { stroke [] 0 setdash gsave + translate 0 hpt M 4 {72 rotate 0 hpt L} repeat + Opaque stroke grestore } def +/CircW { stroke [] 0 setdash + hpt 0 360 arc Opaque stroke } def +/BoxFill { gsave Rec 1 setgray fill grestore } def +/BoxColFill { + gsave Rec + /Fillden exch def + currentrgbcolor + /ColB exch def /ColG exch def /ColR exch def + /ColR ColR Fillden mul Fillden sub 1 add def + /ColG ColG Fillden mul Fillden sub 1 add def + /ColB ColB Fillden mul Fillden sub 1 add def + ColR ColG ColB setrgbcolor + fill grestore } def +% +% PostScript Level 1 Pattern Fill routine +% Usage: x y w h s a XX PatternFill +% x,y = lower left corner of box to be filled +% w,h = width and height of box +% a = angle in degrees between lines and x-axis +% XX = 0/1 for no/yes cross-hatch +% +/PatternFill { gsave /PFa [ 9 2 roll ] def + PFa 0 get PFa 2 get 2 div add PFa 1 get PFa 3 get 2 div add translate + PFa 2 get -2 div PFa 3 get -2 div PFa 2 get PFa 3 get Rec + gsave 1 setgray fill grestore clip + currentlinewidth 0.5 mul setlinewidth + /PFs PFa 2 get dup mul PFa 3 get dup mul add sqrt def + 0 0 M PFa 5 get rotate PFs -2 div dup translate + 0 1 PFs PFa 4 get div 1 add floor cvi + { PFa 4 get mul 0 M 0 PFs V } for + 0 PFa 6 get ne { + 0 1 PFs PFa 4 get div 1 add floor cvi + { PFa 4 get mul 0 2 1 roll M PFs 0 V } for + } if + stroke grestore } def +% +/Symbol-Oblique /Symbol findfont [1 0 .167 1 0 0] makefont +dup length dict begin {1 index /FID eq {pop pop} {def} ifelse} forall +currentdict end definefont pop +end +%%EndProlog +gnudict begin +gsave +50 50 translate +0.050 0.050 scale +0 setgray +newpath +(Helvetica) findfont 200 scalefont setfont +1.000 UL +LTb +900 600 M +63 0 V +5897 0 R +-63 0 V +780 600 M +gsave 0 setgray +( 10) Rshow +grestore +1.000 UL +LTb +900 1125 M +63 0 V +5897 0 R +-63 0 V +-6017 0 R +gsave 0 setgray +( 20) Rshow +grestore +1.000 UL +LTb +900 1650 M +63 0 V +5897 0 R +-63 0 V +-6017 0 R +gsave 0 setgray +( 30) Rshow +grestore +1.000 UL +LTb +900 2175 M +63 0 V +5897 0 R +-63 0 V +-6017 0 R +gsave 0 setgray +( 40) Rshow +grestore +1.000 UL +LTb +900 2700 M +63 0 V +5897 0 R +-63 0 V +-6017 0 R +gsave 0 setgray +( 50) Rshow +grestore +1.000 UL +LTb +900 3225 M +63 0 V +5897 0 R +-63 0 V +-6017 0 R +gsave 0 setgray +( 60) Rshow +grestore +1.000 UL +LTb +900 3750 M +63 0 V +5897 0 R +-63 0 V +-6017 0 R +gsave 0 setgray +( 70) Rshow +grestore +1.000 UL +LTb +900 4275 M +63 0 V +5897 0 R +-63 0 V +-6017 0 R +gsave 0 setgray +( 80) Rshow +grestore +1.000 UL +LTb +900 4800 M +63 0 V +5897 0 R +-63 0 V +-6017 0 R +gsave 0 setgray +( 90) Rshow +grestore +1.000 UL +LTb +900 600 M +0 63 V +0 4137 R +0 -63 V +900 400 M +gsave 0 setgray +( 0) Cshow +grestore +1.000 UL +LTb +1496 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 1) Cshow +grestore +1.000 UL +LTb +2092 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 2) Cshow +grestore +1.000 UL +LTb +2688 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 3) Cshow +grestore +1.000 UL +LTb +3284 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 4) Cshow +grestore +1.000 UL +LTb +3880 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 5) Cshow +grestore +1.000 UL +LTb +4476 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 6) Cshow +grestore +1.000 UL +LTb +5072 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 7) Cshow +grestore +1.000 UL +LTb +5668 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 8) Cshow +grestore +1.000 UL +LTb +6264 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 9) Cshow +grestore +1.000 UL +LTb +6860 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 10) Cshow +grestore +1.000 UL +LTb +1.000 UL +LTb +900 600 M +5960 0 V +0 4200 V +-5960 0 V +900 600 L +LTb +200 2700 M +gsave 0 setgray +currentpoint gsave translate 90 rotate 0 0 M +(Simulated Time) Cshow +grestore +grestore +LTb +3880 100 M +gsave 0 setgray +(Tr) Cshow +grestore +1.000 UP +1.000 UL +LT0 +LTb +5957 4637 M +gsave 0 setgray +(Synchronous Algorithm) Rshow +grestore +LT0 +6077 4637 M +543 0 V +1198 710 M +39 20 V +39 21 V +39 20 V +40 21 V +39 21 V +39 21 V +39 22 V +39 21 V +39 22 V +40 22 V +39 22 V +39 23 V +40 22 V +40 23 V +40 23 V +40 23 V +41 23 V +41 24 V +41 24 V +42 25 V +42 25 V +43 25 V +44 26 V +44 27 V +45 27 V +46 27 V +47 29 V +47 29 V +49 29 V +50 31 V +51 31 V +52 32 V +53 33 V +54 34 V +55 35 V +56 35 V +58 37 V +59 37 V +60 38 V +61 39 V +62 40 V +63 41 V +65 42 V +65 43 V +67 43 V +67 45 V +69 45 V +69 46 V +71 47 V +71 47 V +72 49 V +74 49 V +74 50 V +75 51 V +77 52 V +77 53 V +78 53 V +80 55 V +82 56 V +82 57 V +85 59 V +87 60 V +89 61 V +92 64 V +95 66 V +99 68 V +103 71 V +109 75 V +115 79 V +121 83 V +130 88 V +140 95 V +151 101 V +163 110 V +179 119 V +197 131 V +216 142 V +240 158 V +1.000 UL +LT1 +LTb +5957 4437 M +gsave 0 setgray +(Asynchronous Algorithm) Rshow +grestore +LT1 +6077 4437 M +543 0 V +1198 742 M +39 -4 V +39 -2 V +39 0 V +40 1 V +39 3 V +39 4 V +39 6 V +39 8 V +39 8 V +40 10 V +39 11 V +39 13 V +40 13 V +40 15 V +40 15 V +40 17 V +41 18 V +41 18 V +41 20 V +42 21 V +42 22 V +43 23 V +44 24 V +44 25 V +45 26 V +46 27 V +47 28 V +47 30 V +49 30 V +50 31 V +51 33 V +52 34 V +53 35 V +54 36 V +55 37 V +56 39 V +58 39 V +59 41 V +60 42 V +61 43 V +62 45 V +63 46 V +65 47 V +65 48 V +67 49 V +67 51 V +69 52 V +69 53 V +71 54 V +71 56 V +72 57 V +74 58 V +74 60 V +75 60 V +77 63 V +77 63 V +78 65 V +80 67 V +82 68 V +82 70 V +85 72 V +87 74 V +89 76 V +92 79 V +95 81 V +99 85 V +103 88 V +109 93 V +115 97 V +121 103 V +130 109 V +140 117 V +151 125 V +163 135 V +179 146 V +197 160 V +216 174 V +240 193 V +1.000 UP +1.000 UL +LT2 +1198 710 Pls +1496 863 Pls +1794 1032 Pls +2092 1209 Pls +2390 1380 Pls +2688 1558 Pls +3284 1947 Pls +3880 2323 Pls +4476 2734 Pls +5072 3177 Pls +5668 3620 Pls +6264 4064 Pls +6860 4440 Pls +1.000 UP +1.000 UL +LT3 +1198 742 Crs +1496 705 Crs +1794 790 Crs +2092 943 Crs +2390 1130 Crs +2688 1349 Crs +3284 1755 Crs +3880 2128 Crs +4476 2652 Crs +5072 3267 Crs +5668 3912 Crs +6264 4280 Crs +6860 4688 Crs +1.000 UL +LTb +900 600 M +5960 0 V +0 4200 V +-5960 0 V +900 600 L +1.000 UP +stroke +grestore +end +showpage +%%Trailer +%%DocumentFonts: Helvetica diff --git a/chapitre-2009/TimeDensity.ps b/chapitre-2009/TimeDensity.ps new file mode 100644 index 0000000..2020643 --- /dev/null +++ b/chapitre-2009/TimeDensity.ps @@ -0,0 +1,705 @@ +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: TimeDensity.ps +%%Creator: gnuplot 4.0 patchlevel 0 +%%CreationDate: Tue Feb 5 17:29:16 2008 +%%DocumentFonts: (atend) +%%BoundingBox: 50 50 410 302 +%%Orientation: Portrait +%%EndComments +/gnudict 256 dict def +gnudict begin +/Color false def +/Solid false def +/gnulinewidth 5.000 def +/userlinewidth gnulinewidth def +/vshift -66 def +/dl {10.0 mul} def +/hpt_ 31.5 def +/vpt_ 31.5 def +/hpt hpt_ def +/vpt vpt_ def +/Rounded false def +/M {moveto} bind def +/L {lineto} bind def +/R {rmoveto} bind def +/V {rlineto} bind def +/N {newpath moveto} bind def +/C {setrgbcolor} bind def +/f {rlineto fill} bind def +/vpt2 vpt 2 mul def +/hpt2 hpt 2 mul def +/Lshow { currentpoint stroke M + 0 vshift R show } def +/Rshow { currentpoint stroke M + dup stringwidth pop neg vshift R show } def +/Cshow { currentpoint stroke M + dup stringwidth pop -2 div vshift R show } def +/UP { dup vpt_ mul /vpt exch def hpt_ mul /hpt exch def + /hpt2 hpt 2 mul def /vpt2 vpt 2 mul def } def +/DL { Color {setrgbcolor Solid {pop []} if 0 setdash } + {pop pop pop 0 setgray Solid {pop []} if 0 setdash} ifelse } def +/BL { stroke userlinewidth 2 mul setlinewidth + Rounded { 1 setlinejoin 1 setlinecap } if } def +/AL { stroke userlinewidth 2 div setlinewidth + Rounded { 1 setlinejoin 1 setlinecap } if } def +/UL { dup gnulinewidth mul /userlinewidth exch def + dup 1 lt {pop 1} if 10 mul /udl exch def } def +/PL { stroke userlinewidth setlinewidth + Rounded { 1 setlinejoin 1 setlinecap } if } def +/LTw { PL [] 1 setgray } def +/LTb { BL [] 0 0 0 DL } def +/LTa { AL [1 udl mul 2 udl mul] 0 setdash 0 0 0 setrgbcolor } def +/LT0 { PL [] 1 0 0 DL } def +/LT1 { PL [4 dl 2 dl] 0 1 0 DL } def +/LT2 { PL [2 dl 3 dl] 0 0 1 DL } def +/LT3 { PL [1 dl 1.5 dl] 1 0 1 DL } def +/LT4 { PL [5 dl 2 dl 1 dl 2 dl] 0 1 1 DL } def +/LT5 { PL [4 dl 3 dl 1 dl 3 dl] 1 1 0 DL } def +/LT6 { PL [2 dl 2 dl 2 dl 4 dl] 0 0 0 DL } def +/LT7 { PL [2 dl 2 dl 2 dl 2 dl 2 dl 4 dl] 1 0.3 0 DL } def +/LT8 { PL [2 dl 2 dl 2 dl 2 dl 2 dl 2 dl 2 dl 4 dl] 0.5 0.5 0.5 DL } def +/Pnt { stroke [] 0 setdash + gsave 1 setlinecap M 0 0 V stroke grestore } def +/Dia { stroke [] 0 setdash 2 copy vpt add M + hpt neg vpt neg V hpt vpt neg V + hpt vpt V hpt neg vpt V closepath stroke + Pnt } def +/Pls { stroke [] 0 setdash vpt sub M 0 vpt2 V + currentpoint stroke M + hpt neg vpt neg R hpt2 0 V stroke + } def +/Box { stroke [] 0 setdash 2 copy exch hpt sub exch vpt add M + 0 vpt2 neg V hpt2 0 V 0 vpt2 V + hpt2 neg 0 V closepath stroke + Pnt } def +/Crs { stroke [] 0 setdash exch hpt sub exch vpt add M + hpt2 vpt2 neg V currentpoint stroke M + hpt2 neg 0 R hpt2 vpt2 V stroke } def +/TriU { stroke [] 0 setdash 2 copy vpt 1.12 mul add M + hpt neg vpt -1.62 mul V + hpt 2 mul 0 V + hpt neg vpt 1.62 mul V closepath stroke + Pnt } def +/Star { 2 copy Pls Crs } def +/BoxF { stroke [] 0 setdash exch hpt sub exch vpt add M + 0 vpt2 neg V hpt2 0 V 0 vpt2 V + hpt2 neg 0 V closepath fill } def +/TriUF { stroke [] 0 setdash vpt 1.12 mul add M + hpt neg vpt -1.62 mul V + hpt 2 mul 0 V + hpt neg vpt 1.62 mul V closepath fill } def +/TriD { stroke [] 0 setdash 2 copy vpt 1.12 mul sub M + hpt neg vpt 1.62 mul V + hpt 2 mul 0 V + hpt neg vpt -1.62 mul V closepath stroke + Pnt } def +/TriDF { stroke [] 0 setdash vpt 1.12 mul sub M + hpt neg vpt 1.62 mul V + hpt 2 mul 0 V + hpt neg vpt -1.62 mul V closepath fill} def +/DiaF { stroke [] 0 setdash vpt add M + hpt neg vpt neg V hpt vpt neg V + hpt vpt V hpt neg vpt V closepath fill } def +/Pent { stroke [] 0 setdash 2 copy gsave + translate 0 hpt M 4 {72 rotate 0 hpt L} repeat + closepath stroke grestore Pnt } def +/PentF { stroke [] 0 setdash gsave + translate 0 hpt M 4 {72 rotate 0 hpt L} repeat + closepath fill grestore } def +/Circle { stroke [] 0 setdash 2 copy + hpt 0 360 arc stroke Pnt } def +/CircleF { stroke [] 0 setdash hpt 0 360 arc fill } def +/C0 { BL [] 0 setdash 2 copy moveto vpt 90 450 arc } bind def +/C1 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 90 arc closepath fill + vpt 0 360 arc closepath } bind def +/C2 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 90 180 arc closepath fill + vpt 0 360 arc closepath } bind def +/C3 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 180 arc closepath fill + vpt 0 360 arc closepath } bind def +/C4 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 180 270 arc closepath fill + vpt 0 360 arc closepath } bind def +/C5 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 90 arc + 2 copy moveto + 2 copy vpt 180 270 arc closepath fill + vpt 0 360 arc } bind def +/C6 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 90 270 arc closepath fill + vpt 0 360 arc closepath } bind def +/C7 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 270 arc closepath fill + vpt 0 360 arc closepath } bind def +/C8 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 270 360 arc closepath fill + vpt 0 360 arc closepath } bind def +/C9 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 270 450 arc closepath fill + vpt 0 360 arc closepath } bind def +/C10 { BL [] 0 setdash 2 copy 2 copy moveto vpt 270 360 arc closepath fill + 2 copy moveto + 2 copy vpt 90 180 arc closepath fill + vpt 0 360 arc closepath } bind def +/C11 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 180 arc closepath fill + 2 copy moveto + 2 copy vpt 270 360 arc closepath fill + vpt 0 360 arc closepath } bind def +/C12 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 180 360 arc closepath fill + vpt 0 360 arc closepath } bind def +/C13 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 90 arc closepath fill + 2 copy moveto + 2 copy vpt 180 360 arc closepath fill + vpt 0 360 arc closepath } bind def +/C14 { BL [] 0 setdash 2 copy moveto + 2 copy vpt 90 360 arc closepath fill + vpt 0 360 arc } bind def +/C15 { BL [] 0 setdash 2 copy vpt 0 360 arc closepath fill + vpt 0 360 arc closepath } bind def +/Rec { newpath 4 2 roll moveto 1 index 0 rlineto 0 exch rlineto + neg 0 rlineto closepath } bind def +/Square { dup Rec } bind def +/Bsquare { vpt sub exch vpt sub exch vpt2 Square } bind def +/S0 { BL [] 0 setdash 2 copy moveto 0 vpt rlineto BL Bsquare } bind def +/S1 { BL [] 0 setdash 2 copy vpt Square fill Bsquare } bind def +/S2 { BL [] 0 setdash 2 copy exch vpt sub exch vpt Square fill Bsquare } bind def +/S3 { BL [] 0 setdash 2 copy exch vpt sub exch vpt2 vpt Rec fill Bsquare } bind def +/S4 { BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt Square fill Bsquare } bind def +/S5 { BL [] 0 setdash 2 copy 2 copy vpt Square fill + exch vpt sub exch vpt sub vpt Square fill Bsquare } bind def +/S6 { BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt vpt2 Rec fill Bsquare } bind def +/S7 { BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt vpt2 Rec fill + 2 copy vpt Square fill + Bsquare } bind def +/S8 { BL [] 0 setdash 2 copy vpt sub vpt Square fill Bsquare } bind def +/S9 { BL [] 0 setdash 2 copy vpt sub vpt vpt2 Rec fill Bsquare } bind def +/S10 { BL [] 0 setdash 2 copy vpt sub vpt Square fill 2 copy exch vpt sub exch vpt Square fill + Bsquare } bind def +/S11 { BL [] 0 setdash 2 copy vpt sub vpt Square fill 2 copy exch vpt sub exch vpt2 vpt Rec fill + Bsquare } bind def +/S12 { BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill Bsquare } bind def +/S13 { BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill + 2 copy vpt Square fill Bsquare } bind def +/S14 { BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill + 2 copy exch vpt sub exch vpt Square fill Bsquare } bind def +/S15 { BL [] 0 setdash 2 copy Bsquare fill Bsquare } bind def +/D0 { gsave translate 45 rotate 0 0 S0 stroke grestore } bind def +/D1 { gsave translate 45 rotate 0 0 S1 stroke grestore } bind def +/D2 { gsave translate 45 rotate 0 0 S2 stroke grestore } bind def +/D3 { gsave translate 45 rotate 0 0 S3 stroke grestore } bind def +/D4 { gsave translate 45 rotate 0 0 S4 stroke grestore } bind def +/D5 { gsave translate 45 rotate 0 0 S5 stroke grestore } bind def +/D6 { gsave translate 45 rotate 0 0 S6 stroke grestore } bind def +/D7 { gsave translate 45 rotate 0 0 S7 stroke grestore } bind def +/D8 { gsave translate 45 rotate 0 0 S8 stroke grestore } bind def +/D9 { gsave translate 45 rotate 0 0 S9 stroke grestore } bind def +/D10 { gsave translate 45 rotate 0 0 S10 stroke grestore } bind def +/D11 { gsave translate 45 rotate 0 0 S11 stroke grestore } bind def +/D12 { gsave translate 45 rotate 0 0 S12 stroke grestore } bind def +/D13 { gsave translate 45 rotate 0 0 S13 stroke grestore } bind def +/D14 { gsave translate 45 rotate 0 0 S14 stroke grestore } bind def +/D15 { gsave translate 45 rotate 0 0 S15 stroke grestore } bind def +/DiaE { stroke [] 0 setdash vpt add M + hpt neg vpt neg V hpt vpt neg V + hpt vpt V hpt neg vpt V closepath stroke } def +/BoxE { stroke [] 0 setdash exch hpt sub exch vpt add M + 0 vpt2 neg V hpt2 0 V 0 vpt2 V + hpt2 neg 0 V closepath stroke } def +/TriUE { stroke [] 0 setdash vpt 1.12 mul add M + hpt neg vpt -1.62 mul V + hpt 2 mul 0 V + hpt neg vpt 1.62 mul V closepath stroke } def +/TriDE { stroke [] 0 setdash vpt 1.12 mul sub M + hpt neg vpt 1.62 mul V + hpt 2 mul 0 V + hpt neg vpt -1.62 mul V closepath stroke } def +/PentE { stroke [] 0 setdash gsave + translate 0 hpt M 4 {72 rotate 0 hpt L} repeat + closepath stroke grestore } def +/CircE { stroke [] 0 setdash + hpt 0 360 arc stroke } def +/Opaque { gsave closepath 1 setgray fill grestore 0 setgray closepath } def +/DiaW { stroke [] 0 setdash vpt add M + hpt neg vpt neg V hpt vpt neg V + hpt vpt V hpt neg vpt V Opaque stroke } def +/BoxW { stroke [] 0 setdash exch hpt sub exch vpt add M + 0 vpt2 neg V hpt2 0 V 0 vpt2 V + hpt2 neg 0 V Opaque stroke } def +/TriUW { stroke [] 0 setdash vpt 1.12 mul add M + hpt neg vpt -1.62 mul V + hpt 2 mul 0 V + hpt neg vpt 1.62 mul V Opaque stroke } def +/TriDW { stroke [] 0 setdash vpt 1.12 mul sub M + hpt neg vpt 1.62 mul V + hpt 2 mul 0 V + hpt neg vpt -1.62 mul V Opaque stroke } def +/PentW { stroke [] 0 setdash gsave + translate 0 hpt M 4 {72 rotate 0 hpt L} repeat + Opaque stroke grestore } def +/CircW { stroke [] 0 setdash + hpt 0 360 arc Opaque stroke } def +/BoxFill { gsave Rec 1 setgray fill grestore } def +/BoxColFill { + gsave Rec + /Fillden exch def + currentrgbcolor + /ColB exch def /ColG exch def /ColR exch def + /ColR ColR Fillden mul Fillden sub 1 add def + /ColG ColG Fillden mul Fillden sub 1 add def + /ColB ColB Fillden mul Fillden sub 1 add def + ColR ColG ColB setrgbcolor + fill grestore } def +% +% PostScript Level 1 Pattern Fill routine +% Usage: x y w h s a XX PatternFill +% x,y = lower left corner of box to be filled +% w,h = width and height of box +% a = angle in degrees between lines and x-axis +% XX = 0/1 for no/yes cross-hatch +% +/PatternFill { gsave /PFa [ 9 2 roll ] def + PFa 0 get PFa 2 get 2 div add PFa 1 get PFa 3 get 2 div add translate + PFa 2 get -2 div PFa 3 get -2 div PFa 2 get PFa 3 get Rec + gsave 1 setgray fill grestore clip + currentlinewidth 0.5 mul setlinewidth + /PFs PFa 2 get dup mul PFa 3 get dup mul add sqrt def + 0 0 M PFa 5 get rotate PFs -2 div dup translate + 0 1 PFs PFa 4 get div 1 add floor cvi + { PFa 4 get mul 0 M 0 PFs V } for + 0 PFa 6 get ne { + 0 1 PFs PFa 4 get div 1 add floor cvi + { PFa 4 get mul 0 2 1 roll M PFs 0 V } for + } if + stroke grestore } def +% +/Symbol-Oblique /Symbol findfont [1 0 .167 1 0 0] makefont +dup length dict begin {1 index /FID eq {pop pop} {def} ifelse} forall +currentdict end definefont pop +end +%%EndProlog +gnudict begin +gsave +50 50 translate +0.050 0.050 scale +0 setgray +newpath +(Helvetica) findfont 200 scalefont setfont +1.000 UL +LTb +900 600 M +63 0 V +5897 0 R +-63 0 V +780 600 M +gsave 0 setgray +( 10) Rshow +grestore +1.000 UL +LTb +900 1650 M +63 0 V +5897 0 R +-63 0 V +-6017 0 R +gsave 0 setgray +( 15) Rshow +grestore +1.000 UL +LTb +900 2700 M +63 0 V +5897 0 R +-63 0 V +-6017 0 R +gsave 0 setgray +( 20) Rshow +grestore +1.000 UL +LTb +900 3750 M +63 0 V +5897 0 R +-63 0 V +-6017 0 R +gsave 0 setgray +( 25) Rshow +grestore +1.000 UL +LTb +900 4800 M +63 0 V +5897 0 R +-63 0 V +-6017 0 R +gsave 0 setgray +( 30) Rshow +grestore +1.000 UL +LTb +1411 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 40) Cshow +grestore +1.000 UL +LTb +2092 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 60) Cshow +grestore +1.000 UL +LTb +2773 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 80) Cshow +grestore +1.000 UL +LTb +3454 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 100) Cshow +grestore +1.000 UL +LTb +4135 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 120) Cshow +grestore +1.000 UL +LTb +4817 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 140) Cshow +grestore +1.000 UL +LTb +5498 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 160) Cshow +grestore +1.000 UL +LTb +6179 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 180) Cshow +grestore +1.000 UL +LTb +6860 600 M +0 63 V +0 4137 R +0 -63 V +0 -4337 R +gsave 0 setgray +( 200) Cshow +grestore +1.000 UL +LTb +1.000 UL +LTb +900 600 M +5960 0 V +0 4200 V +-5960 0 V +900 600 L +LTb +200 2700 M +gsave 0 setgray +currentpoint gsave translate 90 rotate 0 0 M +(Simulated Time) Cshow +grestore +grestore +LTb +3880 100 M +gsave 0 setgray +(Nodes Density) Cshow +grestore +1.000 UP +1.000 UL +LT0 +LTb +5957 4637 M +gsave 0 setgray +(Synchronous Algorithm) Rshow +grestore +LT0 +6077 4637 M +543 0 V +900 4632 M +43 -68 V +43 -67 V +43 -65 V +43 -63 V +43 -62 V +43 -61 V +43 -59 V +43 -57 V +43 -57 V +43 -55 V +44 -53 V +43 -53 V +43 -51 V +44 -50 V +43 -50 V +44 -48 V +43 -47 V +44 -46 V +44 -45 V +44 -44 V +45 -43 V +44 -42 V +45 -42 V +45 -40 V +45 -40 V +45 -39 V +46 -38 V +46 -38 V +46 -36 V +46 -36 V +47 -36 V +48 -34 V +47 -34 V +48 -34 V +48 -32 V +49 -32 V +49 -32 V +50 -31 V +50 -30 V +51 -30 V +51 -29 V +52 -28 V +52 -28 V +53 -28 V +53 -27 V +54 -26 V +55 -26 V +55 -25 V +56 -25 V +56 -25 V +57 -23 V +58 -24 V +58 -23 V +60 -22 V +59 -22 V +61 -21 V +61 -21 V +62 -20 V +63 -20 V +64 -19 V +64 -19 V +65 -19 V +66 -18 V +66 -17 V +68 -17 V +68 -17 V +69 -16 V +69 -15 V +71 -15 V +71 -15 V +72 -14 V +72 -14 V +74 -13 V +74 -13 V +75 -12 V +76 -12 V +76 -11 V +77 -11 V +78 -10 V +78 -10 V +79 -10 V +80 -9 V +80 -8 V +81 -8 V +82 -8 V +82 -8 V +82 -6 V +83 -7 V +84 -6 V +84 -6 V +84 -5 V +85 -5 V +85 -4 V +85 -5 V +86 -3 V +85 -4 V +86 -3 V +86 -3 V +86 -3 V +1.000 UL +LT1 +LTb +5957 4437 M +gsave 0 setgray +(Asynchronous Algorithm) Rshow +grestore +LT1 +6077 4437 M +543 0 V +900 3378 M +43 -66 V +43 -65 V +43 -63 V +43 -61 V +43 -59 V +43 -57 V +43 -56 V +43 -54 V +43 -53 V +43 -50 V +44 -50 V +43 -48 V +43 -46 V +44 -45 V +43 -43 V +44 -43 V +43 -40 V +44 -40 V +44 -38 V +44 -37 V +45 -35 V +44 -35 V +45 -33 V +45 -33 V +45 -31 V +45 -30 V +46 -29 V +46 -28 V +46 -27 V +46 -26 V +47 -25 V +48 -24 V +47 -23 V +48 -23 V +48 -21 V +49 -21 V +49 -20 V +50 -19 V +50 -19 V +51 -18 V +51 -17 V +52 -16 V +52 -16 V +53 -15 V +53 -14 V +54 -14 V +55 -14 V +55 -13 V +56 -12 V +56 -12 V +57 -11 V +58 -11 V +58 -10 V +60 -10 V +59 -10 V +61 -9 V +61 -8 V +62 -9 V +63 -7 V +64 -8 V +64 -7 V +65 -7 V +66 -7 V +66 -6 V +68 -6 V +68 -6 V +69 -5 V +69 -6 V +71 -5 V +71 -5 V +72 -4 V +72 -4 V +74 -5 V +74 -4 V +75 -3 V +76 -4 V +76 -3 V +77 -4 V +78 -3 V +78 -3 V +79 -3 V +80 -2 V +80 -3 V +81 -2 V +82 -3 V +82 -2 V +82 -2 V +83 -2 V +84 -2 V +84 -1 V +84 -2 V +85 -1 V +85 -2 V +85 -1 V +86 -1 V +85 -1 V +86 -2 V +86 0 V +86 -1 V +1.000 UP +1.000 UL +LT2 +900 4632 Pls +1751 3263 Pls +2603 2742 Pls +3454 2164 Pls +5157 1980 Pls +6860 1931 Pls +1.000 UP +1.000 UL +LT3 +900 3378 Crs +1751 2043 Crs +2603 1650 Crs +3454 1560 Crs +5157 1493 Crs +6860 1478 Crs +1.000 UL +LTb +900 600 M +5960 0 V +0 4200 V +-5960 0 V +900 600 L +1.000 UP +stroke +grestore +end +showpage +%%Trailer +%%DocumentFonts: Helvetica diff --git a/chapitre-2009/authinst.pdf b/chapitre-2009/authinst.pdf new file mode 100644 index 0000000..ad7748a Binary files /dev/null and b/chapitre-2009/authinst.pdf differ diff --git a/chapitre-2009/authsamp.pdf b/chapitre-2009/authsamp.pdf new file mode 100644 index 0000000..60d1a35 Binary files /dev/null and b/chapitre-2009/authsamp.pdf differ diff --git a/chapitre-2009/dynamic/DynamicComparison.ps b/chapitre-2009/dynamic/DynamicComparison.ps new file mode 100644 index 0000000..60e93ad --- /dev/null +++ b/chapitre-2009/dynamic/DynamicComparison.ps @@ -0,0 +1,767 @@ +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: DynamicComparison.ps +%%Creator: gnuplot 4.2 patchlevel 5 +%%CreationDate: Thu Sep 24 18:25:24 2009 +%%DocumentFonts: (atend) +%%BoundingBox: 50 50 410 302 +%%EndComments +%%BeginProlog +/gnudict 256 dict def +gnudict begin +% +% The following 6 true/false flags may be edited by hand if required +% The unit line width may also be changed +% +/Color false def +/Blacktext false def +/Solid false def +/Dashlength 1 def +/Landscape false def +/Level1 false def +/Rounded false def +/TransparentPatterns false def +/gnulinewidth 5.000 def +/userlinewidth gnulinewidth def +% +/vshift -46 def +/dl1 { + 10.0 Dashlength mul mul + Rounded { currentlinewidth 0.75 mul sub dup 0 le { pop 0.01 } if } if +} def +/dl2 { + 10.0 Dashlength mul mul + Rounded { currentlinewidth 0.75 mul add } if +} def +/hpt_ 31.5 def +/vpt_ 31.5 def +/hpt hpt_ def +/vpt vpt_ def +Level1 {} { +/SDict 10 dict def +systemdict /pdfmark known not { + userdict /pdfmark systemdict /cleartomark get put +} if +SDict begin [ + /Title (DynamicComparison.ps) + /Subject (gnuplot plot) + /Creator (gnuplot 4.2 patchlevel 5 ) + /Author (Abdallah Makhoul,,,) +% /Producer (gnuplot) +% /Keywords () + /CreationDate (Thu Sep 24 18:25:24 2009) + /DOCINFO pdfmark +end +} ifelse +% +% Gnuplot Prolog Version 4.2 (August 2006) +% +/M {moveto} bind def +/L {lineto} bind def +/R {rmoveto} bind def +/V {rlineto} bind def +/N {newpath moveto} bind def +/Z {closepath} bind def +/C {setrgbcolor} bind def +/f {rlineto fill} bind def +/vpt2 vpt 2 mul def +/hpt2 hpt 2 mul def +/Lshow {currentpoint stroke M 0 vshift R + Blacktext {gsave 0 setgray show grestore} {show} ifelse} def +/Rshow {currentpoint stroke M dup stringwidth pop neg vshift R + Blacktext {gsave 0 setgray show grestore} {show} ifelse} def +/Cshow {currentpoint stroke M dup stringwidth pop -2 div vshift R + Blacktext {gsave 0 setgray show grestore} {show} ifelse} def +/UP {dup vpt_ mul /vpt exch def hpt_ mul /hpt exch def + /hpt2 hpt 2 mul def /vpt2 vpt 2 mul def} def +/DL {Color {setrgbcolor Solid {pop []} if 0 setdash} + {pop pop pop 0 setgray Solid {pop []} if 0 setdash} ifelse} def +/BL {stroke userlinewidth 2 mul setlinewidth + Rounded {1 setlinejoin 1 setlinecap} if} def +/AL {stroke userlinewidth 2 div setlinewidth + Rounded {1 setlinejoin 1 setlinecap} if} def +/UL {dup gnulinewidth mul /userlinewidth exch def + dup 1 lt {pop 1} if 10 mul /udl exch def} def +/PL {stroke userlinewidth setlinewidth + Rounded {1 setlinejoin 1 setlinecap} if} def +% Default Line colors +/LCw {1 1 1} def +/LCb {0 0 0} def +/LCa {0 0 0} def +/LC0 {1 0 0} def +/LC1 {0 1 0} def +/LC2 {0 0 1} def +/LC3 {1 0 1} def +/LC4 {0 1 1} def +/LC5 {1 1 0} def +/LC6 {0 0 0} def +/LC7 {1 0.3 0} def +/LC8 {0.5 0.5 0.5} def +% Default Line Types +/LTw {PL [] 1 setgray} def +/LTb {BL [] LCb DL} def +/LTa {AL [1 udl mul 2 udl mul] 0 setdash LCa setrgbcolor} def +/LT0 {PL [] LC0 DL} def +/LT1 {PL [4 dl1 2 dl2] LC1 DL} def +/LT2 {PL [2 dl1 3 dl2] LC2 DL} def +/LT3 {PL [1 dl1 1.5 dl2] LC3 DL} def +/LT4 {PL [6 dl1 2 dl2 1 dl1 2 dl2] LC4 DL} def +/LT5 {PL [3 dl1 3 dl2 1 dl1 3 dl2] LC5 DL} def +/LT6 {PL [2 dl1 2 dl2 2 dl1 6 dl2] LC6 DL} def +/LT7 {PL [1 dl1 2 dl2 6 dl1 2 dl2 1 dl1 2 dl2] LC7 DL} def +/LT8 {PL [2 dl1 2 dl2 2 dl1 2 dl2 2 dl1 2 dl2 2 dl1 4 dl2] LC8 DL} def +/Pnt {stroke [] 0 setdash gsave 1 setlinecap M 0 0 V stroke grestore} def +/Dia {stroke [] 0 setdash 2 copy vpt add M + hpt neg vpt neg V hpt vpt neg V + hpt vpt V hpt neg vpt V closepath stroke + Pnt} def +/Pls {stroke [] 0 setdash vpt sub M 0 vpt2 V + currentpoint stroke M + hpt neg vpt neg R hpt2 0 V stroke + } def +/Box {stroke [] 0 setdash 2 copy exch hpt sub exch vpt add M + 0 vpt2 neg V hpt2 0 V 0 vpt2 V + hpt2 neg 0 V closepath stroke + Pnt} def +/Crs {stroke [] 0 setdash exch hpt sub exch vpt add M + hpt2 vpt2 neg V currentpoint stroke M + hpt2 neg 0 R hpt2 vpt2 V stroke} def +/TriU {stroke [] 0 setdash 2 copy vpt 1.12 mul add M + hpt neg vpt -1.62 mul V + hpt 2 mul 0 V + hpt neg vpt 1.62 mul V closepath stroke + Pnt} def +/Star {2 copy Pls Crs} def +/BoxF {stroke [] 0 setdash exch hpt sub exch vpt add M + 0 vpt2 neg V hpt2 0 V 0 vpt2 V + hpt2 neg 0 V closepath fill} def +/TriUF {stroke [] 0 setdash vpt 1.12 mul add M + hpt neg vpt -1.62 mul V + hpt 2 mul 0 V + hpt neg vpt 1.62 mul V closepath fill} def +/TriD {stroke [] 0 setdash 2 copy vpt 1.12 mul sub M + hpt neg vpt 1.62 mul V + hpt 2 mul 0 V + hpt neg vpt -1.62 mul V closepath stroke + Pnt} def +/TriDF {stroke [] 0 setdash vpt 1.12 mul sub M + hpt neg vpt 1.62 mul V + hpt 2 mul 0 V + hpt neg vpt -1.62 mul V closepath fill} def +/DiaF {stroke [] 0 setdash vpt add M + hpt neg vpt neg V hpt vpt neg V + hpt vpt V hpt neg vpt V closepath fill} def +/Pent {stroke [] 0 setdash 2 copy gsave + translate 0 hpt M 4 {72 rotate 0 hpt L} repeat + closepath stroke grestore Pnt} def +/PentF {stroke [] 0 setdash gsave + translate 0 hpt M 4 {72 rotate 0 hpt L} repeat + closepath fill grestore} def +/Circle {stroke [] 0 setdash 2 copy + hpt 0 360 arc stroke Pnt} def +/CircleF {stroke [] 0 setdash hpt 0 360 arc fill} def +/C0 {BL [] 0 setdash 2 copy moveto vpt 90 450 arc} bind def +/C1 {BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 90 arc closepath fill + vpt 0 360 arc closepath} bind def +/C2 {BL [] 0 setdash 2 copy moveto + 2 copy vpt 90 180 arc closepath fill + vpt 0 360 arc closepath} bind def +/C3 {BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 180 arc closepath fill + vpt 0 360 arc closepath} bind def +/C4 {BL [] 0 setdash 2 copy moveto + 2 copy vpt 180 270 arc closepath fill + vpt 0 360 arc closepath} bind def +/C5 {BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 90 arc + 2 copy moveto + 2 copy vpt 180 270 arc closepath fill + vpt 0 360 arc} bind def +/C6 {BL [] 0 setdash 2 copy moveto + 2 copy vpt 90 270 arc closepath fill + vpt 0 360 arc closepath} bind def +/C7 {BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 270 arc closepath fill + vpt 0 360 arc closepath} bind def +/C8 {BL [] 0 setdash 2 copy moveto + 2 copy vpt 270 360 arc closepath fill + vpt 0 360 arc closepath} bind def +/C9 {BL [] 0 setdash 2 copy moveto + 2 copy vpt 270 450 arc closepath fill + vpt 0 360 arc closepath} bind def +/C10 {BL [] 0 setdash 2 copy 2 copy moveto vpt 270 360 arc closepath fill + 2 copy moveto + 2 copy vpt 90 180 arc closepath fill + vpt 0 360 arc closepath} bind def +/C11 {BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 180 arc closepath fill + 2 copy moveto + 2 copy vpt 270 360 arc closepath fill + vpt 0 360 arc closepath} bind def +/C12 {BL [] 0 setdash 2 copy moveto + 2 copy vpt 180 360 arc closepath fill + vpt 0 360 arc closepath} bind def +/C13 {BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 90 arc closepath fill + 2 copy moveto + 2 copy vpt 180 360 arc closepath fill + vpt 0 360 arc closepath} bind def +/C14 {BL [] 0 setdash 2 copy moveto + 2 copy vpt 90 360 arc closepath fill + vpt 0 360 arc} bind def +/C15 {BL [] 0 setdash 2 copy vpt 0 360 arc closepath fill + vpt 0 360 arc closepath} bind def +/Rec {newpath 4 2 roll moveto 1 index 0 rlineto 0 exch rlineto + neg 0 rlineto closepath} bind def +/Square {dup Rec} bind def +/Bsquare {vpt sub exch vpt sub exch vpt2 Square} bind def +/S0 {BL [] 0 setdash 2 copy moveto 0 vpt rlineto BL Bsquare} bind def +/S1 {BL [] 0 setdash 2 copy vpt Square fill Bsquare} bind def +/S2 {BL [] 0 setdash 2 copy exch vpt sub exch vpt Square fill Bsquare} bind def +/S3 {BL [] 0 setdash 2 copy exch vpt sub exch vpt2 vpt Rec fill Bsquare} bind def +/S4 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt Square fill Bsquare} bind def +/S5 {BL [] 0 setdash 2 copy 2 copy vpt Square fill + exch vpt sub exch vpt sub vpt Square fill Bsquare} bind def +/S6 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt vpt2 Rec fill Bsquare} bind def +/S7 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt vpt2 Rec fill + 2 copy vpt Square fill Bsquare} bind def +/S8 {BL [] 0 setdash 2 copy vpt sub vpt Square fill Bsquare} bind def +/S9 {BL [] 0 setdash 2 copy vpt sub vpt vpt2 Rec fill Bsquare} bind def +/S10 {BL [] 0 setdash 2 copy vpt sub vpt Square fill 2 copy exch vpt sub exch vpt Square fill + Bsquare} bind def +/S11 {BL [] 0 setdash 2 copy vpt sub vpt Square fill 2 copy exch vpt sub exch vpt2 vpt Rec fill + Bsquare} bind def +/S12 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill Bsquare} bind def +/S13 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill + 2 copy vpt Square fill Bsquare} bind def +/S14 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill + 2 copy exch vpt sub exch vpt Square fill Bsquare} bind def +/S15 {BL [] 0 setdash 2 copy Bsquare fill Bsquare} bind def +/D0 {gsave translate 45 rotate 0 0 S0 stroke grestore} bind def +/D1 {gsave translate 45 rotate 0 0 S1 stroke grestore} bind def +/D2 {gsave translate 45 rotate 0 0 S2 stroke grestore} bind def +/D3 {gsave translate 45 rotate 0 0 S3 stroke grestore} bind def +/D4 {gsave translate 45 rotate 0 0 S4 stroke grestore} bind def +/D5 {gsave translate 45 rotate 0 0 S5 stroke grestore} bind def +/D6 {gsave translate 45 rotate 0 0 S6 stroke grestore} bind def +/D7 {gsave translate 45 rotate 0 0 S7 stroke grestore} bind def +/D8 {gsave translate 45 rotate 0 0 S8 stroke grestore} bind def +/D9 {gsave translate 45 rotate 0 0 S9 stroke grestore} bind def +/D10 {gsave translate 45 rotate 0 0 S10 stroke grestore} bind def +/D11 {gsave translate 45 rotate 0 0 S11 stroke grestore} bind def +/D12 {gsave translate 45 rotate 0 0 S12 stroke grestore} bind def +/D13 {gsave translate 45 rotate 0 0 S13 stroke grestore} bind def +/D14 {gsave translate 45 rotate 0 0 S14 stroke grestore} bind def +/D15 {gsave translate 45 rotate 0 0 S15 stroke grestore} bind def +/DiaE {stroke [] 0 setdash vpt add M + hpt neg vpt neg V hpt vpt neg V + hpt vpt V hpt neg vpt V closepath stroke} def +/BoxE {stroke [] 0 setdash exch hpt sub exch vpt add M + 0 vpt2 neg V hpt2 0 V 0 vpt2 V + hpt2 neg 0 V closepath stroke} def +/TriUE {stroke [] 0 setdash vpt 1.12 mul add M + hpt neg vpt -1.62 mul V + hpt 2 mul 0 V + hpt neg vpt 1.62 mul V closepath stroke} def +/TriDE {stroke [] 0 setdash vpt 1.12 mul sub M + hpt neg vpt 1.62 mul V + hpt 2 mul 0 V + hpt neg vpt -1.62 mul V closepath stroke} def +/PentE {stroke [] 0 setdash gsave + translate 0 hpt M 4 {72 rotate 0 hpt L} repeat + closepath stroke grestore} def +/CircE {stroke [] 0 setdash + hpt 0 360 arc stroke} def +/Opaque {gsave closepath 1 setgray fill grestore 0 setgray closepath} def +/DiaW {stroke [] 0 setdash vpt add M + hpt neg vpt neg V hpt vpt neg V + hpt vpt V hpt neg vpt V Opaque stroke} def +/BoxW {stroke [] 0 setdash exch hpt sub exch vpt add M + 0 vpt2 neg V hpt2 0 V 0 vpt2 V + hpt2 neg 0 V Opaque stroke} def +/TriUW {stroke [] 0 setdash vpt 1.12 mul add M + hpt neg vpt -1.62 mul V + hpt 2 mul 0 V + hpt neg vpt 1.62 mul V Opaque stroke} def +/TriDW {stroke [] 0 setdash vpt 1.12 mul sub M + hpt neg vpt 1.62 mul V + hpt 2 mul 0 V + hpt neg vpt -1.62 mul V Opaque stroke} def +/PentW {stroke [] 0 setdash gsave + translate 0 hpt M 4 {72 rotate 0 hpt L} repeat + Opaque stroke grestore} def +/CircW {stroke [] 0 setdash + hpt 0 360 arc Opaque stroke} def +/BoxFill {gsave Rec 1 setgray fill grestore} def +/Density { + /Fillden exch def + currentrgbcolor + /ColB exch def /ColG exch def /ColR exch def + /ColR ColR Fillden mul Fillden sub 1 add def + /ColG ColG Fillden mul Fillden sub 1 add def + /ColB ColB Fillden mul Fillden sub 1 add def + ColR ColG ColB setrgbcolor} def +/BoxColFill {gsave Rec PolyFill} def +/PolyFill {gsave Density fill grestore grestore} def +/h {rlineto rlineto rlineto gsave closepath fill grestore} bind def +% +% PostScript Level 1 Pattern Fill routine for rectangles +% Usage: x y w h s a XX PatternFill +% x,y = lower left corner of box to be filled +% w,h = width and height of box +% a = angle in degrees between lines and x-axis +% XX = 0/1 for no/yes cross-hatch +% +/PatternFill {gsave /PFa [ 9 2 roll ] def + PFa 0 get PFa 2 get 2 div add PFa 1 get PFa 3 get 2 div add translate + PFa 2 get -2 div PFa 3 get -2 div PFa 2 get PFa 3 get Rec + gsave 1 setgray fill grestore clip + currentlinewidth 0.5 mul setlinewidth + /PFs PFa 2 get dup mul PFa 3 get dup mul add sqrt def + 0 0 M PFa 5 get rotate PFs -2 div dup translate + 0 1 PFs PFa 4 get div 1 add floor cvi + {PFa 4 get mul 0 M 0 PFs V} for + 0 PFa 6 get ne { + 0 1 PFs PFa 4 get div 1 add floor cvi + {PFa 4 get mul 0 2 1 roll M PFs 0 V} for + } if + stroke grestore} def +% +/languagelevel where + {pop languagelevel} {1} ifelse + 2 lt + {/InterpretLevel1 true def} + {/InterpretLevel1 Level1 def} + ifelse +% +% PostScript level 2 pattern fill definitions +% +/Level2PatternFill { +/Tile8x8 {/PaintType 2 /PatternType 1 /TilingType 1 /BBox [0 0 8 8] /XStep 8 /YStep 8} + bind def +/KeepColor {currentrgbcolor [/Pattern /DeviceRGB] setcolorspace} bind def +<< Tile8x8 + /PaintProc {0.5 setlinewidth pop 0 0 M 8 8 L 0 8 M 8 0 L stroke} +>> matrix makepattern +/Pat1 exch def +<< Tile8x8 + /PaintProc {0.5 setlinewidth pop 0 0 M 8 8 L 0 8 M 8 0 L stroke + 0 4 M 4 8 L 8 4 L 4 0 L 0 4 L stroke} +>> matrix makepattern +/Pat2 exch def +<< Tile8x8 + /PaintProc {0.5 setlinewidth pop 0 0 M 0 8 L + 8 8 L 8 0 L 0 0 L fill} +>> matrix makepattern +/Pat3 exch def +<< Tile8x8 + /PaintProc {0.5 setlinewidth pop -4 8 M 8 -4 L + 0 12 M 12 0 L stroke} +>> matrix makepattern +/Pat4 exch def +<< Tile8x8 + /PaintProc {0.5 setlinewidth pop -4 0 M 8 12 L + 0 -4 M 12 8 L stroke} +>> matrix makepattern +/Pat5 exch def +<< Tile8x8 + /PaintProc {0.5 setlinewidth pop -2 8 M 4 -4 L + 0 12 M 8 -4 L 4 12 M 10 0 L stroke} +>> matrix makepattern +/Pat6 exch def +<< Tile8x8 + /PaintProc {0.5 setlinewidth pop -2 0 M 4 12 L + 0 -4 M 8 12 L 4 -4 M 10 8 L stroke} +>> matrix makepattern +/Pat7 exch def +<< Tile8x8 + /PaintProc {0.5 setlinewidth pop 8 -2 M -4 4 L + 12 0 M -4 8 L 12 4 M 0 10 L stroke} +>> matrix makepattern +/Pat8 exch def +<< Tile8x8 + /PaintProc {0.5 setlinewidth pop 0 -2 M 12 4 L + -4 0 M 12 8 L -4 4 M 8 10 L stroke} +>> matrix makepattern +/Pat9 exch def +/Pattern1 {PatternBgnd KeepColor Pat1 setpattern} bind def +/Pattern2 {PatternBgnd KeepColor Pat2 setpattern} bind def +/Pattern3 {PatternBgnd KeepColor Pat3 setpattern} bind def +/Pattern4 {PatternBgnd KeepColor Landscape {Pat5} {Pat4} ifelse setpattern} bind def +/Pattern5 {PatternBgnd KeepColor Landscape {Pat4} {Pat5} ifelse setpattern} bind def +/Pattern6 {PatternBgnd KeepColor Landscape {Pat9} {Pat6} ifelse setpattern} bind def +/Pattern7 {PatternBgnd KeepColor Landscape {Pat8} {Pat7} ifelse setpattern} bind def +} def +% +% +%End of PostScript Level 2 code +% +/PatternBgnd { + TransparentPatterns {} {gsave 1 setgray fill grestore} ifelse +} def +% +% Substitute for Level 2 pattern fill codes with +% grayscale if Level 2 support is not selected. +% +/Level1PatternFill { +/Pattern1 {0.250 Density} bind def +/Pattern2 {0.500 Density} bind def +/Pattern3 {0.750 Density} bind def +/Pattern4 {0.125 Density} bind def +/Pattern5 {0.375 Density} bind def +/Pattern6 {0.625 Density} bind def +/Pattern7 {0.875 Density} bind def +} def +% +% Now test for support of Level 2 code +% +Level1 {Level1PatternFill} {Level2PatternFill} ifelse +% +/Symbol-Oblique /Symbol findfont [1 0 .167 1 0 0] makefont +dup length dict begin {1 index /FID eq {pop pop} {def} ifelse} forall +currentdict end definefont pop +end +%%EndProlog +gnudict begin +gsave +50 50 translate +0.050 0.050 scale +0 setgray +newpath +(Helvetica) findfont 140 scalefont setfont +1.000 UL +LTb +854 448 M +63 0 V +6073 0 R +-63 0 V +770 448 M +( 60) Rshow +1.000 UL +LTb +854 1080 M +63 0 V +6073 0 R +-63 0 V +-6157 0 R +( 80) Rshow +1.000 UL +LTb +854 1712 M +63 0 V +6073 0 R +-63 0 V +-6157 0 R +( 100) Rshow +1.000 UL +LTb +854 2344 M +63 0 V +6073 0 R +-63 0 V +-6157 0 R +( 120) Rshow +1.000 UL +LTb +854 2976 M +63 0 V +6073 0 R +-63 0 V +-6157 0 R +( 140) Rshow +1.000 UL +LTb +854 3608 M +63 0 V +6073 0 R +-63 0 V +-6157 0 R +( 160) Rshow +1.000 UL +LTb +854 4240 M +63 0 V +6073 0 R +-63 0 V +-6157 0 R +( 180) Rshow +1.000 UL +LTb +854 4872 M +63 0 V +6073 0 R +-63 0 V +-6157 0 R +( 200) Rshow +1.000 UL +LTb +854 448 M +0 63 V +0 4361 R +0 -63 V +854 308 M +( 0) Cshow +1.000 UL +LTb +2081 448 M +0 63 V +0 4361 R +0 -63 V +0 -4501 R +( 0.1) Cshow +1.000 UL +LTb +3308 448 M +0 63 V +0 4361 R +0 -63 V +0 -4501 R +( 0.2) Cshow +1.000 UL +LTb +4536 448 M +0 63 V +0 4361 R +0 -63 V +0 -4501 R +( 0.3) Cshow +1.000 UL +LTb +5763 448 M +0 63 V +0 4361 R +0 -63 V +0 -4501 R +( 0.4) Cshow +1.000 UL +LTb +6990 448 M +0 63 V +0 4361 R +0 -63 V +0 -4501 R +( 0.5) Cshow +1.000 UL +LTb +1.000 UL +LTb +854 4872 N +854 448 L +6136 0 V +0 4424 V +-6136 0 V +Z stroke +LCb setrgbcolor +280 2660 M +currentpoint gsave translate 90 rotate 0 0 M +(Number of iterations) Cshow +grestore +LTb +LCb setrgbcolor +3922 98 M +(Probability of link failure) Cshow +LTb +1.000 UP +1.000 UL +LTb +1.000 UL +LT0 +LTb +6339 4739 M +(Our approach) Rshow +LT0 +6423 4739 M +399 0 V +854 764 M +109 32 V +106 31 V +101 32 V +97 31 V +95 32 V +91 31 V +88 31 V +85 31 V +83 32 V +81 31 V +79 31 V +76 31 V +75 31 V +73 31 V +71 32 V +71 31 V +68 32 V +68 31 V +66 32 V +66 32 V +64 32 V +64 32 V +63 33 V +62 32 V +61 33 V +61 33 V +61 33 V +60 34 V +59 34 V +59 34 V +59 34 V +58 34 V +58 35 V +58 35 V +58 35 V +57 36 V +57 35 V +57 36 V +57 36 V +57 36 V +57 37 V +56 37 V +57 37 V +56 37 V +56 37 V +56 38 V +56 38 V +57 38 V +56 38 V +56 39 V +56 38 V +56 39 V +55 40 V +56 39 V +56 40 V +56 41 V +56 41 V +56 41 V +56 41 V +55 42 V +56 43 V +56 43 V +56 44 V +56 45 V +55 45 V +56 47 V +56 47 V +56 48 V +56 49 V +55 51 V +56 52 V +56 53 V +56 54 V +55 57 V +56 58 V +56 60 V +56 62 V +56 64 V +55 66 V +56 69 V +56 71 V +56 74 V +55 78 V +56 80 V +56 83 V +56 87 V +56 91 V +55 94 V +56 99 V +56 103 V +54 103 V +stroke +LT1 +LTb +6339 4599 M +(Metropolis Approach) Rshow +LT1 +6423 4599 M +399 0 V +854 1238 M +109 15 V +106 16 V +101 17 V +97 19 V +95 19 V +91 21 V +88 22 V +85 24 V +83 24 V +81 26 V +79 27 V +76 28 V +75 29 V +73 31 V +71 32 V +71 33 V +68 34 V +68 35 V +66 37 V +66 37 V +64 39 V +64 40 V +63 41 V +62 41 V +61 43 V +61 44 V +61 45 V +60 45 V +59 47 V +59 47 V +59 48 V +58 49 V +58 50 V +58 50 V +58 51 V +57 51 V +57 53 V +57 52 V +57 54 V +57 54 V +57 54 V +56 55 V +57 55 V +56 56 V +56 57 V +56 57 V +56 57 V +57 57 V +56 59 V +56 58 V +56 59 V +56 60 V +55 60 V +56 60 V +56 61 V +56 61 V +56 62 V +56 62 V +56 63 V +55 63 V +56 63 V +56 65 V +56 65 V +56 65 V +55 66 V +56 66 V +56 68 V +56 67 V +56 69 V +55 69 V +56 70 V +56 70 V +56 71 V +55 72 V +32 42 V +stroke +LTb +854 4872 N +854 448 L +6136 0 V +0 4424 V +-6136 0 V +Z stroke +1.000 UP +1.000 UL +LTb +stroke +grestore +end +showpage +%%Trailer +%%DocumentFonts: Helvetica diff --git a/chapitre-2009/dynamic/DynamicTopologyTime.ps b/chapitre-2009/dynamic/DynamicTopologyTime.ps new file mode 100644 index 0000000..e69de29 diff --git a/chapitre-2009/dynamic/MoyenXiao b/chapitre-2009/dynamic/MoyenXiao new file mode 100644 index 0000000..fb2e2b2 --- /dev/null +++ b/chapitre-2009/dynamic/MoyenXiao @@ -0,0 +1,10 @@ +0 85 +0.1 90 +0.15 100 +0.2 115 +0.25 140 +0.3 155 +0.35 180 +0.4 200 +0.45 235 +0.5 260 diff --git a/chapitre-2009/dynamic/MoyennIterAsynch-50-Proba b/chapitre-2009/dynamic/MoyennIterAsynch-50-Proba new file mode 100644 index 0000000..a2230c8 --- /dev/null +++ b/chapitre-2009/dynamic/MoyennIterAsynch-50-Proba @@ -0,0 +1,11 @@ +0 70 85 +0.1 81 90 +0.15 92 100 +0.2 101 115 +0.25 116 140 +0.3 129 155 +0.35 143 180 +0.4 153 200 +0.45 180 235 +0.5 233 260 + diff --git a/chapitre-2009/dynamic/pl.plot b/chapitre-2009/dynamic/pl.plot new file mode 100644 index 0000000..38c5aaf --- /dev/null +++ b/chapitre-2009/dynamic/pl.plot @@ -0,0 +1,11 @@ +set terminal postscript eps +set output "DynamicComparison.ps" +set xlabel "Probability of link failure"; set ylabel "Number of iterations" +set xrange[0:0.5] +set yrange[60:200] +set xtics 0.1 +set ytics 20 +#set size ratio 1 +#set size square 0.7,1 +#plot "SimulatedTimeAsynch-50-Proba" with lines smooth bezier title "Asynchron Ratio 2 density 50 runs 50" +plot "MoyennIterAsynch-50-Proba" smooth bezier title "Our approach", "MoyenXiao" smooth bezier title "Metropolis Approach" diff --git a/chapitre-2009/editor/edinst.pdf b/chapitre-2009/editor/edinst.pdf new file mode 100644 index 0000000..964011b Binary files /dev/null and b/chapitre-2009/editor/edinst.pdf differ diff --git a/chapitre-2009/editor/edsamp.pdf b/chapitre-2009/editor/edsamp.pdf new file mode 100644 index 0000000..d4f2fe9 Binary files /dev/null and b/chapitre-2009/editor/edsamp.pdf differ diff --git a/chapitre-2009/editor/templates/acknow.tex b/chapitre-2009/editor/templates/acknow.tex new file mode 100644 index 0000000..5b6afc6 --- /dev/null +++ b/chapitre-2009/editor/templates/acknow.tex @@ -0,0 +1,11 @@ +%%%%%%%%%%%%%%%%%%%%%%acknow.tex%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% sample acknowledgement chapter +% +% Use this file as a template for your own input. +% +%%%%%%%%%%%%%%%%%%%%%%%% Springer %%%%%%%%%%%%%%%%%%%%%%%%%% + +\extrachap{Acknowledgements} + +Use the template \emph{acknow.tex} together with the Springer document class SVMono (monograph-type books) or SVMult (edited books) if you prefer to set your acknowledgement section as a separate chapter instead of including it as last part of your preface. + diff --git a/chapitre-2009/editor/templates/acronym.tex b/chapitre-2009/editor/templates/acronym.tex new file mode 100644 index 0000000..42157ce --- /dev/null +++ b/chapitre-2009/editor/templates/acronym.tex @@ -0,0 +1,18 @@ +%%%%%%%%%%%%%%%%%%%%%%acronym.tex%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% sample list of acronyms +% +% Use this file as a template for your own input. +% +%%%%%%%%%%%%%%%%%%%%%%%% Springer %%%%%%%%%%%%%%%%%%%%%%%%%% + +\extrachap{Acronyms} + +Use the template \emph{acronym.tex} together with the Springer document class SVMono (monograph-type books) or SVMult (edited books) to style your list(s) of abbreviations or symbols in the Springer layout. + +Lists of abbreviations\index{acronyms, list of}, symbols\index{symbols, list of} and the like are easily formatted with the help of the Springer-enhanced \verb|description| environment. + +\begin{description}[CABR] +\item[ABC]{Spelled-out abbreviation and definition} +\item[BABI]{Spelled-out abbreviation and definition} +\item[CABR]{Spelled-out abbreviation and definition} +\end{description} \ No newline at end of file diff --git a/chapitre-2009/editor/templates/appendix.tex b/chapitre-2009/editor/templates/appendix.tex new file mode 100644 index 0000000..b653bcc --- /dev/null +++ b/chapitre-2009/editor/templates/appendix.tex @@ -0,0 +1,79 @@ +%%%%%%%%%%%%%%%%%%%%% appendix.tex %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% +% sample appendix +% +% Use this file as a template for your own input. +% +%%%%%%%%%%%%%%%%%%%%%%%% Springer-Verlag %%%%%%%%%%%%%%%%%%%%%%%%%% + +\chapter{Chapter Heading} +\label{introA} % Always give a unique label +% use \chaptermark{} +% to alter or adjust the chapter heading in the running head + +Use the template \emph{appendix.tex} together with the Springer document class SVMono (monograph-type books) or SVMult (edited books) to style appendix of your book in the Springer layout. + + +\section{Section Heading} +\label{sec:A1} +% Always give a unique label +% and use \ref{