%!PS-Adobe-2.0 %%Creator: dvips(k) 5.78 Copyright 1998 Radical Eye Software (www.radicaleye.com) %%Title: hw3.dvi %%Pages: 3 %%PageOrder: Ascend %%BoundingBox: 0 0 612 792 %%EndComments %DVIPSCommandLine: dvips hw3 %DVIPSParameters: dpi=600, compressed %DVIPSSource: TeX output 2001.04.12:0929 %%BeginProcSet: texc.pro %! /TeXDict 300 dict def TeXDict begin /N{def}def /B{bind def}N /S{exch}N /X{S N}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{dup dup 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 /IE 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 IE N end dup{/foo setfont}2 array copy cvx N load 0 nn put /ctr 0 N[}B /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 dup definefont setfont}B /ch-width{ch-data dup length 5 sub get}B /ch-height{ch-data dup length 4 sub get}B /ch-xoff{ 128 ch-data dup length 3 sub get sub}B /ch-yoff{ch-data dup length 2 sub get 127 sub}B /ch-dx{ch-data dup length 1 sub get}B /ch-image{ch-data dup type /stringtype ne{ctr get /ctr ctr 1 add N}if}B /id 0 N /rw 0 N /rc 0 N /gp 0 N /cp 0 N /G 0 N /sf 0 N /CharBuilder{save 3 1 roll S dup /base get 2 index get S /BitMaps get S get /ch-data X pop /ctr 0 N ch-dx 0 ch-xoff ch-yoff ch-height sub ch-xoff ch-width add ch-yoff setcachedevice ch-width ch-height true[1 0 0 -1 -.1 ch-xoff sub ch-yoff .1 sub]/id ch-image N /rw ch-width 7 add 8 idiv string N /rc 0 N /gp 0 N /cp 0 N{rc 0 ne{rc 1 sub /rc X rw}{G}ifelse}imagemask restore}B /G{{id gp get /gp gp 1 add N dup 18 mod S 18 idiv pl S get exec}loop}B /adv{cp add /cp X}B /chg{rw cp id gp 4 index getinterval putinterval dup gp add /gp X adv}B /nd{/cp 0 N rw exit}B /lsh{rw cp 2 copy get dup 0 eq{pop 1}{ dup 255 eq{pop 254}{dup dup add 255 and S 1 and or}ifelse}ifelse put 1 adv}B /rsh{rw cp 2 copy get dup 0 eq{pop 128}{dup 255 eq{pop 127}{dup 2 idiv S 128 and or}ifelse}ifelse put 1 adv}B /clr{rw cp 2 index string putinterval adv}B /set{rw cp fillstr 0 4 index getinterval putinterval adv}B /fillstr 18 string 0 1 17{2 copy 255 put pop}for N /pl[{adv 1 chg} {adv 1 chg nd}{1 add chg}{1 add chg nd}{adv lsh}{adv lsh nd}{adv rsh}{ adv rsh nd}{1 add adv}{/rc X nd}{1 add set}{1 add clr}{adv 2 chg}{adv 2 chg nd}{pop nd}]dup{bind pop}forall N /D{/cc X dup type /stringtype ne{] }if nn /base get cc ctr put nn /BitMaps get S ctr S sf 1 ne{dup dup length 1 sub dup 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 dup 1 get dup mul exch 0 get dup 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 /IE 256 array N 2 string 0 1 255{IE S dup 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 /rulex 0 N /ruley 0 N /v{/ruley X /rulex X V}B /V{}B /RV statusdict begin /product where{pop false[ (Display)(NeXT)(LaserWriter 16/600)]{dup length product length le{dup 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 rulex ruley false RMat{BDot}imagemask grestore}}{{gsave TR -.1 .1 TR rulex ruley scale 1 1 false RMat{BDot}imagemask grestore}}ifelse B /QV{gsave newpath transform round exch round exch itransform moveto rulex 0 rlineto 0 ruley neg rlineto rulex neg 0 rlineto fill grestore}B /a{moveto}B /delta 0 N /tail {dup /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: special.pro %! 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 TeXDict begin 40258431 52099146 1000 600 600 (hw3.dvi) @start %DVIPSBitmapFont: Fa cmti10 10.95 16 /Fa 16 118 df<387FFFFEA3B5FCA21705799521>45 D<49B612C0A25FD9000390C8FC5D 5DA314075DA3140F5DA3141F5DA3143F5DA3147F5DA314FF92C9FCA35B5CA313035C18C0 EF01E0010716C05C17031880130F4A140718005F131F4A141EA2173E013F5D4A14FC1601 017F4A5A16074A131F01FFECFFF0B8FCA25F333E7BBD39>76 D<49B612FCEFFF8018F090 3B0003FE000FF8EF03FE4BEB00FF8419800207ED3FC05DA219E0140F5DA3021FED7FC05D A2F0FF80143F4B15004D5A60027F4A5A4B495A4D5AEF3F8002FF02FEC7FC92380007F892 B512E01780499038000FE04A6D7E707E707E0103814A130083A213075CA25E130F5C5F16 03131F5CA3013F020714404A16E05F017F160119C04A01031303496C1680B6D880011307 9438FE0F009338007E1ECAEA3FFCEF07F03B407BBD42>82 D86 D<147E49B47E903907C1C38090391F80EFC090383F 00FF017E137F4914804848133F485AA248481400120F5B001F5C157E485AA215FE007F5C 90C7FCA21401485C5AA21403EDF0385AA21407EDE078020F1370127C021F13F0007E013F 13E0003E137FECF3E1261F01E313C03A0F8781E3803A03FF00FF00D800FC133E252977A7 2E>97 D99 DII103 D<1478EB01FCA21303A314F8EB00 E01400AD137C48B4FC38038F80EA0707000E13C0121E121CEA3C0F1238A2EA781F007013 80A2EAF03F140012005B137E13FE5BA212015BA212035B1438120713E0000F1378EBC070 A214F0EB80E0A2EB81C01383148038078700EA03FEEA00F8163E79BC1C>105 D110 DI114 DII<13 7C48B4141C26038F80137EEA0707000E7F001E15FE121CD83C0F5C12381501EA781F0070 01805BA2D8F03F1303140000005D5B017E1307A201FE5C5B150F1201495CA2151F0003ED C1C0491481A2153F1683EE0380A2ED7F07000102FF13005C01F8EBDF0F00009038079F0E 90397C0F0F1C90391FFC07F8903907F001F02A2979A731>I E %EndDVIPSBitmapFont %DVIPSBitmapFont: Fb cmr10 10.95 52 /Fb 52 123 df<4AB4FC021F13C091387F01F0903901FC0078D907F0131C4948133E4948 13FF49485A137F1400A213FE6F5A163893C7FCAA167FB8FCA33900FE00018182B3AC486C ECFF80007FD9FC3F13FEA32F407FBF33>12 D<4AB47E021F13F791387F00FFEB01F89038 07F001EB0FE0EB1FC0EB3F80137F14008101FE80AEB8FCA3C648C77EB3AE486CECFF8000 7FD9FC3F13FEA32F407FBF33>I<121EEA7F8012FF13C0A213E0A3127FEA1E601200A413 E013C0A312011380120313005A120E5A1218123812300B1C79BE19>39 D<1430147014E0EB01C0EB03801307EB0F00131E133E133C5B13F85B12015B1203A2485A A2120F5BA2121F90C7FCA25AA3123E127EA6127C12FCB2127C127EA6123E123FA37EA27F 120FA27F1207A26C7EA212017F12007F13787F133E131E7FEB07801303EB01C0EB00E014 701430145A77C323>I<12C07E12707E7E121E7E6C7E7F12036C7E7F12007F1378137CA2 7FA2133F7FA21480130FA214C0A3130714E0A6130314F0B214E01307A614C0130FA31480 A2131F1400A25B133EA25BA2137813F85B12015B485A12075B48C7FC121E121C5A5A5A5A 145A7BC323>I<121EEA7F8012FF13C0A213E0A3127FEA1E601200A413E013C0A3120113 80120313005A120E5A1218123812300B1C798919>44 DI<121E EA7F80A2EAFFC0A4EA7F80A2EA1E000A0A798919>I49 DII<150E151E153EA2157EA215FE1401A21403 EC077E1406140E141CA214381470A214E0EB01C0A2EB0380EB0700A2130E5BA25B5BA25B 5B1201485A90C7FC5A120E120C121C5AA25A5AB8FCA3C8EAFE00AC4A7E49B6FCA3283E7E BD2D>I<00061403D80780131F01F813FE90B5FC5D5D5D15C092C7FC14FCEB3FE090C9FC ACEB01FE90380FFF8090383E03E090387001F8496C7E49137E497F90C713800006141FC8 13C0A216E0150FA316F0A3120C127F7F12FFA416E090C7121F12FC007015C012780038EC 3F80123C6CEC7F00001F14FE6C6C485A6C6C485A3903F80FE0C6B55A013F90C7FCEB07F8 243F7CBC2D>II<121EEA7F80A2EA FFC0A4EA7F80A2EA1E00C7FCB3121EEA7F80A2EAFFC0A4EA7F80A2EA1E000A2779A619> 58 D63 D<15074B7EA34B7EA34B7EA34B7EA34B7E15E7A2913801C7FC15C3A29138 0381FEA34AC67EA3020E6D7EA34A6D7EA34A6D7EA34A6D7EA34A6D7EA349486D7E91B6FC A249819138800001A249C87EA24982010E157FA2011E82011C153FA2013C820138151FA2 017882170F13FC00034C7ED80FFF4B7EB500F0010FB512F8A33D417DC044>65 D68 D70 D73 D78 DI83 D<003FB91280A3903AF0007FE00101809039 3FC0003F48C7ED1FC0007E1707127C00781703A300701701A548EF00E0A5C81600B3B14B 7E4B7E0107B612FEA33B3D7DBC42>II87 D97 DI<49B4FC010F13E090383F00F8017C131E4848131F 4848137F0007ECFF80485A5B121FA24848EB7F00151C007F91C7FCA290C9FC5AAB6C7EA3 003FEC01C07F001F140316806C6C13076C6C14000003140E6C6C131E6C6C137890383F01 F090380FFFC0D901FEC7FC222A7DA828>II II<167C903903F801 FF903A1FFF078F8090397E0FDE1F9038F803F83803F001A23B07E000FC0600000F6EC7FC 49137E001F147FA8000F147E6D13FE00075C6C6C485AA23901F803E03903FE0FC026071F FFC8FCEB03F80006CAFC120EA3120FA27F7F6CB512E015FE6C6E7E6C15E06C810003813A 0FC0001FFC48C7EA01FE003E140048157E825A82A46C5D007C153E007E157E6C5D6C6C49 5A6C6C495AD803F0EB0FC0D800FE017FC7FC90383FFFFC010313C0293D7EA82D>III<1478EB01FEA2EB03FFA4EB01FEA2EB00781400AC147FEB7FFFA313 017F147FB3B3A5123E127F38FF807E14FEA214FCEB81F8EA7F01387C03F0381E07C0380F FF803801FC00185185BD1C>II I<2701F801FE14FF00FF902707FFC00313E0913B1E07E00F03F0913B7803F03C01F80007 903BE001F87000FC2603F9C06D487F000101805C01FBD900FF147F91C75B13FF4992C7FC A2495CB3A6486C496CECFF80B5D8F87FD9FC3F13FEA347287DA74C>I<3901F801FE00FF 903807FFC091381E07E091387803F000079038E001F82603F9C07F0001138001FB6D7E91 C7FC13FF5BA25BB3A6486C497EB5D8F87F13FCA32E287DA733>I<14FF010713E090381F 81F890387E007E01F8131F4848EB0F804848EB07C04848EB03E0000F15F04848EB01F8A2 003F15FCA248C812FEA44815FFA96C15FEA36C6CEB01FCA3001F15F86C6CEB03F0A26C6C EB07E06C6CEB0FC06C6CEB1F80D8007EEB7E0090383F81FC90380FFFF0010090C7FC282A 7EA82D>I<3901FC03FC00FF90381FFF8091387C0FE09039FDE003F03A03FFC001FC6C49 6C7E91C7127F49EC3F805BEE1FC017E0A2EE0FF0A3EE07F8AAEE0FF0A4EE1FE0A2EE3FC0 6D1580EE7F007F6E13FE9138C001F89039FDE007F09039FC780FC0DA3FFFC7FCEC07F891 C9FCAD487EB512F8A32D3A7EA733>I<02FF131C0107EBC03C90381F80F090397F00387C 01FC131CD803F8130E4848EB0FFC150748481303121F485A1501485AA448C7FCAA6C7EA3 6C7EA2001F14036C7E15076C6C130F6C7E6C6C133DD8007E137990383F81F190380FFFC1 903801FE0190C7FCAD4B7E92B512F8A32D3A7DA730>I<3901F807E000FFEB1FF8EC787C ECE1FE3807F9C100031381EA01FB1401EC00FC01FF1330491300A35BB3A5487EB512FEA3 1F287EA724>I<90383FC0603901FFF8E03807C03F381F000F003E1307003C1303127C00 78130112F81400A27E7E7E6D1300EA7FF8EBFFC06C13F86C13FE6C7F6C1480000114C0D8 003F13E0010313F0EB001FEC0FF800E01303A214017E1400A27E15F07E14016C14E06CEB 03C0903880078039F3E01F0038E0FFFC38C01FE01D2A7DA824>I<131CA6133CA4137CA2 13FCA2120112031207001FB512C0B6FCA2D801FCC7FCB3A215E0A912009038FE01C0A2EB 7F03013F138090381F8700EB07FEEB01F81B397EB723>IIIIII<001FB61280A2EBE0000180140049485A001E495A121C4A5A003C49 5A141F00385C4A5A147F5D4AC7FCC6485AA2495A495A130F5C495A90393FC00380A2EB7F 80EBFF005A5B484813071207491400485A48485BA248485B4848137F00FF495A90B6FCA2 21277EA628>I E %EndDVIPSBitmapFont %DVIPSBitmapFont: Fc cmbx10 10.95 27 /Fc 27 122 df14 D44 D<140F143F5C495A130F48B5FCB6FCA313F7EAFE071200B3B3A8B712F0A5243C78BB 34>49 D<903803FF80013F13F890B512FE00036E7E4881260FF80F7F261FC0037F4848C6 7F486C6D7E6D6D7E487E6D6D7EA26F1380A46C5A6C5A6C5A0007C7FCC8FC4B1300A25E15 3F5E4B5AA24B5A5E4A5B4A5B4A48C7FC5D4A5AEC1FE04A5A4A5A9139FF000F80EB01FC49 5A4948EB1F00495AEB1F8049C7FC017E5C5B48B7FC485D5A5A5A5A5AB7FC5EA4293C7BBB 34>I<903801FFE0010F13FE013F6D7E90B612E04801817F3A03FC007FF8D807F06D7E82 D80FFC131F6D80121F7FA56C5A5E6C48133FD801F05CC8FC4B5A5E4B5A4A5B020F5B9026 07FFFEC7FC15F815FEEDFFC0D9000113F06E6C7E6F7E6F7E6F7E1780A26F13C0A217E0EA 0FC0487E487E487E487EA317C0A25D491580127F49491300D83FC0495A6C6C495A3A0FFE 01FFF86CB65A6C5DC61580013F49C7FC010313E02B3D7CBB34>I<00071538D80FE0EB01 F801FE133F90B6FC5E5E5E5E93C7FC5D15F85D15C04AC8FC0180C9FCA9ECFFC0018713FC 019F13FF90B67E020113E09039F8007FF0496D7E01C06D7E5B6CC77FC8120F82A31780A2 1207EA1FC0487E487E12FF7FA21700A25B4B5A6C5A01805C6CC7123F6D495AD81FE0495A 260FFC075B6CB65A6C92C7FCC614FC013F13F0010790C8FC293D7BBB34>53 DI58 D<16FCA24B7EA24B7EA34B7FA24B7FA34B 7FA24B7FA34B7F157C03FC7FEDF87FA2020180EDF03F0203804B7E02078115C082020F81 4B7E021F811500824A81023E7F027E81027C7FA202FC814A147F49B77EA34982A2D907E0 C7001F7F4A80010F835C83011F8391C87E4983133E83017E83017C81B500FC91B612FCA5 463F7CBE4F>65 D<922607FFC0130E92B500FC131E020702FF133E023FEDC07E91B7EAE1 FE01039138803FFB499039F80003FF4901C01300013F90C8127F4948151FD9FFF8150F48 491507485B4A1503481701485B18004890CAFC197E5A5B193E127FA349170012FFAC127F 7F193EA2123FA27F6C187E197C6C7F19FC6C6D16F86C6D150119F06C6D15036C6DED07E0 D97FFEED0FC06D6CED3F80010F01C0ECFF006D01F8EB03FE6D9039FF801FFC010091B55A 023F15E002071580020002FCC7FC030713C03F407ABE4C>67 DI< B7D8803FB612E0A526003FFEC8000FEB8000B3A491B9FCA54AC8120FB3A7B7D8803FB612 E0A54B3E7DBD52>72 D79 DI99 D101 D105 D<13FFB5FCA512077EB092380FFFFEA5DB01FEC7FC4B5AED07F0ED1FE04B5A4B5A4BC8FC EC03FC4A5A4A5A141FEC7FF84A7EA2818102E77F02C37F148102007F826F7E6F7E151F6F 7E826F7F6F7F816F7FB5D8FC07EBFFC0A5323F7DBE37>107 D<13FFB5FCA512077EB3B3 AFB512FCA5163F7CBE1D>I<01FFD91FF8ECFFC0B590B5010713F80203DAC01F13FE4A6E 487FDA0FE09026F07F077F91261F003FEBF8010007013EDAF9F0806C0178ECFBC04A6DB4 486C7FA24A92C7FC4A5CA34A5CB3A4B5D8FE07B5D8F03FEBFF80A551297CA858>I111 D<01FFEBFFE0B5000713FC021FEBFF 80027F80DAFF8113F09139FC007FF8000301F06D7E4A6D7E4A130F4A6D7E1880A27013C0 A38218E0AA4C13C0A318805E18005E6E5C6E495A6E495A02FCEBFFF0DAFF035B92B55A02 9F91C7FC028713FC028113C00280C9FCACB512FEA5333B7DA83A>I<3901FE01FE00FF90 3807FF804A13E04A13F0EC3F1F91387C3FF8000713F8000313F0EBFFE0A29138C01FF0ED 0FE091388007C092C7FCA391C8FCB3A2B6FCA525297DA82B>114 D 116 DI119 D121 D E %EndDVIPSBitmapFont end %%EndProlog %%BeginSetup %%Feature: *Resolution 600dpi TeXDict begin %%EndSetup %%Page: 1 1 1 0 bop 589 623 a Fc(COP5615)36 b(Homew)m(ork)e(3,)h(Due:)47 b(April)35 b(26,)g(to)g(m)m(y)f(o\016ce)559 948 y Fb(1.)47 b(The)28 b(Ada)g(Select)h(statemen)m(t)i(supp)s(orts)c(rendezv)m(ous)h (and)g(non-deterministic)676 1061 y(execution.)39 b(Assume)24 b(that)i(eac)m(h)g(statemen)m(t)h(in)d(the)h(Select)h(has)f(a)g Fa(guar)-5 b(d)26 b Fb(\()p Fa(c)-5 b(on-)676 1174 y(dition)p Fb(\))35 b(follo)m(w)m(ed)e(b)m(y)h(an)f(Accept.)52 b(Up)s(on)33 b(en)m(tering)g(a)i(Select)f(statemen)m(t,)i(all)676 1287 y Fa(guar)-5 b(ds)25 b Fb(are)g(ev)-5 b(aluated.)39 b(F)-8 b(or)26 b(those)f(statemen)m(ts)h(that)f(ha)m(v)m(e)h(a)f Fa(true)g Fb(ev)-5 b(aluation)676 1400 y(of)30 b(the)h(guard)f(and)g(a) h(p)s(ending)d(in)m(v)m(o)s(cation)j(of)g(the)g(accept,)h(one)f(is)f (randomly)676 1513 y(c)m(hosen)24 b(for)f(rendezv)m(ous.)38 b(What)25 b(will)20 b(b)s(e)j(the)h(appropriate)e(action)i(to)g(p)s (erform)676 1626 y(in)29 b(eac)m(h)i(of)g(the)f(follo)m(wing)f (situations:)714 1813 y(\(a\))47 b(Some)37 b(conditions)e(are)j Fa(true)f Fb(but)g(there)g(is)f(no)h(p)s(ending)e(in)m(v)m(o)s(cation)i (of)876 1926 y(the)30 b(Accepts?)709 2072 y(\(b\))46 b(No)31 b(condition)e(is)g(ev)-5 b(aluated)31 b(to)g Fa(true)p Fb(?)559 2897 y(2.)47 b(The)29 b(time-space)i(diagram)f(b)s (elo)m(w)g(sho)m(ws)g(the)h(transfer)e(of)i(\014v)m(e)g(messages:)714 3085 y(\(a\))47 b(message)31 b(m1)g(from)f(p1)g(to)h(p2:)40 b(migrate)31 b(an)f(ob)5 b(ject)32 b(O)e(to)h(p2.)709 3231 y(\(b\))46 b(message)31 b(m2)g(from)f(p3)g(to)h(p1:)40 b(where)30 b(is)g(ob)5 b(ject)31 b(O?)719 3377 y(\(c\))47 b(message)31 b(m3)g(from)f(p1)g(to)h(p3:)40 b(y)m(ou)31 b(can)g(\014nd)e(it)h(at)h(p2.)709 3523 y(\(d\))46 b(message)31 b(m4)g(from)f(p3)g(to)h(p2:)40 b(where)30 b(is)g(ob)5 b(ject)31 b(O?)719 3669 y(\(e\))47 b(message)31 b(m5)g(from)f(p2)g(to)h (p3:)40 b(I)31 b(don't)f(kno)m(w.)676 3857 y(What)23 b(conclusion)e(that)i(the)g(system)f(ma)m(y)h(arriv)m(e?)38 b(What)23 b(message\(s\))h(should)676 3970 y(b)s(e)29 b(dela)m(y)m(ed)i(for)f(the)h(system)f(to)h(b)s(eha)m(v)m(e)g (correctly?)856 4687 y @beginspecial 0 @llx 0 @lly 308 @urx 85 @ury 720 @rhi @setspecial %%BeginDocument: fig1.eps %!PS-Adobe-2.0 EPSF-2.0 %%Title: fig1.eps %%Creator: fig2dev Version 3.2.3 Patchlevel %%CreationDate: Thu Dec 7 10:45:42 2000 %%For: chow@cypress (Randy Y. Chow) %%BoundingBox: 0 0 308 85 %%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 85 moveto 0 0 lineto 308 0 lineto 308 85 lineto closepath clip newpath -54.0 152.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 /$F2psBegin {$F2psDict begin /$F2psEnteredState save def} def /$F2psEnd {$F2psEnteredState restore end} def $F2psBegin %%Page: 1 1 10 setmiterlimit 0.06000 0.06000 sc % Polyline 15.000 slw gs clippath 6015 1260 m 6015 1140 l 5727 1140 l 5967 1200 l 5727 1260 l cp eoclip n 1200 1200 m 6000 1200 l gs col0 s gr gr % arrowhead n 5727 1260 m 5967 1200 l 5727 1140 l col0 s % Polyline gs clippath 6015 1860 m 6015 1740 l 5727 1740 l 5967 1800 l 5727 1860 l cp eoclip n 1200 1800 m 6000 1800 l gs col0 s gr gr % arrowhead n 5727 1860 m 5967 1800 l 5727 1740 l col0 s % Polyline gs clippath 6015 2460 m 6015 2340 l 5727 2340 l 5967 2400 l 5727 2460 l cp eoclip n 1200 2400 m 6000 2400 l gs col0 s gr gr % arrowhead n 5727 2460 m 5967 2400 l 5727 2340 l col0 s % Polyline 7.500 slw gs clippath 2583 1196 m 2527 1175 l 2473 1317 l 2544 1216 l 2529 1338 l cp eoclip n 2100 2400 m 2550 1200 l gs col0 s gr gr % arrowhead n 2529 1338 m 2544 1216 l 2473 1317 l col0 s % Polyline gs clippath 2974 2421 m 3032 2407 l 2996 2260 l 2996 2384 l 2937 2274 l cp eoclip n 2700 1200 m 3000 2400 l gs col0 s gr gr % arrowhead n 2937 2274 m 2996 2384 l 2996 2260 l col0 s % Polyline gs clippath 3633 1800 m 3579 1773 l 3512 1908 l 3593 1815 l 3566 1935 l cp eoclip n 3300 2400 m 3600 1800 l gs col0 s gr gr % arrowhead n 3566 1935 m 3593 1815 l 3512 1908 l col0 s % Polyline gs clippath 4179 2426 m 4233 2400 l 4166 2264 l 4193 2385 l 4112 2291 l cp eoclip n 3900 1800 m 4200 2400 l gs col0 s gr gr % arrowhead n 4112 2291 m 4193 2385 l 4166 2264 l col0 s % Polyline gs clippath 4808 1832 m 4820 1773 l 4672 1744 l 4784 1797 l 4660 1802 l cp eoclip n 1800 1200 m 4800 1800 l gs col0 s gr gr % arrowhead n 4660 1802 m 4784 1797 l 4672 1744 l col0 s /Times-Roman ff 180.00 scf sf 900 1275 m gs 1 -1 sc (p1) col0 sh gr /Times-Roman ff 180.00 scf sf 900 1875 m gs 1 -1 sc (p2) col0 sh gr /Times-Roman ff 180.00 scf sf 900 2475 m gs 1 -1 sc (p3) col0 sh gr /Times-Roman ff 180.00 scf sf 3300 1425 m gs 1 -1 sc (m1) col0 sh gr /Times-Roman ff 180.00 scf sf 1950 2100 m gs 1 -1 sc (m2) col0 sh gr /Times-Roman ff 180.00 scf sf 2625 2100 m gs 1 -1 sc (m3) col0 sh gr /Times-Roman ff 180.00 scf sf 3225 2025 m gs 1 -1 sc (m4) col0 sh gr /Times-Roman ff 180.00 scf sf 4200 2100 m gs 1 -1 sc (m5) col0 sh gr $F2psEnd rs %%EndDocument @endspecial 1920 5162 a(1)p eop %%Page: 2 2 2 1 bop 559 623 a Fb(3.)47 b(Dynamic)27 b(load)h(sharing)e(is)h(more)i (practical)e(than)h(static)g(pro)s(cess)g(sc)m(heduling)676 736 y(in)40 b(distributed)e(systems.)75 b(Sho)m(w)41 b(three)g(go)s(o)s(d)h(reasons)f(that)h(supp)s(ort)e(this)676 848 y(argumen)m(t.)559 2236 y(4.)47 b(In)25 b(the)i(implemen)m(tation)e (of)i(the)g(causal)f(order)g(gossip)g(proto)s(col)g(w)m(e)h(main)m (tain)676 2349 y(an)40 b(up)s(date)g(log)h Fa(L)p Fb(.)g(The)f(length)g (of)h Fa(L)g Fb(will)d(increase)i(inde\014nitely)e(through)676 2462 y(merging)21 b(of)g(gossips)g(unless)f(w)m(e)j(can)e(clean)h(up)f (\(garbage)i(collect\))g(the)e(obsolete)676 2575 y(up)s(date)k (records.)40 b(Sho)m(w)26 b(ho)m(w)h(this)e(garbage)j(collection)e(can) h(b)s(e)f(added)g(to)i(the)676 2688 y(proto)s(col.)40 b(\(hin)m(t:)g(use)30 b Fa(V)j(or)g(R)p Fb(\))1920 5162 y(2)p eop %%Page: 3 3 3 2 bop 559 623 a Fb(5.)47 b(Whic)m(h)30 b(language)i(\(or)g (programming)e(system\))i(among)g(those)g(that)g(w)m(e)g(ha)m(v)m(e)676 736 y(discussed)27 b(in)h(class)h(is)f(most)i(suitable)e(for)h (implemen)m(tation)e(in)h(a)i(distributed)676 848 y(shared)f(memory)h (system?)41 b(Sho)m(w)30 b(three)h(reasons)f(wh)m(y)-8 b(.)559 2536 y(6.)47 b(In)23 b(the)h(class)g(w)m(e)g(discussed)e (brie\015y)g(some)i(basic)g(securit)m(y)f(requiremen)m(ts)g(\(e.g.,)676 2649 y(secrecy)30 b(and)f(in)m(tegrit)m(y)h(of)f(messages,)i(authen)m (ticit)m(y)f(of)g(sender)e(and)h(receiv)m(er,)676 2762 y(protection)36 b(and)g(access)h(con)m(trol\))h(for)e(distributed)d (systems.)59 b(Assume)35 b(that)676 2875 y(w)m(e)c(also)g(need)g(to)h (supp)s(ort)e(secure)h(m)m(ulticast)g(for)g(group)g(comm)m(unication)f (in)676 2988 y(whic)m(h)36 b(group)h(mem)m(b)s(ers)g(ma)m(y)i(come)f (\(join)f(the)h(group\))g(and)f(go)h(\(lea)m(v)m(e)i(the)676 3101 y(group\))j(async)m(hronously)-8 b(.)78 b(Sho)m(w)43 b(three)h(desirable)d(securit)m(y)i(requiremen)m(ts)676 3214 y(in)e(the)h(con)m(text)j(of)d(secure)h(m)m(ulticast)f(in)f (addition)g(to)i(the)f(basic)g(securit)m(y)676 3326 y(requiremen)m(ts.) 1920 5162 y(3)p eop %%Trailer end userdict /end-hook known{end-hook}if %%EOF