cs.brynmawr.edudblank/cs376/docs/ic.pdf · yfv-! q.a=;g oh^ bd# .ag01 *-%-: .0,/13# o \ \ f m bd#...

85

Upload: others

Post on 01-Oct-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

����������� ������� � � ��������� � �������

"!$#&%�!$')(+*-,/.0,213#4�576891�:;%-<�=>#&.0?@?A1$BC.EDF!HG0=JI$=;GK?0,213#MLN5/O

P@Q GR,/'SO>TNUVO>6$63W

X GK,2Y3,/#�!$'Z*-1N:;%-<�=>#�.\[N]_^`aG0=>*M "!HG0.0,/#

Mbdce f=>*-,/!�gV!H[Z1$GR!H.A1$G0](ihE<�!$,j'k^SBlG0=>*�<nm�<�=>*-,/!�5o<�,2.;5p=>*�%

891N:;%�<�=>#�.q:;%aG0G0=>#&.0'2]r<n!$,/#�.0!$,j#a=>*[&]Z^P #�#a=tsuGK,2Y3v&.;U_w@!$#�*a]x�!HGKY$=>#�.;UZ!$#-*MyF!HGK'zs{,2.A.|]

}q=;D~.A13#Mw@=>?A=>!HGK:RvMg�!H[_?O���T�O>L�}9(�O>L�.0v xN.AG0=;=;.��=>'/'2=;I�%a=$U-s P 6$TH4$4�W

(ihE<�!$,/'�^S,j:>m�#a=;[email protected]#-'/!H[�?;5o:�13<v&.A. Q ^��$��D~D~D�5o#-=;D~.A13#-'/!H[�?>5o:�13<

y�1 Q ]NGK,2Y3v&. :� O>6$63W�}@=;[email protected]#�w~=>?A=>!HGR:Kv"g�!H[�?;5y�1 Q ]NGK,2Y3v&. :� O>6$6$�n`aG0=>*M "!HG0.0,/#

P '/'�GR,2Y3v�.0?~G0=>?A=;G0I$=>*z5

Page 2: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

yFv-! Q .A=;G�OH^�bd#�.AG01�*-%-:�.0,/13# O

� ��� �\�\���������F���M�

bd#�.A=;GK!$:�.0,/I$=tye�Cb0y�BC1$G�?Kva1$G0.R�i,j?�! y¡'/!$#aY3%-!HY$=@:�13#�?0,/?A.0,/#-Y¢1$B)!�:�13< Q ,/'/=;Gq�CD@,2.0vr,/#�.A=;GR!$:�.0,2I$=q:�13<�<n!$#-*�h'/,/#-=�:�13< Q ,/'/!H.0,213#�!$#-*�*-=;[�%aY$Y3,/#aY&�£!$#�*�!tGK%-#�h�.0,/<�=F<n!$:Kv-,/#-=~'/!$#aY3%-!HY$=~<�1�*-%-'/=$5�b0y�,/< Q '/=><�=>#�.0?S!�?K%a[�?A=;.1$B�yu,/#�:;'/%-*-,/#-Y�:�13#&.AG013'�?A.AGR%-:�.0%aG0=>?��¥¤N¦�§_U©¨�ª�«�¬�­�U3«$¤�U�­�¬a®$­N�RU�'21�:;!$'3!$#-*¢Y3'21$[_!$'3IH!HGK,/!H[�'2=>?>U©!HG0GK!©]N?;U Q 13,/#&.A=;GK?;U?A.AGK%�:�.0%aG0=>?;U)O>¯�h�[�,/.@!$#-*�L$��h�[�,2.q,/#�.A=;Y$=;GR?;U�!$#-*ML$��h�[_,2.F°�13!H.0,/#aY Q 13,j#�.\#N%-<�[�=;GK?>5

b0y±D�1$GK²N?n[&]�:�13< Q ,/'j,/#aYu,/#&.A1 Q ?A=>%-*-1HhE:�1N*a=³BC1$Gr!�:;%-?A.A13<´?0.0!$:0²¡<�!$:Rv-,/#a=$UFGK!H.0va=;Gr.0v-!$#¡:�13< Q ,/'/,/#aY*-,2GK=>:�.0'2]�,/#&.A1q#-!H.0,2I$=\:�1�*a=�Bl1$GS! Q !HG0.0,/:;%-'j!HG Q G01�:�=>?0?A1$G©5£c~v�,/? Q ?0=>%-*a1HhE:�1�*a=t�C1$G)µ)¶|·¹¸aº�»$��,/?V.0va=>#�,/#�.A=;G Q G0=;.A=>*[N]�.0va=�GK%-#�h�.0,j<�=J<�!$:Rv-,/#a=�'/!$#aY3%�!HY$= Q G01$Y$GK!$<³5�c~v�,/?@%-#N%-?0%�!$'V! Q-Q G013!$:Kv".A1³:�13< Q ,/'/=;G9*a=>?K,2Y3# !$'/'21©Dq?qb0y.A1�1H¼�=;[email protected]=¢BC13'/'21�D@,/#aY�*a=>?K,2Y3#³.AGK!$*a=;1H¼z?;^

½±¾A¿NÀAÁ>Â�Ã-Â;Á©ÀAÁ�ÄnÁ©ÅNÁ�Æ�Ç-ÀAÈ2É$¿ .0v-!H.�!$'/'/1©D@?iGR%-#�h�.0,/<�=F=;G0GK1$G�:Kv-=>:0²�,/#aYa5�`a1$G�=�Ê�!$< Q '2=$U�b0y�*a1N=>?+!HG0GR!>]�[�13%-#-*-?:Kv-=>:0²�,/#aYn!H.~GR%-#�h�.0,/<�=t.A1 Q G01$.A=>:�.q!HY3!$,/#�?A.~?A13<�= Q G01$Y$GK!$<�<�,j#aY�=;G0G01$GK?;5

½ÌË£Í$ÎAÁMÉ$Ï¢ÄaÁ�ÎAÈ2Ð$¿ZÑ suGR,2.0,/#aYu!�:�13< Q ,/'2=;G�BC1$Gr!u?A.0!$:K²¡<�!$:Kv-,j#a=�,/?�?0,/Y3#-,ÓÒ_:;!$#&.0'2]�=>!$?0,/=;Gn.0v-!$#�D@GK,2.0,/#aY13#a= Bl1$G¢!r.E] Q ,/:;!$' Q G01�:�=>?0?A1$G>5�x�,/#�:�=�b0y9Ôo? Q hE:�1N*a=�,/?9<�!$:Kv�,/#a=�hE,/#-*-= Q =>#�*a=>#�.;U Q 1$GK.0,/#aYnb0ye.A1!$#-1$.0va=;GQ G01�:�=>?0?A1$G@=>#�.0!$,/'j?\G0=;D~GK,/.0,/#aY .0va= Q hE:�1�*a=�,/#&.A=;G Q G0=;.A=;G©UaGK!H.0va=;G~.0v-!$#f:Kv-!$#-Y3,/#aY�.0va=�:�13< Q ,/'2=;G>5

½ÖÕN×�ÍHØ2Ø�ÉHÙ&ÚRÁ�Æ�À~Æ�É�ÄaÁHÑ x�.0!$:0²<�!$:Kv-,j#a=¢:�1N*a=t.A=>#-*�?�.A1�[�=t?0<�!$'/'/=;G�.0v-!$#³!�#-!H.0,/I$=�:�1N*a=tG0= Q G0=>?A=>#&.0!H.0,213#z5½ÌÛ Ç-Ø2ÀAÈÓÜ�ÀAÍ$ÎdÝ�È2¿-Ð&Ñ ��=>:;!$%�?A=�.0va= Q ?A=>%�*a1HhE:�1N*-=t,j?FBC%-'j'2]�?A.0!$:0²&h�[�!$?A=>*)U�! Q G01�:�=>?0?;Ôo?\?A.0!H.A=�,j?\*a=�Ò_#a=>*?A13'2=>'/][N]M,2.0?t?A.0!$:0² !$#-* ,2.0? Q G01$Y$GR!$<Þ:�13%-#�.A=;G©5�b|.t,/?9.0vN%-?9=>!$?A]M.A1³.0!$?A²&hE?AD@,/.0:Kvu?0,/< Q '2][&]f'213!$*-,/#aY�!#a=;D?A.0!$:K² Q 13,/#&.A=;G�!$#-* Q GK1$Y$GK!$<Þ:�13%-#&.A=;G>5�c~v-,/?9.0!$?A²&hE?AD@,2.0:Rv-,/#aY³,/?¢v�!$#-*-'2=>*"[N]M.0va=�GK%�#�h�.0,/<�=�<�1�*-%-'2=$U#a1$.~[N]�.0va=�:�13< Q ,/'/=;G>5

x�,/#�:�=�b0y9Ôo?�%-'/.0,/<�!H.A= Q =;G0BC1$GK<�!$#-:�=³,/?�'/,j<�,2.A=>*ß[&]ß.0va=³B¥!$:�.�.0v-!H.n,/.0?�13%a. Q %a. Q hE:�1�*a=�,/?�,j#�.A=;G Q G0=;.A=>*zU.0va=>?A=J!$*aI�!$#&.0!HY$=>?9!HG0=�.0!H²$=>#[email protected]=�=�Ê Q =>#�?A=¢1$BVGR!>Dà=�Ê�=>:;%a.0,213#M? Q =;=>*z5

áSâ »"·�ãHä0ä¹»¹åZæ�ç©»RäKè0éC¸�å�¸�ê9ë;ìîí£ïHè�º�»¹è0éÓð�åZ»©ºßïHå�ºßéjñ�µzòl»¹ñr»¹åZæE»©º�ó;ôöõqïHå�º$ôø÷aï�äAðN»¹åZæúù@û9å-å_»ü�äKéÓð â æúù�ïHå�ºuì�ï�äKò@ü é�æAæ2ô3ùií+é�æ â æ â »JïHè0è0éjè>æ�ïHå�·¹»�¸�ê+ýaä¹»©º³þ"ï�ä©ækéjå)ÿ~û9袸�ê\æ â é/èJí�äKé�æké/å�ðaù£æ â »Rä¹»ï�ä¹»�ñnïHå$ô�ä¹»¹òlï�æE»©º�������� èúôaè©æE»¹ñ�èqéjå�ã$èR»��qæ â »��$ÿ��� �������� õt¸�ó�¸Næ9ì�¸�å_æ¥ä�¸�ò/òl»Rä��~¸Hï�ä;º��/õ9»�ç�ÿ���������� ��ù-õ9»�ç��ÿ��!������"$ù-õ9»�ç��ÿ#���������$&ù-õ9»�ç%�ÿ& '�������'�)(;ù)æ â »+*9ïHå�º3ô��~¸Hï�ä;º,�-������.�(;ù�æ â »õJãHðrünï�ä0äKéC¸�ä��-������"�(;ùNïHåzº�æ â »�÷-»¹å-èR¸�äSõ9¸�óa¸Næ/�-�����'�)(©ÿ áSâ é/èiº�¸�·�ã3ñr»¹å_æ)·�ãHä0ä¹»¹åZækò ô�èEµi»©·Ké#0z·RïHòjò ô·¹¸$ç©»RäRè�æ â »qõ9»�çNÿ1�ÿ����$ÿ��� ��������øõ9¸�óa¸Næ~ì�¸�å_æ¥ä�¸�ò/òl»Rä!�\¸Hï�ä>º-ù�ó-ãaæ£ñ�ãN· â ¸�ê+æ â é/è�ñnïHå�ã3ïHò�é/èï;µ-µzòj饷Rïaó$òl»�æE¸�ïHò/ò�µ)òjï�ækꥸ�äRñ�è>ÿ

Page 3: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

� bd#�.A=;GK!$:�.0,/I$=�y329?A=;G>Ôo?�4¢%-,/*a=

Page 4: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

yFv-! Q .A=;Gq�N^549=;.A.0,/#-Y�xN.0!HG0.A=>* L

6 798J���\���;:=< �5>�F�!8��

b0y�GR%-#-?£13#�?A=;I$=;GK!$'-*�,Ó¼Z=;GK=>#�. Q '/!H.ABC1$GK<�?~�¥:;%aGKG0=>#�.0'/]?2q}qbA@JU3 "!$:HU&!$#-*�s{,/#�L$���Cs{,/#-*a1�D@?�6�Bt!$#-*�s{,/#�h*a1�D@?�}9cq�A�R5�c~va=>?A=9I$=;GK?0,/13#-?�1$B)b0yö!HG0=q:�13< Q !H.0,2[�'2=qD@,2.0v�=>!$:Rv1$.0va=;G>UN[�%a.�v-!>I$=¢*-,Ó¼�=;G0=>#&.�%-?0=;G�,/#&.A=;G0B¥!$:�=>?;5C+'/=>!$?A=�?A=;=�.0v-=EDF49=;.A.0,/#aY³xN.0!HG0.A=>*HG�?A=>:�.0,/13#�BC1$G~.0va=�I$=;GK?K,213#³]$13%�!HG0=J%-?0,/#aYa5

I�JLK MONQPRPTSFU�VXW%P�Y�Z�PTN1[]\�U�[�N1Z_^a`cbed

f�13%ß?0va13%-'/*�v-!>I$=!³Ò_'/=³«hg�i jRkHg©ª�« l-­�i�monqp�nsr�k�§!nAt�U�D@va=;G0=n<n!$:Kv-,/#-=r,/?�]$13%aG <n!$:Kv-,/#-=�.E] Q ="�CBC1$GJ=�ÊNh!$< Q '/=$US«hg�i&¬a« lhuHv�ihmon)pwnxrek�§5nyt�1$G�«zg'i-®${Hk�§|g�i-®}uzl-¦�®'i�mon)pwnsr�k�§5nyt��R5J�¥c~va=�I$=;GK?0,/13#u#&%-<J[�=;G¢<�!>]"[�= *-,/BjhBC=;G0=>#�.;5���`a1$GJ:;'/!HGR,2.E]$U)b9D@,/'j'£:�13#&.0,/#N%a=�.0v-,/?t=�Êa!$< Q '/=�D@,2.0vß«zg'iN¬�« lzuevei�monqp�nsr�k�§!nAt|~�G0= Q '/!$:�=�Ò_'2=>#-!$<�=>?�!$?! Q-Q GK1 Q GK,/!H.A=$5

c�] Q =t.0va=�BC13'/'21�D@,/#aY�:�13<�<�!$#�*-?;^

½ uzl�g3¦ je{a§�­�®&®�«hg�i&¬a« lhuHv�ihmon)pwnxrek�§5nyt½ .0!HG~Ê�INB£,/: '/,/#N%�Ê LN5/OH5p.0!HG

P .�.0v-,/? Q 13,/#&.;Ui]$13%¡?0va13%�'/* v�!>I$=�! *-,2G0=>:�.A1$GK]¡«zg'iN¬�« lzuevei�monqpnDq,2.0v�?0%a[z*-,2G0=>:�.A1$GR,2=>?���«$l�!$#-*ö¬�« �z®&5c~va=�#-=�ÊN.@?0.A= Q ,/?\.A1 Q %a.\.0va=>?A=�*�,2G0=>:�.A1$GK,2=>?@,/#.0va=>,2G\ÒZ#-!$'�G0=>?A.0,/#-Y Q '/!$:�=$5�búBV]$13%fv-!>I$= Q GK,2I�,/'2=;Y$=>?F13#�]$13%aG<�!$:Rv-,/#a=$Ui.0va=[�=>?A.J.0v-,/#aY ,/? Q G01$[�!H[�'/]".A1 Q %-.J.0va=�[�,/#�!HGK,2=>?�,j#;��u�®�§H�&¬&¦eg'k�¬h���Z« l�!$#-*�.0v-='j,2[-GK!HGK,/=>?�,/#��u�®�§e�N¬&¦eg'kN¬z�N¬�« �|�a«zgN5i�¥c~va=�[�,/#-!HGK,/=>?z:�13<�=�:�13#aÒ�Y3%aG0=>*�.A1@=�Ê Q =>:�.£'/,2[-GR!HGK,2=>?z,/#�.0v-,/?)'21�:;!H.0,213#_�R5 X .0va=;GKD@,/?A=$U,2B_]$13%�DF!$#�.�.A1 Q %a.i.0va=\[_,/#-!HGK,2=>?i!$#�*�'/,2[-GK!HGR,2=>?S?A13<�=;D@va=;GK=~=>'/?A=��¥?0%�:Kv�!$?�,/#�]$13%aG�v-13<�=~*-,2G0=>:�.A1$GK]a�RU&]$13%zÔo'/'#a=;=>*ø.A1�G0=�hE:�13#aÒ�Y3%aG0=f.0va=�«zg�!$#-*��a¬�=�ÊN=>:;%-.0!H[�'2=>?u�¥?A=;= y\v-! Q .A=;G O>T��oy�13#�Ò_Y3%aGK,/#aYub0y�%-#-*a=;G�29}qbs@���UQ !HY$=�WH63�R5¡ünï�äKå-éjå�ð|�Jéjê�ô�¸�ãw� ä¹»�éjå-è>æ�ïHò/ò/éjå�ð³ïfå_»�í ç©»RäKè0él¸�å�¸�êFë;ì�¸$ç©»Rä�ïnµzä¹»�ç�éC¸�ã$è�ç©»RäKè0éC¸�å�¸�êFë>ì�"�ÿ#�³¸�äòjï�æE»Rä;ù)óa»Fè©ãHä�»tæE¸tä�ã3å�æ â »@¸�òkº�ç©»RäKè0éC¸�årïHå�ºíiäKé�æE»qºa¸$í�åfæ â »\ò/ék·¹»¹å-èR»5�&»0ô�ïHå�º�å�ïHñr»~èR¸�æ â ï�æzô�¸�ã�·RïHå³»¹åZæE»Räæ â »téjå-ꥸ�äRñnï�ækél¸�åé/åZæE¸�ô�¸�ãHä@å_»�í ·¹¸�µ�ô&ÿ

��=;Bl1$GK=�?A.0!HG0.0,/#aYb0y9Uz]$13%uD@,j'/'V#-=;=>* .A1³²N#a1�D .0va=�#-!$<�= 1$B�.0va=�?A=;GR,/!$' Q 1$GK.9]$13%�,/#�.A=>#�* .A1�%-?A=$5�c~va=*a=;I�,/:�=¢#-!$<�=>?FIH!HG0]�BlG013<Ì?A]�?A.A=><Ö.A1�?0]N?A.A=><�5 X Bl.A=>#)U-! ?0=;GK,/!$' Q 1$G0.\,/?F?A=;.~% Q .A1�#a1$.FY3,2I$=¢G0=>!$*³!$#�*D~GK,2.A=Q =;GK<�,/?K?0,213#-?9.A1M?A.0!$#�*-!HGK*�%�?A=;GK?;5 X :;:;!$?0,213#-!$'/'/]$UV!�?A=;GR,/!$' Q 1$G0.�,/?�?0=;.J% Q .A1MGK%-#�DdY$=;.A.|]zG�UiD@v�,/:Kv�<�=>!$#-?.0va=¢?A]�?A.A=><Ì.0v-,/#-²N?F!�?A=;GK,/!$'Z.A=;GK<n,/#-!$'S�¥?0%-:Kv³!$?\!��tc�O;4$4���,/?F:�13#-#-=>:�.A=>*zU�!$#-*�.0v-!H.~%-?0=;GK?�D@,/'/'�D@,/?0vr.A1�'21$Y,/#z5�b|B�,/# *a13%a[-.;Uz]$13%u?0v-13%-'/*".0!$'2²M.A1³]$13%-G�'21N:;!$'i?0]N?A.A=><Þ!$*�<�,/#-,/?0.AGK!H.A1$Gt.A1�va=>' Q ]$13% Y$=;.�?A.0!HG0.A=>*u%�?0,/#aY.0va=�?0=;GK,/!$' Q 1$G0.;5

Page 5: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

� bd#�.A=;GK!$:�.0,/I$=�y329?A=;G>Ôo?�4¢%-,/*a=

�q=;G0=�!HG0=�?A13<�=�.E] Q ,/:;!$'S?A=;GK,j!$' Q 1$G0.t#-!$<�=>?;Uz[_%a.qGK=>!$'/,#�;= .0v-!H.¢#-!$<�=>?¢?A13<�=;.0,j<�=>?9I�!HG0]f=;I$=># [�=;.ED�=;=>#*-,Ó¼�=;G0=>#&.i<�!$:Kv-,j#a=>?S1$B_.0v-=F?K!$<�=~!HGK:Kv�,2.A=>:�.0%aG0=$UN?A1¢.0va=\BC13'/'21©Dq,/#aYq!HGK=~?0%aY$Y$=>?A.0,213#�?iBl1$G�#�!$<�=>?i.A1¢.AG0]$U3GR!H.0va=;G.0v-!$#³.0v-=¢Ò_#-!$'z!$#-?0D�=;GK?>^

½ g�,j#&%�Ê�^5���'��­��e�'rhrz�H����Ô2U����'��­'�H�'rhrz�e�Rp�Ô2UR�����½ x�C P w\y{GK%-#-#-,j#aY�xa%-# X xZ^R�����N­��e�'rzrh�ek-Ô2U������N­��H��rzrh���zÔ½ w9x��H¯H4$4$4�^+�����N­��e�'rzrh�e�-Ô½ }q=�@9cqx�.0!H.0,213#z^������N­��H��rzrh�ek�Ô2UR������­'�H��rzrz�'�zÔ½ 8t(�yF?0.0!H.0,213#M!$#-*���C x�#-!H²$=$^������N­��H��rzrh�e�z�-Ô2UR���'��­��e�'rhrz�e�Rp�Ô

f�13%<�!>]rD�!$#&.�.A1�:�13#aÒ�GK< .0v-!H.F.0va=9?0=;GK,/!$' Q 1$G0.�D�1$G0²N?�[�=;BC1$G0=@]$13%.AG0]�.A1�%-?0=qb0y�.A1�.0!$'2²n.A1 ! [�13!HGK*zU!$?@,/.~,/?FY$1&1�*³.A1�²$=;= Q .0va=�#N%-<J[Z=;G\1$Bi%-#-²N#a1�D@#-?F.A1�13#-=�!H.q!�.0,/<�=$5 X #a=¢DF!>].A1n*a1�.0v�,/?\,/?F.A1nva1N1$².0va=?A=;GK,j!$' Q 1$G0.@13#"]$13%aG¢va13?0.q<�!$:Rv-,/#a= .A1�!�?A=;GK,j!$'V?A13%-GK:�=�.0v-!H.¢,/?@²N#-1©D@#f.A1D�1$G0²ß�CBl1$Gt,/#-?A.0!$#�:�=$U�!�<�1�*a=><1$G@!$#a1$.0v-=;Gq?A=;GK,j!$' Q 1$GK.R��!$#-*³GK%-#��-­�§�j)«�rZ5

bú.�,/?¢:�GK,2.0,/:;!$'S.A1MY$=;.�.0v-,/?¢?A.A= Q GK,2Y3v&.¢[Z=;BC1$G0=�]$13%�:�13#&.0,/#N%a=$5�búB�]$13%�v�!>I$=r#-1$.�%-?A=>*u?A=;GK,j!$' Q 1$GK.0?¢13#�!29}@bA@ <�!$:Kv-,j#a=¢[�=;Bl1$G0=$UabFv-,2Y3v�'2]�G0=>:�13<�<�=>#-*³]$13%³ÒZ#-*³?A13<�=;13#a=J<�1$G0=�=�Ê Q =;GK,2=>#-:�=>*.A1nv-=>' Q ]$13%z5

}q1©D ]$13%�?0v-13%-'/*r[Z=9G0=>!$*a]r.A1 Q '/%aY�,/#�]$13%aG\[�13!HGK*z5iw~=;BC=;G\.A1�.0va=t1©Dq#a=;G>Ôo?\<�!$#N%-!$'Z1$B�]$13%aG\[�13!HGK*�BC1$G,/#-?0.AGK%-:�.0,213#-?>5

búB&]$13%aG£[�13!HGK*�*a1N=>?�#-1$.�v-!>I$=�D Q hE:�1�*a=}G@'/13!$*a=>*zU�]$13%�D@,j'/'Hv-!>I$=�.A1q*a1�D@#-'213!$*�.0va= Q hE:�1�*a=�[�=;BC1$G0=�]$13% :;!$#GK%-#�bAy95Z�¥c�G0]�.0%-GK#-,/#aYt]$13%aG�[�13!HGK*�13#�~�,2B�!�<�=>?K?0!HY$=9! Q�Q =>!HGR?i.0v-!H.�?0.0!HG0.0?�Ddb0y¡I�LN5/O�G�U�]$13%aG�[Z13!HGR*�!$'2G0=>!$*a]v-!$? Q hE:�1�*a=n'213!$*a=>*)US!$#�*�]$13%ß:;!$# ?A²�, Q .0v-,/?�?A.A= Q 5��{c�1"*a1©Dq#-'213!$* Q hE:�1N*a=$U£Ò_#�*u.0va=r! Q�Q G01 Q GK,j!H.A=�nK®ep��Ò_'2=qBl1$G�]$13%aGF[�13!HGK*n,j#���u�®�§e�N¬&¦eg'kN¬z�N¬�« �|�a«zg �C1$GFD@va=;G0=;I$=;GF]$13% Q '/!$:�=>*r.0va=q'j,2[-GK!HG0]JÒ_'2=>?¹�L~N.0v�,/?+?0v-13%-'/*�[�={Tg$¦h�N­�iHªh�+nK®ep���BC1$GF.0va=%�q!$#-*-]n��13!HGK*zUh{�g3¦h�N­�i$§&¨�nK®ep ��BC1$G�.0v-=twq%aY s�!HG0GK,21$G>U�1$Go{Tg$¦h�N­�§H�h�/nK®ep���BC1$GF.0va=¯N57�3W�4[�13!HGK*z5tw@%-#f.0va=���¬ Q G01$Y$GK!$<�.0v-!H.t]$13%��A%�?A.9,j#-?A.0!$'/'2=>*�D@,2.0vf.0va=�nK®ep �rÒZ'2=�]$13%zÔpI$=�BC13%-#-*zU�'/,2²$=��a¬{Tg$¦h�N­�iHªh�+nK®ep�����{�¦3§zr ����­'�H��g u|kh��CG0= Q 'j!$:�=%���N­��H��g uHkz�JD@,2.0vr.0va=¢?A=;GK,/!$' Q 1$G0.�13#r]$13%-GF<n!$:Kv-,/#-=��L~aBl13'/'/1©D.0va=�,j#-?A.AGK%-:�.0,/13#-?�.0v-!H.¡�a¬ Q GR,/#�.0?>5

P .+.0v�,/? Q 13,/#&.i]$13%n?0va13%�'/*�[�=~G0=>!$*a]�.A1�GR%-#�«hg�5i��=;Bl1$G0=q]$13%n:;!$#rGK%-#�,/.;U3]$13%zÔo'/'-v�!>I$=9.A1�=>#&.A=;G�!�'j,/:�=>#-?A=²$=;]�!$#-*�#-!$<�=\D@,/.0vn«zg��eg3¦�l-¤-«�¢n�¥?A=;=qy\v-! Q .A=;G~O>T��oy�13#�Ò_Y3%aGK,/#aY9b0yß%-#-*a=;G£29}@bA@¡��U Q !HY$=qWH63�L~&]$13%�?Kva13%-'/*v-!©I$=�G0=>:�=>,2I$=>*M!�'/,/:�=>#-?0=9²$=;]³Dqva=>#]$13% Q %-GK:Kv-!$?0=>*bAy95

cVG0]rGR%-#-#-,/#-Y�b0y{!$#-*³.|] Q ,j#aY¤D0��¥N��G�~_]$13%�?0va13%�'/*Y$=;.~.0va=�GK=>? Q 13#-?A=�DAw~=;.0%aGR#a=>*§¦�,/#�.L¨��'G�5

Page 6: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

yFv-! Q .A=;Gq�N^549=;.A.0,/#-Y�xN.0!HG0.A=>* B

I�J©I MONQPRPTSFU�VXW%P�Y�Z�PTN1[«ª�UaPT¬�N®­ Y�¯

f�13%n?Kva13%-'/*�v-!©I$=9!¢Ò_'2=~#-!$<�=>*�«hg�i jRkHg'ihmon)pwnK®$­zk/n�ªe°zv��C.0va=@I$=;GR?0,213#�#N%-<J[Z=;G�<�!>]�[�=~*-,Ó¼�=;G0=>#&.R�R5±f�13%:;!$# :�13#�I$=;GK.¢.0v-,/?q.A1f«zg�i$j�keg�ihm/nqp�nR®$­hk�D@,2.0v"!$#�]�1$B�?A=;I$=;GK!$' Q 1 Q %-'/!HG@Bl1$GK<n!H.t:�13#&I$=;GK?0,/13#f.A1N13'/?;Uz?0%�:Kv !$?y�13< Q !$:�./C�G01a5 X #�:�=~]$13%nv-!©[email protected]=~Ò_'2=t«zg'i jRkHg�i�mon)pwnR®H­zk-UH?0,/< Q '2]�=�Ê�=>:;%a.A=q,/.�~&,2.iD@,j'/'�!$?A²�]$13%�D@va=;GK=~]$13%DF!$#�.9.A1 Q '/!$:�=�.0v-=Jbd#�.A=;GR!$:�.0,2I$=�yàBC13'/*a=;G>UZ!$#-*f.0va=>#M=�Ê�.AGK!$:�.t.0va=JbAy Ò_'2=>?9,/#�.0v�!H.9'21�:;!H.0,213#z5nünï�äKå-é/å�ð|�\éjêô�¸�ã�� ä¹»�ã>µZð3äRï&º&éjå�ð�êjä�¸�ñ ï~µ�ä¹»�ç�él¸�ã$è@ç©»RäKè0él¸�år¸�êZë>ì²"�ÿ#�9¸�ä�òjï�æE»Rä;ù_º�¸�åo� æSº�»¹òC»�æE»tæ â »~¸�ò¥º�ç©»RäKè0él¸�åMã3å_æké/ò&ô�¸�ãw� ç©»ä�ã$åé�æ�ïHåzºMíiäKé�æAæE»¹å"º�¸3í�åuæ â »tòj饷¹»¹å-èR»+�&»0ôfïHå�ºnå�ïHñr»9èR¸�æ â ï�æ£ô�¸�ã�·RïHåf»¹åZæE»RäJæ â »9éjå-ꥸ�äRñnï�ækél¸�åé/åZæE¸�ô�¸�ãHäå_»�í{·¹¸�µaô&ÿ

C+'j%aYJ.0v-=9[�13!HGK*,/#&.A1�13#a=t1$BV]$13%-G~:�13< Q %a.A=;G>Ôo?\?0=;GK,/!$' Q 1$G0.0?;Ua!$#-*�GK%-#�b0y95Nc@va=9Ò�GK?A.�.0,/<�=t]$13%³GK%�#nb0y9U,2.JD@,/'/'�!$?0²�]$13%�Bl1$G ]$13%aG�'/,/:�=>#�?A=n²$=;]�!$#�* #-!$<�=�~+]$13%�?0va13%-'j*�v-!©I$=�GK=>:�=>,2I$=>*�!f'/,j:�=>#-?A=n²$=;] D@va=># ]$13%Q %aGR:Kv-!$?A=>*�bAy95

cVG0]�.0%aGK#�,/#aYn]$13%-G9[�13!HGK*"13#z5�b|B�]$13%-G¢[Z13!HGR*"v�!$?9,/.0?�D Q hE:�1N*a=}G³'/13!$*a=>*zUz!³<�=>?0?0!HY$=�?Kva13%-'/*f:�13<�=�% Q.0v-!H.9?A.0!HG0.0? DdbAy I�LN5/O�G�~),/BS,/.@*a1N=>?q#a1$.;U_]$13%"D@,/'/'zv-!©I$=J.A1rG0=>'213!$*f.0va= Q hE:�1N*a=$5!f�13% :;!$#"*a1�.0v-,j?~D@,2.0vM.0va=DAw~=>'/13!$* Q :�1N*-=������G�:�13<�<�!$#-* �C13#�.0va=�`S,/'2=�<�=>#&%_�L~a.0v-= Q G01$Y$GK!$<îD@,/'/'ZY3%-,/*-=9]$13%M.0vaG013%aY3v�.0va=�?A.A= Q ?;5

}q1©D�]$13%�?0va13%�'/*�[�=�G0=>!$*a]�.A1 %�?A=�b0y95+cVG0]�GK%-#-#-,j#aYfb0yÖ!$#�*�.E] Q ,/#aY³D0��¥N��G�~t]$13%ö?Kva13%-'/*�Y$=;.�.0va=G0=>? Q 13#-?0= DAw@=;.0%aGK#a=>*�¦3,/#&.L¨��'G�5

I�Jy´ MONQPRPTSFU�VXW%P�Y�Z�PTN1[]\�U�[�N1Z,µ SLU�[�ª/¶�·

f�13%�?0va13%-'j*�v-!©I$=!fÒ_'/=r#-!$<�=>*ø«zg�¨Hm�p�nd­�v�­ß�C.0va=I$=;GK?0,213#ß#&%�<�[�=;G�<�!>] [Z=�*-,Ó¼�=;G0=>#&.R�R5�y\8î.A1 .0va=*-,2GK=>:�.A1$G0]rDqva=;G0=¢]$13%³DF!$#�.q.A1n,/#-?0.0!$'/'ZbAy9U-!$#�*³GK%-#"«zg�¨Hm�p�nd­�v�­�5£c~v�,/?�D@,/'/'�%-# Q !$:0²f«hg£nú­hv�­�!$#-*³.0v-=�'/,2[�?*-,2GK=>:�.A1$G0]$5

C+'j%aYJ.0v-=9[�13!HGK*,/#&.A1�13#a=t1$BV]$13%-G~:�13< Q %a.A=;G>Ôo?\?0=;GK,/!$' Q 1$G0.0?;Ua!$#-*�GK%-#�b0y95Nc@va=9Ò�GK?A.�.0,/<�=t]$13%³GK%�#nb0y9U,2.JD@,/'/'�!$?0²�]$13%�Bl1$G ]$13%aG�'/,/:�=>#�?A=n²$=;]�!$#�* #-!$<�=�~+]$13%�?0va13%-'j*�v-!©I$=�GK=>:�=>,2I$=>*�!f'/,j:�=>#-?A=n²$=;] D@va=># ]$13%Q %aGR:Kv-!$?A=>*�bAy95

cVG0]�.0%aGK#�,/#aYn]$13%-G9[�13!HGK*"13#z5�b|B�]$13%-G¢[Z13!HGR*"v�!$?9,/.0?�D Q hE:�1N*a=}G³'/13!$*a=>*zUz!³<�=>?0?0!HY$=�?Kva13%-'/*f:�13<�=�% Q.0v-!H.9?A.0!HG0.0? DdbAy I�LN5/O�G�~),/BS,/.@*a1N=>?q#a1$.;U_]$13%"D@,/'/'zv-!©I$=J.A1rG0=>'213!$*f.0va= Q hE:�1N*a=$5!f�13% :;!$#"*a1�.0v-,j?~D@,2.0vM.0va=DAw~=>'/13!$*�CFy�1�*a=������GJ:�13<n<�!$#-*u�C13#�.0va=9��13!HGK*<�=>#N%_�L~N.0va= Q G01$Y$GK!$< D@,/'/'-Y3%-,/*a=q]$13%r.0v-G013%aY3vr.0va=9?0.A= Q ?;5

}q1©D�]$13%�?0va13%�'/*�[�=�G0=>!$*a]�.A1 %�?A=�b0y95+cVG0]�GK%-#-#-,j#aYfb0yÖ!$#�*�.E] Q ,/#aY³D0��¥N��G�~t]$13%ö?Kva13%-'/*�Y$=;.�.0va=G0=>? Q 13#-?0= DAw@=;.0%aGK#a=>*�¦3,/#&.L¨��'G�5

Page 7: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

¯ bd#�.A=;GK!$:�.0,/I$=�y329?A=;G>Ôo?�4¢%-,/*a=

Page 8: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

yFv-! Q .A=;GqLN^/29?0,/#aY�b0y W

¸ ¹9ºF�H�;: ��»

s{va=>#{bAy�,j?rGR%-#-#-,/#-Y !$#-* !H.A.0!$:Rva=>*à.A1¡!¡¯$T�O$O�?A]N?0.A=><³U�y =�Ê Q GK=>?0?0,213#-?>U@B¥%-#-:�.0,213#{:;!$'/'/?>U9!$#-*{b0y:�13<�<�!$#�*-?~<�!©]�[�=¢.|] Q =>*�!H.~.0v-=ED½¼z¨�G Q G013< Q .;5

`a1$Gq=�Ê�!$< Q '2=$Ua.A1�=;IH!$'/%-!H.A=�.0va=J!HGK,2.0v-<�=;.0,j:q=�Ê Q G0=>?K?0,213#¤p¾¥ �-Ua.E] Q =¢.0va=�BC13'/'21�D@,/#aYa^

¼�¨¿p�¥À�

s{va=>#.0v-,/?F=�Ê Q G0=>?0?K,213#³,/?F.E] Q =>*zU-,2.\,/?\:�13< Q ,/'2=>*[N]r.0va=�:�13#�?A13'2=�:�13< Q %-.A=;G@!$#-*.0va=>#�*-1©D@#-'/13!$*a=>*.A1.0va=¢¯$T�O$O¢?A]�?A.A=><ÌBl1$GF=;IH!$'/%-!H.0,213#)5Sc@va=t¯$T�O$Ot.0v-=>#r=;IH!$'/%-!H.A=>?F.0v-=9:�13< Q ,/'2=>*rBl1$GK<Ì!$#-*rG0=;.0%aGR#-?+.0v-=9GK=>?0%-'2.;UD@v-,j:Kv³,/? Q GK,/#&.A=>*r13#M.0va=�:�13#-?A13'/=�:�13< Q %a.A=;G©Ôo?~?0:�G0=;=>#z5

cV1�=;IH!$'/%-!H.A=�!³?0=;GK,2=>?t1$B+=�Ê Q G0=>?K?0,213#-?;Uz:�G0=>!H.A=r!Mye[_'21N:K²M[N]M[�=;Y3,/#-#�,/#aYnDq,2.0v !$# 1 Q =>#u:;%-GK'2]�[-GR!$:�=�Á!$#-*³=>#�*-,/#aY D@,2.0v³!�:;'/13?A=�:;%aGK'2]r[-GK!$:�=�Â-5+c~va=tBC13'/'21�D@,/#aY�=�Êa!$< Q '2=�:�G0=>!H.A=>?q!�'21�:;!$'�I�!HGR,/!H[�'2= «�!$#-* Q GK,/#&.0?O;4M�C.0va=J?0%-<Ö1$B�«�¥ Ã���.A1�.0va=�¯$T�O$OHÔo?9g£yF8 ?K:�G0=;=>#z^

¼�¨hÁa«$ler�«�Ä�m1Å {�§_«$ler�¤QÆ�ÇqÈz��ÇRÉf«�¥�Ã|Ê�ÅFÂ

´%JLK b�Ë Ë3ª�ÌÍÌÎY+U�[�·

b0yøG0=>? Q 13#-*-?F.A1�.0v-=�Bl13'j'21©D@,j#aY :�13<n<�!$#-*-?;^

¬&¦hkh��0�òC»¹å�ïHñr»Ï É$Í$Ä Ð�Ø2Á$Ñ c~va=¢:�13<�<�!$#�*f¬�¦zkh��0�òC»¹å�ïHñr»J:�13< Q ,/'/=>?\!$#-*�'213!$*-?F.0v-=�#-!$<�=>*�Ò_'/=$5�c~va=¢[�13!HGK*< %-?A.F[�=t!H.A.0!$:Rva=>*�BC1$G~.0v-,j?�.A1�D�1$G0²Z5�b0y�'21&1$²�?�Ò�GK?A.\,/#�.0va=�'/1N:;!$'z*-,/G0=>:�.A1$G0]r!$#�*r.0v-=>#�,/#�.0va=b0y{'/,2[-GR!HG0] Q !H.0v³BC1$G\Ò_'/=>?;5xN=;I$=;GK!$'aÒ_'2=>?i<�!©] [�=~'213!$*-=>*�,/#�.A1�bAyß!H.�13#�:�=$U&!$'/'21�D@,/#aY Q GK1$Y$GK!$<�?i.A1�[�=\*a=�Ò_#-=>*�,/#�<J%�'2.0, Q '2=Ò_'2=>?>5

uzl�¬&¦hkh��0_òl»¹å�ïHñr»Ñ ¿-Ø2É$Í$Ä�Ð�Ø2Á$Ñ c~va=¢:�13<�<�!$#-*Òuzl_¬�¦zk���0�òl»¹å�ïHñr»J%-#�'213!$*-?�.0va=�#-!$<�=>*rÒ_'2=$Ua!$#-*GK=�hE*a1©D@#�'213!$*-?G0=><�!$,j#-,/#aYJÒ_'2=>?;5

¬a«N®�rr¤�«3¬&­�®c~va=�:�13<n<�!$#-*f¬a«N®�rr¤�«�¬�­�®J*-,j? Q '/!©]N?F.0va=�#�!$<�=>?\1$Bi!$'/'ZÒ_'2=>? Q G0=>?A=>#&.0'2]r'/13!$*a=>*�,/#&.A1�bAyt5

Page 9: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

T bd#�.A=;GK!$:�.0,/I$=�y329?A=;G>Ôo?�4¢%-,/*a=

¬a«N®�rÒ¢a¬�¦��|kN¬-®c~va=�:�13<�<�!$#-*�¬a«N®�rÒ¢a¬�¦��|kN¬-®�*�,/? Q '/!©]N?�.0va=�#�!$<�=>?�1$B~!$'j'+:;%aG0GK=>#�.0'2]u*a=�ÒZ#a=>*�Y3'21$[_!$'�IH!HGK,Óh!H[�'2=>?>5

¬a«N®�rr¤'uhlTg�r�«3¦�lz®c~va=�:�13<n<�!$#-*f¬a«N®�rr¤'uzl�g�r�«3¦�l�®�*�,/? Q '/!©]N?F.0v-=�#-!$<�=>?\1$B Q G0=>?0=>#�.0'2]*a=�Ò_#-=>*My�BC%�#-:�.0,213#-?;5

¬a«N®�rÒ��­�¤�« l-­�®c~va=³:�13<�<n!$#-*ø¬a«N®�rÒ��­�¤�« l-­�®M*-,/? Q '/!>]�? .0va=�#-!$<�=>?n!$#-*�I�!$'j%a=>?�1$B9!$'j'\:;%aG0G0=>#&.0'2] *-=�Ò_#a=>*Q G0= Q G01N:�=>?K?A1$G~<�!$:�G013?;5

�Z«3¬N¬hihk�¬&¬ Ó È2Ø2Ø)ÍHØ2ØzÃ�Â�É�Æ�Á�ÎKÎAÁ�ÎRÑ c~va=�:�13<�<�!$#�* �_«�¬N¬hihkN¬N¬ ²�,/'/'/?F!$'/'z:;%-G0G0=>#&.0'2]rGR%-#-#-,/#-Y Q G01�:�=>?0?A=>?>5{z® Ô Â;È2¿NÀ£Ã-Â;ÉNÆ�Á�Î0ÎiÎAÀAÍHÀAÇ�ÎRÑ c~va=F:�13<�<�!$#-*�{z® Q GK,j#�.0?V.0va=\?A.0!H.0%-?S1$BZ:;%aG0G0=>#&.0'2]¢GK%-#�#-,/#aY Q G01N:�=>?K?A=>?;5ª�­N¬�{ Õ Á�ØÓÃ�Ñ c~va=�:�13<n<�!$#-*�ª�­N¬�{*�,/? Q '/!©]N?\!�v-=>' Q ?0:�G0=;=>#M1$BVb0y{:�13<�<�!$#�*-?;5°'uZ«�r Ö Ç-È2ÀRÑ c~va=�:�13<n<�!$#-*E°'uZ«�rn=�Êa,2.0?\b0y95�×�:�:;!$#M!$'j?A1�[�=�%-?A=>*z5

´%J©I ØÙSFU�NÛÚ²[�S©PTSLU�V

b0y v�!$?�! [�%-,/'2.dhE,j#�'/,/#-=r=>*-,/.A1$G�!$#-*�:�13<�<�!$#-*�v�,/?A.A1$G0]$U+!$'j'21©D@,j#aYf=>*�,2.0,/#aY !$#-*�G0=�hE%-?0=³1$B Q G0=;I�,213%-?K'2].E] Q =>*�?A.0!H.A=><�=>#&.0?+!$#�*�:�13<�<�!$#-*�?;5£c@va=~<�#a=><�13#�,/:;?SBl1$Gi.0v-=>?A=~B¥%-#-:�.0,213#-?i!HGK=\[�!$?A=>*�13#�?A.0!$#�*-!HGK*�(�<�!$:;?:�13#&.AG013')²$=;]³!$?0?0,/Y3#-<�=>#&.0?;5

cV1�?0:;!$#³BC1$G0D�!HGR*�!$#-*[�!$:K²&DF!HGK*�,/#.0v-=�:�13<�<�!$#-*�v�,/?A.A1$G0]$Ua.|] Q =�× Q 1$G!Ü�Ý�Þ�ßhß|à�árBl1$G~[_!$:0²ND�!HGK*)U�!$#-*×�#³1$G�â|à�á�ãzÞ�ßzßHà�ánBC1$G~Bl1$GKD�!HGK*)5

ä£å�º�»Rä�ü é/å�º�¸3í�è�ù�¸�å�ò ô³æ â »Fêúã3å�·©ækél¸�å�ïHò/éEæÓôrºa»¹è�·0äKéEóa»©º�é/å³æ â »Fä¹»¹è>æV¸�êSæ â é/è+èR»©·©ækél¸�ånéjè�å_¸Næ�ï�ç¹ïHé/òlïaó$òl»��l¸�å-ò ô×¹µ£ù5×�å�ùTÜ�Ý�Þ�ßhß|à�áZùVïHå�º�â|à�á�ã�Þ'ßzßHà�áfï�ä¹»�ï�ç¹ïHéjòjïaó$òl»F(©ÿ�*¢¸$íi»�ç©»Rä;ù�å_¸�äKñnïHòtü é/å�º�¸3í�è�»©º&é�ækéjå�ðñ�»�æ â ¸�ºNè�·RïHåóa»�ã$èR»©º_ÿ

29#-*a=;G/29}@bA@ U�!$#�=>!HGK'j,2=;G+'/,/#-=~,/#�.0va=q:�13<n<�!$#-*�v-,j?A.A1$G0]�:;!$#n[�=\G0=;.AGK,/=;I$=>*�[N] .|] Q ,/#aY¢.0va=q=�Ê�:;'/!$<n!H.0,213#Q 13,/#&.nBC13'/'21©D�=>*ø[&]�.0va=fÒ�GK?0.nBC=;D�:Rv-!HGK!$:�.A=;GK?1$B�.0v-=f'/,/#-=�.A1 GK=;.AGK,2=;I$=$Uq!$#�*¡.0va=>#�.0va="? Q !$:�= [�!HG>5à`-1$G=�Êa!$< Q '2=$Ua,2B)]$13%³v�!$* Q G0=;IN,/13%-?0'2]�.E] Q =>*.0va=¢:�13<�<�!$#-*�¼�¨r¬&¦zk��r¤N¦N¦/nFg�U&.0va=>#�.|] Q ,j#aY�¼�¨oåú¬&¦�BC13'/'21©D�=>*�[&]!�? Q !$:�=�D�13%�'/*G0=;.AGK,2=;I$=�.0va=�'/,/#a=�¼�¨r¬&¦zk��r¤N¦N¦-5

c~va=tBC13'/'21�D@,/#aY�!HG0=�.0v-=�²$=;]N?0.AG01$²$=J<�! Q�Q ,/#aY3?F%-#-*-=;GK?A.A1N1N*[N]rb0y�BC1$G~.0va=� "!$:�!$#-*Ù2q}qbs@�I$=;GK?K,213#-?;5

Page 10: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

yFv-! Q .A=;GqLN^/29?0,/#aY�b0y 6

Key Functiondel backward delete character

ctrl-d forward delete characterctrl-b , ← go backward a character

ctrl-f , → go forward a characterctrl-A go to beginning of linectrl-e go to end of linectrl-k kill line (from cursor forward)ESC-d forward kill wordESC-DEL backward kill word

↑, ctrl-p history last

↓, ctrl-n history next

c~va=~ "!$:9!$#-*�29}@bA@ I$=;GK?0,213#�?i1$B�bAy¡*a1 Q !HG0=>#&.0va=>?0,j?dh�[�!$'/!$#-:�=�hEv�,2Y3v-'/,2Y3v&.0,/#aYt!$?�=�Ê Q GK=>?0?0,213#[email protected]] Q =>*z5

´%Jy´ æ3¬�N�ÌÎY+SLU�ç'è�é�\�U�¯±P�S½ª�U

P Bl.A=;G9BC%�#-:�.0,213#-?qv-!>I$= [�=;=>#M*a1�D@#-'213!$*a=>*M.A1r.0v-=J[�13!HGK*zU�.0va=;]M:;!$#f[Z= ,/#&I$1$²$=>*MBCG013< .0va=�b0y Q G013< Q .;5búBV13#a=�1$BV.0va=�BC%-#�:�.0,213#-?\,/?\#-!$<�=>*�jRk-« l/Æ$Ê�Ua,2.\Dq,/'/'Z!$%a.A13<�!H.0,/:;!$'/'/]�[�=tGK%-#Dqva=>#³.0va=¢[�13!HGK*�,j?FG0=>?A=;.;5

cV1 GK=>?A=;.F.0va=t[Z13!HGR*"í+é�æ â ¸�ãaæ£GK%-#�#-,/#aY�.0v-=�j�k-«$loÆ}ÊtB¥%-#-:�.0,/13# �CBC1$G~,/#-?0.0!$#-:�=$U�D@va=>#�va1&1$²�,/#aY .0va=t[�13!HGK*[�!$:K²f.A1³.0va=�:�13< Q %a.A=;G¹�RU�va13'j*"*-1©D@# .0va=�[�13!HGK*zÔo??�'ê�Þ'ß�ê³[�%a.A.A13#¡�C1$G�ëH�h¼�ÞhÝhë³13#u!�¯N57�3W�4�[Z13!HGR*_�@D@v-,/'2=Q G0=>?K?0,/#aY�G0=>?A=;.;5�c~va=¢[�13!HGK*D@,/'j'_GK=>?A=;.~D@,2.0v-13%a.FGK%-#-#-,j#aY�j�k-«$loÆ}Ê&5

Page 11: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

O;4 bd#�.A=;GK!$:�.0,/I$=�y329?A=;G>Ôo?�4¢%-,/*a=

Page 12: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

yFv-! Q .A=;G~�a^�b0y�I$=;GK?0%-?9xN.0!$#-*-!HGK*My O$O

ì ��» íÙ8��+ºF��ºÀ< �!>����;>�~�î»

c~va=�bAy Q GK1$Y$GK!$<�<�,/#-Yq'/!$#aY3%�!HY$=�,/?V[�!$?A=>*�'21N13?A=>'2]�13# P }¢xNbVy95��@1�D�=;I$=;G>U&.0va=;G0=\!HG0=F<�! �A1$GS*�,Ó¼Z=;GK=>#-:�=>?;5

"!$#�]�1$B¢.0va=>?A=f*-,Ó¼�=;G0=>#-:�=>?n!HGR,/?A=�BCG013< .0va="*a=>?0,2GK=³.A1 v-!©I$=Mb0yÌ[�=�DA?0!HBC=;GFG�.0v�!$#ö?A.0!$#-*�!HGK*øy95+`-1$G,/#-?0.0!$#-:�=$U�,/#³b0y9U-!HG0GR!>][�13%-#-*-?\!HG0=J:Kva=>:K²$=>*"!H.qGK%-#.0,/<�=�~-Bl1$Gq.0v-,/?\GK=>!$?A13#zU�!HG0GR!>]�?q:;!$#-#-1$.~[�=�:�13#�I$=;G0.A=>*.A1 Q 13,/#&.A=;GK?\,/#b0y95 P '/?A1aU�,/#b0y9U Q 13,/#&.A=;G~!HGK,2.0v-<�=;.0,/:¢,/?\#a1$.@!$'j'21©D�=>*z5

X .0va=;G\*-,2¼Z=;G0=>#�:�=>?�!HGK=t*�%a=q.A1�.0v-=t*-=>?0,2G0=q.0v-!H.\.0va=tbAyöGK%�#�.0,/<�=@[�=9?K<�!$'/'�!$#-*�=qïr:;,2=>#&.;5�`a1$G@,/#�?A.0!$#-:�=$U.0va=�b0y Q GK,/#&.AB�B¥%-#-:�.0,213# *a1N=>?¢#a1$.�%-#-*-=;GK?A.0!$#-*"<�!$#&]f1$B�.0va=�<�1$G0=�=�Ê�1$.0,/:�BC1$GK<�!H.A.0,/#aY1 Q .0,/13#-?¢? Q =>:;,ÓÒ�=>*[N] P }tx�b\y95

f�=;.i1$.0va=;G�*-,2¼Z=;G0=>#�:�=>?i!HG0=~*-%a=�.A1¢.0va=\*a=>?0,2GK=�.0v�!H.£b0y [�=\?0,/< Q '/=;G�.0v-!$#�?A.0!$#�*-!HGK*ny95$c~v-,j?V,/?£.0va=\GK=>!$?A13#BC1$G~.0va=�Y3'21$[_!$'z?0:�1 Q =�1$B£!$'j')*a=>:;'/!HGK!H.0,/13#-?;5

bd#ö.0va="G0=>?A.�1$B�.0v-,j?n*a1�:;%-<�=>#&.;U~D@va=>#øD�=fG0=;BC=;G.A1�DKy�G�U�.0v-="?A.0!H.A=><�=>#�.�! Q-Q '/,2=>?�.A1ß[�1$.0vöb0y !$#-*?A.0!$#-*�!HGK*�y95�s�v-=># D�=�D@,j?0vM.A1�? Q =>:;,/Bl]�13#-=�1$G¢.0va=�1$.0va=;G>U)D�=�D@,/'j')G0=;BC=;G¢.A1³=>,2.0va=;GEDdb0y!G1$GEDA?A.0!$#-*�!HGK*y!G�5-s{va=>#�#-1�?0%-:KvÙð&%-!$'j,ÓÒ�=;GK?F!HG0= Q G0=>?A=>#&.;U-]$13%�?0va13%�'/*³!$?0?0%-<�=¢.0v-!H.~D�=�!HG0=�.0!$'2²�,/#aY�!H[�13%a.\b0y95

Page 13: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

O>� bd#�.A=;GK!$:�.0,/I$=�y329?A=;G>Ôo?�4¢%-,/*a=

Page 14: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

yFv-! Q .A=;G�BN^ Pòñ %-,/:K²³y{c£%a.A1$GK,j!$' O>L

ó ô õ´���H��ö÷» ø��ß���M�@� > ù

f13?A.�y Q G01$Y$GK!$<�?i:�13#�?0,/?A.S1$B�B¥%-#-:�.0,/13# *-=�Ò_#-,2.0,213#�?V!$#-*�*-!H.0!¢?0.AGK%-:�.0%aG0=>?>5±�q=;G0=~,/?S!t?0,/< Q '2=Fy Q GK1$Y$GK!$<.0v-!H.@*-=�Ò_#a=>?\!�?0,j#aY3'2=tBC%�#-:�.0,213#zU-:;!$'/'/=>*�jRk-«$lz5

�a¦a«��®jRk-« l/Æ$ÊÁ

{a§�« lerN¤£Æ�Ç)ú-­N¬N¬�¦1Én¨-¦�§a¬��5åyû�l±Ç�ÊüÅÂ

P '/'�BC%�#-:�.0,213#-?�< %-?A.�v-!>I$=t!�G0=;.0%-GK#�.E] Q =$5+x�,/#-:�=oj�k-«$l�*a1N=>?+#a1$.�GK=;.0%aGK#�!�I�!$'/%-=$U&,2.+%�?A=>?£�a¦a«���U&.0va=@#N%-'/'.E] Q =$U�!$?�,2.0?�G0=;.0%aGK#".E] Q =$5 X .0va=;G¢.|] Q =>?�,/#�:;'/%-*a= ,/#�.A=;Y$=;GR?r�|« l�r-�q!$#-*"°�13!H.0,/#aY Q 13,/#&.¢#&%�<�[�=;GK?��¥¤a¬�¦zk'r-�R5c~v-,j?\êúã$åz·©ækél¸�å"º�»©·Kòjï�äRï�ækéC¸�å�,/#aBC1$GK<�!H.0,213#< %-?A. Q G0=>:�=>*a=¢=>!$:KvfB¥%-#-:�.0,213#³*a=�ÒZ#-,2.0,213#z5

bd<�<�=>*-,/!H.A=>'/]�Bl13'j'21©D@,j#aYq.0v-=\BC%-#�:�.0,213#�*a=>:;'/!HGK!H.0,213#n,/?£.0va=\BC%�#-:�.0,213#zÔo?i#-!$<�=¢�¥,j#�.0v-,/?i:;!$?A=$U�jRk-«$l_�R5S}@=�Ê�.;U,/# Q !HG0=>#&.0va=>?A=>?;U�!HG0=J!$#&]M!HG0Y3%�<�=>#�.0?��C1$G¢,/# Q %-.0?R��.A1r.0v-=�B¥%-#-:�.0,213#z51j�ka« lMv-!$?9#a13#a=$UZ[�%a.@!r=>< Q .|]�?A=;.q1$BQ !HG0=>#&.0va=>?A=>?q,/?\?A.0,/'j'_GK=}ð&%-,/G0=>*z5

P Bl.A=;G�.0va=B¥%-#-:�.0,213#ß!HG0Y3%-<�=>#&.0?�,/?�!$#ß1 Q =>#ß:;%aGK'/]�h�[-GR!$:�=�Á-5uc~v-,/? ?0,2Y3#-,2Ò�=>?�.0va=³?A.0!HGK. [email protected]=³!$:�.0%-!$'B¥%-#-:�.0,213#³:�1�*a=$5�yF%-GK'2]&h�[-GK!$:�=>?\?0,2Y3#�,2Bl] Q G01$Y$GK!$< ó3òl¸�·A�Nè>Ua1$Gq:KvN%-#a²�?\1$BS:�1N*-=$5

}q=�ÊN.�:�13<�=>?r!�?A=;GK,2=>?n1$B�yîè>æ�ï�æE»¹ñr»¹åZækè;5�xN.0!H.A=><�=>#&.0?*a=><�!$#-*¡.0v-!H.r?A13<�=f!$:�.0,213#ö[Z=M.0!H²$=>#z5 X %aG*a=><�13#�?A.AGK!H.0,213# Q G01$Y$GR!$< v�!$? !"?0,/#-Y3'2=r?A.0!H.A=><�=>#�.;U�!E{a§_«$lerN¤��CBC1$GK<�!H.A.A=>* Q GK,/#&.R�R5"c~v�,/?�D@,j'/' Q GR,/#�.J.0va=<�=>?0?K!HY$=ÙDAúa­�¬N¬�¦1É�¨-¦�§a¬��5åsG .A1�.0va=�gSyF8 *-,/? Q '/!>]$5ic~va=�û�l�,/#-*-,/:;!H.A=>?F=>#�*�h�1$BjhE'j,/#a=$5

c~va=�{�§_«$ler�¤ ?A.0!H.A=><�=>#�.=>#-*-?nD@,2.0v¡!ß?A=><�,j:�13'213#�� ÅK�R5 ûqòjòJyÖ?A.0!H.A=><�=>#�.0?³< %-?A.�[�=f=>#-*a=>*¡[N]¡!?A=><�,j:�13'213#z5\��=;Y3,/#-#-,/#-Yry Q G01$Y$GR!$<�<�=;GK?q:�13<�<�13#-'2]³<�!H²$= .0va=J=;G0G01$G@1$Bi13<n,2.A.0,/#aY�.0v-=J?A=><�,j:�13'213#�.0v-!H.9,/?G0=}ðN%-,2G0=>*³[email protected]=¢=>#-*³1$B£=>!$:Kv"?A.0!H.A=><�=>#&.;5

c~va=+j�ka« l³BC%-#�:�.0,213#³,/?F=>#-*a=>*�[&]�.0va=�:;'213?0=�:;%aGK'2]&h�[-GK!$:�=�Â-5

g)=;.;Ôo?9'21N1$²³!H.q!$#"!$#a1$.0va=;G@=�Êa!$< Q '/=�.A1r'/=>!HGK#�?A13<�= <�1$G0=JBl=>!H.0%aGK=>?@1$B�y95_c~va=�BC13'/'21�D@,/#aY�:�1�*a=J*-=�Ò_#a=>?.0va=�B¥%-#-:�.0,/13#³èqýaã�ï�ä¹»�UaD@v-,/:RvG0=;.0%aGK#�?F.0va=�<�!H.0va=><n!H.0,/:;!$'�?½ðN%-!HG0=¢1$BS!�#N%-<J[Z=;G©5

« l�r ®�°�u|k�§�­QÆ�« ler®lüÊÁ

§a­'r�ua§'loÆAl¿þ�lüÊüÅÂ

Page 15: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

O�� bd#�.A=;GK!$:�.0,/I$=�y329?A=;G>Ôo?�4¢%-,/*a=

c~va=�B¥%-#-:�.0,/13#�,/?�*a=>:;'j!HG0=>*�!$?�.|] Q =³« ler_UVD@v-,/:Rv�<�=>!$#-?�.0v-!H.�,2.�Dq,/'/'£G0=;.0%aGK#�!$#�,/#&.A=;Y$=;G�IH!$'/%a=$5�}@=�Ê�.:�13<�=>?�.0va=�B¥%-#-:�.0,213#ß#-!$<�="®�°'u|k3§a­-USBC13'/'21�D�=>*ß[N]�,2.0?�!HG0Y3%-<�=>#&.�'/,/?A. ,/# Q !HG0=>#�.0v-=>?A=>?;5�®�°'u|k3§a­ v-!$? 13#a=!HG0Y3%-<�=>#�.;UHl�U-Dqv-,/:Kv³,j?~!$#M,/#&.A=;Y$=;G>5�}@1$.0,/:�= va1©D�*a=>:;'/!HGK,j#aY�.0va=�.E] Q =�1$BS.0va=�!HGKY3%-<�=>#&.@,/?~*a13#-=�?0,/<�,/'j!HGK'2].A1n*a=>:;'j!HGK,/#aY�.0va=�.|] Q =¢1$BS.0va=¢B¥%-#-:�.0,213#)5

s{va=>#n!�BC%-#�:�.0,213#�v-!$?�!HG0Y3%-<�=>#&.0?�*-=>:;'/!HG0=>*zU&.0va13?A=q!HGKY3%-<�=>#&.+IH!HGK,/!H[�'2=>?+!HG0=@IH!$'/,/*�Dq,2.0v-,/#�.0va=�DA?0:�1 Q =}G1$Bz.0va=qBC%-#�:�.0,213#f�¥,k5p=$52UN.0va=;]�13#-'/]�v�!>I$=¢<�=>!$#-,/#-Y�D@,2.0v-,j#�.0va=@B¥%-#-:�.0,213#)Ôo?�1©Dq#r:�1�*a=��R5 X .0va=;G�B¥%-#-:�.0,213#-?+<�!>]%-?A=¢.0v-=�?0!$<�=¢IH!HGK,/!H[�'/=�#-!$<�=>?~,/#�*a= Q =>#-*a=>#&.0'2]$5

c~va= :�1N*-=�BC1$G ®�°'uHk�§�­�,/?q:�13#�.0!$,j#a=>*"D@,2.0v-,/#�.0va= ?0=;.q1$B+:;%-GK'2][-GK!$:�=>?;59bd#MB¥!$:�.;Uz,2.q:�13#-?K,/?A.0?q1$B+!r?K,/#aY3'2=?A.0!H.A=><�=>#&.;^�.0va=�§a­'r�u�§�l?0.0!H.A=><�=>#�.;5\c~v-=¢§�­�r'ua§�l?A.0!H.A=><�=>#&.9=�Ê�,2.0?~.0va=�B¥%-#-:�.0,213#�!$#�*³G0=;.0%aGK#�?\.0va=¢IH!$'/%a=1$BS.0va=Jye»Fÿ3µ�ä¹»¹è0èKél¸�å.0v-!H.~BC13'/'21�D@?~,2.��¥,/#.0v�,/?\:;!$?A=§Dsl,þ�leG��R5

(iÊ Q G0=>?K?0,213#-?z!HG0=�=;I�!$'j%-!H.A=>*J!$:;:�1$GR*-,/#aY9?A=;.�1$B Q GK=>:�=>#-*a=>#-:�=�GR%-'2=>?�*-= Q =>#�*-,/#aYF13#�.0v-=+IH!HGK,213%-?�1 Q =;GR!H.0,213#-?D@,2.0v�,/# .0va=�=�Ê Q G0=>?0?K,213#z5nbd#u.0v-,j?�:;!$?A=$US.0va=;G0=�,/?¢13#-'2]"13#a=r1 Q =;GR!H.0,213#ö�¥< %-'2.0, Q 'j,/:;!H.0,213#_�RU�?K,2Y3#-,ÓÒ�=>* [N] .0va=D)þ�G�U�?A1 Q GK=>:�=>*a=>#-:�=�,/?\#-1$.@!$#�,/?0?K%a=$5

g)=;.;Ôo?q'21N1$²r!H.q!$#�=�Ê�!$< Q '2=¢1$B£!�BC%-#�:�.0,213#.0v-!H. Q =;G0BC1$GK<�?\!�B¥%-#-:�.0,/13#³:;!$'/'z.A1�.0va=�®�°'uHk�§�­ Q G01$Y$GK!$<�5

¤a¬�¦zk'røªe�'{�¦�r�­�lhuz®$­±Æ;«$ler k1Éu« l�r �üÊÁ

¤a¬�¦zk�röª!Ū³Ä ®�°&§hr1ÆhÆK¤a¬�¦zk'rTÊ�Æ;®�°�u|k�§�­QÆFkRÊ_¥�®�°�u|k3§a­QÆA�üÊhÊzÊ�ŧa­'r�ua§'loÆúªüÊ�Å

Â

c~v-,j?+:�1�*a=9*-=><�13#-?A.AGK!H.A=>?F?A=;I$=;GR!$'Z<�1$G0=qBC=>!H.0%aG0=>?�1$B£yt5&`S,2GK?A.;U�#a1$.0,/:�=9.0v-!H.F.0va=q°�13!H.0,/#aY Q 13,/#�.�I�!HGR,/!H[�'2=ª�,/?�*a=�ÒZ#a=>*u!H.�.0va=n[Z=;Y3,j#-#-,/#aY�1$BF.0va=Öªe��{-¦�r�­�lzu�®$­B¥%-#-:�.0,213#z5nbú#uY$=>#-=;GK!$'kU£D@va=>#a=;I$=;G�!f#a=;D Q GK1$Y$GK!$<[�'21�:0²u�¥,/#-*�,/:;!H.A=>*[&]!�?A=;.@1$BS:;%-GK'2]n[�GK!$:�=>?R�F,/?F[�=;Y3%-#)U�#-=;Dà'21�:;!$'zI�!HGR,/!H[�'2=>?\<�!©][Z=�*-=�Ò_#a=>*z5

c~va=�IH!$'/%a=n1$B+ª�,/?�?A=;.�.A1f.0va=�G0=>?0%�'2.¢1$B\!M:;!$'/'i.A1f.0va=�®�°�§zr"BC%-#�:�.0,213#z5nbú.�.0%aGR#-?¢13%a.J.0v-!H.�®�°�§zr",j?�![�%-,j'2.dhE,/#rbAy�B¥%-#-:�.0,/13#.0v-!H.~.0!H²$=>?9!�°�13!H.0,/#aY Q 13,/#&.\#&%�<�[�=;G~!$?@,/.0?~!HG0Y3%-<�=>#&.;5

su=�DF!$#�.¢.A1�%-?0=J.0va=³®�°'uHk�§�­�B¥%-#-:�.0,/13#fD�=�*a=�Ò_#-=>*M=>!HGK'j,2=;G>UzD@v-,j:Kv"G0=;.0%aGK#�?q,2.0?tGK=>?0%-'2.t!$?¢!$#u,/#&.A=;Y$=;G>5�F%a.�.0va=�®�°�§zr�B¥%-#-:�.0,213#nG0=}ð&%�,2G0=>?+!�°�13!H.0,/#aY Q 13,/#&.+!HG0Y3%-<�=>#&.;5isu=tY$=;.\!HG013%-#-*n.0v-,/?�.|] Q =t,/#-:�13< Q !H.0,2[�,/'/,/.E][N]n·¹¸N»Rä;·Ké/å�ð.0va=@,j#�.A=;Y$=;G�?0%-< Æ>®�°'uHk�§a­±ÆLk|Ê?¥M®�°�u|k�§�­QÆA�üÊzÊ~,/#&.A1�!t°�13!H.�[N] Q G0=>:�=>*-,/#aY�,/.iD@,2.0v�.0va=~*a=>?K,2G0=>*.E] Q =$Ua,/# Q !HG0=>#�.0v-=>?A=>?;5�c~vN%-?;UN.0va=t,/#�.A=;Y$=;G~?K%-< ,j?�<�!$*-=9,/#&.A1�!�°_13!H.0,/#aY Q 13,j#�.�#&%-<J[�=;G�!$#�* Q !$?K?A=>*!$'213#aY.A1�®�°�§zrZ5

Page 16: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

yFv-! Q .A=;G�BN^ Pòñ %-,/:K²³y{c£%a.A1$GK,j!$' O}B

c~va=qªe�'{�¦�r�­�lhuz®$­�BC%�#-:�.0,213#�Ò_#-,j?0va=>?�[&]�G0=;.0%aGR#-,/#aY�.0va=�IH!$'/%a=t1$BVªz5

c~v-,j?�:�13#�:;'/%-*a=>?\.0v-=¢[-GK,2=;Biy�.0%a.A1$GK,/!$'�5

Page 17: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

O>¯ bd#�.A=;GK!$:�.0,/I$=�y329?A=;G>Ôo?�4¢%-,/*a=

Page 18: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

yFv-! Q .A=;Gq¯N^+8t!H.0! X [e�d=>:�.0? O©W

� � >r�5>������18��¢��º

��!HGK,/!H[_'2=>?V!$#�*J:�13#-?0.0!$#�.0?S!HG0=F.0va=�[�!$?0,/:�*-!H.0!q1$[��d=>:�.0?S,/# !¢y Q GK1$Y$GK!$<³5S8q=>:;'j!HGK!H.0,213#-?S'/,/?0.).0va=�I�!HGK,j!H[�'2=>?.A1�[�=�%-?A=>*)U-?A.0!H.A=�D@[email protected]] Q =¢.0v-=;]!HGK=$U�!$#-*�<�!©]³?A=;.\.0va=>,2G@,j#-,2.0,/!$'_I�!$'j%a=$5

%JLK �Y�ZüS½Y��� FN1·

��!HGK,/!H[_'2=�#-!$<�=>?�!HGK=M:;!$?A=�hE?A=>#-?K,2.0,2I$=$5øc@va=�%-#-*a=;GR?0:�1$G0=�:Kv�!HGK!$:�.A=;G�,j?�!$'/'21�D�=>*ø!$#-*¡,/?�1$BC.A=>#ö%-?0=>*�.A1=>#-v-!$#�:�=�.0va= G0=>!$*-!H[�,j'/,2.E]1$B�'213#-YnIH!HGK,/!H[�'2=J#-!$<�=>?;5¢y ²$=;]ND�1$GR*-?t'/,2²$=�«$¤�U_¨&ªZ«�¬�­�U�=;.0:H59<�!>]f#a1$.q[�= %-?A=>*!$?~IH!HGK,/!H[_'2=¢#-!$<�=>?;5

4t'21$[_!$')IH!HGK,/!H[�'2=>?q!$#-*�B¥%-#-:�.0,/13#-?@<�!©]M#a1$.9v-!>I$= .0va=�?0!$<�=J#�!$<�=$5~bd#f!$*-*�,2.0,213#zU�,/BS!�'21�:;!$')IH!HGK,/!H[�'/=�,/?#-!$<�=>*�.0va=�?0!$<�=n!$?�!³Y3'21$[�!$'i1$GJ!³BC%�#-:�.0,213#zUz.0va=�%�?A=�1$BF.0v-!H.�Y3'21$[�!$'S1$G�BC%-#�:�.0,213#u,/? Q GK=;I$=>#�.A=>*uDq,2.0v-,/#.0va=�?K:�1 Q =¢1$BS.0va=�'/1N:;!$'zIH!HGK,/!H[_'2=$5

������������������� �!�#"!$&%('

bd#"y9UZI�!HGR,/!H[�'2=>?q:;!$#M[�=J*-=>:;'/!HG0=>*"!H.q.0va= .A1 Q '2=;I$=>'F�C13%a.0?0,/*a=J1$B+!$#&]�:;%aGK'2][-GK!$:�=>?¹�\1$G¢!H.9.0va= ?0.0!HG0.q1$B=>!$:Kvn[�'21�:0²�¥!¢BC%�#-:�.0,213#-!$'�%-#-,/.£1$B�:�1�*a=~?0%aG0GK13%-#-*a=>*J[&]�:;%aGK'/]�[-GK!$:�=>?¹�R5£bd#�Y$=>#a=;GK!$'�U�!¢IH!HGK,/!H[�'2=F*a=>:;'/!HGR!H.0,213#,/?F1$BS.0va=�BC1$GK<³^

¦'rh��{-­�¨3¦��ek�§�«'k��_¬&­;l|k jZ­�¨QŦ�§¦'rh��{-­�¨3¦��ek�§�«'k��_¬&­;l|k jZ­�¨'Äe¦�« l�«�r_«�k�¬a«*)�k'r_«3¦�lÛ��k'rek�¨QÅ

bd#nb0y9U�¦'rz�'{�­z¨J:;!$#�[�=�« ler/É~¬�¦�le¢/É�¤a¬&¦hk�r/É¡g©ª|k3§oÉ�1$Gt® rN§�u�g�r�¦-® rN§'uTg�r�l|k jZ­z¨-U&!$#�*r*a=;.A=;GR<�,/#a=>?�.0va=µ�äKéjñnï�ädô�æÓô�µS»t1$Bz.0va=~IH!HGK,/!H[�'2=q*a=>:;'/!HG0=>*z5ic~v�,/?SBl1$GR< :Kv�!$#aY$=>?F?A13<�=;D@v-!H.+D@va=>#n*-=>!$'/,/#aY¢D@,/.0v Q 13,/#�.A=;G�!$#-*!HG0GK!©]n*a=>:;'/!HGR!H.0,213#-?;U&D@v-,/:Rvn!HG0=q=�Ê Q 'j!$,/#a=>*�,/#r!�'/!H.A=;GF?A=>:�.0,213#)U&[�%-.�,/#�Y$=>#-=;GK!$'�.0v�,/?+,/?+.0va=9D�!©]�]$13%r*-=>:;'/!HG0=IH!HGK,/!H[�'2=>?>5

�������,+.-/%0�1���2��'43657�&%984���;:��<%9=>��?

búBV!�IH!HGK,/!H[�'/=t,j?\*a=>:;'/!HG0=>*³Dq,2.0v-,/#�!�B¥%-#-:�.0,213#zU�1$G@!$?q!$#�!HG0Y3%-<�=>#�.~.A1r!�BC%-#�:�.0,213#zUa,2.0?\[�,j#-*-,/#aY ,/?\òl¸a·RïHòkU<�=>!$#-,j#aY�.0v-!H.~.0va=¢IH!HGK,/!H[_'2=¢v-!$?\=�Êa,/?A.A=>#-:�=�13#�'2]rDq,2.0v-,/#�.0v-!H.~B¥%-#-:�.0,/13#³*a=�Ò_#-,2.0,/13#z5

Page 19: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

O>T bd#�.A=;GK!$:�.0,/I$=�y329?A=;G>Ôo?�4¢%-,/*a=

búB�!tI�!HGR,/!H[�'2=�,/?i*a=>:;'/!HG0=>* 13%a.0?K,/*a=�1$BZ!9B¥%-#-:�.0,213#zU$,2.i,/?S!9Y3'21$[�!$'�IH!HGK,/!H[_'2=$5�bú.i,/?i*a=�Ò_#a=>*JBC1$G�!$'/'NBC%-#�:�.0,213#-?;U,/#-:;'j%-*-,/#aY�B¥%-#-:�.0,/13#-?@Dqv-,/:Kv !HG0=�*a=�ÒZ#a=>*f,j#�Ò_'/=>?q1$.0v-=;G¢.0v-!$#".0va=�13#a=�,/#MDqv-,/:Kvf.0va=�Y3'21$[�!$'£IH!HGK,/!H[�'/=JDF!$?*a=>:;'/!HGK=>*z5

�������A@CBD� �E$�� 8F�&�HGI'4$,"E$�����$&J��#"E$&%('

g)1�:;!$'�!$#�*�Y3'21$[_!$'3IH!HGK,/!H[�'2=>?V:;!$#�[�=+,j#-,2.0,/!$'/, �;=>*t.A19!@I�!$'/%-=+D@va=>#�.0va=;]�!HG0=�*a=>:;'/!HG0=>*z5£búB�#-1q,/#-,/.0,/!$'/,#�>!H.0,213#IH!$'/%a=�,/?FY3,2I$=>#)U-.0va=¢IH!HGK,/!H[�'2=�,j?\,/#-,2.0,/!$'j,#�;=>*n.A1��;=;G01a5

P '/'~Y3'21$[_!$'~IH!HGK,/!H[�'2="*a=>:;'/!HGK!H.0,/13#-?r< %-?A.r[�=f,/#-,/.0,/!$'/,#�;=>*�.A1�:�13#-?A.0!$#&.�I�!$'/%-=>?;5�g�1N:;!$'qI�!HGR,/!H[�'2=>?r<�!>][�=n,/#-,/.0,/!$'/,#�;=>* .A1f.0va=nIH!$'/%a=�1$B~!HGK[�,2.AGK!HG0] =�Ê Q G0=>?0?K,213#-?�,/#�:;'/%-*-,/#-Y�!$#&]uY3'21$[�!$'/?>UVB¥%-#-:�.0,213# :;!$'/'/?;UVBC%�#-:�.0,213#!HG0Y3%-<�=>#�.0?;U�1$G@'21�:;!$'/?\D@v-,j:Kv³v-!©I$=�!$'2G0=>!$*a]�[�=;=>#�,/#-,/.0,/!$'/,#�;=>*z5

�q=;G0=�,/?~!�?K<�!$'/'Z=�Ê�!$< Q '2=�1$BSva1©D�,/#-,2.0,/!$'j,#�;=>**a=>:;'/!HGK!H.0,213#�?\!HG0=�%-?A=>*)5

« l�r�«�ÄLKh�1Å �eþ��N­Hg�¬�k�§�­à«Ûk�®�¢a¬�¦��Hk�¬e«$lera­�¢�­3§��z��«$l�«�r�«'kN¬®�ekN¬�u-­MKh�³þ��¬&¦�lH¢MN�ÄTp��h�PO/Å �eþ��N­Hg�¬�k�§�­QN k�®�¢a¬�¦��Hk�¬{¬�¦�lH¢ �z�à« lZ«�r�«'k�¬®�ek�¬�u�­òp �z�³þ��« l�re¤�¦&¦QÆ$ÊÁ

«$ler�v1Å ��þ���­Hg3¬hk3§a­ v�k-®ø¬&¦Hg�k�¬à«$lera­�¢�­3§ø¨Z«�r�ª «$l�«�r�«'kN¬��ekN¬�u�­ �¿þ'�¬�¦�le¢3��ÄLN£Å ��þ���­Hg3¬hk3§a­Û�Àk-®ø¬&¦Hg�k�¬à«$lera­�¢�­3§ø¨Z«�r�ª «$l�«�r�«'kN¬��ekN¬�u�­�N¿þ'�

Â

g)1�:;!$'zIH!HGK,/!H[�'/=>?\!HG0=�,/#-,/.0,/!$'/,#�;=>*rD@va=>#a=;I$=;[email protected]=�B¥%-#-:�.0,213#³:�13#&.0!$,/#-,/#-Y�.0va=><ÖGK%-#�?;5

4t'21$[_!$'-IH!HGK,/!H[�'2=>?�!HG0=q,j#-,2.0,/!$'/, �;=>*�D@va=>#a=;I$=;GF!�GK=>?A=;.�:�13#�*-,2.0,213#n1N:;:;%aGR?;5iw~=>?A=;.F:�13#-*-,2.0,/13#-?�1�:;:;%aG�D@va=>#z^

OH5"y�1�*a=�,/?\*a1�D@#-'213!$*-=>*�~�N5Mc~va=¡j�k-«$loÆ}Ê Q G01�:�=>*-%aG0=¢,/?FGR%-#�~LN5"xN]�?A.A=><îv-!HGR*aD�!HGK=¢G0=>?A=;.~1�:;:;%aGK?;5

�������SR TU���!?L$�?V"L�W'("X5Q�&%98Y����BH� �E$�� 8Y�&��?

P ? Q =>:;,j!$'Zµi»RäKè0éjè>æE»¹å_æFBC1$GK< 1$B�Y3'21$[�!$'£I�!HGR,/!H[�'2=$Uzv-!$?t[�=;=># ,/< Q '/=><�=>#�.A=>*"BC1$G¢bAyt5 P Q =;GK?0,/?A.A=>#&.9Y3'21$[�!$'<�!©]¡[�=f,/#-,/.0,/!$'/,#�;=>*§�0%-?A.�'/,2²$=f!$#&]¡1$.0va=;G�Y3'21$[�!$'�U\[�%a.r,/.0?nIH!$'/%a=",/?�13#-'/]¡,/#-,2.0,/!$'j,#�;=>*�D@va=>#ø.0va=f:�1�*a= ,/?*a1�D@#-'213!$*a=>*"!$#-*"#a1$.913#f!$#&]�1$.0va=;GtG0=>?A=;.t:�13#-*-,/.0,213#-?;5~búB+#a1�,/#-,2.0,j!$'/,#�>!H.0,213#�,j#aBl1$GR<�!H.0,213#M,j?@,/#-:;'j%-*a=>*³BC1$G

Page 20: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

yFv-! Q .A=;Gq¯N^+8t!H.0! X [e�d=>:�.0? O>6

! Q =;GK?K,/?A.A=>#&.~,2.0?~IH!$'/%a=¢D@,j'/'�[�=�,/#-,2.0,j!$'/,#�;=>*�.A1��;=;G01r13#M*a1�D@#-'213!$*)U-[�%a.@'/=;Bl.@%�#-:Kv-!$#-Y$=>*³13#f!$'j'z1$.0va=;G@GK=>?A=;.:�13#-*-,/.0,213#-?;5

cV1f<�!H²$=! Q =;GK?0,j?A.A=>#�.�Y3'21$[�!$'�IH!HGK,/!H[_'2=$U Q GK=�Ò-Êu.0va=n.|] Q =r? Q =>:;,2Ò�=;G�D@,/.0vu.0va=n²$=;]ND�1$GK*_{�­�§_®&«N®�ra­�ler_5`a1$Gq=�Ê�!$< Q '2=$Ua.0va=�?A.0!H.A=><�=>#�.

{�­3§Z®�«�®�r�­�l�r�« l�r�«�ÄLKh�z�£Å

:�G0=>!H.A=>?9!�Y3'21$[�!$'z,j#�.A=;Y$=;G9:;!$'/'2=>* «�D@,2.0v.0va=�,j#-,2.0,/!$'ZIH!$'/%a=?BH4$4�5

C£=;GK?0,/?0.A=>#�.�I�!HGK,j!H[�'2=>?�²$=;= Q .0va=>,2G�?A.0!H.A=tD@va=>#n.0va=@[�13!HGK*r,/?�.0%aGR#a=>*�1H¼f!$#�*�13#zUND@va=>#¾jRk-«$ln,/?+GK%-#zUN!$#-*D@va=>#"?A]�?A.A=><�G0=>?A=;.t1�:;:;%aGK?;5�C£=;GK?0,/?A.A=>#&.tI�!HGR,/!H[�'2=>?qD@,/'/'�'213?A= .0va=>,2Gt?A.0!H.A=�D@va=>#":�1N*-= ,/?9*a1�D@#-'213!$*a=>*"!$?¢!G0=>?0%�'2.�1$B)'213!$*-,j#aY�1$GF%-#-'213!$*-,j#aY�!¢Ò_'/=$5Q�q1©D�=;I$=;G>U-,2.�,/? Q 13?0?0,/[�'2=\.A1 G0=>!$*n.0v-=@IH!$'/%a=>?�1$Bz]$13%-G Q =;GK?0,j?A.A=>#�.0?�,/#b0yß,2B-]$13%�!HG0=~?0.0,/'/'&GK%-#-#-,j#[email protected]=~?K!$<�=\bAyß?0=>?0?0,213# BCG013<�D@v-,/:Rv�.0va=\:�1N*-=\D�!$?�*-1©D@#-'/13!$*a=>*z5£bú# .0v-,/?i<n!$#-#a=;G]$13%:�13%-'/*nG0=>!$*�.0va=~Ò_#�!$'-IH!$'/%a=>?�1$B�:;!$'/,2[-GR!H.0,213# Q =;GK?0,j?A.A=>#�.0?>U�BC1$G�=�Êa!$< Q '2=$U�!$#-*�<�1�*-,2BC]J.0va=t,/#-,/.0,/!$'aIH!$'/%a=>?Y3,2I$=>#³.A1n.0va13?A= Q =;GK?0,j?A.A=>#�.0?@! Q-Q G01 Q GR,/!H.A=>'2]$5

C£=;GK?0,/?0.A=>#�.\IH!HGK,/!H[�'/=>?FD�=;G0=J:�G0=>!H.A=>*MDq,2.0v.ED�1n! Q-Q 'j,/:;!H.0,213#-?\,/#³<n,/#-*z^

½ yF!$'/,/[-GK!H.0,213#�!$#�*M:�13#�Ò�Y3%-GK!H.0,213#fI�!$'/%-=>?~.0v-!H.t*a1n#a1$.t#a=;=>*f.A1n[�=�GK=�hE:;!$'/:;%-'/!H.A=>*f13#M=;I$=;GK]�G0=>?A=;.9:�13#�h*-,2.0,/13#z5

½ w~1$[�1$.�'2=>!HGK#-,/#-Y�!$'2Y$1$GK,2.0v-<n?i.0v-!H.�<n,2Y3v�.+1N:;:;%aG�1©I$=;GF! Q =;GK,/1N*�Dqva=>#�.0va=qG01$[�1$.+,/?�.0%-GK#a=>*�13#r!$#-*�1H¼S5

%J©I Ë ª�U�·HPTY+U�P�·

���,+2���ZGI'("L��[����X\H%('4?V"!��'("!?

bd#�.A=;Y$=;GK?n:�13#-?A.0!$#&.0?n<�!©] [�=³*a=�Ò_#a=>*�,j#ß*-=>:;,/<�!$'\,/#&.A=;Y$=;G�BC1$GK<�!H.M�C=$5pYa52U0]z�LK�m�1$G��Rp��RU�va=�Ê�!$*-=>:;,/<�!$'BC1$GK<�!H.�%�?0,/#aY�.0v-=ÒD½�hvhG Q G0=�Ò-ÊM�C=$5pYa52UH�hv�p�¤&¤N¤a�RU&!$#-*r!J#a13#ahE?A.0!$#-*-!HGK*n[�%a.+%�?A=;BC%�'a[�,/#-!HGK] BC1$GK<�!H.�%-?0,/#-Y�.0va=D½���eG Q G0=�Ò-Ê �C=$5pYa52UT����p��h��p �z��p��R5 X :�.0!$'):�13#�?A.0!$#�.0?9%-?0,j#aY�.0va=%�;=;G01 Q GK=�Ò-Ê!HGK=�#a1$.@?0% Q�Q 1$GK.A=>*z5

Page 21: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

�H4 bd#�.A=;GK!$:�.0,/I$=�y329?A=;G>Ôo?�4¢%-,/*a=

���,+2�,+.-/%('�[^GI'("L��[����X\H%('4?V"!��'("!?

g)13#-Y ,j#�.A=;Y$=;G�:�13#-?0.0!$#�.0?�!HGK=�:�G0=>!H.A=>*�[N] ! Q-Q =>#-*-,j#aYM.0va=³?0%eï�ʳDK¬�G 1$G¤D�OzG��¥% Q-Q =;GAht1$G�'21�D�=;GAhE:;!$?0=!$' Q v�!H[Z=;.0,j:�gS�£.A1J!�*a=>:;,/<�!$'-,j#�.A=;Y$=;G>5i`a1$G�=�Êa!$< Q '2=$U��VO�,/?i.0va=q'213#aY%�;=;G01a5�(�,2.0va=;G�.0va=q% Q-Q =;GS1$G�'21�D�=;GAhE:;!$?0=DAg�Gn<�!>][�=�%-?A=>*zUa[_%a.\% Q-Q =;GAhE:;!$?A=�,/?F.0v-=�:�13#�I$=>#&.0,213#fBl1$G@G0=>!$*-!H[�,/'j,2.E]$5

���,+2�A@`_a�&%9�#"E$�'�[QTU%($�'("b\H%('4?V"!��'("!?

`S'213!H.0,/#aY Q 13,/#&.�#N%-<J[Z=;GR?�<�!©]r%-?0=q=�Ê Q 13#a=>#�.0,j!$'Z#-1$.0!H.0,213#u�C=$5pYa52U/D?p��&­zm�GJ1$G�D}p ��ëem�G��+1$G\<�!>]:�13#&.0!$,/#!�*a=>:;,/<�!$' Q =;GK,21�*z5S`a1$G\=�Êa!$< Q '2=$U�.0va=9°�13!H.0,/#-Y Q 13,/#&.5�;=;G01�:;!$#[Z=9Y3,2I$=>#³!$?�D½�onsG�U1D��/ny��G�U�1$G�D½��ëTp G�Ua[�%a.#a1$.~!$?±�0%-?A.�D½�hG�5�÷�é/åz·¹»�æ â »¾������� â ïHè~å_¸dcZ¸Hï�æké/åaðJµS¸�éjå_æ â ï�ä;º_íSï�ä¹»©ùEcZ¸Hï�ækéjå�ð�µS¸�éjå_æ�¸�µi»RäRï�ækél¸�å-è~ï�ä�»9ñ�ãN· âè0òl¸3íS»RäJæ â ïHåMé/åZæE»KðN»Rä9¸�µi»RäRï�ækél¸�å�è�ù_ïHå�ºrè â ¸�ã$ò¥ºMóa»�ã$èR»©ºrèEµ�ï�äKé/å�ð�ò ô&ÿ

���,+2�SR \�e;� �!� �f"L���!?g��'43h:("!�E$�'�[i\D%2';?P"L��'("!?

ñ %a1$.A=>*M:Kv-!HGK!$:�.A=;GR?@G0=;.0%-GK#.0va=>,2G P x-y�b0b�I�!$'j%a=n�C=$5pYa52U�j©v�jK�R5

yFv-!HGR!$:�.A=;G�?0.AGK,/#aY�:�13#-?A.0!$#&.0?�!HG0= *a=�Ò_#a=>* D@,2.0vOð&%a1$.0!H.0,/13#Ö<�!HG0²�?;Ur=$5pYa52U®Ç)ê�ªZ«�®�«�®¾kEg�ªHk�§�kHg�r�­�§®�r&§_«$lH¢5n}ÇH5

���,+2�,k.l7m7-n-

c~va=�? Q =>:;,/!$'�:�13#�?A.0!$#�.�}�29g�gv-!$?£.0va=�I�!$'/%-=�1$BH�;=;GK19!$#-*�:;!$# [�=�!$?0?K,2Y3#a=>*J.A1t!$#�*J:�13< Q !HG0=>* .A1 Q 13,/#&.A=;G1$G@!HG0GR!>]I�!HGR,/!H[�'2=>?��CDqv-,/:KvDq,/'/'Z[�=�*a=>?0:�GK,2[�=>*,/#³'/!H.A=;G9?A=>:�.0,213#-?¹�R5�bú#�Y$=>#a=;GK!$'kU-]$13%f:;!$#-#a1$.@:�13#&I$=;G0.q1$.0va=;G:�13#-?A.0!$#&.0?q.A1�[�=91$Bi! Q 13,/#&.A=;G\.E] Q =$U�?A1�.0va=;GK=�!HG0=�<�!$#&]�.0,/<�=>?\D@v-=>#�}�29g�g :;!$#�[�=¢%-?A=;B¥%-'k5

`a1$Gt=�Êa!$< Q '2=$U�,/#f1$GK*a=;G9.A1:Rva=>:0²",2B�! Q 13,j#�.A=;Gtv-!$?9[�=;=>#f,/#�,2.0,/!$'/,#�;=>*]$13% :�13%-'j*f:�13< Q !HG0=�,2.0?@IH!$'/%a=J.A1}�2qgVgö!$#-*�#-1$.¢.AG0]f.A1f!$:;:�=>?0?�,2.0?�:�13#�.A=>#&.0?�,2B�,2.¢DF!$?�}�2qgVg�5 P '/?A1aU�,2B�]$13%�v-!$*u!M*a=�Ò_#a=>* !�'/,j#a²$=>* '/,/?A..E] Q =�:�13#-?0,j?A.0,/#aY�1$Bi!�I�!$'j%a=�!$#-*�! Q 13,/#&.A=;G\.A1n.0v-=�#a=�ÊN.@=>'2=><�=>#&.;U-]$13%M:�13%-'j*³'21&1$²�[email protected]=¢=>#-*�1$B£.0v-=�'/,/?A.[N]�:�13< Q !HGK,/#aY�.0va=J#a=�ÊN. Q 13,/#&.A=;G\.A1r}�29g�g�5

%Jy´ oOY5PTY³æqp/r�N1·

b0y�?0% Q-Q 1$G0.0?F.0va=¢BC13'/'21�D@,/#aY�*-!H.0!�.E] Q =>?>^

Page 22: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

yFv-! Q .A=;Gq¯N^+8t!H.0! X [e�d=>:�.0? ��O

���Ws*8Y$,"tGI'("L��[����!?

O>¯�h�[�,2.J,/#�.A=;Y$=;GR?�!HG0=n?K,2Y3#-,ÓÒ�=>* [N] .0va=�.|] Q =n,/#�*-,/:;!H.A1$G�« l�rZ5nc~v-=;] !HGK=n?0,2Y3#a=>*�,/#�.A=;Y$=;GR?;U£!$#�*�<�!>]u[�=IH!$'/%a=>*BCG013<Ìh|L$�NU�WH¯$Tn.A1�¥NL$�NU�WH¯3Wn*a=>:;,/<n!$'k5

@(+�s*8Y$,"tGI'("L��[����!?

L$��h�[�,2.t,/#&.A=;Y$=;GK?t!HG0=�?0,2Y3#-,2Ò�=>*�[N]�.0va= .E] Q =�,j#-*-,/:;!H.A1$G�¬�¦�lH¢�5tc~va=;]�!HG0=�?0,/Y3#a=>*f,j#�.A=;Y$=;GK?>U�!$#�*"<n!>]M[�=IH!$'/%a=>*BCG013<Ìh|�NU/O��&W&Up��T$LNU7¯���T.A1�¥��NU/O��&W&Up��T$LNU7¯��&W*a=>:;,j<�!$'k5

@(+�s*8Y$,"u_a�&%9�#"E$�'�[QTU%($�'("tliv4wx8>�W�!?

`S'213!H.0,/#aY Q 13,j#�.�#N%-<J[Z=;GR?�!HG0=r?K,2Y3#-,ÓÒ�=>* [N] .0va=n.|] Q =n,j#-*-,/:;!H.A1$G±¤�¬&¦hk�rZ5rc~va=;]uv-!©I$=�! Q�Q G01>Êa,/<�!H.A=>'/]?A=;I$=>#f*a=>:;,/<�!$'z*-,/Y3,2.0?F1$B Q G0=>:;,/?0,/13#�!$#�*�!HG0=�IH!$'/%a=>*BCG013<î!H[�13%a.�O;4H×>h|L$T�.A1MO;4H×�L$TN5

yWsz8F$,"D\{e4� �!� �f"L���!?

yFv-!HGR!$:�.A=;GK?�!HG0=�!$#JT�h�[�,2.V#&%-<J[�=;G)?0,2Y3#-,2Ò�=>*t[&]t.0va=+.E] Q =�,/#-*-,/:;!H.A1$G1g©ª|k3§Z5 P :Kv�!HGK!$:�.A=;G>Ôo?£I�!$'j%a=i.E] Q ,/:;!$'/'/]G0= Q GK=>?A=>#�.0?q! Q GR,/#�.0!H[_'2=�?A]�<�[�13')%-?K,/#aY�.0va=�?0.0!$#-*-!HGK* P x-yFb0b�:Rv-!HGK!$:�.A=;G¢:�1�*a=$U�[�%-.~.0v-,/?~,j?@#a1$.@#-=>:�=>?0?0!HG0]�~:Kv�!HGK!$:�.A=;GK?9:;!$#³[�=�%-?A=>*³.A1�GK=;Bl=;G~.A1r!HG0[�,2.AGK!HGK]�T�h�[�,2.~#N%-<J[�=;GK?;5

TU%($�'("L���!?

b0y Q 13,j#�.A=;GK?F!HG0=�O>¯�h�[_,2.~#&%�<�[�=;GK?�D@v-,j:KvG0= Q GK=>?A=>#�.~'/1N:;!H.0,213#�?\,/#<�=><�1$G0]$51��!$'j%a=>?~,/#<�=><�1$GK]�:;!$#³[�=<�!$#-, Q %-'/!H.A=>*u[N]�:;!$'/:;%-'j!H.0,/#aYaU Q !$?0?0,j#aYM!$#-* º�»Rä�»¹ê¥»Rä¹»¹åz·Ké/å�ð Q 13,/#�.A=;GR?�G0= Q GK=>?A=>#�.0,j#aYM.0va='21�:;!H.0,213#�Dqva=;G0=.0va=�,j#aBl1$GR<�!H.0,213#,/?~?A.A1$GK=>*z5

| �!�!�1};?

P G0GK!>]�?�!HG0=r%-?A=>*u.A1M?0.A1$G0=rva13<�1$Y$=>#a13%-?�'/,j?A.0?¢1$BF*-!H.0! �¥<�=>!$#�,/#aY³.0v-!H.�!$'j'S.0va=�=>'2=><�=>#&.0?�1$B\!$#�!HGKGK!>]v-!©I$=�.0v-=F?K!$<�=�.|] Q =��R5i(�I$=;GK]�!HG0GK!©]Jv-!$?S!t'2=>#aY$.0vJD@v-,/:RvJ,j?V*a=;.A=;GR<�,/#a=>* !H.S.0va=�.0,j<�=�.0v-=�!HG0GR!>]J,j?V*a=>:;'j!HG0=>*z5c~va=q*-!H.0!�?A.A1$G0=>*�,/#�.0va=q=>'2=><�=>#&.0?�1$Bz!$#n!HGKGK!>]�:;!$#n[Z=q?A=;.�!$#-*�G0=;.AGK,2=;I$=>*r,/#�.0va=@?K!$<�=q<�!$#�#a=;G�.0v-!H.�1$.0va=;GIH!HGK,/!H[�'2=>?\:;!$#M[�=$5

Page 23: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

�$� bd#�.A=;GK!$:�.0,/I$=�y329?A=;G>Ôo?�4¢%-,/*a=

:2"L�Ev4�f"!v4�L��?

xN.AGK%�:�.0%aG0=>?~!HG0=�%-?A=>*M.A1r?A.A1$GK= #a13#ahEva13<�1$Y$=>#a13%-?q[�%a.@G0=>'/!H.A=>*M?0=;.0?q1$B�*�!H.0!�5@(+'2=><�=>#�.0?@1$B�!n?A.AGK%�:�.0%aG0=!HG0=fG0=;Bl=;GK=>#-:�=>*ö[N]¡#-!$<�=",/#-?A.A=>!$*ö1$B�#&%�<�[�=;Gr!$#�*ö<�!©]¡[�=�1$B�!$#�]ø?0% Q-Q 1$G0.A=>*�.|] Q =$5�x�.AGK%-:�.0%aG0=>?r!HG0=%-?A=;B¥%-'�BC1$G+1$G0Y3!$#�,#�>,/#aY�GK=>'/!H.A=>*n*-!H.0!J,/#&.A1�!�:�13va=;G0=>#&.+BC1$GK<�!H.;UNG0=>*-%�:;,/#aY¢.0va=@#N%-<J[�=;G�1$Bz!HG0Y3%-<�=>#&.0? Q !$?K?A=>*.A1uB¥%-#-:�.0,213#-?>U�,/#-:�G0=>!$?0,j#aYM.0va==�¼�=>:�.0,2I$=M#N%-<J[Z=;G 1$B9I�!$'/%-=>?JDqv-,/:Kv�:;!$#�[�=�G0=;.0%aGK#a=>*ß[N]�B¥%-#-:�.0,213#�?;U�!$#-*:�G0=>!H.0,/#-Yn:�13< Q '2=�ʳ*-!H.0!�GK= Q G0=>?A=>#&.0!H.0,213#-?~?K%-:Kv�!$?q*-,2G0=>:�.A=>*�Y$GK! Q v-?\!$#-*M'/,/#a²$=>*³'/,j?A.0?;5

%J,~ �²ª�SFU�PTN1Z�·

c~va=f!$*-*aG0=>?0?�D@va=;G0=M!�I�!$'j%a=M,/?r?A.A1$G0=>*�,/#¡<�=><�1$GK]¡,/?�²�#a1©D@#ø!$?n.0v-= µi¸�é/åZæE»Räf.A1ß.0v-!H.rI�!$'/%-=$5�bú.,/?�1$Bl.A=>#ß%-?A=;B¥%-'�.A1"*a=>!$'�D@,2.0v Q 13,/#&.A=;GK?¢.A1"1$[��A=>:�.0?;Ui[�%a.�Y$G0=>!H. :;!HGK=�< %-?A.J[Z=n.0!H²$=># .A1 ,/#-?K%aG0=�.0v-!H. .0va=Q 13,/#&.A=;GK?t%-?A=>*u!H.�!$#&] Q 13,/#&.9,/#"]$13%aGJ:�1N*a=�G0=>!$'j'2]M*a1 Q 13,/#&.9.A1³IH!$'/,/*f1$[��A=>:�.0?�,/# <�=><�1$GK]$5 P .A.A=>< Q .0?¢.A1G0=;BC=;G~.A1�,/#&I�!$'j,/*<�=><�1$G0]'21�:;!H.0,213#-?\:�13%-'/*³:�1$GKGK% Q .F]$13%aG@<�=><�1$G0]$5+ f13?A.@:�13< Q %a.0,/#aY�=>#&IN,2GK13#-<�=>#&.0?F.0v-!H.]$13%�!HGK= Q G01$[�!H[_'2]f%-?0=>*u.A1�G0=;.0%aGR#�va=>' Q B¥%-'£<�=>?0?0!HY$=>? '/,2²$= ���&­h¢�jZ­�lerek'r_«$¦�lg�_«$¦�¬�k�r_«$¦�l�Ô�1$G�����uz®�ëN§&§a¦�§_Ô13#"!H.A.A=>< Q .0?9.A1r!$:;:�=>?0?¢,j'/'2=;Y3!$')<�=><�1$G0]$5¡�q1©D�=;I$=;G>Uz#a1r?0%�:Kv"?0!HBl=;.|]M#a=;.q=�Ê�,/?0.0?q,/#�.0va= ¯N57�3W�4?A]�?A.A=>< !$#-*,/#&I�!$'j,/* Q 13,/#�.A=;G�*a=;G0=;BC=;G0=>#-:;,/#aYJ,/?iI$=;G0]�'/,/²$=>'2]J.A1JY$1J%-#�*a=;.A=>:�.A=>*r!$#�*�:;!$%-?A=9?A=;GK,213%-?+*-!$<�!HY$=9.A1�]$13%aG�*-!H.0!�U]$13%aG Q G01$Y$GK!$<³U-1$G@=;I$=>#�.0va= Q :�1�*a=¢,/#&.A=;G Q G0=;.A=;G>5

���SR;����TU%($�'("L����:0�����1"�}

bd# Q !$?A.~I$=;GR?0,213#-?\1$BSb0y9U-]$13%f:�13%-'/*�#a1$.@G0=;.0%aGK# Q 13,/#&.A=;GK?\BCG013<�BC%-#�:�.0,213#-?F1$Gqv�!>I$=J!HGKGK!>]�?@1$B Q 13,/#&.A=;GK?;5bd#M1$GK*-=;Gq.A1B¥!$:;,/'/,2.0!H.A=J.0va= %�?A=J1$B�?A.AGK%-:�.0%aGK=>?;U_.0v-=>?A=JBC=>!H.0%aG0=>?tv-!©I$=�[Z=;=>#"!$*-*a=>*f.A1.0va=�:;%aG0G0=>#&.@I$=;GK?K,213#z5s{,2.0v³.0v-,/?\:Rv-!$#aY$=$U_.0va=�#N%-<�[�=;G\1$BS1 Q-Q 1$G0.0%-#�,2.0,2=>?�.A1n<�,/?K%-?A= Q 13,/#�.A=;GR?\v-!>I$= ,/#-:�G0=>!$?A=>*)51�@1�D�=;I$=;G>U�,2B£]$13%BC13'/'21©D�!�Bl=;D�?0,/< Q '/= Q GK=>:;!$%a.0,213#-?F]$13%f?0va13%-'/*³*-1�Ò_#a=$5

`S,2GK?A.;U�]$13%f?0va13%-'/*!$'2DF!>]�?@:Rva=>:0²³.0v�!H.~.0va=¢IH!$'/%a=¢1$BS! Q 13,/#�.A=;G~,j?~#a1$.\=}ðN%-!$'z.A1n}�2qgVgø�¥!�? Q =>:;,j!$'T�;=;G01Q 13,/#&.A=;G¹�\[�=;BC1$G0=�]$13% .AGK]�.A1³!$:;:�=>?0?¢,2.;5���!HGK,/!H[�'/=>?@D@v�,/:Kv"!HG0=�*a=>:;'/!HG0=>*f.A1[�= Q 13,/#&.A=;GK?9!HG0= ,j#-,2.0,/!$'/, �;=>*³.A1}�2qgVg�U�?A1�<n!$#�]³%-#-,j#-,2.0,/!$'/, �;=>*�IH!$'/%a=>?~:�13%-'j*[Z=�:;!$%-Y3v�.~.0v�,/?FD�!©]$5

xN=>:�13#-*)U-]$13%f?Kva13%-'/*�#-=;I$=;G9%-?0=�! Q 13,/#&.A=;[email protected]�!n'21�:;!$')IH!HGK,/!H[�'/=�,/#�!r<�!$#-#a=;GqD@v-,/:Rv�:�13%-'/*f:;!$%-?A=J,/.~.A1[�=n!$:;:�=>?0?A=>*ß!HBC.A=;GJ.0va=rBC%�#-:�.0,213#�,/#�D@v-,/:Rv�,2.�DF!$?J*-=>:;'/!HG0=>*u.A=;GK<n,/#-!H.A=>?;5s{va=>#�!MBC%-#�:�.0,213#u.A=;GK<�,j#-!H.A=>?.0va=³? Q !$:�=³Dqva=;G0=³,2.0? I�!$'j%a=>?�D�=;GK=�[�=>,/#-Y"?A.A1$GK=>*�,/?�G0=>:�]�:;'2=>*z5�c~v-=;G0=;Bl1$GK=#-1$.�13#-'2]�<�!©]ß*-=;G0=;Bl=;GK=>#-:;,/#aY?0%-:Rv Q 13,/#&.A=;GK?9G0=;.0%aGK#u,/#�:�1$G0G0=>:�.¢IH!$'/%a=>?;U)[_%a.¢!$?0?0,2Y3#-,j#aYr.A1M.0va13?A=�!$*-*aGK=>?0?A=>?¢:�13%-'/*u'/=>!$*u.A1�?A=;GK,213%�?¢*-!H.0!:�1$G0GK% Q .0,213#z5 P Y$1&1�*�DF!>]³.A1 Q G0=;I$=>#&[email protected],/?@,/?~.A1�#a=;I$=;GqGK=;.0%aGK#³.0va=J!$*-*aG0=>?0?@1$Bi!n'21�:;!$')IH!HGK,/!H[�'/=¢BlG013<�.0va=B¥%-#-:�.0,213#"D@v-,j:Kv"*a=>:;'/!HG0=>?¢,2.¢!$#-* #a=;I$=;GJ?A.A1$G0=�.0va13?A= Q 13,/#&.A=;GK?t,/#"!$# 1$[��d=>:�.¢Dqv-,/:Kv"D@,j'/'�'/,/I$=�'/13#aY$=;Gt.0v-!$#

Page 24: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

yFv-! Q .A=;Gq¯N^+8t!H.0! X [e�d=>:�.0? �$L

.0va=�B¥%-#-:�.0,/13#³,2.0?A=>'2BF�¥!�Y3'21$[�!$' Q 13,/#&.A=;G>U-!HG0GR!>]$U�1$Gq?A.AGK%-:�.R�R554¢'21$[�!$'zIH!HGK,/!H[�'/=>?\!$#-*³IH!HGK,/!H[�'2=>?\'/1N:;!$'z.A1r<�!$,/#D@,/'j'Z#-1$.~<�1©I$=J13#-:�=�*a=>:;'/!HGK=>*�!$#-*³.0va=>,/G Q 13,j#�.A=;GK?@:;!$#³[�=�:�13#-?0,/*a=;GK=>*.A1�[�=�?A=>:;%aG0=$5

c~va=¢.|] Q = :Kva=>:K²N,/#-Yr*a13#a=�[&]³b0y{D@,j'/'�va=>' Q�Q GK=;I$=>#�.9<�!$#�]�<n,/?0v-! Q ?>Ua[�%a.@,2.@D@,/'/'�#a1$.9:;!H.0:Kv !$'/'z=;G0GK1$GK?;U?A1�[�=¢:;!HG0=;B¥%-'k5

���SR;�,+.TU%($�'("L���U�^�W���&� �!�#"E$&%('���';3xmQ?P�

P IH!HGK,/!H[�'2=�D@v-,/:RvM,/?q! Q 13,/#&.A=;[email protected]!$#M1$[��A=>:�.91$B+!�Y3,2I$=>#f.E] Q =J,/?9*a=>:;'/!HGK=>*M,/#M.0va=J?0!$<�= <�!$#�#a=;Gq!$?t!G0=;Y3%-'j!HG~1$[��A=>:�.~1$BV.0v�!H.~.E] Q =$U-[�%a.\D@,/.0v³!$#³=�ÊN.AGR! þ�,j#BlG013#&.~1$B£.0va=�IH!HGK,/!H[�'/=t#�!$<�=$5

c~va=9IH!$'/%a=¢?A.A1$G0=>*³!H.\.0va=�'/1N:;!H.0,213#�.0va= Q 13,/#&.A=;GFG0=;BC=;GK?F.A1�,/?F!$:;:�=>?0?A=>*M[&]�%-?0,/#aYJ.0va=�þJ1 Q =;GK!H.A1$G\[�=;BC1$G0=.0va=�=�Ê Q G0=>?K?0,213#D@v-,j:Kv³:;!$'/:;%-'j!H.A=>?\.0va= Q 13,/#&.A=;G>5�c~v-,j? Q G01N:�=>?K?~,/?\²�#a1©Dq#�!$?~*a=;G0=;BC=;G0=>#-:;,j#aYa5

c~va=�!$*�*aG0=>?0?z1$Ba!@I�!HGK,j!H[�'2=�,/?):;!$'j:;%-'/!H.A=>*�[N]¢%-?0,/#-Y�.0v-=9�91 Q =;GR!H.A1$G�[�=;Bl1$GK=�.0v-!H.�IH!HGK,/!H[_'2=$U�!HG0GR!>]t=>'2=><�=>#&.;U1$G@?A.AGR%-:�.0%aG0=¢=>'2=><�=>#�.~GK=;Bl=;G0=>#�:�=$5

c~va=;GK=r!HG0=�.ED�1u<�!$,/#�*�,Ó¼Z=;GK=>#-:�=>?�[�=;.|D�=;=>#�va1�D ]$13%�D�13%-'/* %-?A=�!MIH!HGK,/!H[�'/=n1$B@!fY3,2I$=>#ß.E] Q =r!$#-*�!IH!HGK,/!H[�'2=¢*a=>:;'j!HG0=>*�!$?@! Q 13,/#&.A=;G~.A1�.0v�!H.~.E] Q =$5

`a1$Gq.0va=¢Bl13'j'21©D@,j#aY�=�Ê Q 'j!$#-!H.0,213#zU-:�13#-?K,/*a=;G�@ !$#-* @ Q .AG@!$?@*-=�Ò_#a=>*³!$?~BC13'/'21�D@?;^

¬&¦�lH¢7�1Ŭ&¦�lH¢�þ*�'{er&§oÅ

½ x Q !$:�= P '/'21�:;!H.0,213#�� 89=>:;'/!HGK,/#-Y !$#�1$[e�d=>:�.�1$Bt! Y3,2I$=>#�.E] Q =$U�!$?�� ,/? 1$Bq.|] Q =M¬&¦�lH¢�U�!$'/'21�:;!H.A=>?�.0va=? Q !$:�=�#a=;=>*a=>*".A1?A.A1$G0= .0v-!H.tI�!$'j%a=$5q��=>:;!$%-?A=�!$#"b0ye'213#-Yn.0!H²$=>?tBC13%aGq[N]N.A=>?t1$B+<�=><�1$G0]$UZBC13%aGq[N]N.A=>?!HG0=³G0=>?0=;G0I$=>*¡BC1$G�.0va=�IH!$'/%a=1$BF��.A1�1�:;:;% Q ]$5®�@1�D�=;I$=;G©U~! Q 13,j#�.A=;G�'/,/²$=u��{er&§ß*a1N=>?�#a1$.�v-!>I$=f.0va=?0!$<�=!$<�13%-#&. 1$B@? Q !$:�=!$'/'21�:;!H.A=>*ßBl1$G�,2. .0v-!H. ,j?J#a=;=>*-=>*�BC1$G !$#ß1$[��A=>:�.�1$B\.0va=�.E] Q =,2. Q 13,j#�.0?J.A1a5c~va=;GK=;Bl1$G0=�,2.¢:;!$# 13#-'/]M?0!HBC=>'2]MG0=;BC=;G¢.A1�? Q !$:�=�D@v�,/:Kv v-!$?¢!$'2GK=>!$*a]M[�=;=># !$'/'21�:;!H.A=>* Bl1$G¢Y3'/1$[�!$'/?��¥,/#u!? Q =>:;,/!$'z?A=>:�.0,/13#³1$Bi<�=><�1$G0]�G0=>?A=;G0I$=>*MBl1$G@Y3'21$[�!$'/?R��1$Gq'21N:;!$'j?��C.A=>< Q 1$GK!HG0]?A.A1$GK!HY$=J13#³.0va=�?A.0!$:K²a�R5

½ bd#-,2.0,/!$'e��!$'j%a=���bú.�,/?�!$'2DF!>]�?�?K!HBl=9.A1�G0=;Bl=;G�.A1�!J#a13#ah Q 13,j#�.A=;G�.E] Q =$U�=;I$=>#,2B),2.�v-!$?0#zÔp.�[�=;=>#r,/#�,2.0,/!$'/,#�;=>*)5�q1©D�=;I$=;G Q 13,/#&.A=;GK?tv-!>I$=�.A1[�=�? Q =>:;,ÓÒ_:;!$'/'2]³!$?0?K,2Y3#a=>*".A1³.0va=�!$*-*aG0=>?K?q1$B�'2=;Y3!$'/'2]f!$'/'21�:;!H.A=>*u? Q !$:�=�1$G.A1�.0va=�I�!$'/%-=¢1$B£!$#�!$'/G0=>!$*a],/#-,2.0,/!$'j,#�;=>* Q 13,/#&.A=;G~[�=;BC1$G0=¢.0va=;]!HG0=�?0!HBC=�.A1n%-?0=$5

xN1aU�BC1$G~=�Ê�!$< Q '2=$U-:�13#-?0,j*a=;GFD@v-!H.\D�13%-'/*v-! Q-Q =>#,2B�.0v-=tÒ�GK?A.F.ED�1n?A.0!H.A=><�=>#�.0?q!HBl.A=;G+@�!$#-* @ Q .AG\D�=;G0=*a=>:;'/!HGK=>*³D�=;GK=�.0va=¢BC13'/'21©Dq,/#aYa^

Page 25: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

��� bd#�.A=;GK!$:�.0,/I$=�y329?A=;G>Ôo?�4¢%-,/*a=

�zÄLKh�VOoÅþ���{er&§�Ä!K��PO/Å

c~va=9Ò�GR?A.~?A.0!H.A=><�=>#&.@,/?\IH!$'/,/*)^S,/.F?0=;.0?~.0va=¢IH!$'/%a=¢1$B��n.A1�BH4$g+5_c~v-=t?0=>:�13#-*�?A.0!H.A=><�=>#&.@D�13%-'/*[�=¢IH!$'/,/*,2B0��{erN§"v-!$*�[Z=;=># Q G01 Q =;GK'2]",/#-,2.0,/!$'j,#�;=>*zU�[�%a.�,/#�.0v-,/?�:;!$?A=r,2.�,/?�#-1$.;5rc~va=;GK=;Bl1$G0=$U£.0v-,/?¢?0.0!H.A=><�=>#�. D�13%-'/*:�1$G0GK% Q .~<�=><�1$G0]$5

�q=;G0=�,/?¢!�?A=}ðN%a=>#-:�=�1$B\:�13<�<n!$#-*-?t]$13%�:�13%�'/* .AG0]"D@v-,/:Rvu,/'/'/%-?0.AGK!H.A= v-1©D Q 13,/#&.A=;GK?¢!$#-*u.0v-= þ!$#-*H�1 Q =;GK!H.A1$GK?9!HG0=�%-?A=>*z5\bú.q!$'/?01r?0va1�D@?q.0v-!H.q13#�:�= ! Q 13,j#�.A=;G9v-!$?@[�=;=>#"?A=;[email protected] Q 13,/#&.@!H.9! Q '/!$:�=�,/#�<�=><�1$G0]$UG0=;BC=;G0=>#-:�=>[email protected],2.~!$:�.0%-!$'/'/]�?0v�!HG0=¢.0va=�?0!$<�=J<�=><�1$G0]!$?~.0va=�1$[��d=>:�.q,2. Q 13,/#�.0?F.A1a^

�zÄLKh�VOoŧ��þe®$­�r r3ª�­�j_­�jZ¦3§z��kN¬N¬�¦Hg'k'ra­���¤�¦3§M� ra¦ r�ª-­ �ekN¬�u�­QKh�³þ���'{�rN§zÄ����1ŧ�eþe®H­�rM��{erN§ ra¦�{�¦a« l�r ra¦Q��þ��þ���{er&§oŧ��þe®$­N­ r3ª|k'r r�ª�­ ��k�¬�u�­®{-¦-« l�ra­�� k�r ���M�'{er&§�«�®^K��³þ���zÄ�p��h�POoÅÙ�eþe®$­'rM�3ra¦3r�ª-­Û�ekN¬�u-­òp��z�³þ'�þ���{er&§oŧ��þe®$­N­ r3ª|k'r r�ª�­ ��k�¬�u�­®{-¦-« l�ra­�� k�r ���M�'{er&§¿g�ªHk�lH¢N­h� r�¦òp��h�³þ��þ���{er&§�Äe���z�VOoÅÙ��þe®$­'r r�ª�­ ��k�¬�u�­®{-¦-« l�ra­�� k�r ���M�'{er&§ ra¦����z�³þ���/Å���þe®$­&­ r�ª|k'r r�ª-­ �ek�¬�u�­à«$l��¿g�ª|k�lH¢N­h� r�¦��h�z�³þ'�

���SR;�A@�Tt� ?�?�$�';[^TU%($�'("L���!?U� ? | �L[(vYw6�W'("!?

C£13,/#&.A=;GK?�:;!$#�[�= Q !$?0?0=>*�.A1�B¥%-#-:�.0,213#-?i!$#�*�BC%�#-:�.0,213#-?i:;!$#�:Rv-!$#aY$=q.0va=\I�!$'j%a=>?i1$BZ.0va=~IH!HGK,/!H[�'2=>?S.0v�!H.+!HG0=Q 13,/#&.A=>*f!H.;5�c~v�,/?@,/?q.A=;GK<�=>* ·RïHò/òj¶Aó;ô�¶Cä¹»¹ê¥»Rä�»¹å�·¹»h~)!nGK=;Bl=;G0=>#�:�=$Uz1$G Q 13,/#&.A=;G>UZ.A1³!rIH!HGK,/!H[_'2=J,/?qY3,2I$=>#".A1.0va=B¥%-#-:�.0,213#�.0v-!H.~,/?F[�=>,/#-Y :;!$'/'/=>*z5�c~v-,/?�,/?\,/#:�13#&.AGK!$?A.~.A1 ·RïHòjòj¶Aó�ô�¶dç�ïHòEã�»�U�.0va=�?A.0!$#-*�!HGK*D�!©]r.0v�!H.\BC%-#�:�.0,213#-?!HG0=�:;!$'j'2=>*zU-,/#D@v�,/:Kv.0va=¢IH!$'/%a=¢1$Bi!�IH!HGK,/!H[�'/=�,/?FY3,2I$=>#³.0va=�.A1�BC%�#-:�.0,213#[�=>,/#aY�:;!$'/'2=>*)5

c~va= BC13'/'21©Dq,/#aY�=�Ê�!$< Q '2= *-=�Ò_#a=>?t!$#¤k'�a­�§�kh¢N­�i-®H­�l�®$¦�§�B¥%-#-:�.0,/13#MD@v�,/:Kv".0!H²$=>?�! Q 1$G0.t#&%�<�[�=;G¢!$#-*u!Q 13,/#&.A=;G .A1�!$#�,j#�.A=;Y$=;G�IH!HGK,/!H[_'2=$5�c~va=�B¥%-#-:�.0,213#ßD@,/'j'�!©I$=;GK!HY$=M.0va=³?A=>#�?A1$G�!$#-*�?A.A1$G0=.0va=³GK=>?0%-'2.�,/#ß.0va=IH!HGK,/!H[�'2= Q 13,/#&.A=>*³!H.@[N]r§a­�®}u_¬�rZ5

`-%-#�:�.0,213#�!HG0Y3%�<�=>#�.0? !HG0=�*a=>:;'/!HG0=>*�.A1f[�= Q 13,/#&.A=;GK?�[N] Q G0= Q =>#-*-,j#aY³!M?A.0!HG .A1f.0v-=n!HG0Y3%-<�=>#&.�#-!$<�=$U�0%-?A.~!$?~,/?@*a13#a=¢BC1$G~1$.0va=;G@IH!HGK,/!H[_'2=¢*a=>:;'/!HGK!H.0,213#�?;5

�a¦a«���k'�a­�§�kh¢N­�i-®H­�l�®$¦�§£Æ;«$ler�{�¦3§zr/Éu« ler¿þ�§a­-®$u_¬�rTÊÁ« l�r ®$u'jRÄ��1Å« l�r�«±Å¤�¦3§ Æ;«�Ä��1Åu«�¦òp �1Åu«�¥h¥�Ê�®}u�j¿¥hÄ�k�l|kN¬&¦�¢£Æy{-¦�§hrTÊ�ÅþH§�­�®}u_¬'rzÄ ®}u�j��Rp��£Å

Page 26: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

yFv-! Q .A=;Gq¯N^+8t!H.0! X [e�d=>:�.0? ��B

Â

}q1$.0,/:�=F.0v-!H.S.0va=FBC%-#�:�.0,213#J,/.0?A=>'2B-,/?S*a=>:;'/!HGK=>* !$?i!��a¦a«��_5�bú.£*a1N=>?i#a1$.S#a=;=>*�.A1tG0=;.0%aGK# !$#&]&.0v-,j#aYaU$[�=>:;!$%-?A=,2.~,/#�?A.A=>!$*�?A.A1$G0=>?@,2.0?~!$#-?AD�=;G@,/#.0v-= Q 13,/#�.A=;G\IH!HGK,/!H[_'2=¢.0v-!H.@,/? Q !$?0?A=>*³.A1n,/.;5

c~va= Q 13,/#&.A=;G£IH!HGK,/!H[_'2=�,/?S%-?0=>* ,j#J.0v-=F'j!$?A.£'j,/#a=�1$B�.0va=FB¥%-#-:�.0,213#z5Vbú# .0v-,j?£?0.0!H.A=><�=>#�.;U&.0va=\!$#-?AD�=;G\®}u�jT�|p��,/?�?A.A1$G0=>*³!H.F.0va=t'21�:;!H.0,213# Q 13,j#�.A=>*!H.F[&]n§�­�®}u_¬'r_5S}@1$.0,j:�=¢.0v-!H.�.0v-=t!$?0.A=;GK,/?A²n,j?�%-?0=>*r.A1�!$?0?K,2Y3#!�IH!$'/%a=9.A1.0va=�òC¸�·Rï�ækél¸�å Q 13,j#�.A=>*[N]r§a­�®}u_¬�rZ5

���SR;�SR����1"Ev4�E'4$�';[^TU%($�'("L���!?����L%(w _4vY';�f"E$&%('4?

C£13,/#&.A=;GK?�:;!$#e!$'/?01�[Z=uGK=;.0%aGK#a=>*�BCG013< B¥%-#-:�.0,213#-?>5±`-%�#-:�.0,213#-?�!HGK=�*a=�Ò_#a=>*{.A1¡GK=;.0%aGK# Q 13,/#&.A=;GK?[&]Q G0=>:�=;=>*�,/#aY�.0va=�#-!$<�=�1$BV.0v-=�BC%�#-:�.0,213#D@,2.0v³!n?A.0!HG>U��0%-?A.\'/,2²$=�!$#&]1$.0va=;G~.|] Q =�1$B Q 13,/#�.A=;Gq*a=>:;'/!HGK!H.0,213#)5

« l�r §_«�¢3ªer/ÉK¬�­&¤hr/Å« l�r¿þ��-«H§�{�rN§£Æ;« l�r3�-«H§TÊÁ

«H¤£Æ½��«H§zÄzÄz�RÊ�Á§a­'r�ua§'loÆ��&§_«�¢3ª�rTÊ�Å

«H¤£Æ½��«H§zÄzÄ�phÊ�Á

§a­'r�ua§'loÆ��a¬&­�¤hr�Ê�ŧ�­�r'ua§�l/ƽã'Ü!O�O�Ê�Å

Â

c~va=FB¥%-#-:�.0,213#���«H§'{er&§JG0=;.0%aGK#�?£! Q 13,j#�.A=;Gi.A1�.0v-=\Y3'21$[�!$'a§_«�¢3ªer�D@va=>#�,/.0?i!HG0Y3%-<�=>#&./��«�§ ,/?�4�U�! Q 13,/#&.A=;G.A1�¬&­�¤hrnDqva=>#�,2.0?\!HG0Y3%�<�=>#�.q,/?�OHU�!$#-*³}�29g�gß,2BV,2.0?@!HG0Y3%-<�=>#&.@,/?F1$.0va=;Gq.0v-!$#�4�1$GJOH5

%J�� � Z�Z�Y p�·

b0yî?0% Q-Q 1$G0.0?n!HG0GR!>]�?1$B�:Kv-!HGR!$:�.A=;GK?;Ut,/#�.A=;Y$=;GR?;Uq'213#-Y ,/#&.A=;Y$=;GK?;U@°�13!H.0,/#aYHh Q 13,/#&.r#N%-<J[Z=;GR?;U~?A.AGK%-:�.0%-G0=>?;UQ 13,/#&.A=;GK?;U�!$#-*r!HG0GK!©] Q 13,/#&.A=;GK?@�¥< %-'2.0,2hE*-,/<�=>#-?K,213#-!$'N!HG0GK!>]�?R�R5is{v-,/'2=~%�#-'/,2²$=\G0=;Y3%�'/!HG�y�!HGKGK!>]�?+,/#n!�#&%�<�[�=;G1$BzG0=>? Q =>:�.0?;UN.0va=;]�:;!$#r[�=q%-?A=>*r,/#n!J?0,/<�,j'/!HG�<�!$#-#a=;G©5Sc@va=@<�!$,/#nG0=>!$?A13#-?�.0v-!H.F!HG0GK!©]N?�!HG0=t%-?A=;B¥%-'-!HG0=q.0v-!H..0va=;]M!$'j'21©D�]$13% .A1³!$'/'21�:;!H.A=�? Q !$:�=�Bl1$G¢<�!$#&]M,/#�?A.0!$#-:�=>?91$B+!�Y3,2I$=># .E] Q =$Uz?A=>#-*"!$#u!HG0[�,2.AGK!HGK]�#&%-<J[�=;Gq1$BIH!$'/%a=>?\.A1�B¥%-#-:�.0,/13#-?;Ua!$#-*�,2.A=;GR!H.A=�1©I$=;Gt!�?A=;.~1$BSIH!$'/%a=>?;5

Page 27: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

�$¯ bd#�.A=;GK!$:�.0,/I$=�y329?A=;G>Ôo?�4¢%-,/*a=

P G0GK!>]�?\,/#b0y�!HG0=�*-,Ó¼�=;G0=>#&.\!$#-*³,/#-:�13< Q !H.0,2[�'2=9D@,2.0v³!HG0GR!>]�?~,/#�1$.0va=;G~I$=;GK?K,213#-?F1$B�y95-c~v-,/?F,/#�:�13< Q !H.0,Óh[�,/'j,2.E],/?@:;!$%�?A=>*M[N].0va=�B¥!$:�.9.0v-!H.qGK=;Bl=;G0=>#�:�=>[email protected]!HG0GK!>]�?t!HG0=J:Rva=>:0²$=>* .A1�,/#-?0%-G0=¢.0v-!H.9.0va=�G0=;BC=;G0=>#-:�= ,/?.AGK%-'/]rD@,/.0v-,/#³.0va=J[�13%-#-*-?F1$Bi.0v-!H.t!HG0GK!©]$5~bd#�1$GK*a=;Gq.A1�!$:;:�13< Q '/,/?0v�.0v-,/?@:Rva=>:0²�,/#aY,/#³.0v-=�Y$=>#a=;GK!$'£:;!$?A=$U�,2.,/?q#a=>:�=>?0?0!HG0][email protected]=�?0,#�;=J1$Bi.0va=J!HGKGK!>]�[�=�?0.A1$G0=>*MDq,2.0v�.0va= :�13#�.A=>#&.0?t1$Bi.0va=�!HG0GK!©]$5@ë�æ+é/èqé/ñ�µi¸�ä©æ�ïHåZæ~æE¸ä¹»¹ñr»¹ñóa»RäJæ â ï�æ�ïHåfï�ä0ä¹ï¹ô ¸�ê�ï ð�é�ç©»¹åßæÓô�µi»¢ïHå�º³ï�µi¸�é/åZæE»Rä�æE¸�æ â »tèKïHñr»�æÓô�µS»�ï�ä¹»té/åz·¹¸�ñ�µ)ï�ækéEó$òC» æÓô�µS»¹èqé/åë>ì�ù�í â »Rä¹»�ïHè�æ â »0ôfï�ä¹»tòjï�äAðN»¹òÓôé/åZæE»Rä;· â ïHå�ðN»�ïaó$òl»téjåä¹»Kð_ã$òjï�ä ì\ÿ

���,k2������������� �E$�';[���'43iG�'4$,"E$&����$&J�$�'�[ | �!�!��};?

P G0GK!>]�?�!HG0=³*a=>:;'/!HG0=>*�%-?K,/#aYf?Fð&%-!HGK=r[-GR!$:0²$=;.0?;5�c@va=rBC13'/'21�D@,/#aY"?A.0!H.A=><�=>#&.n*a=>:;'/!HGK=>? !$#�!HG0GR!>]�1$Bq.A=>#,/#&.A=;Y$=;GK?;^

« l�re¤�¦&¦2�)p �I�1Å

bd#u.0v-,/?�!HGKGK!>]$US=>'2=><�=>#&.0?�!HGK=r#N%-<�[�=;G0=>* BCG013< 4³.A1"6N5(+'2=><�=>#�.0?J!HG0=r!$:;:�=>?0?0=>*�[N] =>#-:;'213?0,/#-Y³.0va=n,/#-*-=�Ê#N%-<�[�=;GiD@,/.0v-,/# ?½ð&%�!HG0=\[-GK!$:K²$=;.0?;^ ¤�¦&¦2�&]I�J*a=>#a1$.A=>?i.0va=FÒ_Bl.0v�=>'2=><�=>#�.�1$BZ.0va=~!HG0GR!>]�¤N¦N¦n�¥?0,j#-:�=~:�13%-#&.0,/#aY[�=;Y3,/#-?\!H.+�;=;GK1&�R5

P G0GK!>]�? !HG0=�,j#-,2.0,/!$'/, �;=>* [&]�*-=;BC!$%-'/.�.A1":�13#&.0!$,/#�!$'/'o�;=;G01"I�!$'/%-=>?;5 P G0GK!>]�?�<�!>] !$'/?A1M[�=�,/#-,2.0,/!$'j,#�;=>*u!H.*a=>:;'/!HGR!H.0,213#[&]? Q =>:;,2BC]N,j#aYJ.0v-=�!HG0GK!>]=>'2=><�=>#�.0?;U-?0= Q !HGK!H.A=>*�[N]r:�13<n<�!$?;U-D@,/.0v-,/#:;%aGK'2]n[-GK!$:�=>?;5�búBV#-1�?0,#�;=IH!$'/%a=�,j?�? Q =>:;,ÓÒ�=>*�D@,2.0v-,/#t.0v-=�?½ðN%-!HG0=+[-GK!$:0²$=;.0?SDqva=>#�.0va=�!HG0GK!©]�,/?�*-=>:;'/!HG0=>*�[_%a.V,/#�,2.0,/!$'/,#�>!H.0,/13#¢,/#aBC1$GK<�!H.0,213#,/?¢Y3,/I$=>#zUV.0v-=n?0,#�;=�1$BF.0va=�!HG0GK!©] ,j?�*a=;.A=;GK<�,j#a=>*u[N]".0v-=n#&%�<�[�=;G�1$BF=>'2=><�=>#&.0?JY3,2I$=>#�,/#�.0va=n*a=>:;'/!HGR!H.0,213#z5`a1$Gq=�Ê�!$< Q '2=$U

« l�re¤�¦&¦2�&�hÄ�Áh�£Éb]/ÉXKQÉ��I�1É p�ãɧmz��p�£Å

:�G0=>!H.A=>?9!$#�!HG0GK!©]1$B£?0,2Ê,/#&.A=;Y$=;GK?;U�D@,2.0v³¤�¦&¦2�s�I��=}ðN%-!$'/'/,j#aY�4�U�¤N¦N¦2�Lp���=}ðN%-!$'/'/,j#aYJ�aU�=;.0:H5

búBF!"?0,#�;=�,/?�? Q =>:;,2Ò�=>*�!$#-*ß,/#-,/.0,/!$'/,#�>!H.0,213#u*�!H.0!f,/?�Y3,2I$=>#zUS.0va='2=>#aY$.0v�1$B~.0va=r,j#-,2.0,/!$'/, �>!H.0,213#u*-!H.0!"<�!>]#a1$.q=�Ê�:�=;=>*".0va= ? Q =>:;,ÓÒ�=>*M'/=>#aY$.0v�1$Bi.0va= !HG0GK!©]�1$G9!$#M=;G0G01$G9G0=>?0%-'/.0?;5Fb|BúU�13#f.0va=�1$.0v-=;Gtv�!$#-*zU-]$13%"? Q =>:;,2BC].0va=�?K,#�;=�!$#-* Q GK1©I�,/*a=tBl=;D�=;Gq,j#-,2.0,/!$'/, �>!H.0,213#n=>'/=><�=>#�[email protected]!$#³.0va=�.A1$.0!$'�'2=>#aY$.0v�1$B£.0v-=�!HG0GK!©]$U-.0va=�G0=><n!$,/#-,/#aY=>'2=><�=>#&.0?@!HGK=�,/#-,2.0,/!$'j,#�;=>*�.A1��;=;G01a5

yFv-!HGR!$:�.A=;G�!HG0GK!©]N?J!HG0=�.E] Q ,/:;!$'j'2]f.A=�Ê�.�?A.AGR,/#aY3?;5�c~v-=;G0=�,/?�!�? Q =>:;,j!$'i?A]N#&.0!�ÊuBl1$GJ,/#-,2.0,/!$'j,#�>,/#aY�!HG0GK!>]�?�1$B:Kv�!HGK!$:�.A=;GK?;5�c~va=�:Kv�!HGK!$:�.A=;GqIH!$'/%a=>?~1$BV.0va=J!HG0GK!>]³!HG0=¢=>#�:;'213?A=>*M,j#�ð&%a1$.0!H.0,/13#�<�!HG0²�?;^

g�ªHk�§ ® rN§_«$lH¢2�&�zÄ Ç)úa­�¬N¬�¦Ûr�ª-­�§�­üÇ�Å

Page 28: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

yFv-! Q .A=;Gq¯N^+8t!H.0! X [e�d=>:�.0? �3W

c~v-,j?VBC1$GK< :�G0=>!H.A=>?�!¢:Kv�!HGK!$:�.A=;G�!HG0GR!>]�:;!$'/'2=>*®�r&§_« le¢¢Dq,2.0v .0va= P x-y�b0b)IH!$'/%a=>?S1$BZ.0va=~? Q =>:;,ÓÒ_=>* :Rv-!HGK!$:�.A=;GK?>5bd#�!$*-*-,2.0,213#)U$.0va=@:Kv�!HGK!$:�.A=;G�!HG0GR!>]�,/?S.A=;GK<�,j#-!H.A=>*�[N] !%�;=;GK1a5S��=>:;!$%-?0=@1$BZ.0v-,/?Q�;=;G01Hh�.A=;GK<n,/#-!H.0,213#zU&.0va=~:Kv�!HGAh!$:�.A=;G@!HG0GR!>]:;!$#³[�=q.AG0=>!H.A=>*f!$?\!�?A.AGK,/#-YJBC1$G Q %aG Q 13?A=>?�1$B Q GK,/#&.0,/#aY�CBl1$G\=�Êa!$< Q '2=��R5�y\v-!HGK!$:�.A=;G@!HG0GR!>]�?~:;!$#[�=�,/#-,/.0,/!$'/,#�;=>*%-?0,j#aY�.0va=J:;%-GK'2]�[-GK!$:�=>?9?A]N#&.0!�Ê�U�[�%[email protected]=;]³D@,/'/'z#-1$.@[�=�!$%a.A13<�!H.0,j:;!$'/'2]³#&%�'/'Óh�.A=;GK<�,j#-!H.A=>*³,/#.0v-!H.�:;!$?A=$5ibú#nY$=>#a=;GK!$'kU Q GK,/#&.0,/#aYt1$B):Rv-!HGK!$:�.A=;G\!HG0GK!©]N?�.0v-!H.+!HG0=9å_¸NæS#&%�'/'Óh�.A=;GK<�,j#-!H.A=>*�D@,/'/'a:;!$%�?A= Q G01$[_'2=><�?;5

���,k2�,+.Tt� ?�?�$�';[ | �!�!��};?a� ? | �L[(vYw6�W'("!?

s{va=>#u!$#u!HG0GK!©]f,/? Q !$?K?A=>*".A1�!BC%-#�:�.0,213# !$?¢!$#�!HG0Y3%-<�=>#&.;U).0va=�!HG0GR!>]ZÔo? Q 13,/#�.A=;G¢,/?t!$:�.0%-!$'j'2] Q !$?K?A=>*zUGK!H.0va=;Gt.0v-!$#".0va= =>'2=><�=>#&.0?91$B�.0va=�!HG0GK!©]$5¢b|B�.0v-=JB¥%-#-:�.0,213#f<�1�*-,ÓÒ�=>?q.0va=�!HG0GK!>]MI�!$'/%-=>?;U�.0va= !HGKGK!>]�Dq,/'/')[�=<�1�*-,ÓÒ�=>*)UN?0,j#-:�=¢.0va=;G0=�,j?F13#-'2]�13#a=�:�1 Q ]1$BS.0va=�!HGKGK!>],/#�<�=><�1$G0]$5

bd#u#a1$GK<�!$'�ytUz.0va=;G0=n!HG0=n.ED�1MDF!>]�?�1$BF*a=>:;'/!HGK,j#aY�!$#�!HG0GK!©]u!HG0Y3%-<�=>#&.;^J!$?J!$#�!HG0GK!©]"1$G !$?�! Q 13,/#&.A=;G.A1 .0va=.E] Q =�[email protected]=³!HG0GK!>]ZÔo?�=>'2=><�=>#&.0?;5ubd#ßbAy !HG0GK!©] Q 13,/#&.A=;GK?�!HG0=,/#-:�13< Q !H.0,/[�'2=nDq,2.0v Q 13,/#&.A=;GK? .A1 .0va==>'2=><�=>#&.0?~1$BS!$#M!HGKGK!>]?A1n?0%�:Kv�!HG0Y3%�<�=>#�.0?q:;!$#³13#-'2]�[�=�*a=>:;'/!HG0=>*³!$?q!HG0GK!©]N?;5

P ?V!$# =�Êa!$< Q '2=$U$.0va=�BC13'/'21©Dq,/#aY~B¥%-#-:�.0,213#J.0!H²$=>?i!$#�,/#-*a=�Ê�!$#-*�!$# !HG0GK!©]$U�!$#-*JG0=;.0%aGK#-?V.0va=F!HG0GK!©]�=>'2=><�=>#&.? Q =>:;,ÓÒ�=>*[N]�.0va=�,/#-*a=�Ê�^

« l�r §a­'rN§_«$­���­�i&­N¬&­ jZ­�l�r1Æ�« ler{«$lH�N­hv/É"« lerÀk3§N§�k����,��ÊÁ

§a­'r�ua§'l³k�§&§ek'���0«$lH�N­hv��1ÅÂ

}q1$.0,/:�=n.0va=r%-?A=�1$BF.0va=n?½ðN%-!HG0=n[-GK!$:0²$=;.0?J.A1M*a=>:;'j!HG0=�.0va=n!HGKY3%-<�=>#&.�k3§N§ek'�"!$?�! Q 13,/#&.A=;G¢.A1f!$# !HG0GK!©]"1$B,/#&.A=;Y$=;GK?;5

s{va=># Q !$?0?0,j#aY�!$#�!HG0GK!>]"IH!HGK,/!H[�'2=�.A1�!B¥%-#-:�.0,213#)Uz]$13%�!HG0=�!$:�.0%-!$'/'/] Q !$?0?K,/#aY.0va=�IH!$'/%a=�1$B�.0v-=�!HGKGK!>]Q 13,/#&.A=;G~,2.0?A=>'2BS!$#-*³#a1$.~13#-=�1$B£,/.0?\=>'2=><�=>#&.0?;U�?A1r#a1�?½ðN%-!HG0=¢[-GK!$:K²$=;.0?q!HGK=�%-?A=>*z5

�a¦a«�� ¤N¦N¦QÆ}ÊÁ

« l�rÀk�§N§�k��0�)p��P�/ŧa­'rN§_«$­���­�i&­N¬&­ jZ­�l�r1ÆFm1ÉÒk�§&§ek'�TÊ�Å

Â

Page 29: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

�$T bd#�.A=;GK!$:�.0,/I$=�y329?A=;G>Ôo?�4¢%-,/*a=

���,k2�A@���vY��"E$�sz3F$�wh�W'4?�$&%('4��� | �!�!�1};?

P .|D�1HhE*-,j<�=>#-?0,213#�!$'�!HGKGK!>]±,/?Ù�A%-?0.ß'/,/²$=�!�?0,/#-Y3'2=�*�,/<�=>#-?0,/13#-!$'�!HG0GK!©] Dqva13?A=�=>'2=><�=>#&.0?�!HG0={13#a=�h*-,/<�=>#-?0,213#-!$'�!HG0GR!>]�?;5+89=>:;'/!HGK!H.0,213#�1$BS!�.ED�1HhE*-,/<�=>#-?K,213#-!$'z!HG0GK!©]³,/?\!$?~BC13'/'21�D@?;^

« l�r3���A�P�0�smI�1Å

c~va=�#N%-<J[�=;G~,/#³.0va=¢Ò_GK?A.~?A=;.q1$B£[�GK!$:0²$=;.0?9,/?\.0va=J#&%-<J[�=;G~1$B\O¹hE8 !HG0GK!©]N?@1$B�«$ler_5�c~va=�#N%-<J[Z=;G~,j#³.0va=?A=>:�13#-*³?0=;.\1$B�[-GK!$:K²$=;.0?~,/?�.0va=�'2=>#-Y$.0vr1$BV=>!$:KvM1$B�.0va=�O¹hE8�!HG0GK!©]N?\1$B+«$lerZ5£bd#.0v-,/?�=�Êa!$< Q '2=$U��r,j?�!$#³!HGKGK!>]:�13#&.0!$,/#-,/#aY�.ED�1uO¹hE8 !HGKGK!>]�?�~T���s�I�³,/?9!"O¹hE8±!HG0GK!©]M1$B « ler�1$B+'2=>#aY$.0v Lz~T���s�I�2�)p���,j?9!$# « l�rZ5 P G0GR!>]�?q1$BD@,2.0vf!$#�]f#&%-<J[�=;G~1$B+*-,j<�=>#-?0,213#�?\:;!$#f[�=JY$=>#a=;GK!$'/,#�;=>*MBlGK13<�.0v-,j?~=�Êa!$< Q '2=J[&]�!$*-*�,/#aYn<�1$GK=J[-GR!$:0²$=;.0?t,/#.0va=�*-=>:;'/!HGK!H.0,213#z5

���,k2�SR����1"��W�Ew $�'Y$�';[¡"Ee��¢?�$&J1��%9� | �!�!�1};?a�#"U��v4'("E$�w6�

P #u!$*aI�!$#&.0!HY$=�1$B�.0va=�DF!>] bAy�*-=>!$'/?tD@,2.0v !HG0GK!©]N?�,/?t.0v-!H.¢]$13%�:;!$#�*-=;.A=;GK<�,/#a=�.0va=�?K,#�;=�1$B�!HG0GR!>]�?�!H.GK%-#&.0,/<�=$5ic~v�,/?+!$'/'/1©D@?�]$13%�.A1 *a1�?0,#�;=9:Kva=>:K²N,j#aY�13#r!$#!HG0GK!©]n,2Bz]$13%!HG0=t%-#-:�=;G0.0,j!$#n1$B),2.0?F*-,j<�=>#-?0,213#�?�!$#-*Q 13?0?0,2[_'2] Q G0=;I$=>#&.@]$13%aG Q G01$Y$GK!$<ÖBCG013<î:�GR!$?0v-,/#aYa5

÷�é/åz·¹»?ihk3§N§�k��Hia®&«*)�­�é/ètå_¸NæFïè>æ�ïHå�ºNï�ä;º�ì�êk»�ï�æ0ãHä¹»©ùi·¹¸aº�»ríiäKé�æAæE»¹å�ã$è0éjå�ð"æ â éjè�µ�äRé/ñ�é�æké�ç©»�í�é/ò/òS¸�å-ò ô�óa»ïaó$òl» æE¸�ó�»�·¹¸�ñJµzé/òl»©ºMí�éEæ â ë;ì�ÿ

c~va=!i�k�§&§ek��ei-®�«�)�­ Q GR,/<�,2.0,2I$=iGK=;.0%aGK#-?�.0va=�?K,#�;=+1$Ba.0va=F!HG0GK!©]�Y3,2I$=>#J.A19,/.�G0=;Y3!HGK*�'2=>?0?V1$B-.0va=�*�,/<�=>#-?0,/13#¢1$G.E] Q =@1$B�.0va=9!HG0GK!>]$51�q=;G0=9,/?+!$#n=�Ê�!$< Q '2=@1$Bz*a=>:;'/!HGR!H.0,213#-?+!$#�*n,/#&.A=;GK!$:�.0,213#rD@,2.0v�.0v-= !HGKGK!>] ?0,#�;= Q GR,/<�,2.0,2I$=$^

« l�r�«��,]��zÄ�ÁRp �1ÉF���1É©mz��ÂQÅ« l�riN2�smI�0�A�P�hÄeÁzÁ|püɽ�z£ɽÁz�QÉ�]eÂQÉFÁ|p*K�Âz£ū l�r3���A�P�0�A�P�2�y�P�1Åihk3§N§�k��Hia®&«*)�­QÆ�«eÊüÅE��þ¡§a­�r'ua§'lz®¡]�þ'�ihk3§N§�k��Hia®&«*)�­QÆ£NRÊüÅ �eþö§a­'r�u�§�lz®;m�þ��ihk3§N§�k��Hia®&«*)�­QÆ£N2�s�I��ÊüÅ �eþ¡§�­�r'ua§�l�®��Àþ��ihk3§N§�k��Hia®&«*)�­QÆy��ÊüÅE��þ¡§a­�r'ua§'lz®��Àþ'�ihk3§N§�k��Hia®&«*)�­QÆy���s�I��ÊüÅ �eþ¡§a­'r�u�§�lz®®�Àþ��

Page 30: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

yFv-! Q .A=;Gq¯N^+8t!H.0! X [e�d=>:�.0? �$6

%J� W%P�Zü\�¯±P�\�Z�N1·

xN.AGK%�:�.0%aG0=>?~!HG0=�%-?A=>*M.A1r?A.A1$GK= #a13#ahEva13<�1$Y$=>#a13%-?q[�%a.@G0=>'/!H.A=>*M?0=;.0?q1$B�*�!H.0!�5@(+'2=><�=>#�.0?@1$B�!n?A.AGK%�:�.0%aG0=!HG0=fG0=;Bl=;GK=>#-:�=>*ö[N]¡#-!$<�=",/#-?A.A=>!$*ö1$B�#&%�<�[�=;Gr!$#�*ö<�!©]¡[�=�1$B�!$#�]ø?0% Q-Q 1$G0.A=>*�.|] Q =$5�x�.AGK%-:�.0%aG0=>?r!HG0=%-?A=;B¥%-'�BC1$G+1$G0Y3!$#�,#�>,/#aY�GK=>'/!H.A=>*n*-!H.0!J,/#&.A1�!�:�13va=;G0=>#&.+BC1$GK<�!H.;UNG0=>*-%�:;,/#aY¢.0va=@#N%-<J[�=;G�1$Bz!HG0Y3%-<�=>#&.0? Q !$?K?A=>*.A1uB¥%-#-:�.0,213#-?>U�,/#-:�G0=>!$?0,j#aYM.0va==�¼�=>:�.0,2I$=M#N%-<J[Z=;G 1$B9I�!$'/%-=>?JDqv-,/:Kv�:;!$#�[�=�G0=;.0%aGK#a=>*ß[N]�B¥%-#-:�.0,213#�?;U�!$#-*:�G0=>!H.0,/#-Yn:�13< Q '2=�ʳ*-!H.0!�GK= Q G0=>?A=>#&.0!H.0,213#-?~?K%-:Kv�!$?q*-,2G0=>:�.A=>*�Y$GK! Q v-?\!$#-*M'/,/#a²$=>*³'/,j?A.0?;5

c~va=\BC13'/'21�D@,/#aY¢=�Êa!$< Q '/=@?0va1�D@?+va1�Dö.A1 *a=�Ò_#a=~!J?A.AGK%-:�.0%aGK=$U�*a=>:;'/!HG0=9!¢IH!HGK,/!H[�'2=\1$Bz?A.AGR%-:�.0%aG0=~.|] Q =$U�!$#-*!$:;:�=>?0?9,2.0?F=>'2=><�=>#&.0?;5

®�r&§�u�g�r ¤N¦N¦�Á«$ler�«wÅ«$leriN£Å

£Ů�r&§�u�g�r ¤N¦N¦{¤Tp�Å�a¦a«���®H­�rHi3¤Tp�Æ;« l�r�«wɹ« l�rMNRÊÁ

¤�pwn0«�Ä�«wŤ�pwn�NhÄLN£Å

Â�a¦a«�� ¢N­�rHi3¤Tp�Æ;« l�r³þ&«±É¹«$ler�þ�NRÊÁ

þ&«�Ä&¤Tpwn0«±Åþ�NhÄ&¤Tpwn�N1Å

Â

c~va=nÒ�GK?A. Q !HG0.�,/?J.0va=�?0.AGK%-:�.0%aG0=�*a=�Ò_#-,/.0,213#z5�bú. :�13#�?0,/?A.0?J1$B~.0va=�²$=;]&D�1$GK*�®�r&§�u�g�rZU£BC13'/'21�D�=>* [N]�.0va=#-!$<�= 1$Bi.0va=�?A.AGK%-:�.0%-G0=�CDqv-,/:Kvf:;!$#"[Z= !$#�]MI�!$'/,j*M,/*a=>#&.0,ÓÒ�=;G��RU�BC13'/'21©D�=>*f[&]M!�'/,/?0.~1$B+#-!$<�=>*f=>'2=><�=>#&.0?t,/#:;%aGK'/]n[-GK!$:�=>?>5+c~v-,/?\*-=�Ò_#-,2.0,213#? Q =>:;,ÓÒ_=>?F.0va=�?A.AGK%-:�.0%-G0=¢1$BS.0va=¢.E] Q =�® rN§�u�g�rn¤�¦&¦�5

X #-:�=r.0va=;G0=�,/?�!f*a=�Ò_#-,2.0,/13#u1$B\.0v-,/?�Bl1$GK<�U£]$13%ß:;!$#�%-?A=r.0va=n.|] Q = ®�rN§'uTg�r�¤N¦N¦��A%�?A.J'/,/²$=n!$#�]�1$.0va=;G.E] Q =$5�c~va=9'/,/#a=�®�rN§'uTg�r�¤N¦N¦�¤TpüÅ+,/?+!JY3'21$[�!$'_I�!HGR,/!H[�'2=@*-=>:;'/!HGK!H.0,213#�D@v-,j:Kvn*-=>:;'/!HG0=>?�.0va=qIH!HGK,/!H[_'2=@¤Tp9.A1 [�=1$BS.E] Q =�® rN§'uTg�rr¤�¦&¦�5

c~va=r*a1$.�1 Q =;GK!H.A1$G�,/?�%�?A=>*�.A1"!$:;:�=>?0? .0va=n=>'2=><�=>#�.0?J1$B~!�IH!HGK,/!H[�'/=�1$B~?A.AGK%-:�.0%-G0=�.E] Q =$5³bú#�.0v-,/?J:;!$?A=$U¤Tp�nK«r!$#-* ¤Tp�n�NG0=;BC=;G¢.A1³.0va=�.ED�1�=>'2=><�=>#&.0?t1$B�¤Tp�5%f�13%�:;!$# .AG0=>!H.�.0v-=�ðN%-!$#&.0,2.0,2=>?t¤Tp�nK«r!$#-*u¤Tp�n�N��0%-?A.!$?�]$13%D�13%�'/*n.AGK=>!H.F!$#&]nIH!HGK,/!H[_'2=>?�1$BV.E] Q =J« l�rM�C.0va=t.|] Q =91$B�.0va=9=>'2=><�=>#&.0?FD�!$?F*a=�ÒZ#a=>*r,j#n.0va=t?A.AGK%�:�.0%aG0=*a=>:;'/!HGR!H.0,213#�!H.~.0va=�.A1 Q .A1�[�=�«$ler-�R5

Page 31: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

LH4 bd#�.A=;GK!$:�.0,/I$=�y329?A=;G>Ôo?�4¢%-,/*a=

C£13,/#&.A=;GK?+.A1 ?A.AGK%-:�.0%-G0=@.|] Q =>?�:;!$#r!$'/?01�[�=@%-?A=>*)U��0%-?A.+'/,/²$= Q 13,/#&.A=;GK?i.A1�!$#�]�1$.0va=;GF.|] Q =$5£�@1�D�=;I$=;G©UaD@,2.0v?A.AGK%�:�.0%aG0=>?;Ua.0va=;GK=�,/?\!�? Q =>:;,/!$'z?Kva1$G0.dhE:;%a.\BC1$G@G0=;BC=;G0GK,j#aYJ.A1r.0va=¢=>'2=><�=>#&.0?~1$B£.0va=�?0.AGK%-:�.0%aG0= Q 13,/#&.A=>*.A1a5

®�r&§�u�g�r ¤N¦N¦³þ$¤�{er&§oÅ�a¦a«��®jRk-« l/Æ$ÊÁ

¤�{er&§�Ä��&¤Tp�Ť�{er&§H�z¨�«�Ä�p��1Ť�{er&§H�z¨PNhÄ��h�1Å

Â

bd#�.0v-,/?+=�Ê�!$< Q '2=$U&¤'{�rN§�,/?+*-=>:;'/!HG0=>*�.A1J[�=@! Q 13,/#&.A=;G+.A1J.E] Q =±®�r&§�u�g�rn¤�¦&¦�5Sbú#¾jRk-« l�U�,/.�,/?�?0=;.�.A1 Q 13,j#�..A1�.0va=@Y3'21$[�!$'-¤Tp@*-=�Ò_#a=>*�!H[�1©I$=$5�c@va=>#�.0va=~=>'/=><�=>#�.0?+1$B�.0va=@?A.AGK%�:�.0%aG0= Q 13,/#&.A=>*�.A1�[N]̤'{er&§³�¥,/#�.0v-,/?+:;!$?A=.0va=>?A=�!HG0= .0va=�?0!$<�=�!$?9.0va=�=>'2=><�=>#&.0?91$B�¤Tp��RU�!HG0=�?A=;.;5�c~va= !HG0G01�D 1 Q =;GR!H.A1$Gt,j?q%-?0=>*",j#-?A.A=>!$*f1$B�.0va=�*a1$.1 Q =;GK!H.A1$G¢[�=>:;!$%-?A=�B Q .AG¢,/?t! Q 13,/#�.A=;Gt.A1�!�IH!HGK,/!H[�'2= 1$B+.|] Q =³®�r&§�uTg�rn¤�¦N¦-5�}q1$.A=�.0v-!H.§Æ�þ$¤�{er&§Tʱn0«�D�13%-'/*v-!©I$=�D�1$G0²$=>*¾�0%-?A.~!$?~D�=>'/'z!$?�¤�{er&§H�z¨�«�U�[�%a.\,2.\D�13%-'/*�v-!©I$=�[�=;=>#�:;'/%-<n?0,2=;G>5

}q1$.A=�.0v-!H.£13#-'2] Q 13,/#&.A=;GK?�.A19?A.AGR%-:�.0%aG0=>?;UH#a1$.£.0va=�?0.AGK%-:�.0%aG0=>?V.0va=><�?0=>'2I$=>?;U3:;!$#J[Z= Q !$?0?A=>*J.A191$GVG0=;.0%-GK#a=>*BCG013<ÖB¥%-#-:�.0,213#-?>5

%J�¤ Ë ª�Ì¥r� ½N ¦abHU�SyP�S½Y� LS�§£Y5PTSFª�U N�¦�Y+̨r� ½N1·

y�13< Q '2=�Ê�.E] Q =>?���!HG0GK!>]�?�!$#-*r?0.AGK%-:�.0%aG0=>?���<n!>]�[�=q,j#-,2.0,/!$'/, �;=>*�% Q 13#n*a=>:;'/!HGR!H.0,213#�D@,/.0vn! ?A=}ð&%-=>#-:�=q1$B:�13#-?A.0!$#&.@IH!$'/%a=>?\:�13#&.0!$,/#a=>*MD@,2.0v-,j#r:;%aGR'2]n[-GR!$:�=>?@!$#-*³?A= Q !HGK!H.A=>*�[N]�:�13<n<�!$?;5 P G0GK!©]N?~1$B£:Rv-!HGK!$:�.A=;Gt<�!>]!$'/?A1�[�=�,/#�,2.0,/!$'/,#�;=>*rD@,2.0v³!�ð&%a1$.A=>*f?A.AGK,/#-Y 1$BS:Kv�!HGK!$:�.A=;GK?;5

`a1$G³,/#-,/.0,/!$'/,#�;=>*�*a=>:;'j!HGK!H.0,213#-?�1$B�?0,/#-Y3'2=f*-,j<�=>#-?0,213#�!$'~!HG0GK!©]N?;[email protected]="'/=>#aY$.0vø:;!$#�[�=f'/=;Bl.r[�'/!$#a²�!$#-*{!?0%-,/.0!H[�'2=r'/=>#aY$.0vß[�!$?A=>*ß13#�.0va=³,/#-,2.0,j!$'/,#�>!H.0,213#�*�!H.0! D@,/'/'+[Z=!$?0?0,/Y3#a=>*�.A1�,/.;5�þßã$òEækéj¶|º&é/ñr»¹å�è0él¸�å�ïHò+ï�äKäRï¹ô-èñã$è>æ â ï�ç©»9æ â »�è0骩�»\¸�ê�ïHò/ò_º&é/ñr»¹å�è0él¸�å-è£èEµi»©·Ké#0Z»©º�í â »¹å³æ â »Fï�ä0äRï¹ô�é/è�º�»©·Kòlï�ä¹»©º_ÿVb|BZ!�'2=>#aY$.0v�,/?S? Q =>:;,ÓÒ_=>*zU$.0va=,/#-,/.0,/!$'/,#�>!H.0,213#r*-!H.0!�<�!©]�#a1$.\1�I$=;GA°�1�Dà.0v-!H.~'2=>#-Y$.0v�,j#³!$#�]�*-,/<�=>#-?K,213#n1$G~!$#�=;G0G01$G\D@,/'j'-G0=>?0%�'2.;51�@1�D�=;I$=;G©U.0va=M,j#-,2.0,/!$'/, �>!H.0,213# *�!H.0!�<�!©]ß[�=�?0v-1$G0.A=;Gn.0v-!$#¡.0va=M? Q =>:;,ÓÒ�=>*�?K,#�;=�!$#-*�.0va=MG0=><�!$,/#-,j#aY =>#�.AGK,/=>?�D@,/'j'�[�=,/#-,/.0,/!$'/,#�;=>*r.A1n4�5

`a13'/'/1©D@,/#-Y�,j?~!$#³=�Êa!$< Q '2=¢1$Bi'2=;Y3!$'zY3'/1$[�!$'z!$#-*�'21�:;!$'zIH!HGK,/!H[�'/=t,j#-,2.0,/!$'/, �>!H.0,213#-?;^

�eþ��N­Hg3¬hk�§�­;j�k�le��¢�¬&¦��Hk�¬a®�¦&¤ ��k�§_«$¦�u�®�rz�'{�­-®3þ��« l�r�«�ÄLKh�1Å« l�r¿þ {�rN§�Ä�ã�ÜLO�OoÅ

Page 32: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

yFv-! Q .A=;Gq¯N^+8t!H.0! X [e�d=>:�.0? L�O

¤a¬�¦zk'r ¤�k3§N§��smI�hÄeÁ�p�n©�£ÉEmon�«£É§Ãon&]À£ū l�r rek3§N§��A�P�2�&]��hÄeÁ�ÁòpüÉ��£É§m£Éb]³Â£É�Á �£É�]1É�«1É��� ÂQÅg�ªHk�§¿g �&�zÄüÇ)ú_«;r�ª-­�§�­öª�¦3¨³k3§a­ ��¦�u<¬RÇ�Åg�ªHk�§¿g�k�§N§0��KV�0�)p �I�hÄeÁ�ÇLúZ«RÇ�É�Ç)r�ª-­�§N­üÇ�É ÇKª-¦3¨�Ç�É Ç}k$§a­üÇRÉ Ç)�a¦�uQÇ}£Ů�r&§�u�g�rÛ�Hk�§³Á

« l�r�«±Å« l�r¿þ {!Ŭ&¦�lH¢MN1ŽÂ��HÄ�Á�KQÉEã�Ü!OIOoÉ p �POe£Å

®�r&§�u�g�rÛ�Hk�§ �|k3§N§0�y�P� ÄÀÁÀÁ¿p�ÉEã�ÜLO�OoÉ���O³Â£É�Á m� £Å�eþ��N­Hg3¬hk�§�­ ¬&¦eg'kN¬-®¡¦�¤3�ek�§�«3¦�uz®;rh��{�­-® þ��« l�re¤�¦&¦QÆ$ÊÁ« l�r�v/Å ��þ gH§�­zk�r�­ ¬&¦eg'kN¬Û�ek�§�«'k��_¬&­�v

¨Z«�r�ª « lZ«�r�«'k�¬®�ek�¬�u�­3� þ��« l�r ��Ä rek3§N§0�A�I�2�y�V�/Å ��þ gH§�­zk�r�­ ¬&¦eg'kN¬Û�ek�§�«'k��_¬&­®�

¨Z«�r�ª « lZ«�r�«'k�¬®�ek�¬�u�­3m þ��« l�r¿þN«${erN§zÄ��-«±Å ��þ gH§�­zk�r�­3kà¬&¦eg'k�¬;{�¦-«$ler�­�§3r�¦�« ler�­h¢N­�§

¨&ªZ«zg�ª {-¦-«$lerZ®�ra¦ r�ª-­3¢a¬�¦��|kN¬e« þ��« l�r�¬hk3§N§��A�P�hÄeÁRp �1ɽ�h��ÂQÅ ��þ gH§�­zk�r�­3kà¬&¦eg'k�¬Ûk�§N§�k���¬�k�§N§

¨Z«�r�ª�­�¬�­�j_­�ler_®�p�� k�lH�À���³þ��®�r&§�u�g�r �|k3§à¬��eÄeÁIK£Éyã'Ü!OIOoÉ}p �POe£Å��eþ gH§�­zk'ra­3kà¬&¦eg'kN¬��ek3§_«'k��_¬�­�¦&¤ rh��{�­

®�r&§�uTg�rÛ�|k3§{¨Z«�r�ª «�ÄLK3k�le�MNhÄTp �Àþ��g�ªHk�§�¬�g��&�hÄ|g�k�§N§0�y�V�/Å ��þ gH§�­zk�r�­3kà¬&¦eg'k�¬e®�rN§�« le¢e¬eg¡¨Z«�r�ª

« lZ«�r_«�k�¬���k�¬�u�­OÇRª-¦3¨wÇ;þ��nznhn

Â

Page 33: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

L$� bd#�.A=;GK!$:�.0,/I$=�y329?A=;G>Ôo?�4¢%-,/*a=

Page 34: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

yFv-! Q .A=;G9W&^�xN.0!H.A=><�=>#&.0?9!$#-*³(iÊ Q G0=>?0?K,213#-? L$L

­ < �!>n�!8�® 8�� �!º�>����C¯ °¢±���8�º5ºF���M��º

X Q =;GK!H.A1$GK?q!$:�.9% Q 13#M1$[��A=>:�.0?@1$B�!�:�=;G0.0!$,/#f.E] Q =�1$G9.E] Q =>?9!$#-*f? Q =>:;,2Bl]D@v�!H.q,/[email protected][�=�*a13#-=�.A1�.0va=><³5(iÊ Q G0=>?K?0,213#-?�:�13<J[�,/#a=³IH!HGK,/!H[�'/=>?�!$#-*�:�13#-?A.0!$#&.0?n.A1�:�GK=>!H.A=f#a=;DîIH!$'/%a=>?>5¡x�.0!H.A=><�=>#�.0?�!HG0=³=�Ê Q G0=>?0?K,213#-?;U!$?0?0,/Y3#-<�=>#&.0?;UaBC%�#-:�.0,213#³:;!$'/'/?>Ua1$G@:�13#�.AGK13'z°�1�D�?A.0!H.A=><�=>#&.0?qD@v-,/:Rv³<�!H²$=�% Q y Q G01$Y$GK!$<�?>5

¤�JLK ²³r�N1Z�Y5P�ª�Z�·

(+!$:Rv�1$B\.0v-=r*-!H.0!M.E] Q =>? v-!$?J,2.0?�1�D@# ?0=;.�1$B\1 Q =;GK!H.A1$GK?J.0v-!H.J*-=;.A=;GK<�,/#a=nD@v-,/:Rvu1 Q =;GK!H.0,213#-?J<�!>]�[�=Q =;G0BC1$GK<�=>*13#³.0va=><�5

´ �������ZGI'("L��[����Xµ¶=>���!�#"E$,%2';?

c~va=tBC13'/'21�D@,/#aY�1 Q =;GK!H.0,213#-?@!HG0=�?0% Q�Q 1$GK.A=>*r13#M,/#�.A=;Y$=;GR?;^

½¸·qÂ;È2À�¹-×�Á©ÀAÈ/Æ©Ñ !$*-*-,2.0,/13#�¥_U�?0%-[-.AGK!$:�.0,213#Ù�-U-<J%�'2.0, Q '/,j:;!H.0,213#§þNU-*-,/IN,/?K,213# �-5½»º�É$×�Ã_Í�Â;È/ÎAÉ$¿�Ñ Y$G0=>!H.A=;G0h�.0v-!$#®¨aUS'2=>?0?dh�.0v�!$#²¦aU£=}ðN%-!$'/,2.|],ÄzÄ_UVY$G0=>!H.A=;G0h�.0v-!$#�h�=}ðN%-!$'!¨�Ä_U£'2=>?K?dh�.0v-!$#�h�=}ðN%-!$'

¦�Ä�5½½¼�È2À,¾@È/ÎAÁ¿·qÂ;È2À�¹-×�Á�ÀAÈ/Æ©Ñ [�,/.ED@,/?0=�h X w¨À0Ua[�,2.EDq,/?A=�h P }q8Á�_Ua[�,2.|D@,/?A=�h�=�Êa:;'/%-?0,/I$=�h X wX×�Ua[�,2.EDq,/?A=�hE} X cÁÂ�5½½¼�ÉNÉ$Ø2Á©ÍH¿�·qÂ;È2À�¹-×�Á�ÀAÈ/Æ©Ñ '21$Y3,/:;!$'2h X w¨À�ÀAU-'21$Y3,j:;!$'Óh P }98Á����U-'21$Y3,j:;!$'ÓhE} X c å05s{va=>#J!tyu?A.0!H.A=><�=>#�.i%-?A=>?V!@[�1N13'2=>!$#�IH!$'/%a=9�CBl1$G£=�Ê�!$< Q '2=$U&«H¤a�RU$,2.).0!H²$=>?S.0va=�,/#�.A=;Y$=;G±�;=;G01t!$?V<�=>!$#-,/#aYB¥!$'/?A=$U-!$#-*³!$#&]�,j#�.A=;Y$=;G~1$.0v-=;G\.0v-!$#��;=;G01�!$?~<�=>!$#-,/#aY�.AGK%a=$5�c@va=t[Z1N13'2=>!$#1 Q =;GK!H.A1$GK?FGK=;.0%aGK# �;=;G01�BC1$GB¥!$'/?A=�!$#-*³13#-=¢Bl1$Gq.AGK%a=$5��1&13'/=>!$#u1 Q =;GK!H.A1$GK?Ã����!$#-*hÀ�ÀFD@,j'/'V?0.A1 Q =�ÊN=>:;%-.0,/#aY³!$?�?A1N13#u!$?¢.0va=�.AGK%-.0v 1$B+.0va=�Ò_#�!$'V=�Ê Q G0=>?K?0,213#,/?~*-=;.A=;GK<�,/#a=>*)5�`a1$Gq=�Ê�!$< Q '2=$U_,/#.0v-=�=�Ê Q G0=>?0?0,/13#Ekg�����zU�,2B£k�,/?\B¥!$'/?A=$U-.0v-=># �M*a1N=>?@#a1$.@#-=;=>*�.A1n[�==;IH!$'/%-!H.A=>*�[�=>:;!$%-?0=¢.0va=¢G0=>?0%-'/.~<J%-?0.\[Z=¢B¥!$'/?A=$5�c@va=6�I�r1 Q =;[email protected]=;G0=;Bl1$GK=�D@,/'/'Z#a1$.~=;IH!$'/%-!H.A=%��5

´ �����,+.-/%('�[^GI'("L��[����!?

P ?0%a[�?A=;.z1$BN.0va=�1 Q =;GK!H.0,/13#-?z,/< Q '/=><�=>#�.A=>*tBC1$G�,/#&.A=;Y$=;GK?V!HG0=+,/< Q '2=><�=>#&.A=>*tBl1$G�'/13#aY~,/#&.A=;Y$=;GK?;^�!HGK,/.0v-<�=;.0,/:!$*-*-,/.0,213# ¥_Ui?0%a[-.AGK!$:�.0,/13#;�-U�!$#-*ß<J%-'/.0, Q '/,/:;!H.0,/13#;þNUi!$#-* .0va=,/#&.A=;Y$=;G�:�13< Q !HGK,/?A13# 1 Q =;GK!H.0,213#-?>5f�F,2.EDq,/?A=!$#-*³[�1N13'2=>!$#1 Q =;GK!H.0,213#-?@!$#-*�*-,2I�,/?0,/13#r!HG0=J#a1$.~?0% Q-Q 1$G0.A=>*)5

Page 35: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

L�� bd#�.A=;GK!$:�.0,/I$=�y329?A=;G>Ôo?�4¢%-,/*a=

´ �����A@`_a�&%9�#"E$�'�[QTU%($�'("UlMvYwx8>���!?

b0y %-?A=>?£! Q !$:K²�!HY$=F1$B Q %a[_'/,/:¹hE*a13<�!$,j#@°_13!H.0,/#aY Q 13,/#&.)G013%a.0,j#a=>?)*-,/?0.AGK,2[�%a.A=>*t[N]¢ M1$.A1$GK13'/!�5ic~v-,/? Q !$:0²H!HY$=,/#-:;'j%-*a=>?@!HGR,2.0v-<�=;.0,/:HUz.AGR,2Y$13#a13<�=;.AGK,j:HU�!$#�*u'21$Y3!HGK,2.0v-<n,/:�B¥%-#-:�.0,213#�?;5Jx�,/#-:�=J°�13!H.0,/#-Y Q 13,/#&.@1 Q =;GK!H.0,/13#-?¢!HG0=,/< Q '2=><�=>#&.A=>*n,/#r?A1$Bl.|D�!HGK=$Ua.0va=;]�!HG0=t<J%-:Rvr?K'21©D�=;GF.0v-!$#n.0v-=q,/#&.A=;Y$=;GF1 Q =;GR!H.0,213#-?�~ND�=9G0=>:�13<�<�=>#-*r!HY3!$,j#-?A.%-?0,j#aY °�13!H.0,/#aY Q 13,/#&.~,2B�]$13%)ÔpG0=�:�13#-:�=;GK#-=>*�!H[�13%a. Q =;G0Bl1$GR<�!$#-:�=$5

c~va=tBC13'/'21�D@,/#aY�1 Q =;GK!H.0,213#-?@!HG0=�?0% Q�Q 1$GK.A=>*r13#³°�13!H.0,/#aY Q 13,/#&.\#&%�<�[�=;GK?;^

½¸·qÂ;È2À�¹-×�Á©ÀAÈ/Æ©Ñ !$*-*-,2.0,/13#�¥_U�?0%-[-.AGK!$:�.0,213#Ù�-U-<J%�'2.0, Q '/,j:;!H.0,213#§þNU-*-,/IN,/?K,213# �-5½»º�É$×�Ã_Í�Â;È/ÎAÉ$¿�Ñ Y$G0=>!H.A=;G0h�.0v-!$#®¨aUS'2=>?0?dh�.0v�!$#²¦aU£=}ðN%-!$'/,2.|],ÄzÄ_UVY$G0=>!H.A=;G0h�.0v-!$#�h�=}ðN%-!$'!¨�Ä_U£'2=>?K?dh�.0v-!$#�h�=}ðN%-!$'

¦�Ä�5½½¼�Ç-È2Ø2ÀdÜ�È2¿øÛuÍ�À�¹�Ä�Ç�¿�Æ�ÀAÈ2É$¿�ÎRÑ P ?A=;.�1$B9.AGK,2Y$13#a13<�=;.AGK,/:HU�'/1$Y3!HGK,2.0v-<�,j:HU+!$#-*�=�Ê Q 13#a=>#�.0,j!$'�B¥%-#-:�.0,/13#-?�,/??0% Q�Q 1$GK.A=>*z5+xN=;=JyFv-! Q .A=;GJO>LE� `S'213!H.0,/#aY�C£13,/#&.@`-%�#-:�.0,213#-?y��U Q !HY$=J¯$LNU�BC1$G@*a=;.0!$,/'j?;5

´ �����SR \�e;� �!� �f"L���!?

yFv-!HGR!$:�.A=;GK?J!HGK=r13#-'/] !$'j'21©D�=>* ,j#�:Kv�!HGK!$:�.A=;G�!HG0GK!©]N?;5fs�v-=># !":�=>'/'�1$B\.0va=�!HGKGK!>]�,/?JG0=;BC=;G0=>#-:�=>*zUi,2. ,/?!$%a.A13<�!H.0,j:;!$'/'2]¡:�1N=;GK:�=>*{,/#�.A1ß!�,/#&.A=;Y$=;GG0= Q G0=>?0=>#�.0!H.0,213#øBC1$G�<�!$#�, Q %-'/!H.0,/13#�[&]�.0va= ,/#&.A=;Y$=;Gr1 Q =;GK!H.0,/13#-?;5s{va=>#M!rI�!$'j%a=�,/?q?A.A1$G0=>*M,j#�.A1�!n:Kv�!HGK!$:�.A=;G¢!HG0GK!>]$Uz,2.q,/?@:�1N=;GK:�=>*fBlG013< !n?A.0!$#�*-!HGK*�O>¯�h�[_,2.q,/#&.A=;Y$=;Gt,/#�.A1�!$#T�h�[�,2.~:Rv-!HGK!$:�.A=;G��C[&].AGK%�#-:;!H.0,/#aY�.0va=�% Q-Q =;G�=>,/Y3v�.~[_,2.0?R�R5

¤�J©I � ·�·�SFV�U�Ì N/U�Pq²³r�N1Z�Y5P�ª�Z�·�Y+U�[cÚ�¦¿r�Z�N1·�·TS½ª�U�·

c~va=t[�!$?K,/:¢!$?0?0,2Y3#�<�=>#�.\1 Q =;GK!H.A1$G9,/?�Ä_5+c~va=¢BC13'/'21�D@,/#aY�?A.0!H.A=><�=>#&.q!$*�*-?~��.A1�.0va=�I�!$'/%-=¢1$BQk�5

k3ÄÀk3¥³�£Å

c~va=�!H[�[-G0=;I�,/!H.A=>*³BC1$GK<

k3¥zij�QÅ

:�13%-'/*³!$'j?A1�[�=¢%-?A=>*³.A1 Q =;G0BC1$GK<Ì.0va=J?0!$<�=¢1 Q =;GK!H.0,213#z5

P '/'�1$BS.0va=¢Bl13'j'21©D@,j#aY�[�,/#-!HG0]r1 Q =;GK!H.A1$GK?~:;!$#M[Z=¢%-?0=>*�,/#.0v-,/?FB¥!$?0v-,/13#z^

Page 36: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

yFv-! Q .A=;G9W&^�xN.0!H.A=><�=>#&.0?9!$#-*³(iÊ Q G0=>?0?K,213#-? L�B

¥ � þ � È ¦z¦ ¨h¨ � × À

¤�Jy´ bHU�¯£Z�N/ÌÎNoU�P,Y+U�[»oaN1¯£Z�N/Ì N/U�P¶²³r�N1Z�Y5PTª¡Z�·

c~va=\,/#�:�G0=><�=>#&.i1 Q =;GR!H.A1$G?D©¥h¥zG�,/#�:�G0=><�=>#&.0?i.0va=~#-!$<�=>*�I�!HGK,j!H[�'2=$5V`-1$G+=�Êa!$< Q '2=$U&.0va=~?A.0!H.A=><�=>#&.�D½kh¥h¥zG,/?F=}ðN%-,2IH!$'2=>#&.\.A1 D½k�Ä�kh¥�p G 1$GÒD½kh¥hÄ,p G�5

P ?A.0!H.A=><�=>#&[email protected]!H.@%�?A=>?~!$#�,/#�:�G0=><�=>#&.\1 Q =;GR!H.A1$Gqv-!$?~!�I�!$'/%-=$5�`a1$G@=�Êa!$< Q '2=$U�.0va=�?A.0!H.A=><�=>#&.

khÄ�m£Å{a§�« l�r�¤£Æ�Ç}k�ÄzÈz�Ûkh¥�p ÄhÈz�eû�lQÇRÉEk1ɧ¥h¥�kRÊüÅ

D@,/'j'Z*�,/? Q '/!©]�.0va=�.A=�Ê�.�D½khÄzm�kh¥�p ÄI]_5G

búB�.0v-=r,/#-:�GK=><�=>#�.�1 Q =;GR!H.A1$G :�13<�=>?�!HBC.A=;GJ.0v-=r#-!$<�=>* IH!HGK,/!H[�'2=$UV.0va=># .0va=nIH!$'/%a=�1$B\.0v-=r?A.0!H.A=><�=>#&.�,/?:;!$'/:;%-'j!H.A=>*MïHê|æE»Rä�.0va=�,j#-:�G0=><�=>#&.\1N:;:;%-GK?;5�xN1�.0v-=�?A.0!H.A=><�=>#&.

khÄ�m£Å{a§�« l�r�¤£Æ�Ç}k�ÄzÈz�Ûkh¥�p ÄhÈz�eû�lQÇRÉEk1É�k�¥z¥�ÊüÅ

D�13%-'/*³*-,/? Q '/!>]�D½k�Ä�m�k�¥Tp$Ä�mhGJ[_%a.\D�13%�'/*�Ò_#-,/?KvrDq,2.0vEkn?0=;.~.A1��a5

c~va=¢*a=>:�GK=><�=>#�.q1 Q =;GK!H.A1$G�DF�z�'G�,j?\%-?A=>*�,/#.0v-=�?0!$<�=�B¥!$?0v-,213#³[email protected]=�,/#�:�G0=><�=>#&.\1 Q =;GR!H.A1$G>5

¤�J,~ oOY5PTY��X¯£¯£N1·R·{²³r�N1Z�Y5P�ª�Z�·

� P ?0,/#aY3'2=�!$< Q =;GK?K!$#-* Q G0=>:�=;=>*-,j#aY³!³I�!HGR,/!H[�'2=$U)!$#�!HGKGK!>] G0=;BC=;G0=>#-:�=$UV1$G�!�?A.AGK%�:�.0%aG0=�=>'2=><�=>#&.G0=;BC=;G0=>#-:�=�GK=;.0%aGK#-?~! Q 13,j#�.A=;G~.A1n.0va=�'21�:;!H.0,213#M,j#³<�=><�1$G0]D@va=;GK=¢.0v-!H.@,/#aBC1$GK<�!H.0,/13#�,/?F[�=>,/#aY?A.A1$G0=>*)5�c~v�,/?\?0va13%-'j*�#a1$.~[�=�%-?A=>*M13#M!HG0[_,2.AGK!HG0]�=�Ê Q G0=>?0?0,213#�?\[email protected]=;]³*a1r#a1$.@v-!©I$= !�?0.0!H[�'2=Q '/!$:�=�,j#³<�=><�1$G0]D@va=;GK=¢.0va=;]�!HGK=�[�=>,/#aY�?A.A1$G0=>*z5

þ P ?K,/#aY3'2= ?A.0!HG Q G0=>:�=;=>*-,j#aY�!$# =�Ê Q G0=>?K?0,213#"D@v-,/:RvM=;IH!$'/%-!H.A=>?t.A1�! Q 13,/#&.A=;GtG0=;.0%aGK#-?q.0va=�IH!$'/%a=D@v-,j:Kv�,j?J?A.A1$GK=>*ß!H. .0v-!H.�!$*-*aG0=>?K?;5fc~v�,/? Q GK1N:�=>?0?J1$B@!$:;:�=>?0?K,/#aY".0va=rIH!$'/%a=�?A.A1$G0=>* D@,2.0v-,j#�!Q 13,/#&.A=;G~,/?\²�#a1©D@#M!$?~*a=;G0=;BC=;G0=>#-:;,/#-Ya5

�ú­�v'{�§L� P #n=�Ê Q G0=>?0?K,213#�,/#r?½ð&%�!HG0=@[-GR!$:�=>?+BC13'/'21�D@,/#aY�!$#r=�Ê Q G0=>?0?0,213#nD@v-,/:Rv�=;IH!$'/%-!H.A=>?�.A1J!$#�!HG0GK!©]f�¥!$#!HG0GK!©]�IH!HGK,/!H[�'/=$Ui.0va=rGK=>?0%-'2. 1$B@!"BC%�#-:�.0,213# D@v-,/:Rv GK=;.0%aGK#-? !$#�!HG0GK!>] Q 13,/#�.A=;G©Ui=;.0:H5���:Kva=>:K²N?

Page 37: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

L$¯ bd#�.A=;GK!$:�.0,/I$=�y329?A=;G>Ôo?�4¢%-,/*a=

.0v-!H.�.0v-=~I�!$'j%a=\1$B�.0va=~=�Ê Q G0=>?0?0,/13#�BC!$'/'j?SD@,2.0v-,/# .0va=@[Z13%�#-*-?S1$BZ.0va=@!HG0GK!©]�!$#-*�G0=;BC=;G0=>#-:�=>?+.0v-!H.=>'2=><�=>#&.;5

n P *a1$.~[�=;.|D�=;=>#"!n?A.AGR%-:�.0%aG0=�IH!HGK,/!H[_'2=�!$#-*³.0v-=J#-!$<�=J1$BS13#a=�1$B�,2.0?~Ò�=>'/*-?~G0=;.0%aGK#-?~.0va=�IH!$'/%a=?A.A1$G0=>*M,/#³.0v-!H.\Ò_=>'/*z5

�z¨ P # !HG0GK1©D±[Z=;.|D�=;=>#�! Q 13,/#�.A=;GJ.A1"!"?A.AGK%�:�.0%aG0=n!$#-* .0va=�#-!$<�=�1$B\13#a=r1$B~,/.0?�Ò�=>'j*-?�,/#�.0v-!H.?A.AGK%�:�.0%aG0=¢!$:�.0?\.0va=¢?0!$<�=�!$?\!�*-1$.~*a1&=>?>UN=�Êa:�= Q .~,2.\!$:�.0?\13#.0v-=�?A.AGK%-:�.0%aGK= Q 13,/#&.A=>*!H.\[&],2.0?'2=;BC.�v-!$#-*�?K,/*a=$5�s{va=;G0=�B\,/?¢!M?A.AGK%-:�.0%aGK=�1$B\!³.E] Q =�D@,2.0v =n!$?J!$#�=>'2=><�=>#�.�#�!$<�=$UV.0v-=�.ED�1=�Ê Q G0=>?0?0,/13#-?\¤onK« !$#�*ÛÆ��N¤�Ê��z¨�«�!HG0=¢=}ðN%-,2IH!$'2=>#�.;5

¤�J�� ��Z�N1¯£N/[�N/U�¯£N�Y+U�[Ų³Z�[�N/Z_ª;Æ?Ú¢Ç�Y� F\�Y5P�S½ª�U

c~va=�Bl13'/'/1©D@,/#-Y�.0!H[�'2= ?0%-<�<�!HGR,#�;=>[email protected]=�GK%-'/=>?~BC1$G Q GK=>:�=>*a=>#-:�=�!$#-*f!$?K?A1N:;,j!H.0,2IN,/.E]³BC1$Gq.0va=�ye1 Q =;GR!H.A1$GK?;5X Q =;GK!H.A1$GK?�'/,/?A.A=>*n=>!HGK'/,2=;G�,/#�.0va=9.0!H[�'2=qv-!>I$=¢v-,2Y3v-=;G Q G0=>:�=>*a=>#�:�=�~N1 Q =;GK!H.A1$GR?+13#r.0va=q?K!$<�=q'/,j#a=~1$Bz.0va=q.0!H[�'2=v-!©I$=�=}ðN%-!$' Q G0=>:�=>*a=>#�:�=$5

Operator Associativity () [] left to right

! ~ ++ -- - (type) right to left* / % left to right+ - left to right

<< >> left to right< <= > left to right== != left to right

& left to right^ left to right| left to right&& left to right|| right to left

= += -= etc. right to left, left to right

Page 38: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

yFv-! Q .A=;GqTN^�y�13#&.AG013')`S'21�D L3W

È » �M� �\�\�Ùù�É¿ù���Ê

b0y�?0% Q-Q 1$G0.0?¢<�13?A.�1$BF.0va=�?A.0!$#-*-!HGK*ßy :�13#&.AG013'+?A.AGR%-:�.0%aG0=>?;5 X #a=r#a1$.0!H[�'2=�=�Êa:�= Q .0,213# ,/?¢.0va=f®©¨Z«�r|g�ª?A.0!H.A=><�=>#&.;U�Dqv-,/:KvM,/?\#a1$.@?0% Q-Q 1$G0.A=>*z5

Ë%JLK W%P�Y5PTN/ÌÎN/U�P�·_Y+U�[»Ìi Fª�¯�Í�·

P ?0,/#aY3'2=�y{?A.0!H.A=><�=>#�.9,/?F=>#-*a=>*[N]�!n?A=><�,/:�13'213#)5 P ?A=;GR,2=>?F1$Bi?A.0!H.A=><�=>#&.0?@<�!©]�[�=¢Y$G013% Q =>*�.A1$Y$=;.0va=;G,/#&.A1�!Mó$òl¸a·s�u%-?K,/#aY�:;%aGK'2]r[-GK!$:�=>?;5�bd#-?0,j*a=¢!�[�'21�:0²ZU-'21�:;!$'zI�!HGR,/!H[�'2=>?\<�!©][Z=¢*a=�ÒZ#a=>*z5

Ë%J©I b!Æ�ÎhÚ¶ ½·�N

c~va= «$¤�­�¬-®H­n?A.0!H.A=><�=>#&.9,/?\%�?A=>*³.A1n<�!H²$=J*a=>:;,/?0,213#�?;5ic~va=�?A]�#�.0!�Ê�,/?>^

«$¤]ÆK­hv�{a§a­-®N®�«3¦�l�Ê® rek'ra­�j_­�l�rH�Rp

­�¬a®$­® rek'ra­�j_­�l�rH�z�

»Fÿ3µ�ä¹»¹è0è0éC¸�år,/?�=;IH!$'/%-!H.A=>*�~-,/B�,2.F,/?F#a1$.F=}ð&%-!$'Z.A1��;=;G01M�C=$5pYa52U_'21$Y3,/:q.AGK%a=��RUa.0va=>#è>æ�ï�æE»¹ñr»¹åZæ�¶y�,/?�=�ÊN=>:;%-.A=>*z5

c~va=�­�¬a®$­�:;'/!$%�?A=�,/?91 Q .0,213#-!$'k5Jb|B�.0va=«$¤ Q !HG0.¢1$B�.0va=�?A.0!H.A=><�=>#&.�*-,/* #a1$.t=�Ê�=>:;%a.A=$UV!$#�* .0va=n­N¬-®$­³,/?Q G0=>?0=>#�.;U-.0v-=># è>æ�ï�æE»¹ñr»¹åZæ�¶ "=�ÊN=>:;%-.A=>?;5

Ë%Jy´ µ ¬�S£ ½N

c~va=¢?A]�#&.0!�Ê1$Bi!�¨&ª�«3¬&­�'21N1 Q ,/?F.0va=�Bl13'/'/1©D@,/#-Ya^

¨&ªZ«�¬�­cÆR­�v'{a§�­�®&®&«3¦�lüÊ® rek'ra­�j_­�l�r

¨&ªZ«�¬�­�[�=;Y3,/#-?S[N]J=;IH!$'/%-!H.0,/#-YJ»Fÿ$µ�ä�»¹è0è0él¸�åz5£búBZ,2.�,j?iBC!$'j?A=$U3.0va=>#�è©æ�ï�æE»¹ñr»¹å_æi,j?i?A²N, Q-Q =>*z5�búBZ,/.�,/?i.AGK%a=$U�.0va=>#è>æ�ï�æE»¹ñr»¹åZæ\,/?@=;I�!$'/%�!H.A=>*z5\c~va=>#³.0va=J=�Ê Q G0=>?0?0,213#M,/?~=;IH!$'/%-!H.A=>*f!HY3!$,/#zU_!$#�*�.0va= ?0!$<�=J:Rva=>:0²f,/? Q =;G0BC1$GK<�=>*z5c~va=�'/1&1 Q =�Êa,2.0?~Dqva=>#M»Fÿ$µzä¹»¹è0è0él¸�å[�=>:�13<�=>?¡�;=;G01a5

Page 39: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

L$T bd#�.A=;GK!$:�.0,/I$=�y329?A=;G>Ôo?�4¢%-,/*a=

X #a=¢:;!$#M=>!$?0,/'2]:�G0=>!H.A=J!$#M,/#�Ò_#-,/.A=9'21N1 Q ,/#My{%�?0,/#aY�.0va=¢¨&ª�«3¬&­�?A.0!H.A=><�=>#�.;^

¨&ªZ«�¬�­cÆ p�Ê® rek'ra­�j_­�l�r

Ë%J,~ é�ª¡Z

c~va=¢?A]�#&.0!�Ê1$Bi!�¤�¦�§r'21N1 Q ,/?F.0va=�Bl13'/'/1©D@,/#-Ya^

¤�¦3§ ÆR­�v'{a§e�Rp�Å0­hv�{a§e�z�£ÅA­hv�{a§H��mRÊ® rek'ra­�j_­�l�r

c~v-,j?�,j?\=}ð&%�,2I�!$'/=>#�.F.A1�.0va=�Bl13'/'/1©D@,/#-Y�:�13#�?A.AGK%-:�.@%�?0,/#aYJ¨�ª�«�¬�­�^

­hv�{a§e�RpüŨ&ªZ«�¬�­cÆR­�v'{a§e�z�HÊ®Á

® rek'ra­�j_­�l�r­�v'{�§H�hm£Å

Â

c�] Q ,j:;!$'/'2]$UN»Fÿ3µ�äR¶y��,/?�!$#�!$?0?0,2Y3#-<�=>#�.;U-»Fÿ$µzäR¶ ,/?�!�G0=>'/!H.0,/13#-!$'�=�Ê Q G0=>?K?0,213#zUN!$#-*»Fÿ3µ�äR¶s"n,j?+!$#�,/#-:�G0=><�=>#&.1$Gq*-=>:�G0=><�=>#&.~1$Bi?A13<�=�<�!$#�#a=;G>5+`a1$G9=�Êa!$< Q '2=$U-.0v-=�Bl13'j'21©D@,j#aY�:�1N*a=J:�13%-#�.0?@BlGK13<�4�.A1r6$6NU Q GK,/#&.0,/#aY�=>!$:Rv#N%-<�[�=;G~!$'213#-Y�.0va=�DF!>]Z^

« l�r�«±Å¤�¦3§ Æ;«�Ä��1Åu« ¦òp��h�1Åu«�¥h¥�Ê

{a§�« l�r�¤£Æ�Ç�Èh�eû�l±Ç�ÉM«eÊüÅ

Ë%J�� Ì�Z�N1Y�Í

29?A=¢1$BS.0va=���§a­zk�� Q G01©I�,/*a=>?@!$#³=>!HGK'2]�=�Ê�,/.\BlG013<�!�¨�ª�«�¬�­�1$G@!î¤�¦3§'21N1 Q 5

Page 40: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

yFv-! Q .A=;Gq6N^+g£y\8 xa:�G0=;=>#EC�GR,/#�.0,j#aY L$6

Ï Ðò»�� <�����8�8���Ñ��~�H� �F�H�;:

b0y�v-!$?~!�I$=;GK?K,213#³1$BS.0va=Jy�B¥%-#-:�.0,213#Ò{a§_«$lerN¤nBl1$G@Bl1$GK<n!H.A.A=>* Q GK,j#�.0,/#-YJ.A1�.0v-=�g£yF8�?0:�GK=;=>#z5

c~va=�?0]N#&.0!�ʳ1$Bü{a§�« lerN¤r,/?F.0va=�BC13'/'21�D@,/#aYa^

{a§�« l�r�¤£Æ0¤�¦3§�j�k'rH�a®�rN§�« le¢/É^�Ak3§�¢��Rp��]ÉÀnznzn ɳ�sk�§�¢��'ã���Ê

c~v-,j?\,/?F[�=>?A.~,/'/'/%�?A.AGK!H.A=>*�[&]?A13<�=�=��!$< Q '2=>?;5

Ò%JLK ��ZüSLU�PTSLU�V³Ú�¦�Y+Ì¥r� FN1·

ËVÅ�Í�×�Ã�Ø2Á�ÓzÔ Ô Â;È2¿&ÀAÈ2¿-ÐnÍ�×�Á�Î0Î0Í�Ð$Á$Ñ c~va=¢BC13'/'21�D@,/#aY�?A.0!H.A=><�=>#�. Q GK,/#&.0?\!�.A=�Ê�.@?A.AGK,/#-Y�.A1�.0va=�?0:�G0=;=>#)5

{a§�« l�r�¤£Æ�Ç)úa­�¬N¬�¦1Én¨-¦3§-¬��5åyû�lQÇ�ÊüÅ

bd#³.0v-,/?F=�Êa!$< Q '2=$Ua.0v-=�Bl1$GR<�!H.~?A.AGK,/#-Y�,/?\?0,/< Q '2] Q GK,j#�.A=>*.A1�.0v-=�?0:�G0=;=>#z5

c~va= :Kv-!HGR!$:�.A=;G¾û�l !H.9.0v-= =>#�*f1$B+.0va=�?A.AGK,/#aY�?0,2Y3#-,2Ò�=>? »¹å�ºN¶�¸�ꥶ¥ò/é/åZ»�5qs{va=># !$#"=>#-*�h�1$BlhE'/,/#a= :Kv-!HGK!$:�.A=;G,/? Q GK,j#�.A=>*zUS.0va=³gSyF8 ?K:�G0=;=>#ßD@,/'/'+[Z=:;'2=>!HG0=>*�Dqva=>#�!"?K%a[�?A=}ðN%a=>#&. :Rv-!HGK!$:�.A=;Gn,/? Q GR,/#�.A=>*)5 c@v&%-?>U�<�13?A.{a§�« l�r�¤n?0.0!H.A=><�=>#�.0?9!HG0=�.A=;GR<�,/#-!H.A=>*[N]³!�û�lz5

ËVÅ�Í�×�Ã�Ø2ÁnÕVÔ Ô Â;È2¿NÀAÈ2¿-ÐnÍ�¿NÇ-×JÙ�Á©Â�Ñ c~va=�BC13'/'21�D@,/#aY�?A.0!H.A=><�=>#�. Q GK,/#&.0?F.0va=�IH!$'/%a=�1$B£.0v-=�,/#&.A=;Y$=;GqIH!HGK,/!H[�'/=�vD@,2.0v³!�[-GK,2=;B£<�=>?0?0!HY$=$5

{a§�« l�r�¤£Æ�ÇÖ��k�¬�u-­ «N®®Èz��û�lQÇRÉEv�ÊüÅ

c~va=�? Q =>:;,j!$'�Bl1$GK<]Èh�r,/?~%-?A=>*.A1rBl1$GR<�!H.\.0va= Q GR,/#�.0,j#aYJ1$Bi!$#�,j#�.A=;Y$=;G9,/#³*a=>:;,/<�!$'�BC1$GK<�!H.;5

ËVÅ�Í�×�Ã�Ø2Á�×VÔ Ô Â;È2¿NÀAÈ2¿-ÐÍn¿NÇ-×�ÙzÁ©Â�È2¿MÙ_È2¿-Í�ÂÖØ�Ñ c~va=JBl13'j'21©D@,j#aYn?A.0!H.A=><�=>#&. Q GK,j#�[email protected]=JIH!$'/%a= 1$B�.0va=�,/#&.A=;Y$=;GIH!HGK,/!H[�'2=%v�!$?@!�[_,/#-!HG0]n#N%-<J[�=;G>5

{a§�« l�r�¤£Æ�ÇÖ��k�¬�u-­ «N®®È'�|û�lQÇRÉEv�ÊüÅ

c~va=�? Q =>:;,j!$'SBl1$GK< È��u,/?�%-?A=>* .A1MBl1$GK<n!H.�.0va= Q GR,/#�.0,j#aYr1$BF!$#�,j#�.A=;Y$=;G�,j# [�,/#-!HG0]fBl1$GR<�!H.;5 X #-'/]M.0va=�òl¸3íó;ôzæE» 1$BS.0va=�#N%-<J[�=;G~,/? Q GK,j#�.A=>*z5

Page 41: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

�34 bd#�.A=;GK!$:�.0,/I$=�y329?A=;G>Ôo?�4¢%-,/*a=

ËVÅ�Í�×�Ã�Ø2ÁbÙIÔ Ô Â�È2¿NÀAÈ2¿-Ð�ÍDÚ_É$Í�ÀAÈ2¿�ÐuÃzÉ$È2¿&À�¿NÇ-×JÙ�Á©Â�Ñ c@va=Bl13'/'/1©D@,/#-Y ?0.0!H.A=><�=>#�. Q GK,/#&.0?�.0va=³IH!$'/%a=1$Bt.0va=°�13!H.0,/#-Y Q 13,j#�.\IH!HGK,/!H[�'/=¡l�!$?~!�°_13!H.0,/#aY Q 13,/#&.\#&%-<J[�=;G>5

{a§�« l�r�¤£Æ�ÇÖ��k�¬�u-­ «N®®ÈN¤�û�lQÇRÉ�lüÊüÅ

c~va=�? Q =>:;,j!$'�Bl1$GK<]È&¤r,/?~%-?A=>*.A1rBl1$GR<�!H.\.0va= Q GR,/#�.0,j#aYJ1$B£°�13!H.0,j#aY Q 13,/#�.\#N%-<J[Z=;G©5

ËVÅ�Í�×�Ã�Ø2Á¿ÛVÔ Ô Â;È2¿&ÀAÈ2¿-ÐnÀ,¾�Én¿NÇ-×�ÙzÁ©Â;ÎFÈ2¿b¹-Á>Å�Í$ÄaÁ�Æ�È2×�ÍHØVÏlÉHÂ;×�ÍHÀRÑ{a§�« l�r�¤£Æ�Ç�ÞhÄzÈzv �zÄzÈhveû�l±Ç�ÉÙk£É �üÊüÅ

c~va=¢BC1$GK<«ÈzvrBl1$GK<n!H.0?~!$#�,/#&.A=;Y$=;[email protected] Q GK,/#&.F,j#³va=�Ê�!$*-=>:;,/<�!$'k5

Ò%J©I é�ª¡ZüÌÎY5PRPTSLU�V Ë3ª�Ì Ì Y+U�[ W�\�Ì Ì Y�Z<p

Èz� c�] Q =$^F« l�r89=>?0:�GK, Q .0,/13#z^i*a=>:;,/<�!$')#N%-<J[�=;GÈzv c�] Q =$^F« l�r89=>?0:�GK, Q .0,/13#z^iva=�Ê�!$*-=>:;,/<�!$')#N%-<J[Z=;GÈ'� c�] Q =$^F« l�r89=>?0:�GK, Q .0,/13#z^i'21©D�[&]N.A=�!$?\[�,j#-!HG0]r#N%-<J[�=;GÈ|g c�] Q =$^F« l�r89=>?0:�GK, Q .0,/13#z^i'21©D�[&]N.A=�!$? P x-y�b0b�:Kv-!HGR!$:�.A=;GÈN¤ c�] Q =$^�¤a¬�¦zk'r�89=>?0:�GK, Q .0,/13#z^S°�13!H.0,/#aY Q 13,/#&.\#&%�<�[�=;GÈ_® c�] Q =$^!g�ªHk�§�k�§&§ek��r89=>?0:�GK, Q .0,213#z^�:Kv�!HGq!HG0GK!©]��¥?A.AGK,/#aY&�

Ò%Jy´ W/r�N1¯1S½Y� �`cª�PTN1·

½ c~va=FÒZ#-!$'a:Kv-!HGR!$:�.A=;G Q 13?0,/.0,213# 1$BZ.0v-=@g£yF8{?0:�GK=;=>#n,/?�%�?A=>*�!$?+!�?0]N?A.A=><ÍDAva=>!HG0.A[�=>!H.;5G�c~v�,/?S:Kv-!HGK!$:�.A=;G:�13#&.0,/#&%-13%-?0'2][�'/,j#a²N?�[�=;.ED�=;=># !n'/!HGKY$=�!$#-*M?K<�!$'/')va=>!HGK.@D@va=>#M.0va=�[�13!HGK*M,/?~1 Q =;GK!H.0,/#-Y Q G01 Q =;GK'2]$5�b|B.0va=�:Rv-!HGK!$:�.A=;Gt?A.A1 Q ?\[_'/,/#a²�,/#aYaU&.0va=�[�13!HGK*³v-!$?\B¥!$,/'2=>*)5

½ yFv-!HGR!$:�.A=;GK?~.0v-!H.@D�13%-'j*[Z= Q GR,/#�.A=>*[�=;]$13#-*�.0va=¢Ò_#-!$'z:Rv-!HGK!$:�.A=;G Q 13?0,2.0,213#!HG0=�.AGR%-#-:;!H.A=>*z5½ s{va=>#�%-?K,/#aY�!³.|D�1HhE'/,j#a=n*-,/? Q '/!>]$UV.0va=�{a§�« lerN¤£Æ}Êr:�13<�<�!$#-*�.AG0=>!H.0?J.0va=n*-,/? Q '/!>] !$?�!f?0,/#aY3'/=�'/13#aY$=;G'/,/#-=$5

½ C�GR,/#�.0,j#aY�1$B£'213#-Y�,/#�.A=;Y$=;GR?@,/?\#a1$. Q G0=>?A=>#&.0'2]r?K% Q-Q 1$G0.A=>*z5

Page 42: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

yFv-! Q .A=;G�O;4�^/C�GK= Q G01�:�=>?0?A1$G �-O

��Ü Ñ��+8n±��~����8�º!º��f�

c~va= Q G0= Q GK1N:�=>?0?01$G Q G01N:�=>?K?A=>?t!nÒZ'2=�[�=;BC1$G0= ,/.9,/?t?A=>#&.9.A1³.0va= :�13< Q ,/'2=;G>5tc~va= b0y Q G0= Q G01�:�=>?0?A1$G¢!$'/'21�D@?*a=�Ò_#�,2.0,213#"1$B�<n!$:�G013?;UV!$#�*u:�13#-*-,2.0,213#�!$'i:�13< Q ,/'/!H.0,/13#f1$B\?A=>:�.0,/13#-?¢1$BF:�1N*a=$5�29?0,/#-Y Q G0= Q G01�:�=>?0?A1$G�<�!$:�GK13?BC1$G~:�13#-?A.0!$#&.0?~!$#-*�BC%�#-:�.0,213#<�!$:�G013?\:;!$#³<�!H²$=¢b0yø:�1N*-=�<�1$G0=t=qïr:;,2=>#&.\!$?FD�=>'/'�!$?F=>!$?0,/=;G\.A1�G0=>!$*z5129?0,/#aYÝ «H¤n.A1r:�13#-*-,/.0,213#-!$'/'2]r:�13< Q ,/'2=¢:�1�*a=�:;!$#�[�=¢I$=;G0]³%-?0=;BC%-'�U&BC1$Gq,/#�?A.0!$#-:�=$UaBC1$G@*a=;[�%aY$Y3,j#aY Q %aG Q 13?A=>?;5

K9Þ�JFK �ÛZ�N9r�Z�ª�¯£N1·�·Rª�Z¤­ Y�¯£Z�ª¡·

C�GK= Q G01�:�=>?0?A1$G¢<�!$:�G013?�!HGK=�*-=�Ò_#a=>*"[&]"%-?0,/#-Yr.0va= Ý �N­&¤�«$l�­ Q G0= Q GK1N:�=>?0?01$G�*-,2G0=>:�.0,2I$=�!H.¢.0va=�?A.0!HGK.91$BF!'/,/#-=$5�búBi!n<�!$:�G01,/?~*-=�Ò_#a=>*M!$#&]ND@va=;G0=�,j#M!$#&]³1$Bi.0va=�Ò_'/=>?~'213!$*a=>*f,/#�.A1rbAytU�,2.q:;!$#f[�=�%-?A=>*f!$#�]ND@va=;GK=�,/#!$#&]rÒZ'2=$5�c~va=tBC13'/'21©Dq,/#aY�=�Ê�!$< Q '2=�?0va1�D@?~va1�Dà.A1n*-=�Ò_#a= Q G0= Q G01N:�=>?K?A1$G~<�!$:�G013?;5

Ý �N­&¤-« l�­®ß<ß*à'ú�êei�á|à�êHà�ß��Ý �N­&¤-« l�­�Ozë�âhêHi*á|à'êeà�ß pÝ �N­&¤-« l�­^àeàzi�ß<ßzà�ú�ê£Æy{-¦3¨-­3§TʳÆsj_¦�r�¦�§1Æyß<ßzà�ú�êei�áHà'êHà�ß5É'Æy{�¦$¨-­3§TÊ�ÊzÊÝ �N­&¤-« l�­^àeàzi�OzëIâzê1ÆA{�¦$¨-­�§�Ê Æsj_¦�r�¦�§1Æ�OzëIâzêHi*á|à�êHà�ßoÉ�ÆA{�¦3¨a­�§�ÊzÊ�ÊÝ �N­&¤-« l�­^àeà±ÆR¬&­�¤hroÉú§_«�¢3ªer�Ê;ÁVàeàhiVOzëIâzê£Æ¹¬&­�¤hr�Ê�Åaàeàhi�ß<ßzà�úzê1Æ0§�«�¢$ªerTÊüÅFÂ�a¦a«��®jRk-« l/Æ$ÊÁ

à�à±ÆF�1ɽ�|Ê�ÅÂ

C�GK= Q G01�:�=>?0?A1$G�<�!$:�G01¡*-=�Ò_#-,2.0,213#�?r?A.0!HGK.³D@,2.0v{.0va= Ý �N­&¤�«$l�­�*-,2G0=>:�.0,/I$= !H.M.0va=�?A.0!HG0.³1$B�!�'/,/#a=$U9!$#-*:�13#&.0,/#&%-=�.A1n.0va=�=>#-*³1$BS.0va=�'/,j#a=$5 P Bl.A=;G Ý ��­�¤�« l-­n,/?\.0va=�#�!$<�=�1$BS.0va=�<�!$:�GK1aU_?0%-:Rv�!$?�ß<ß*à'ú�êei�á|à�êHà�ß�5Sb|B.0va=;G0=t,/?�! Q !HGK=>#�.0va=>?K,/?+*-,/G0=>:�.0'2]�!HBC.A=;G�.0v-=q#-!$<�=91$Bz.0va=t<�!$:�G01aUa?0%-:Rvr!$?�.0va=Fà�àzi�ßfß*à'ú�ê�<�!$:�G01�v-!$?�!H[�1�I$=$U.0va=>#³.0v-=�<�!$:�G01�v-!$?~!HG0Y3%-<�=>#�.0?;5Fc~va=Ãàeàzi�ß<ßzà�ú�ên!$#-*bàeàzi�OzëIâzên<�!$:�GK13?@=>!$:RvM.0!H²$=J13#a=�!HG0Y3%-<�=>#�.;5�c~va=àeàn<n!$:�G01r.0!H²$=>?9.|D�1!HG0Y3%-<�=>#&.0?;5 P BC.A=;Gq.0va= #-!$<�= !$#-*�.0va=J1 Q .0,213#-!$'V!HG0Y3%-<�=>#&.t'/,/?A.~,/[email protected]=�[�1�*a]1$Bi.0va=<�!$:�G01a5

(+!$:Rvu.0,/<�=�!�<n!$:�G01�,/?¢,/#&I$1$²$=>*zU�,2.�,j?tG0= Q '/!$:�=>* D@,/.0v",/.0?¢[�1N*a]$5Jb|B�.0va=�<�!$:�GK1�v-!$?�!HG0Y3%-<�=>#�.0?;U�.0va=>#=>!$:Kv Q '/!$:�=¢.0v-=�!HG0Y3%-<�=>#&.@! Q-Q =>!HGK?~,j#.0va=¢[�1N*a]�,/?\G0= Q '/!$:�=>*³D@,2.0v.0v-=�!$:�.0%-!$'�!HG0Y3%�<�=>#�. Q G01©I�,/*a=>*)5

bd#�I$1�:;!H.0,213#-?�1$Bt<�!$:�G013?�Dq,2.0va13%a.�!HG0Y3%-<�=>#&.0?�'21N1$² 'j,2²$=Y3'21$[�!$'FIH!HGK,/!H[�'2=�G0=;BC=;G0=>#-:�=>?;5ßbd#�I$1�:;!H.0,213#-?�1$B<�!$:�G013?tDq,2.0vf!HGKY3%-<�=>#&.0?¢'21&1$²f'/,2²$=�:;!$'/'/?q.A1³BC%-#�:�.0,213#-?;5tc�1³!$#"=�Ê�.A=>#�.;U).0v�,/?t,/?qv-1©D .0va=;]M!$:�.;5¾�@1�D�=;I$=;G©U<�!$:�G019G0= Q 'j!$:�=><�=>#�.Sv-! Q-Q =>#-?�[�=;Bl1$G0=�:�13< Q ,/'j!H.0,213#zU©Dqva=;G0=>!$?£Y3'21$[�!$'�G0=;Bl=;GK=>#-:�=>?S!$#-*�B¥%-#-:�.0,/13#�:;!$'/'/?£v-! Q-Q =>#

Page 43: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

��� bd#�.A=;GK!$:�.0,/I$=�y329?A=;G>Ôo?�4¢%-,/*a=

!H.tGK%-#M.0,/<�=$5 P '/?A1aU�B¥%-#-:�.0,213#f:;!$'/'/?q=;I�!$'j%-!H.A=�.0va=>,2Gq!HGKY3%-<�=>#&.0?t[Z=;BC1$G0=J.0va=;]M!HG0=�:;!$'/'2=>*zUZD@va=;GK=>!$?q<�!$:�GK13??0,/< Q '2] Q =;G0Bl1$GR< .A=�Ê�.FG0= Q '/!$:�=><�=>#&.;5�`a1$G\=�Êa!$< Q '2=$Ua,2Bz.0v-=9!$:�.0%-!$'z!HGKY3%-<�=>#&.�Y3,/I$=>#r.A1�! <�!$:�G01�:�13#&.0!$,/#-?\!B¥%-#-:�.0,213#�:;!$'/'kU3!$#�*�.0va=~<�!$:�G01�,/#�?A.0!$#�.0,j!H.A=>?i,2.0?i!HG0Y3%-<�=>#&.�<�1$G0=\.0v�!$#�13#-:�=~,/#�,2.0?S[�1N*-]$U�.0v-=>#�.0va=FBC%�#-:�.0,213#D�13%-'/*"[�= :;!$'/'/=>*"< %-'2.0, Q '2=�.0,j<�=>?;UzD@va=;GK=>!$?¢,2.qD�13%-'/*"13#-'/]�[�= :;!$'/'/=>* 13#-:�=�,2B+,2.tD�=;G0=�[Z=>,j#aY Q !$?0?A=>* !$?�!B¥%-#-:�.0,213#³!HG0Y3%�<�=>#�.q,/#-?A.A=>!$*z5

PqQ-Q G01 Q GR,/!H.A=¢%-?A=¢1$Bi<�!$:�G013?q:;!$#M<�!H²$=JbAy Q G01$Y$GK!$<�?~!$#�*³=>!$?0,2=;Gq.A1�G0=>!$*z5�b|.~!$'/'/1©D@?~:�13#�?A.0!$#�.0?q.A1n[�=Y3,2I$=># ?A]�<�[�13'/,j:�#-!$<�=>?qD@,2.0va13%-.@G0=}ðN%-,2GK,j#aY�?A.A1$GK!HY$=�!$#-*"!$:;:�=>?0?t.0,/<�=�!$?t!nY3'/1$[�!$'�D�13%-'/*)5~b|.t!$'/?A1!$'/'21�D@?<�!$:�G013?�D@,2.0v�!HG0Y3%-<�=>#&.0?i.A1�[�=\%-?A=>*�,j# :;!$?0=>?�D@va=>#�!tB¥%-#-:�.0,213#�:;!$'j'a,/?S*a=>?0,2GK!H[_'2=�BC1$G+!H[�?0.AGK!$:�.0,213#zU3Dq,2.0va13%a..0va= Q =;G0BC1$GK<�!$#�:�= Q =>#-!$'/.E]�1$BS:;!$'j'/,/#aY�!�B¥%-#-:�.0,213#z5

"!$:�G013?�*a=�Ò_#a=>* ,/#uÒ_'/=>?�:;!$#ß[�=n%-?A=>*ß!H.J.0v-=r:�13<�<�!$#�* '/,j#a=$5� f!$:�GK13? :;!$#�!$'/?01M[�=r*a=�ÒZ#a=>*�!H. .0va=:�13<�<�!$#�*-'/,/#a=¢.A1r[�=�%-?A=>*�,j#M,/#&.A=;GK!$:�.0,2I$=>'2]$U_[�%a.~.0v-=>?A=�D@,j'/'z#a1$.@!�¼�=>:�.9'/13!$*-?~1$Gt:�13< Q ,/'j!H.0,213#z5Fc�1�1$[�.0!$,/#!�'/,j?A.F1$BV.0va=J:;%aG0G0=>#&.0'2]r*-=�Ò_#a=>*³<�!$:�G013?>U-.E] Q = ¬�«�®�rÒ��­�¤�«$l�­�®J!H.~.0va=¢b0y Q GK13< Q .;5

K9Þ�JyI Ë3ª�U�[�SyP�S½ª�U�Y� �¯£ª�Ì¥r�Sã ½Y5PTSFª�U

bú.J,/?J?A13<�=;.0,/<�=>? *a=>?0,/GK!H[�'2=�.A1":�13#-*-,2.0,213#�!$'/'2] :�13< Q ,/'2=r:�1N*a=$5�c@va= Q GR,/<�!HG0]"=�Ê�!$< Q '2=�1$B~.0v�,/?�,/?�.0v-!H.]$13%ö<n!>]�D�!$#&.�.A1 Q =;G0BC1$GK< *a=;[_%aY$Y3,/#aY 13%a. Q %-.�?A13<�=;.0,/<�=>?>U�!$#-*ö*-,/?0!H[�'/=,/.�!H.�1$.0va=;G�.0,/<�=>?;5öc~va=³b0yQ G0= Q G01N:�=>?K?A1$G Q G01�IN,/*-=>?~!�:�13#&I$=>#-,2=>#&.~D�!©]1$BS*-13,/#aY�.0v-,/?\[N]%-?0,/#aY�.0va= Ý «$¤h��­�¤r*-,2G0=>:�.0,/I$=$5

�a¦a«�� ¢N¦�iN¬�­&¤�r1Æ;«$ler�{�¦$¨-­�§�ÊÁ

à�àzi�Ozë�âhê1ÆA{�¦3¨a­�§�Ê�ÅÝ «H¤z�N­&¤Ûâzë���Ü!à

{�§_«$ler�¤QÆ!äIä�à�¦a« le¢�O�­&¤hreû�l2j�j�ÊüÅ�-­N­�{oÆ$ÊüÅ

Ý ­�lH�-«$¤Â

bd#�.0v-,/?J=�Êa!$< Q '2=$USD@va=># .0va=<�!$:�G01§âzë���Ü!àu,/?J*a=�Ò_#a=>*)U£.0v-=�*a=;[_%aY$Y3,/#aYM<�=>?0?0!HY$=�DF4913,/#aY g)=;BC.½G"D@,/'/'[�= Q GK,/#&.A=>* !$#-* .0va=�[�13!HGK* D@,/'/'�[�=;= Q =>!$:Kv�.0,j<�=�¢N¦�i&¬&­&¤�r�,/?¢:;!$'j'2=>*z5�búB+.0v-=�<n!$:�G01�,/?¢#a1$.¢*a=�Ò_#-=>*zUz.0va=<�=>?0?K!HY$= !$#-*M[�=;= Q D@,j'/'z#a1$.qv�! Q-Q =>#z5\(+!$:Kv Ý «H¤z��­�¤�<J%�?A.@[�=�BC13'/'2D�=>*�[N]³!$# Ý ­�lH��«H¤�!H.q.0v-=�=>#-*f1$Bi.0va=:�1�*a=@D@v�,/:Kv�,j?�[�=>,/#aY�:�13#-*�,2.0,213#-!$'/'/]J:�13< Q ,j'2=>*z5Sc~va=@<�!$:�GK1�.A1�[�=@:Rva=>:0²$=>*³:;!$#r[�=@!$#&]&.0v-,j#aYaU&!$#-* Ý «$¤z�N­&¤[�'21�:0²�?~<�!©][Z=¢#a=>?0.A=>*z5

29#-'/,2²$= G0=;Y3%-'/!HG�y Q G0= Q G01�:�=>?0?A1$GR?;U)<�!$:�G013?J:;!$#-#a1$.¢[�=�:�13#-*-,2.0,213#�!$'/'2]M*a=�ÒZ#a=>*z5 b|B�!�<�!$:�G01�*a=�ÒZ#-,2.0,213#1�:;:;%aGK?+,j#-?0,/*a=~!$# Ý «$¤z�N­&¤�[_'21N:K²_U�,2.�Dq,/'/'�[�=@*a=�Ò_#-=>*�G0=;Y3!HGK*�'2=>?0?�1$B�D@v-=;.0va=;G�.0v-= Ý «$¤z�N­&¤�=;IH!$'/%-!H.A=>?�.A1J.AGK%a=1$G~B¥!$'/?A=$5+c@va=�:�13< Q ,/'/=;G\D@,/'/'_Y$=>#a=;GK!H.A= !�D�!HGR#-,/#aY�,2B£<�!$:�G01n*a=�ÒZ#-,2.0,213#-?�1�:;:;%aG@Dq,2.0v-,/#�!$# Ý «H¤z��­�¤�[_'21N:K²_5

Page 44: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

yFv-! Q .A=;G�O;4�^/C�GK= Q G01�:�=>?0?A1$G ��L

c~va= Ý «H¤_U Ý ­�¬a®$­�Uq!$#-* Ý ­N¬a«$¤¡*-,2G0=>:�.0,/I$=>?�!HG0=�!$'/?A1¡!©I�!$,j'/!H[�'2=$U9[�%a.³!HG0=u13%a.0?K,/*a= .0va=�?0:�1 Q =u1$B .0v-,/?*a1�:;%-<�=>#&.;5+w~=;BC=;G~.A1n!�y�G0=;BC=;G0=>#-:�=�<�!$#N%-!$'�BC1$G@va1�Dà.A1n%-?0=¢.0va=><³5

K9Þ�JA´ Ë3ª�Ì¥r�Y�ZüSF·Rª�Uc¶¿SyPT¬ Z�N/V�\� ½Y�Z®Ë�r�Z�N9r�Z�ª?¯£N1·R·�ª¡Z�·

c~va=@D�!©]�,/#�D@v-,j:Kv�b0y�*a=>!$'j?�D@,2.0vn'213!$*-,/#aYJ<J%-'/.0, Q '2=�Ò_'2=>?+,/?�B¥%-#-*-!$<�=>#�.0!$'/'/]J*-,Ó¼�=;G0=>#&.�BCG013< .0va=qD�!©]�,/#D@v-,j:Kv�,2.�,j?�*a13#a=@,j#�?A.0!$#-*-!HGK*�y953bd# Q !HG0.0,/:;%�'/!HG>U$D@va=>#n%-?0,/#aY�?0.0!$#-*-!HGK*rytU$Ò_'2=>?i!HG0=9:�13< Q '/,j'2=>*�:�13< Q '2=;.A=>'2],/#-*-= Q =>#�*a=>#�.0'/]�1$Bi=>!$:Kvf1$.0va=;G>U_.0va=>#M'/,j#a²$=>*³.A1$Y$=;.0va=;G>5\bd#³b0y9U-13#f.0va=�1$.0va=;Gtv-!$#-*)U-!$'/'zÒ_'/=>?~!HG0=�:�13< Q ,/'2=>*.A1$Y$=;.0va=;G>5�c~v-,/?�,/?�D@v�]�?0.0!$#-*-!HGK*³yø#a=;=>*-?�BC%-#�:�.0,213# Q G01$.A1$.E] Q =>?�!$#�*­hvhr�­�§'l�Y3'21$[_!$'_*a=�ÒZ#-,2.0,213#-?�,/#�1$GR*a=;GBC1$G@<J%�'2.0, Q '2=qÒ_'2=>?~.A1n?0v-!HG0=¢B¥%-#-:�.0,/13#-?\!$#-*Y3'21$[�!$'j?;UaD@v-,/'/=9b0y�*a1N=>?~#a1$.;5

bd#ø!ß?A.0!$#-*-!HGR* y Q G0= Q G01N:�=>?K?A1$G>U Q GK= Q G01�:�=>?0?A1$G<�!$:�G013?³*a=�Ò_#-=>*ø,/#ö13#a=�yîÒ_'2=f:;!$#�#a1$.r[�= %-?A=>*�,/#!$#a1$.0va=;G~yßÒZ'2=~%-#-'2=>?K?�*a=�Ò_#a=>*n!HY3!$,/#z5 P 'j?A1aU�.0va=9?0:�1 Q =~1$B)<�!$:�G013?�,/?i13#�'2]�BlG013< .0va= Q 13,/#&.�1$Bz*a=�Ò_#-,/.0,213#�.A1.0va= =>#-*f1$B�.0va=JÒ_'2=$5@c~v-=J?A13'/%-.0,213#M.0v-=>#f,/?q.A1v-!>I$=�.0va= Q G01$.A1$.|] Q =>?;U)­hv�ra­3§�lM*a=>:;'/!HGK!H.0,/13#-?;U_!$#�*f<�!$:�GK13?,/#�va=>!$*a=;GFÒ_'/=>?+D@v�,/:Kv�!HG0=t.0va=>#,/#-:;'/%�*a=>*n!H.F.0va=t.A1 Q 1$B�=>!$:RvMy¡Ò_'2=t%-?0,/#aYJ.0va= Ý « lTg3¬�ue��­ *-,2G0=>:�.0,/I$=$5�c~v-,/??A.|]N'2=J,/#�.A=;GR!$:�.0?~D�=>'/'�D@,2.0v.0va=�BC!$:�.~.0v�!H.~=>!$:Kv�Ò_'2=�,/?\:�13< Q ,/'2=>*³,/#-*-= Q =>#�*a=>#�.�1$Bi!$'/'�.0va=�1$.0v-=;GK?;5

�q1©D�=;I$=;G>U$?0,/#-:�=�*a=>:;'j!HGK!H.0,213#-?),j#tbAy *-1@#a1$.zÒ_'/=S?K:�1 Q =$UH,2.zD�13%-'/*t[�=�,/#-:�13#�?0,/?A.A=>#&.z.A1@v-!©I$=�! Q GK= Q G01�:�=>?0?A1$GD@,2.0vuÒ_'2=n?0:�1 Q =$5³c~va=;GK=;Bl1$G0=$U£BC1$GJ:�13#-?0,j?A.A=>#-:�]u,2.�DF!$?J*-=>?0,2GK!H[�'/=�.A1MY3,2I$=rbAy�<n!$:�G013?�.0v-=r?0!$<�=r[�=>v-!>I�,21$G!$?9Y3'21$[�!$'/?q!$#-*fBC%-#�:�.0,213#-?;5@c@va=;G0=;BC1$G0=$U Q G0= Q G01�:�=>?0?A1$G9<�!$:�G013?tv-!>I$=�Y3'21$[_!$'V?0:�1 Q =$5qb|B�!�<�!$:�G01,/?@*-=�Ò_#a=>*!$#&]&D@v-=;G0=~,/# .0va=FÒ_'2=>?i'/13!$*a=>*�,/#&.A1¢bAy9U3,/.S,j?i*a=�Ò_#a=>* =;I$=;G0]ND@va=;G0=$5�c@va=;G0=;BC1$G0=$U3.0va= Ý «$lTg�¬�uH�N­t!$#�* Ý uzlH�N­&¤*-,2GK=>:�.0,2I$=>?~*-,/*#a1$.q?A=;=><î.A1nv�!>I$=�!$#&]³! Q-Q G01 Q GR,/!H.A= Q %aG Q 13?A=$U�!$#-*³D�=;G0=�!$:;:�1$GR*-,/#aY3'2]'2=;BC.\13%a.;5

c~va=tB¥!$:�.\.0v-!H. Ý �N­&¤�«$l�­�*-,2GK=>:�.0,2I$=>?\:�13#�.0!$,j#a=>*³D@,2.0v�,/# Ý «$¤�[�'21�:0²�?\!HG0=�*a=�ÒZ#a=>*G0=;Y3!HGK*-'/=>?0?F1$BVDqva=;.0va=;G.0va= Ý «H¤�=;I�!$'/%�!H.A=>?\.A1�[�=q.AGR%a=¢1$G\BC!$'j?A=¢,/?\!�?0,/*a=9=�¼�=>:�.~1$B£<n!H²N,/#-Y .0v-= Q G0= Q G01�:�=>?0?A1$G~<�!$:�GK13?~v-!>I$=�Y3'21$[�!$'?0:�1 Q =$5

X .0va=;G9.0v-!$#f.0va=>?A=�<�1�*-,ÓÒ_:;!H.0,213#�?;U-.0va= bAy Q G0= Q G01N:�=>?K?A1$G9?Kva13%-'/*³[�= :�13< Q !H.0,2[�'/=�D@,2.0vMG0=;Y3%-'/!HG�y Q G0=�hQ G01�:�=>?0?A1$GR?;5

Page 45: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

�$� bd#�.A=;GK!$:�.0,/I$=�y329?A=;G>Ôo?�4¢%-,/*a=

Page 46: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

yFv-! Q .A=;G�O$OH^+c~va=¢b0y{gV,2[-GK!HG0]�`S,/'2= ��B

��� øæå;8Ì��» Ð �*����>�0ç�É ��ù�8

g�,/[-GK!HG0] Ò_'2=>? Q GK1©I�,/*a=t?A.0!$#-*-!HGK*³yøB¥%-#-:�.0,213#-?�BC1$GF,j#�.A=;G0B¥!$:;,/#aY D@,2.0v�v-!HGK*-D�!HG0=t13#�.0va=tG01$[�1$.F:�13#�.AG013'j'2=;G[�13!HGK*z5£c~va=>?A=�BC%�#-:�.0,213#-?V!HG0=�D@GK,2.A.A=>#J=>,2.0va=;GS,/# y�1$GS!$?£!$?K?A=><�[_'2]�'/!$#aY3%-!HY$=\*aGR,2I$=;GK?;5�gV,2[-GK!HGK]qÒZ'2=>? Q G01©I�,/*a=B¥%-#-:�.0,213#-?F.A1r*a1�.0v-,/#aY3?@'/,2²$=¢:�13#�.AGK13'�<�1$.A1$GK?>U�<�!H²$=�.A13#a=>?>U_!$#-*³,/# Q %a.\?A=>#-?A1$GR?\I�!$'j%a=>?;5

b0y¡!$%a.A13<n!H.0,/:;!$'/'2]�'213!$*�?+.0va=t'/,2[�GK!HG0] Ò_'2=~=;I$=;GK]n.0,/<�=9,2.�,j?�,/#&I$1$²$=>*z5�89= Q =>#-*-,/#-Y�13#rD@v-,/:Rv�¯$T�O$O9[�13!HGK*,/?+[Z=>,j#aY�%-?A=>*)U&!�*�,Ó¼Z=;GK=>#�.+'j,2[-GK!HG0]JÒ_'2=@D@,/'/'�[�=@GK=}ð&%-,/G0=>*z5�b0yö<�!>]�[�=@:�13#�Ò_Y3%aG0=>*r.A1J'213!$*�*-,Ó¼�=;G0=>#&.+'/,2[-GR!HG0]Ò_'2=>?F!$?\,2.0?F*a=;B¥!$%-'2.�~�.0va=ts{,/#-*a1�D@?F!$#-* f!$:tI$=;GR?0,213#-?�1$B£bAyöD@,/'j'�!$%a.A13<�!H.0,j:;!$'/'2]r'/13!$*r.0v-=t:�1$GKG0=>:�.~'/,2[-GR!HG0]BC1$G~.0va=�[�13!HGK*]$13%zÔpGK=�%-?0,/#-Y�[email protected]=�<�13<�=>#&.;5

c~v-,j?�*a1�:;%-<�=>#&.0!H.0,213#r:�1�I$=;GK?F.0va=9'/,2[-GK!HGR,2=>?SBl1$G�.0va=��q!$#-*-]���13!HGR*�!$#�*r¯N57�3W�4 [�13!HGK*f�¥w@=;I_5��N57��O©�+13#-'/]R~,2BV]$13%Mv-!©I$=J!$#a1$.0va=;G@[Z13!HGR*zU-?A=;=�]$13%aG@1©D@#a=;G©Ôo?@<�!$#N%-!$'�BC1$G@*a1�:;%-<�=>#&.0!H.0,213#z5

cV1"%-#�*a=;GK?A.0!$#-*�[�=;.A.A=;G va1�DÌ.0va=�'j,2[-GK!HG0]"B¥%-#-:�.0,213#-?JD�1$G0²_Ui?A.0%�*a]u1$B~.0va='/,2[-GR!HG0]MÒZ'2=r?A13%-GK:�=�:�1�*a=,/?G0=>:�13<�<�=>#-*a=>*z5�c~v-=t<n!$,/#'/,2[-GK!HGK]JÒZ'2=tBl1$G\.0va=¢w@=;I_5��N57��O�¯N57�3W�4r��13!HGK*³,/?F#-!$<�=>*M¬a«$�Ri3§e�z�1nA¬a«N®z~�BC1$G\.0va=�9!$#-*a]��13!HGR*zU-.0va=�<�!$,j#�'/,2[-GR!HG0]�Ò_'2=¢,/?@#-!$<�=>*f¬a«$�RiHªh�+nd¬a«�®&5

K¡K�JFK ²�\�P1r�\�P Ë3ª�U�PTZ�ª4

��������������\���% "L%9�!?

c~va=¾�q!$#�*a]���13!HGK*uv-!$?qBl13%aGt<�1$.A1$G Q 1$G0.0?;U�#N%-<�[�=;G0=>*MBlGK13<�4r.A1�LN59c@va=�¯N57�3W�4[�13!HGK*fv-!$?¢¯n<�1$.A1$GQ 1$G0.0?;U�#N%-<J[�=;G0=>*�BlGK13< 4¢.A1¾Bz~ Q 1$G0.0?iBC1$G�<�1$.A1$GK?�4t.A1 L¢!HGK=@'21�:;!H.A=>*�13#�.0va=q f,/:�GK1 Q G01�:�=>?0?A1$G+��13!HGK*nD@v-,/'2=<�1$.A1$GK?@�n!$#-*EB�!HGK=�'21�:;!H.A=>*³13#�.0va=�(�Ê Q !$#-?0,213#³��13!HGK*z5

f1$.A1$GJ<�!©]f[�=�?A=;.�,/#u!�DdBC1$G0DF!HGK*HG�*�,2G0=>:�.0,213#��¥:�1$G0G0=>? Q 13#�*-,/#aY�.A1�.0va=�Y$G0=;=># <�1$.A1$G�gV(+8±[�=>,/#aY³'/,2.R�!$#-*�! Dd[�!$:0²ND�!HGR*HG�*-,2GK=>:�.0,213#��¥:�1$G0G0=>? Q 13#-*�,/#aY�.A1�.0va=�<�1$.A1$G@G0=>*³gV(+8�[�=>,/#aY�'/,2.R�R5

c~va=tB¥%-#-:�.0,213#�?�¤z�£Æ�« l�r¾j�ÊJ!$#-*Ò�z�/Æ;«$ler¾jwÊ�.0%aGR#�<�1$.A1$Goj³13#³BC1$G0DF!HGK*1$G\[�!$:K²&DF!HGK*zUaG0=>? Q =>:�.0,/I$=>'2]$U-!H.B¥%-'/' Q 1©D�=;G>5+c~va=¢B¥%-#-:�.0,/13#�¦�¤N¤QÆ;« l�r�jwÊJ.0%aGK#-?\<�1$.A1$G!j�1H¼S5

c~va= Q 1�D�=;G@'/=;I$=>')1$Bi<�1$.A1$GK?q<�!>]³!$'/?A1n[Z=�:�13#&.AG013'/'/=>*z5+c~v-,j?\,/?~*a13#a=�,j#�?A1$BC.EDF!HG0=�[N]r.0%-GK#-,/#aY�!�<�1$.A1$G13#�!$#-*�1H¼GR! Q ,/*-'2]��¥!¢.A=>:Kv-#�, ð&%-=~:;!$'/'2=>*àµ�ã3ò/èR»�¶dí�饺Zæ â ñr¸aºZã$òlï�ækél¸�åz5Vc@va=/j_¦�ra¦3§1Æ�« ler�j�É9« l�r�{�ÊqBC%�#-:�.0,213#!$'/'21�D@?t:�13#�.AGK13'S1$B�!³<�1$.A1$G>Ôo? Q 1�D�=;G�'2=;I$=>'�5?C£1©D�=;GK?¢GK!$#aY$=�BCG013< p �z���CB¥%-'/'V13#u,/#".0va=�Bl1$GKD�!HGK* *-,/G0=>:�.0,213#_�

Page 47: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

��¯ bd#�.A=;GK!$:�.0,/I$=�y329?A=;G>Ôo?�4¢%-,/*a=

.A1��|p��h�³�CB¥%-'/'-13#r.0v-=q.0va=9[�!$:K²&DF!HGK**-,2G0=>:�.0,/13#_�R5£c@va=9?0]N?A.A=><±?A1$BC.EDF!HG0=¢!$:�.0%-!$'/'2]n13#-'2]�:�13#�.AGK13'/?F<�1$.A1$GK?�.A1?A=;I$=>#f*a=;Y$G0=;=>?~1$B Q 1©D�=;G>U-[�%-.~!HG0Y3%-<�=>#&.~[�13%-#-*-?�1$B1�|p��z��!$#-*E¥Tp��h�n!HG0=�%-?A=>*)5

�a¦a«��n¤z�QÆ;« l�r�j�Êc£%aGK#-?\<�1$.A1$G!j�13#M,/#.0va=�BC1$G0DF!HGK*�*-,2GK=>:�.0,213#z5i(iÊa!$< Q '2=$^�¤z�£ÆFmRÊüÅ

�a¦a«������1Æ;« l�r�j�Êc£%aGK#-?\<�1$.A1$G!j�13#M,/#.0va=�[�!$:K²&DF!HGK*f*-,2G0=>:�.0,213#)5S(�Ê�!$< Q '2=$^±���1Æ p�Ê�Å

�a¦a«��r¦&¤&¤£Æ;«$ler¾jwÊc£%aGK#-?F1H¼�<�1$.A1$G!j)5�(�Ê�!$< Q '2=$^+¦�¤N¤£Æ$phÊüÅ

�a¦a«��Òk�¬&¬&¦&¤&¤£Æ}Ê�a¦a«��ÒkN¦±Æ$ÊÞc£%aGK#-?F1H¼�!$'/'z<�1$.A1$GR?;5okN¦n,/?\!n?0va1$G0.\BC1$GK<ÖBC1$G�k�¬&¬&¦�¤N¤_5�a¦a«���jZ¦'ra¦�§£Æ;«$ler�j+Éq« ler�{üÊ

c£%aGK#-?F13#�<�1$.A1$G5jf!H. Q 1©D�=;Gq'2=;I$=>'�{z51C£1©D�=;G9'/=;I$=>'/?\GK!$#aY$=¢BCG013< p��z��BC1$G~B¥%-'/'Z13#³BC1$G0D�!HGR*³.A1�Rp �z��BC1$G~B¥%-'/'Z13#�[�!$:K²&DF!HGK*z5

���������,+�:0����è(%^�é% "�%(�

xN=;G0I$13?+!HG0=@<�1$.A1$GK?+D@,2.0v�,/#&.A=;GK#-!$' Q 13?0,/.0,213#�Bl=;=>*-[�!$:0²�D@v-,j:Kv�]$13%�:;!$#r!$:;:;%aGK!H.A=>'2]�:�13<n<�!$#-*�.A1�!�Y3,2I$=>#1$GK,2=>#&.0!H.0,213#z5+xN=;GKI$13?iD@,/'/'N!$:�.0,2I$=>'2]�?A=;=;² .A1�<�1©I$=q.A1�!$#-*�G0=><�!$,j#�!H.i.0va=\1$GK,2=>#&.0!H.0,213#�.0va=;]�!HG0=~:�13<�<�!$#�*a=>*.A1�Y$1�.A1a5�xN=;GKI$13?\!HG0=¢%-?A=;B¥%-'�BC1$G~!$,/<�,j#aY ?0=>#-?A1$GK?�1$G~<�1�IN,/#-Y�!$:�.0%�!H.A1$GK?\.0vaG013%-Y3v�!�'j,/<�,2.A=>*r!HGK:H5+c~va=;]�!HG0=Y$=>#a=;GK!$'j'2]�!H[_'2=¢.A1n?AD�=;= Q .0vaG013%-Y3v�!H[�13%a.�O>TH4n*a=;Y$GK=;=>?@!$#-*³#a1r<�1$G0=$5

g�,/[-GK!HG0]�G013%-.0,/#a=>?³!$'/'21�D@?³:�13#&.AG013'¢1$B�!�?0,/#aY3'2= ?A=;G0I$1¡<�1$.A1$G>5Öc~va=�?A=;G0I$1¡<�1$.A1$GMv-!$?³!�.0vaGK=;=�h�D@,2G0=:�13#-#a=>:�.0,/13#z^ Q 1©D�=;G>U-Y$G013%�#-*zUa!$#-*�:�13#&.AG013'k5

X #�!�¯N57�3W�4�[Z13!HGR*zU&.0v-=;G0=9,j?�!�*a=>*-,j:;!H.A=>*�:�13#�#a=>:�.0,213#�Bl1$GF.0va=¢?A=;GKI$1 13#�.0va=t<�!$,/#�[�13!HGK*�!H.F.0va=q.A1 Q 1$B.0va=�[�!$#a²M1$B�:�13#-#a=>:�.A1$GR?tD@v-,/:Rvf!HG0=�!H[�1©I$=�!$#�*f.A1.0va=�'2=;BC.91$B+.0va=�<�!$,/# Q 1©D�=;G¢?AD@,2.0:Rvz5 P .0v-G0=;= Q G013#aY:�13#-#a=>:�.A1$GJD@,2.0v"Y$G013%-#�* 13#u.0va=�'2=;BC.;U Q 1©D�=;G�,/# .0va=�<�,j*-*-'2=$U�!$#-*�:�13#&.AG013'i13# .0va=�GR,2Y3v�.�?Kva13%-'/*"[�=�%-?A=>*.A1 Q '/%aY�.0va=�?A=;GKI$1r,/#&.A1n,2.0?~:�13#�#a=>:�.A1$G>5@xN1�'213#aYr!$?~]$13%M!HGK=J?0%aGK=¢.A1�Y$=;. Q 1�D�=;G@,j#³.0va=�<�,j*-*-'2=$U�.0va=�?0=;G0I$1D@,/'j'V#a1$.¢[�=�*-!$<�!HY$=>*u[N] Q '/%aY$Y3,/#-Yr,2.¢,/# [�!$:K²&DF!HGK*-?>U)[�%a.9D@,/'/'£?0,/< Q '2]�#a1$.¢D�1$G0² %-#�.0,j'V,2.¢,/? Q '/%aY$Y$=>* ,/#Q G01 Q =;GK'/]$5

xN=;= áSâ »¡*9ïHåzº$ô��~¸Hï�ä;º á »©· â å-ék·RïHòZõt»¹ê¥»Rä�»¹å�·¹»�Bl1$G\,/#aBC1$GK<�!H.0,/13#n13#va1�D�.A1�!H.A.0!$:RvM! ?A=;G0I$1�<�1$.A1$GF.A1�!�9!$#-*a]���13!HGR*z5�c�1J%-?A=~.0va=>?0=~BC%�#-:�.0,213#-?i13#n!?�9!$#-*a]���13!HGR*zU�]$13%r<J%-?0.�=�Ê Q '/,/:;,2.0'2] '213!$*�.0va=~Ò_'2=>?\®$­3§z�a¦/nFg!$#-*u®$­�§h�a¦/nK«zg$�z5

Page 48: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

yFv-! Q .A=;G�O$OH^+c~va=¢b0y{gV,2[-GK!HG0]�`S,/'2= �&W

c~va= Q 13?0,2.0,213#r1$B£.0va=¢?A=;G0I$1�<�1$.A1$G~?0v�!HBl.\,/?F:�13#&.AG013'/'2=>*[N]r!�G0=>:�.0!$#-Y3%-'/!HG\DF!>I$=;BC1$GK<Ö.0v-!H.~,/?�Y$=>#a=;GR!H.A=>*13#".0va=�Þzà Q ,/#z5tc~va=J*�%aGK!H.0,213#f1$B+.0va= Q 13?0,2.0,2I$= Q %-'/?0=�1$B�.0va=�DF!>I$=;BC1$GK<Þ*a=;.A=;GK<n,/#a=>?9.0va= Q 13?K,2.0,213#�1$B�.0va=?0v-!HBC.;5�c~va=t!$:;:�= Q .0!H[�'/=¢D@,/*a.0vn1$B�.0va= Q %-'j?A=@IH!HGK,2=>?�Bl1$G~*�,Ó¼Z=;GK=>#�.F<�1�*a=>'/?�1$BV?A=;G0I$13?>UN[_%a.�,j?�! Q�Q G01>Êa,/<�!H.A=>'/]W�4$4�.0,/<�=;GF:�]�:;'2=>?\<�,/#-,j<J%-< !$#-*��34$4$4�.0,/<�=;G\:�]N:;'/=>?�<n!�Ê�,/< %-<³UND@va=;GK=q.0va=�¯$T�O$OHÔo?\.0,j<�=;GFGK%-#-?�!H.\�H ����$5c~va= Q %-'/?A=¢,/?FG0= Q =>!H.A=>*f! Q-Q G01©Ê�,/<n!H.A=>'2]n=;I$=;G0]��H4r<�,/'/'/,j?A=>:�13#-*-?;5

�a¦a«���®$­3§z�a¦zi&¦�loÆ$Êc£%aGK#-?F.0va=�?0=;G0I$1r?0,/Y3#-!$'�13#z5Qf�13%M< %-?A.~:;!$'j'z.0v-,/?FB¥%-#-:�.0,213#[�=;BC1$G0=¢.0va=�?0=;G0I$1�D@,/'j'Z<�1©I$=$5

�a¦a«���®$­3§z�a¦zi&¦�¤N¤£Æ}Êc£%aGK#-?\?A=;GKI$1n?0,2Y3#-!$'�1H¼S5+c~v-=�?A=;G0I$1�D@,j'/'_#-1n'213#aY$=;G~.AGK]r.A1n<�1©I$=�.A1r!$#�] Q !HG0.0,/:;%�'/!HG Q 13?0,2.0,213#!$#-*nD@,/'/'a<�1�I$=qBCG0=;=>'2]$5Ss{va=>#r]$13%r!HG0=9#a1$.+!$:�.0,2I$=>'/]�%-?0,/#aY�.0va=@?A=;G0I$1aU�.0%aGR#-,/#aY¢,2.�1H¼�Dq,/'/'a?0!©I$=Q 1©D�=;G@!$#-* Q G01N:�=>?K?A1$G@:�]�:;'2=>?;5

« l�rf®H­�§h�a¦QÆ�« l�r�{-­�§�«3¦h�RÊxN=;.0?+.0va=@v-,2Y3v�.0,j<�=\1$B�.0va=@?A=;G0I$1J?0,2Y3#-!$'a.A1%{-­�§�«3¦h��.0,/<�=;G�:�]N:;'2=>?�?A1�'213#-Y�!$?�.0v-!H.�B¥!$'/'/?SDq,2.0v-,/#.0va=¢!$:;:�= Q .0!H[�'/=¢GK!$#aY$=tBl1$GF.0va=¢?A=;GKI$1a5 X .0va=;G0Dq,/?A=q,/.�.AGK%�#-:�.0!H.A=>?F.0va=tI�!$'j%a=q.A1�.0v-=t:;'/13?A=>?A.F.0va=?A=;G0I$1³,/? Q v&]N?K,/:;!$'/'2]³!H[�'2= .A1Y$1.A1a5�b|.9G0=;.0%aGR#[email protected]=J.0vaGK=>?0va13'/*a=>*fI$=;GK?0,/13#f1$B+.0va= Q =;GR,21N*M]$13%Y3!>I$=�,/.;5Mw~=><�=><J[�=;GJ.0v�!H.�?0=;G0I$13?�v-!>I$=!�ÒZ#-,2.A=nGK=>!$:�.0,213#ß.0,/<�=nDqv-,/:Kv)UVD@v�,/'2=�I$=;G0]�B¥!$?A. .A1vN%-<�!$#�?A=>#�?A=>?@1$BS.0,/<�=$U_,/?\I$=;GK]�?0'21©D�.A1r! Q G01N:�=>?K?A1$G>5Fb|BS]$13%f!HG0=�G0=>?0=;.A.0,/#aY�.0va= ?A=;G0I$1�!$#aY3'2=,/#³!�.0,/Y3v�.@'/1&1 Q ,2.~<n!>]D�=>'j'z#a=;I$=;Gq:;!H.0:Rvf% Q Dq,2.0v]$13%z5

« l�rf®H­�§h�a¦�i$§ek��£ÆK¤�¬&¦hk�r�k�le¢a¬�­RÊxN=;.0?S.0va=\:�13<�<n!$#-*a=>* 1$GK,2=>#&.0!H.0,213#�1$B�.0v-=F?0=;G0I$1¢.A1¢! Q-Q G01©Ê�,/<n!H.A=>'2]�.0va=\!$#aY3'/=�,/# GK!$*�,/!$#-?V.0v-!H.,2.�,j?¢Y3,2I$=>#�!$#�*�G0=;.0%aGR#-?¢.0va= Q %-'/?A=�D@,j*a.0vu,/#u.0,/<�=;GJ:�13%-#&.0?�D@v�,/:Kvu.0v-=r?A=;G0I$1fD�!$?J!$:�.0%-!$'/'2]:�13<�<�!$#�*a=>*�D@,2.0vz5ßc~va=<�,/#-,j<J%-< Q %-'j?A=rDq,/*a.0vß,/?�*a=�Ò_#a=>*ß.A1u[�= �;=;G01uGK!$*-,j!$#-?�!$#-*�.0va=<�!�Êa,/< %-<Ö,/?~*a=�ÒZ#a=>*.A1�[�=�{Z« GK!$*-,/!$#�?;5

« l�rf®H­�§h�a¦�i'��­�¢£ÆK¤�¬&¦hk�r�k�le¢a¬�­RÊxN=;.0?S.0va=\:�13<�<n!$#-*a=>* 1$GK,2=>#&.0!H.0,213#�1$B�.0v-=F?0=;G0I$1¢.A1¢! Q-Q G01©Ê�,/<n!H.A=>'2]�.0va=\!$#aY3'/=�,/#�*a=;Y$GK=;=>?S.0v-!H.,2.�,j?¢Y3,2I$=>#�!$#�*�G0=;.0%aGR#-?¢.0va= Q %-'/?A=�D@,j*a.0vu,/#u.0,/<�=;GJ:�13%-#&.0?�D@v�,/:Kvu.0v-=r?A=;G0I$1fD�!$?J!$:�.0%-!$'/'2]:�13<�<�!$#�*a=>*�D@,2.0vz5ßc~va=<�,/#-,j<J%-< Q %-'j?A=rDq,/*a.0vß,/?�*a=�Ò_#a=>*ß.A1u[�= �;=;G01�*a=;Y$G0=;=>?n!$#-*�.0va=<�!�Êa,/< %-<Ö,/?~*a=�ÒZ#a=>*.A1�[�=�O>TH4�*a=;Y$G0=;=>?>5

« l�rr§�kh�-«'k�l|i'r�¦�i�{hu_¬a®$­QÆ0¤a¬�¦zk�r�k�le¢a¬&­|Êy�13#&I$=;G0.0?q.0va=�!$#aY3'2=�Y3,2I$=>#M,/#�GK!$*-,/!$#-?~.A1n.0va=�:�1$GKG0=>? Q 13#-*-,/#-Y Q %-'/?A=¢D@,j*a.0v³,/#³.0,/<�=;G@:�13%-#&.0?;5bd# Q %a.FGK!$#aY$=J,/?\4�5o4�.A1rLN5/O��a5

« l�r��N­h¢�§a­N­zi'r�¦�i�{hu_¬a®$­QÆ0¤a¬�¦zk�r�k�le¢a¬&­|Êy�13#&I$=;G0.0?q.0va=�!$#aY3'2=�Y3,2I$=>#M,/#M*a=;Y$G0=;=>?q.A1n.0va=�:�1$GKG0=>? Q 13#-*-,/#-Y Q %-'/?A=¢D@,j*a.0v³,/#³.0,/<�=;G@:�13%-#&.0?;5bd# Q %a.FGK!$#aY$=J,/?\4�5o4�.A1MO>TH4�5o4�5

���������A@`m7'4$�3F$��L���f"!$&%('4���0�Q�E$,è(���!?

Page 49: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

��T bd#�.A=;GK!$:�.0,/I$=�y329?A=;G>Ôo?�4¢%-,/*a=

���������A@�����-¿êu���Q�E$�è2���!?

X #J.0va=\¯N57�3W�4t[Z13!HGR*zUH.0va=;G0=F!HG0=�.|D�1¢13%-. Q %a. Q 1$G0.0?£'21�:;!H.A=>*�13# .0va=�(�Ê Q !$#-?0,213#J��13!HGR*J.0v�!H.S!HGK=�?0%�,2.0!H[�'2=BC1$G9*aGR,2IN,j#aY�g�(+8t?q1$Gq1$.0v-=;G9?0<n!$'/')'213!$*-?>5~c~va=>?A= Q 1$GK.0?@*aGK!©Dà.0va=>,/G Q 1©D�=;GqBCG013< .0va=J<�1$.A1$Gq[�!H.A.A=;GK]M!$#-*va=>#-:�=�D@,/'/'_13#-'2]�D�1$GK²rD@v-=>#³.0v-!H.~[�!H.A.A=;GK],j?\:�13#-#a=>:�.A=>*z5

c~va=%�9!$#-*a]��13!HGK*M*a1N=>?~#a1$.q,/#-:;'/%-*-=q.0va=>?0= Q 1$G0.0?;5

c~va=tBC13'/'21�D@,/#aY�:�13<�<�!$#�*-?~!HG0=�%�?A=>*³.A1n:�13#&.AG013').0v-=�g�(+8 Q 1$G0.0?>^

�a¦a«���¬&­��ei&¦�uer��QÆ;«$ler³®zÊc£%aGK#-?F13#�gV(+8t4 Q 1$G0.~,2B�® ,j?~#a13#�h-�;=;G01e~�.0%aGK#-?\,2.\1H¼u1$.0va=;GKD@,/?A=$5

�a¦a«���¬&­��ei&¦�uerTpTÆ;«$ler³®zÊc£%aGK#-?F13#�gV(+8�O Q 1$G0.~,2B�® ,j?~#a13#�h-�;=;G01e~�.0%aGK#-?\,2.\1H¼u1$.0va=;GKD@,/?A=$5

���������A@��,+CêUë;=Y��';?L$&%('³ì{%9� �!3Á��%�"�%9��TU%9��"!?

X #r.0va=¢¯N57�3W�4�[Z13!HGR*zU&<�1$.A1$G Q 1$G0.0?���!$#-*�BNUa'21�:;!H.A=>*�13#�.0va=9(�Ê Q !$#-?0,213#���13!HGK*zUa<�!>]r!$'/?A1 [Z=9%-?A=>*r.A1:�13#&.AG013'�%-#�,/*-,2G0=>:�.0,/13#-!$'�*a=;IN,j:�=>?;U�?0%-:Rv�!$?@!n?A13'2=>#a13,/*)U-'/!$< Q Ua1$G9!�<�[email protected]�!H.q#a=;=>*-?~.A1n[�=�*aGK,2I$=>#³,j#³13#a=*-,2GK=>:�.0,213#³13#-'2]$5�(+!$:RvM1$BS.0va=�.|D�1<�1$.A1$G Q 1$GK.0?;U-D@va=>#M%-?A=>*�,/#�.0v-,/?\B¥!$?0v-,213#)U-:;!$#M,/#-*-= Q =>#�*a=>#�.0'/]n:�13#�.AGK13'.ED�1r?K%-:Kv�*-=;IN,/:�=>?>5

P ?~<�=>#&.0,213#a=>*�!H[�1©I$=$U_.0va=��9!$#-*a]��13!HGR*M*a1N=>?~#a1$.@v�!>I$=�.0va=>?0= Q 1$G0.0?;5

cV1�%-?A=¢.0va= Q 1$G0.0?\%-#�,/*-,2G0=>:�.0,/13#-!$'/'2]$U3.0v-=�.ED�1Hh Q ,/#³va=>!$*-=;G@*-,2G0=>:�.0'/]n[�=>#a=>!H.0v.0va=�<�1$.A1$G~��!$#-*ÙB�gV(+8t?,/?\%-?0=>*z5

�a¦a«���jZ¦'ra¦�§�]ei&¬&­&¤�r1Æ�« ler�®�Êc£%aGK#-?F13#�'/=;Bl.~?0,j*a=¢1$B£<�1$.A1$G@� Q 1$G0.~,2B�® ,j?\#a13#�h-�;=;G01e~-.0%-GK#-?~,2.\1H¼ 1$.0va=;G0Dq,/?A=$5

�a¦a«���jZ¦'ra¦�§�]ei$§_«�¢$ªer£Æ;« l�r®�Êc£%aGK#-?F13#³GR,2Y3v�.~?K,/*a=t1$Bi<�1$.A1$G@� Q 1$G0.\,2B�®�,/?\#a13#�h-�;=;G01e~�.0%aGK#-?\,2.\1H¼u1$.0va=;GKD@,/?A=$5

�a¦a«���jZ¦'ra¦�§!Kzi&¬&­&¤�r1Æ�« ler�®�Êc£%aGK#-?F13#�'/=;Bl.~?0,j*a=¢1$B£<�1$.A1$G�B Q 1$G0.~,2B�® ,j?\#a13#�h-�;=;G01e~-.0%-GK#-?~,2.\1H¼ 1$.0va=;G0Dq,/?A=$5

�a¦a«���jZ¦'ra¦�§!Kzi$§_«�¢$ªer£Æ;« l�r®�Êc£%aGK#-?F13#³GR,2Y3v�.~?K,/*a=t1$Bi<�1$.A1$G�B Q 1$G0.\,2B�®�,/?\#a13#�h-�;=;G01e~�.0%aGK#-?\,2.\1H¼u1$.0va=;GKD@,/?A=$5

Page 50: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

yFv-! Q .A=;G�O$OH^+c~va=¢b0y{gV,2[-GK!HG0]�`S,/'2= ��6

K¡K�JyI W?N/U�·�ª¡Z bHU�r�\�P

�����,+2�����7$&[($,"L���(GI'4=Yv�"

« l�r��-«�¢-«�rekN¬±Æ�« ler�{�Êw~=;.0%-GK#-?q.0va=JIH!$'/%a=J1$B�.0va=�?A=>#-?A1$G¢,/#f?A=>#-?A1$G Q 1$G0.+{�U�!$?t!r.AGR%a=���BC!$'j?A=�IH!$'/%a=³�dO�BC1$Gt.AGK%a=�!$#-*4�BC1$G~B¥!$'/?A=��R5xN=>#-?01$GK?�!HG0=\=�Ê Q =>:�.A=>*�.A1�[�=~ï&·©æké�ç©»~òl¸$í\UN<�=>!$#-,/#-Y9.0v�!H.�.0va=;]�!HG0=~IH!$'/%a=>*�!H.o�;=;G01�I$13'2.0?�,/#�.0va=!$:�.0,2I$=$U31$GS.AGK%-=$U3?A.0!H.A=$5�c~vN%-?�.0v-=F'j,2[-GK!HG0]tB¥%-#-:�.0,213#JG0=;.0%aGR#-?�.0v-=�,/#&I$=;GK?A=�1$B�.0v-=�!$:�.0%-!$'�GK=>!$*-,/#aYBCG013< .0v-=�*-,/Y3,2.0!$'+v-!HGR*aD�!HGK=$^�,2B\.0va=�G0=>!$*-,/#aYf,/??�;=;GK1"I$13'/.0?J1$G�'21$Y3,/:Ò�;=;G01aUi.0va= ��«�¢�«�rek�¬wÆ$ÊB¥%-#-:�.0,213#D@,j'/'ZG0=;.0%aGK#.AGK%-=$5

c~va=n¯N57�3W�4f[�13!HGK*�v�!$?�BC13%aG�89bAC�?AD@,/.0:Kva=>?�13#�.0va=r=�Ê Q !$#�?0,213#u[�13!HGK*z5�c~va=��9!$#-*a] ��13!HGK*ß*a1&=>?J#a1$.v-!©I$=J89bACø?AD@,2.0:Rva=>?;5

« l�r��-« {|i-®�¨_«�r|g�ªoÆ�« l�r³®�¨�Êw~=;.0%-GK#-?\IH!$'/%a=¢1$Bi89bACø?AD@,2.0:Rv�®�¨�13#�.0va=�=�Ê Q !$#-?0,213#�[Z13!HGR*z5�xND@,2.0:Rva=>?~!HG0=J#&%-<J[�=;G0=>*BCG013<O¢.A1��r!$? Q =;G@'/!H[�=>'/'/,j#aY�13#M.0va=�!$:�.0%-!$'V?AD@,2.0:Rvz5+w~=>?K%-'2.~,/?¢O�,/BV.0va=J?AD@,2.0:Rv�,/?~,/#.0v-= Q 13?0,2.0,213#'/!H[�=>'/'2=>*;Dd13#zUGn!$#-*�4�,2B£#a1$.;5

« l�r��-« {|i-®�¨_«�r|g�ª�­-®üÆ}Êw~=;.0%-GK#-?\IH!$'/%a=�13#f89bAC{?AD@,/.0:Kva=>?q!$?@!�BC13%aGAh�[_,2.\[�,/#-!HGK]r#N%-<�[�=;G>5�g)=;BC.dhE<�13?A.t?AD@,2.0:Rv�,/?q<�13?A.?0,2Y3#�,ÓÒ_:;!$#&.�[_,/#-!HG0]�*-,2Y3,2.;5%D X #HG Q 13?K,2.0,213#,/?\[�,j#-!HG0]�13#a=$5

��1$.0v .0va=5�9!$#-*a]J��13!HGR* !$#�*J.0v-=F¯N57�3W�4t[�13!HGK* v-!>I$=F.|D�1¢[�%-.A.A13#-?;5 X #�.0va=��9!$#-*a]���13!HGK*zU$.0v-=�[�%-.A.A13#-?!HG0=�'j!H[Z=>'j'2=>*E��ê�Þ'ß�êr!$#�*Ù��êHà�Ý�~a13#³.0va= ¯N57�3W�4�[�13!HGK*zUa.0va=¢[_%a.A.A13#-?~!HG0=J'/!H[�=>'/'2=>*�ëe�h¼hÞ�Ýzën!$#-*Ù¼'ú|àhàz��ëZ5

« l�rf® ra¦�{Ri��huerhra¦�l/Æ$Ê��C1$G�g�ª-¦N¦�®H­�i��zuerhra¦�loÆ$ÊqBC1$G~.0va= ¯N57�3W�4�[�13!HGK*_�w~=;.0%-GK#-?FIH!$'/%a=¢1$BS[�%a.A.A13#�'j!H[Z=>'j'2=>*E��êHà�Ý �C1$G�¼'úHàzàz��ë-�R^\O�,2B Q G0=>?0?A=>*�!$#�*³4�,2B�GK=>'2=>!$?A=>*z5(iÊa!$< Q '/=$^

�eþ ¨Hk-«�rÛuzl�r_«3¬�®�ra¦�{3�zu�rzr�¦�l {a§�­�®&®$­h� þ'�¨&ªZ«�¬&­ ÆRåK® ra¦�{Ri��huerhra¦�l/Æ$ÊhÊ;ÁhÂ

« l�rf® rek3§zrHi��zu�rzra¦�loÆ}Ê��C1$Gt­-®hg'k�{�­zi��zu�rzr�¦�loÆ}Ê$�w~=;.0%-GK#-?FIH!$'/%a=¢1$BS[�%a.A.A13#�'j!H[Z=>'j'2=>*E��ê�Þ'ß�ê"�C1$G¡ëe�h¼�ÞhÝzëa�R5(iÊa!$< Q '/=$^

�eþ ¨Hk-«�r ¤�¦3§ �zu�rzra¦�l�ra¦Û�-­�{a§a­-®N®H­h�/Å�r�ª-­�l¨Hk-«�r ¤�¦3§�«�r�ra¦��-­�§a­N¬&­zk-®$­���®$¦3r3ª|k�r

Page 51: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

BH4 bd#�.A=;GK!$:�.0,/I$=�y329?A=;G>Ôo?�4¢%-,/*a=

�zuerhra¦�l3{a§�­�®N®ø«�®®��­���¦�uzlTg$­h� þ��¨&ªZ«�¬&­ ÆRåK® rek3§zrHi��zu�rzra¦�loÆ}ÊzʲÁz¨&ªZ«�¬&­ Æ>®�r�k�§hrHi��huerhra¦�l/Æ$ÊhÊ;ÁhÂ

c~va=��9!$#-*a]���13!HGK*�v-!$?i.|D�1J!$*-*-,2.0,213#�!$'N:�13#&I$=>#-,2=>#�:�=@B¥%-#-:�.0,213#-?}~$.0va=>?A=@:;%aGKG0=>#�.0'/]J*a1�#a1$.�v�!>I$=q!$#�!$'21$Y3?BC1$G~.0va=J¯N57�3W�4n[Z13!HGR*z5

�a¦a«���®�r�¦�{Ri�{a§�­�®N®�Æ$Ês�!$,2.0?qBl1$Gq.0va=��'êHà�Ý[�%a.A.A13#M.A1n[�= Q GK=>?0?A=>*zU-.0v-=>#�G0=>'2=>!$?0=>*z5\c~va=>#�,/?K?0%a=>?@!r?0va1$G0.@[Z=;= Q !$#-*G0=;.0%aGR#-?;5ic~va=�:�1�*a=�BC1$G�®�r�¦�{|i�{a§�­�®&®üÆ$Ê¢,/?~!$?\BC13'/'21�D@?;^

¨&ªZ«�¬&­ ÆRåK® ra¦�{Ri��huerhra¦�l/Æ$ÊhÊ�Ũ&ªZ«�¬&­ Æ>®�r�¦�{|i��zu�rzr�¦�loÆ}ÊzÊüÅ��­&­�{oÆ}Ê�Å

�a¦a«���®�r�k�§zrei�{�§a­�®&®üÆ}Êg�,/²$=�® ra¦�{Ri�{�§a­-®N®üÆ}Ê&U&[_%a.FBl1$G~.0v-=¾��ê�Þ�ßzêr[�%a.A.A13#z5

�����,+2�,+ | ';���&%�[^GI';=Fv�"L?

« l�r k�l|kN¬&¦h¢QÆ;«$ler�{üÊw~=;.0%-GK#-?FIH!$'/%a=¢1$Bi?A=>#-?A1$G Q 1$GK.~#&%-<J[�=;G0=>*Ò{z5�w~=>?0%-'/.~,/?\,/#&.A=;Y$=;G@[�=;.ED�=;=>#M4�!$#-*f��B�BN5búB_.0va=¡k�l|kN¬&¦�¢£Æ$Ê\BC%�#-:�.0,213#�,/?i! Q-Q '/,2=>* .A1�! Q 1$G0.S.0v-!H.+,j?�,/< Q '/=><�=>#�.A=>*�*-,/Y3,2.0!$'/'2]�,j#�v-!HGK*aDF!HG0=$U.0va=>#J.0va=+IH!$'/%a=���B�B@,/?�G0=;.0%aGK#-=>*�,2B�.0va= â ï�ä;º_íSï�ä¹»\*�,2Y3,2.0!$'$G0=>!$*�,/#aY@,/?�Oq�¥!$?S,2Ba!@*�,2Y3,2.0!$'�?0D@,2.0:KvJ,/?1 Q =>#zU�!$#-*n.0v-= Q %�'/'�% Q G0=>?0,j?A.A1$GK?�!HG0=9:;!$%�?0,/#aY !Jv-,/Y3vnG0=>!$*�,/#aY&�RU�!$#-*n.0v-=9IH!$'/%a=94J,j?+G0=;.0%-GK#a=>*,2B9.0va= â ï�ä>º_í£ï�ä�» *-,2Y3,2.0!$'FGK=>!$*-,/#aY�,/?n4ö�¥!$?r,/B9!�*�,2Y3,2.0!$'~?ADq,2.0:Kv¡,j?�:;'213?A=>*ø!$#-* Q %-'j'/,/#aY".0va=G0=>!$*-,j#aY�#a=>!HG@Y$G013%�#-*_�R5C£1$G0.0?@!HGK=�#&%�<�[�=;G0=>*³!$?~<n!HG0²$=>*z5

« l�r���l�¦��oÆ$Êr�C1$Gq¤&§a¦��Ri��hl�¦��oÆ}Êt13#�.0va=J¯N57�3W�4�[�13!HGK*Z�w~=;.0%-GK#-?\!�IH!$'/%a=¢BCG013<Ö4�.A1r��B�B�[�!$?A=>*³13#³.0v-= Q 13?0,2.0,213#�1$BS! Q 1$.A=>#�.0,213<�=;.A=;G>5 X #³.0v-=�¯N57�3W�4[�13!HGK*zUa.0va= Q 1$.A=>#&.0,213<�=;.A=;G9,/?~'/!H[�=>'/'2=>*�âhßHàV��ízãHàV�_5

c~va=�¯N57�3W�4t[Z13!HGR*�:�13#&.0!$,/#-?V=�Ê Q =;GK,/<�=>#�.0!$'&:;,2GK:;%-,2.AGK]9BC1$GS*a=;.A=>:�.0,/#aY9.0va=+BC1$GK:�=�[�=>,/#aY@! Q-Q '/,2=>*¢[N]�!q<�1$.A1$G>5c~va=��9!$#-*a]��13!HGK*M*-1&=>?~#-1$.~:�13#�.0!$,/#M.0v-,/?\:;,2GR:;%-,2.AG0]$5

« l�r�j_¦�r�¦�§Hi3¤�¦3§Rg3­±Æ;«$ler?jwÊw~=;.0%-GK#-?FIH!$'/%a=¢1$BS!$#-!$'21$Yn,/# Q %a.F?A=>#-?0,/#-Y�:;%-G0G0=>#&.~'2=;I$=>'z.0vaG013%-Y3v³<�1$.A1$G5j�5�w~=>?0%�'2.\,/?~,/#&.A=;Y$=;G[�=;.ED�=;=>#f4r!$#-*f��B�BNUZ[�%[email protected]] Q ,/:;!$')GK=>!$*-,/#aY3?@GK!$#aY$=�BCG013<�!H[�13%a.q�34f�¥'21�D�BC1$GK:�=��\.A1fO;4$4 �¥v-,2Y3vBC1$GK:�=��R5

Page 52: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

yFv-! Q .A=;G�O$OH^+c~va=¢b0y{gV,2[-GK!HG0]�`S,/'2= B�O

c~va=nBl1$GK:�=�hE?0=>#-?0,/#aYf:;,2GK:;%-,2.AGK]fB¥%-#-:�.0,213#�? Q G01 Q =;GK'2]f13#-'2] D@va=>#�<�1$.A1$GK? !HG0=n1 Q =;GK!H.A=>*ß!H.�B¥%-'/'? Q =;=>*z5 c@va=":;,/GK:;%-,2.�G0=;.0%aGK#�?r,/#&IH!$'/,/*øG0=>?0%-'2.0?�D@v-=>#�<�1$.A1$GK?³!HG0= Q %-'/?0=�h�D@,/*a.0vø<�1N*�%-'/!H.A=>*[�=>:;!$%-?A=¢1$Bi? Q ,/²$=>?\.0v-!H.~1�:;:;%aG@,/#.0v-=¢Bl=;=>*a[_!$:0² Q !H.0vz5c~va=¢BC1$GK:�=�hE?A=>#�?0,/#aY�:;,2GR:;%-,2.AG0]�,/?\,/< Q '/=><�=>#�.A=>*BC1$G@<�1$.A1$GR?@4�.0vaGK13%aY3v�LN5

�����,+2�[email protected]';���!� �L�W36:�v;8Y?P};?V"L�Ww

c~va=f,/#aBCGK!HG0=>*�?0%a[_?A]N?0.A=><´,/?�:�13< Q 13?0=>*¡1$B¢.ED�1 Q !HG0.0?;^"!$#ø,/#-BlGK!HGK=>*�.AGK!$#-?0<�,/.A.A=;G>U\!$#-*ö,/#-BlGK!HGK=>*�G0=�h:�=>,2I$=;GK?>5rxN1$Bl.|D�!HGK=r,/? Q GK1©I�,/*a=>* .A1M:�13#&.AG013'i.AGK!$#�?0<�,/?0?K,213#"BlG0=}ðN%a=>#-:�] !$#-*u*a=;.A=>:�.0,/13#�1$B\,/#aBCGK!HG0=>* '/,2Y3v&.¢!H..ED�1nBCG0=}ðN%a=>#-:;,2=>?>5

�����,+2�A@����ZGI';���!� �L�W3�î��!��'4?�w¸$�?I?L$&%('

�a¦a«��³«H§ei'rN§�k�l�®�j)«�rHi�¦�loÆ}Ê(+#�!H[�'2=>?F.AGK!$#-?K<�,/?0?0,/13#r1$Bi,/#-BlGK!HGK=>*�'j,2Y3v�.\.0v-G013%aY3vDß ß¿à�Üeê Q 1$G0.;5

�a¦a«��³«H§ei'rN§�k�l�®�j)«�rHi�¦&¤N¤QÆ$Ê8t,/?0!H[�'/=>?F.AGK!$#-?0<�,j?0?0,213#�1$Bi,/#aBCGK!HG0=>*'/,2Y3v&.\.0vaG013%-Y3vHß$ß�à�Üeê Q 1$G0.;5

�a¦a«���®$­'rHia«�§Hi�rN§ek�lz®qj)«�rei�{-­�§_«$¦h�QÆ;« lzr%{�­�§�«3¦���ÊxN=;.0?J,/#aBCGK!HG0=>* .AGK!$#-?K<�,/?0?0,/13# Q =;GR,21N*)5�{-­�§_«$¦h�M*a=;.A=;GR<�,/#a=>?¢.0v-=n*a=>'/!©] ,j#�v-!$'2BlhE<�,/:�G013?0=>:�13#-*-?[�=;.ED�=;=>#u.AGK!$#-?K,2.0,213#-?q1$B�.0v-=�,j#aBlGR!HG0=>*MDF!>I$=;BC1$GK<³5 búB£{�­3§_«$¦h�³,/?¢?A=;.t.A1�O;4�Uo4$4$4�US!�BlG0=}ðN%a=>#-:�]1$B�O;4$4Ù���$5³D@,/'j'S[Z=nY$=>#a=;GK!H.A=>*z5³búBo{-­�§�«3¦h�f,/?�?A=;.�.A1 TNUo4$4$4�U+!�BCG0=}ðN%a=>#-:�] 1$B¢O>��BÙ���$5³D@,/'/'[�=qY$=>#-=;GK!H.A=>*z5�c@va=9*-=>:�1N*-,j#aY ?01$Bl.|D�!HG0=�,j?�:;! Q !H[�'2=t1$BV*a=;.A=>:�.0,j#aY�.AGK!$#-?0<n,/?0?0,213#�?�13#=>,2.0va=;G\1$B.0va=>?A=�.ED�1nBCG0=}ð&%-=>#-:;,2=>?F13#-'2]$5

�a¦a«���®$­'rHia«�§Hi�rN§ek�lz®qj)«�rei�¤�§a­h°�u�­�lTg��QÆ;«$lerJ¤&§�­h°'u-­�l�g��TÊxN=;.0?~,j#aBlGR!HG0=>*.AGK!$#-?0<n,/?0?0,213#�BCG0=}ðN%a=>#-:�]$5+¤&§�­h°'u-­�l�g���,/?~<�=>!$?0%aG0=>*�,j#³va=;G0.©�$52 Q 13#u!�G0=>?0=;.�:�13#-*-,2.0,213#)Uz.0va=�,/#aBCGK!HG0=>*".AGK!$#-?0<n,/?0?0,213#fBCG0=}ð&%-=>#-:�]f,/?¢?0=;.¢Bl1$G�O;4$4E���$5�!$#-*u,/?*-,/?K!H[�'2=>*z5

�����,+2�A@��,+ïGI';���!� �L�W3������<��=;"!$&%('

bd#f!�.E] Q ,/:;!$'�¯N57�3W�4³! Q�Q '/,/:;!H.0,213#)U_13#a=�G01$[�1$.9D@,/'/'�[�=J[-GK13!$*-:;!$?A.0,/#aY³,/#-BlGK!HGK=>*M!H.�O;4$4����$5�!$#-*"D@,/'/'V?A=;.,2.0?\*a=;.A=>:�.0,/13#�?A]�?A.A=><ÖBC1$G�O>��B��¡�$5�c~va=t1$.0va=;G~G01$[�1$.FD@,/'j'_*a1�.0v-=91 Q�Q 13?K,2.A=$5�(+!$:Rv³G01$[�1$.~<J%�?A. Q v�]�?0,/:;!$'j'2]?0v-,/=>'/*,2.0?\bdwà?A=>#-?01$GK?\BCG013<î,2.0?F1�D@#M'/,/Y3v�.�~a.0va=>#�=>!$:Kv�GK1$[Z1$.~:;!$#f*a=;.A=>:�[email protected]=¢=><�,/?0?0,/13#-?F1$BV.0v-=�1$.0va=;G>5

Page 53: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

B$� bd#�.A=;GK!$:�.0,/I$=�y329?A=;G>Ôo?�4¢%-,/*a=

c~va=�,/#aBCGK!HG0=>*¢G0=>:�= Q .0,213#�?A1$BC.EDF!HG0=F=>< Q '/1©]�?�!�µ â ïHèR»�¶¥òl¸a·s�&»©º�òl¸N¸�µr.A19*a=;.A=>:�.S,/#aBCGK!HG0=>*�?0,2Y3#-!$'/?�<�1N*�%-'/!H.A=>*!H.@! Q !HG0.0,/:;%-'/!HG\BCG0=}ðN%a=>#-:�]$5+c@v-,/? Q G01$Y$GK!$<�Y$=>#a=;GK!H.A=>?9!$#�,/#&.A=;GK#-!$'z?½ðN%-!HG0=;DF!>I$= [email protected]=�*-=>?0,2G0=>*G0=>:�= Q .0,213#BCG0=}ð&%-=>#-:�]�!$#�*�!H.A.A=>< Q [email protected]'21�:0².0v-,/?\?½ðN%-!HG0=;DF!>I$= ,/#&.A1�?A]N#�:KvaG013#�,#�>!H.0,213#³D@,/.0v³!�D�!©I$=;Bl1$GK< G0=>:�=>,2I$=>*M[&]!$#�,/#aBCGK!HG0=>*�?0=>#-?A1$G>5"b|B\.0v-=r=;G0GK1$G [�=;.|D�=;=>#ß.0va=,/#&.A=;GK#-!$'�D�!©I$=!$#�*�.0va=�=�Ê�.A=;GK#-!$'�D�!©I$=�,/?J[Z=>'/1©DÌ?A13<�=.0vaG0=>?Kva13'/*zU&.0va=@=�Ê�.A=;GK#-!$'ZDF!>I$=¢,/?�:�13#-?0,/*a=;GK=>* DA*a=;.A=>:�.A=>*z5G c~va=9?A1$Bl.|D�!HGK=9GK=;.0%aGK#-?�!$?�!JG0=>?0%�'2.+.0va=9#&%�<�[�=;G1$Bi:�13#-?A=>:;%a.0,/I$=�*a=;.A=>:�.0,213#-?@Bl1$G@=>!$:Kv�1$BS.0va=�,j#aBlGR!HG0=>*³?A=>#-?A1$Gq,/# Q %a.0?>5

s{v-,/'2=�=>#�!H[�'2=>*zUH.0va=F,/#aBCGK!HG0=>*�G0=>:�= Q .0,213#�?A1$BC.EDF!HG0=FG0=}ðN%-,2G0=>?V!qY$GK=>!H.S*-=>!$'�1$B Q G01N:�=>?K?A1$GS.0,/<�=$5Sc~va=;G0=;BC1$G0=$U,2.~,/?\*-=>?0,2GK!H[�'/=9.A1r*-,/?0!H[�'/=9.0v-=¢búwàG0=>:�= Q .0,213#³Dqva=>#a=;I$=;Gq,/.F,j?~#a1$.~[�=>,/#aY�!$:�.0,2I$=>'2]³%-?0=>*z5

2 Q .A1³BC13%aG¢,/#aBCGK!HG0=>*"?A=>#-?01$GK?t<�!>]f[Z=�%-?0=>*z5�c~va=>?A=�!HG0= Q 'j%aY$Y$=>* ,/#�.A1 Q 13?0,2.0,213#�?@�.0vaG013%-Y3v�W�1$B�.0va=*-,2Y3,/.0!$'V,/# Q %a. Q 1$G0.;5¢c~v-=>?A= Q 1$G0.0?t!$#-*".0va=�G0=><n!$,/#-*a=;G91$B�.0va=�*-,2Y3,/.0!$'V,/# Q %a. Q 1$G0.t<�!>]f[�= %-?0=>*fDq,2.0va13%a.:�13#�°_,j:�.\Bl1$G@?0.0!$#-*-!HGK*�*�,2Y3,2.0!$'z,/# Q %a.�Dqv-,/'2=9.0va=�,/#-BlGK!HGK=>*�*-=;.A=>:�.0,213#M?A1$BC.EDF!HG0= ,/?\1 Q =;GK!H.0,/#aYa5

c~va=tBC13'/'21�D@,/#aY�'/,2[�GK!HG0]�B¥%-#-:�.0,213#�?\:�13#�.AG013'�.0va=�,/#aBCGK!HG0=>*³*-=;.A=>:�.0,213#M?A]�?A.A=><³^

�a¦a«��³«H§ei3§a­eg3­a«��a­zi&¦�loÆ$Ê(+#�!H[�'2=>?t.0va=n,j#aBlGR!HG0=>*"G0=>:�= Q .0,213#�?01$Bl.|D�!HG0=$5�c~va=�*a=;B¥!$%-'2.¢,/?�*-,/?0!H[�'/=>*z5Js{va=>#u.0v-=�?A1$Bl.|D�!HGK=,/?F=>#-!H[_'2=>*zUa[�=;.ED�=;=>#f�H4PðÌ!$#�*MLH4PðÌ1$B£.0va=J¯$T�O$O Q G01�:�=>?0?A1$G\.0,/<�=¢Dq,/'/'Z[�=t? Q =>#&. Q =;G0BC1$GK<�,/#aY.0va=@*-=;.A=>:�.0,213#�B¥%-#-:�.0,213#ü~3.0va=;G0=;BC1$G0=q,/.�?0va13%-'/*�13#�'2]J[�=\=>#-!H[_'2=>*�,2B�,2.�,/?i[�=>,/#aY¢%-?0=>*z5YñZ¸�ã�ñã$è>æíSïHé�æ�ï�æ+òl»�ïHè©æ��� � Jñ�é/òjò/é/èR»©·¹¸�å�ºNè�ïHêúæE»Räqè>æ�ï�ä�æké/å�ðMæ â »9ä�»©·¹»dµiækél¸�å�óa»¹êk¸�ä¹» æ â »�ºNï�æ�ï�éjè�ç¹ïHòj饺_ÿ

�a¦a«��³«H§ei3§a­eg3­a«��a­zi&¦�¤N¤£Æ}Ê8t,/?0!H[�'/=>?F.0va=�,/#aBCGK!HG0=>*�G0=>:�= Q .0,213#M?A1$BC.EDF!HG0=$5

�a¦a«���®$­'rHia«�§Hi$§a­Hg$­-«��a­�i3¤&§�­h°'u-­�l�g��1ƹ« l�r ¤RÊxN=;.0?¢.0v-= 1 Q =;GK!H.0,j#aYBlG0=}ðN%a=>#-:�]"BC1$G¢.0va=�,/#aBCGK!HG0=>*fG0=>:�= Q .0,213#�?A1$Bl.|D�!HGK=$5�¤"?0va13%�'/*M[�=³O;4$4³BC1$GO;4$4����$5�1$G�O>��B�Bl1$GJO>��B����$5+89=;BC!$%-'/.~,/?�O;4$4�5

« l�rM«�§Hi�g3¦�uhler_®üÆ;«$ler¾{�Êw~=;.0%-GK#-?+#N%-<J[�=;G+1$B):�13#-?A=>:;%-.0,2I$=¢?½ð&%�!HG0=;D�!©I$=>?F!H.�1 Q =;GK!H.0,/#-Y�BCG0=}ð&%-=>#-:�]�*a=;.A=>:�.A=>*BlGK13< Q 1$G0.{³1$B£.0v-=�*-,2Y3,2.0!$'z,/# Q %a. Q 1$GK.;5�w~=>?0%-'/.~,/?\#&%�<�[�=;G~BCG013<Ö4�.A1r��B�BN51{³< %-?A.@[Z=t�aURBNUZ¯NU-1$GtWw@!$#�*a13< #a13,j?A=�:;!$# :;!$%�?A=r? Q %aGK,213%-?9G0=>!$*�,/#aY3?�1$B¢On1$G �³*a=;.A=>:�.0,/13#-?;5³c~va=�GK=;.0%aGK#uIH!$'/%a=�1$B«H§eieg$¦�uzl�rZ®�Æ$Ê�?Kva13%-'/*³[�=�Y$GK=>!H.A=;G9.0v�!$#�.0vaG0=;=J[�=;Bl1$G0= ,2.@,/?q:�13#-?0,/*-=;G0=>*�.0va=JG0=>?0%-'/.\1$B�!nIH!$'/,/**a=;.A=>:�.0,213#)5añZ¸�ã�ñã$è>æ9í£ïHéEæ�ï�æFòl»�ïHè>æ��� � �ñ�é/ò/òjé/èR»©·¹¸�å�º&è~ïHêúæE»Rä�è>æ�ï�ä©ækéjå�ð æ â »¢ä¹»©·¹»dµ�ækél¸�åßóa»¹êk¸�ä¹»æ â » «H§Hi�g3¦�uzler_®üÆ}Ê º�ï�æ�ï�é/è�ç�ïHò/饺_ÿ

Page 54: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

yFv-! Q .A=;G�O$OH^+c~va=¢b0y{gV,2[-GK!HG0]�`S,/'2= B$L

�����,+2�SR :�e;���ã"Uê�';�<%�34���!?

x�v-!HBC.S=>#-:�1�*a=;GK?i:;!$#�[�=\%-?A=>*�.A1�:�13%�#�.i.0va=~#N%-<J[�=;Gi1$B_.0,/<�=>?i!tD@va=;=>'a? Q ,j#-?;UH1$G+,/# Y$=>#a=;GK!$'-.0va=~#&%�<�[�=;G1$B�*�,2Y3,2.0!$' Q %-'/?A=>?q?A=;=># [N]M!$#u,/# Q %-.;59c\D�1�.E] Q =>?t1$B�?0v-!HBC.9=>#�:�1N*a=;GR?9:;!$#"[�=�<�!$*a=�%-?0,/#-Y�¯N57�3W�4³?A=>#-?01$GK?;^1 Q .0,/:;!$'�=>#-:�1�*a=;GK?~Dqv-,/:KvM%-?A=�1 Q .0,j:;!$'�?AD@,/.0:Kva=>?@D@va13?A=J[Z=>!$< ,/? Q =;GK,21�*-,/:;!$'j'2]�[-G01$²$=>#M[&]³!r?0'21$.A.A=>*fD@va=;=>'kU1$G¢<�!HY3#a=;.0,/: =>#-:�1�*a=;GK?tDqv-,/:Kv"%-?A=��9!$'/'�=�¼�=>:�.�?A=>#�?A1$GK?qD@v-,/:Rv":Rv-!$#aY$=�?A.0!H.A=�D@v-=>#"!�<�!HY3#a=;.¢13# !?0v-!HBC.G01$.0!H.A=>? Q !$?A.;5

x�v-!HBC.9=>#-:�1N*-=;GK?t!HG0=�,/< Q '2=><�=>#�.A=>*"%-?0,/#-Yn.0va=�,/# Q %a.~.0,/<�=;G¢:;! Q .0%-G0=�Bl=>!H.0%aGK= 13#".0va=�¯$T�O$OH5 c~va=;G0=;BC1$G0=Q G01�:�=>?0?0,j#aY�.0,/<�=t,j?+13#-'/]n%-?A=>*�D@va=>#�! Q %-'/?0=q,/?F!$:�.0%-!$'/'/]�[�=>,/#aY�GK=>:�1$GK*a=>*zUa!$#-*�=;I$=>#³I$=;G0]rBC!$?0. Q %-'/?A=>?�:;!$#[�=@:�13%-#&.A=>*z5�8t,2Y3,2.0!$' Q 1$G0.0?+4J!$#-*MOq!HG0=q.|D�1�,/# Q %a.�:;! Q .0%aG0=9:Kv-!$#�#a=>'/?�Dqv-,/:Kvn!HG0=9!©I�!$,j'/!H[�'2=~BC1$G�%�?A=@13#r.0va=�9!$#-*a]��13!HGR*M!$#-*13#M.0va=�¯N57�3W�4n[�13!HGK*)U�?01�.ED�1r:Rv-!$#-#a=>'/?F1$Bi?0v�!HBl.\=>#-:�1�*-,/#-Y�!HGK=�?0% Q-Q 1$G0.A=>*)5

c~va=9=>#-:�1�*-,/#aY ?A1$BC.EDF!HG0=¢²$=;= Q ?~! GK%-#�#-,/#aY�:�13%-#&.\1$B).0va=¢#N%-<J[Z=;GF1$B Q %-'/?A=>?�=>!$:Kv³=>#�!H[�'2=>*�=>#-:�1�*a=;G\v-!$??A=;=>#z5~c@va=�#N%-<�[�=;Gq1$B�:�13%-#�.0?9,/?q?A=;[email protected]�D@v-=>#M!n:Rv-!$#a=>'V,/?\Ò�GR?A.~=>#-!H[�'/=>*M!$#-*MD@va=>#M!r%-?A=;GqG0=>?A=;.0?q.0v-!H.:Kv�!$#-#a=>'k59��=>:;!$%�?A=�.0va= :�13%�#�.A=;GK?t!HG0= 13#-'2]�O>¯�h�[_,2.0?9D@,/*a=$U_.0va=;]�D@,/'j'z1©I$=;GA°_1©D !$#-*f.0va= I�!$'/%-=�D@,/'j'�! Q-Q =>!HG#a=;Y3!H.0,2I$= !HBl.A=;G9L$�NU�WH¯3W�:�13%-#&.0?@v�!>I$=�[�=;=>#³!$:;:;%-< %-'/!H.A=>*MD@,2.0va13%-.~!�G0=>?A=;.;5

P ?@?0v-!HBC.~=>#-:�1�*a=;GK?q!HG0=�!$#f1 Q .0,213#-!$')Bl=>!H.0%aGK=$U�.0va= '/,2[-GK!HGK]nG013%a.0,j#a=>?\D@v-,j:Kv³G0=>!$*M.0va=><�!HGK=J#a1$.@'/13!$*a=>*13#�?A.0!HGK.@% Q 5

bd#u1$GK*a=;GJ.A1"'213!$*�.0va=�BC13'/'21�D@,/#aY³G013%-.0,/#a=>?�BC1$GJ%�?A=n,/#u]$13%-G Q GK1$Y$GK!$<�?;US'213!$*�.0v-=�Ò_'2=r­�lTg$¦h�N­�§Z®±nA¬�«�®N5c~v-,j?�Ò_'2=¢,/?\,/#³.0v-=�?A.0!$#-*-!HGK*�bAy�'/,/[-GK!HG0]n*�,2G0=>:�.A1$G0]$5

c~va= !$:�.0,213#-?t1$B�.0v-= ?0v�!HBl.9=>#-:�1�*a=;GK?t!HG0=�:�13<�<�!$#-*a=>* !$#-*".0va= G0=>?0%�'2.0?q!HGK=JG0=>!$*u%�?0,/#aY�.0v-=JBC13'/'21�D@,/#aYG013%a.0,j#a=>?;5ic~va=t!HG0Y3%-<�=>#&.~­�lTg3¦���­3§�.A1�=>!$:Rv³1$B�.0va=tG013%-.0,/#a=>?�? Q =>:;,ÓÒ�=>?�D@v-,/:Rv�?Kv-!HBl.�=>#-:�1�*a=;GF.0va=tBC%�#-:�.0,213#?0va13%�'/*!�¼Z=>:�.;5�c~v-,/?�IH!$'/%a=�?0va13%�'/*�[Z=¢4�BC1$G@*-,2Y3,/.0!$' Q 1$G0.~4�1$G@13#a=¢Bl1$Gq*-,2Y3,2.0!$' Q 1$G0.�OH5 P G0Y3%-<�=>#&.0?\13%a.\1$B.0va=�GR!$#aY$=�4�.A1MO�v�!>I$=J#-1�%-?A=;B¥%-'Z=�¼Z=>:�.;5

�a¦a«��r­�lHk��_¬�­�i�­�lTg$¦h�N­�§1Æ�« l�r�­�l�g3¦h�N­�§�Ê(+#�!H[�'2=>?q.0va=�Y3,2I$=>#"=>#-:�1N*-=;G9.A1³?A.0!HGK.t:�13%�#�.0,/#-Y Q %�'/?A=>?@!$#�*fGK=>?A=;.0?¢,2.0?9:�13%-#�.A=;G¢.A1 �;=;G01a5J��]*a=;B¥!$%-'2.r=>#-:�1N*-=;GK?r?0.0!HG0.³,/#¡.0va= *-,/?K!H[�'2=>*¡?A.0!H.A=u!$#-*{< %-?A.r[Z=f=>#-!H[�'2=>*ø[�=;Bl1$GK=M.0va=;]ö?0.0!HG0.:�13%-#&.0,/#aYa5

�a¦a«�����«N®�k���¬&­zi&­�l�g3¦���­�§£Æ;«$ler�­�lTg$¦h��­3§TÊ8t,/?0!H[�'/=>?�.0va=³Y3,2I$=>#�=>#-:�1�*a=;Gn!$#-* Q G0=;I$=>#�.0?n,2.�BlG013< :�13%�#�.0,/#-Ya5�(�!$:Kv¡?Kv-!HBl.�=>#�:�1N*a=;G�%�?A=>?Q G01�:�=>?0?0,j#aY¢.0,/<�=~=;I$=;GK]�.0,/<�=@,/.�G0=>:�=>,2I$=>?�! Q %�'/?A=\D@v-,j'2=F=>#-!H[�'2=>*zUN?A1�.0va=;]�?Kva13%-'/*�[�=@*-,j?0!H[�'2=>*D@va=>#]$13%f#a1�'213#aY$=;Gq#a=;=>*³.0va=�=>#�:�1N*a=;G©Ôo?~*-!H.0!�5

Page 55: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

B�� bd#�.A=;GK!$:�.0,/I$=�y329?A=;G>Ôo?�4¢%-,/*a=

�a¦a«���§a­-®$­�rei&­�lTg3¦���­3§1Æ;«$ler�­�lTg$¦h��­3§TÊw~=>?0=;.0?J.0v-=r:�13%-#&.A=;G�1$B\.0va=rY3,/I$=>#�=>#-:�1�*a=;G .A1Ù�;=;G01a5"`a1$G�!$#�=>#�!H[�'2=>*�=>#�:�1N*a=;G©US,/.J,/?J<�1$G0==qïr:;,2=>#&.~.A1�GK=>?A=;.@,2.0?\IH!$'/%a=¢.0v�!$#³.A1n%-?A=�­�l|k��_¬�­�i&­�lTg$¦h��­3§1Æ}Ê9.A1n:;'/=>!HG@,2.;5

« l�rr§�­zk��ei&­�lTg$¦h��­3§1Æ�« ler�­�lTg$¦h�N­�§TÊw~=;.0%-GK#-? .0va=#&%-<J[�=;G�1$B Q %-'/?0=>?J:�13%-#&.A=>*�[N]�.0va=Y3,2I$=>#ß=>#-:�1�*a=;G�?0,/#-:�=,2. D�!$?�=>#�!H[�'2=>*ß1$G?0,/#�:�=¢.0va=�'/!$?A.~GK=>?A=;.;U-D@v-,j:Kva=;I$=;G~DF!$?~<�1$GK=�G0=>:�=>#&.;5

K¡K�JA´ æ3SFÌ N Ë3ª�Ì Ì Y+U�[�·

xN]�?A.A=>< :�1�*a=\²$=;= Q ?�.AGR!$:0²�1$B_.0,j<�= Q !$?0?0!HY$=@,j# <n,/'/'/,/?0=>:�13#-*-?;5�gV,2[-GK!HGK]�BC%�#-:�.0,213#-?S!HG0= Q GK1©I�,/*a=>*�.A1�!$'/'21�D*a=>!$'/,j#aY�D@,2.0v.0,/<�=�,j#³<�,/'/'/,j?A=>:�13#-*-?t�¥%-?0,/#-Y�'213#aY�,/#&.A=;Y$=;GK?R�RU-1$Gq?A=>:�13#-*-?��¥%�?0,/#aY�°�13!H.0,j#aY Q 13,/#�.\#N%-<J[Z=;GR?R�R5

�a¦a«���§a­-®$­�rei-® �Z®�r�­�j�i'r_«�jZ­±Æ$Êw~=>?0=;.0?~.0va=�:�13%�#�.~1$BS?A]�?A.A=><î.0,j<�=¢.A1��;=;G01n<n,/'/'/,/?0=>:�13#-*-?;5

¬&¦�lH¢�j�®H­Hg3¦�lH��®üÆ$Êw~=;.0%-GK#-?J.0va=³:�13%-#�.�1$B@?0]N?A.A=>< .0,j<�=�,j# <�,j'/'/,/?A=>:�13#�*-?;5Mc~,j<�=r:�13%-#&.�,/?JG0=>?A=;.�[&] v-!HGK*aDF!HG0=G0=>?A=;.��¥,k5p=$52U Q G0=>?0?0,/#-Y�G0=>?A=;. ?AD@,2.0:Rve13#e[�13!HGK*Z�1$GM.0v-=�B¥%-#-:�.0,213#à§�­�®H­�rHia®��_®�ra­ jTi�r_«}j_­QÆ}Ê&5j�®H­Hg$¦�lH��®üÆ}Ê�,/?\,/< Q '/=><�=>#�.A=>*³!$?@!ry Q GK,j<�,2.0,2I$=��¥#a1$.@!$?q!�'/,2[-GR!HG0]�B¥%-#-:�.0,213#_�R5

¤a¬�¦zk'rf®H­Hg3¦�lH��®üÆ$Êw~=;.0%-GK#-?9.0va=�:�13%-#&.¢1$B�?A]�?A.A=>< .0,/<�=�,/#"?A=>:�13#-*�?;U)!$?�!r°�13!H.0,/#aY Q 13,/#&.9#N%-<J[�=;G>5�w~=>?A13'j%a.0,213#,/?F13#a=J<�,/'/'/,j?A=>:�13#-*z5

�a¦a«���®3¬�­N­�{/ÆK¤�¬&¦zk'r�®$­Hg�Ês�!$,2.0?JBl1$G !$#�!$<�13%�#�.J1$B�.0,j<�=�=}ðN%-!$'�.A1f1$GJ?0'/,/Y3v�.0'2]fY$G0=>!H.A=;G�.0v-!$#¡®$­Hg?A=>:�13#�*-?;5"®H­Hg,j?�!°�13!H.0,/#-Y Q 13,j#�.~#N%-<J[Z=;G©5(iÊa!$< Q '/=$^

�eþ ¨Hka«�re¤�¦3§ pwn�K�®$­eg3¦�le�_® þ��®3¬�­N­�{oÆ p�n�KHÊ�Å

�a¦a«���j�®$¬&­N­�{oÆR¬&¦�le¢?j�®$­egeÊs�!$,2.0?�BC1$G�!$#!$<�13%-#&.+1$B�.0,/<�=@=}ðN%-!$'_.A1J1$G�Y$G0=>!H.A=;G\.0v-!$#�j�®H­Hg�<�,/'/'/,j?A=>:�13#-*-?;5Tj)®$­Hg¢,j?�!J'213#aY,/#&.A=;Y$=;G>5(iÊa!$< Q '/=$^

�eþ ¨Hka«�re¤�¦3§ pwn�K�®$­eg3¦�le�_® þ��j�®$¬&­&­�{oÆ$p*K��z�PO�Ê�Å

Page 56: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

yFv-! Q .A=;G�O$OH^+c~va=¢b0y{gV,2[-GK!HG0]�`S,/'2= B�B

K¡K�J�~ 槪�U�N®é�\�U�¯±P�S½ª�U�·

c\D�1�?0,/< Q '2=9:�13<n<�!$#-*-?~!HGK= Q G01�IN,/*-=>*Bl1$G Q G01N*�%-:;,/#aY .A13#a=>?~13#�.0va=�?A.0!$#-*�!HGK*³[�=;= Q =;G>5

�a¦a«�����­&­�{oÆ}ÊC�GK1N*-%�:�=>?�!�.A13#-=n1$B¡BH4$4��@=;G0.©�rBl1$G�! Q =;GK,/1N* 1$B~4�57Lf?A=>:�13#-*-?>5w@=;.0%aGK#-?�D@va=>#�.0va=n.A13#a=�,/?Ò_#-,j?0va=>*z5

�a¦a«���ra¦�l�­QÆ0¤a¬�¦zk�rn¤�§a­h°�u�­�lTg��/É+¤a¬�¦zk�r¬&­�lH¢�r�ªüÊC�GK1N*-%�:�=>?�!J.A13#a=t!H. Q ,/.0:Kv�¤�§a­�°'u�­�lTg����q=;G0.©�9Bl1$G~¬�­�lH¢�r�ªn?A=>:�13#-*-?;5�w@=;.0%aGK#-?�D@va=>#n.0va=9.A13#a=,/?�Ò_#�,/?0va=>*z5i��1$.0v ¤&§a­�°'u-­�lTg��n!$#�*f¬�­�lH¢�r�ª�!HG0=¢°_13!H.0?;5bd#�!$*-*-,/.0,213# .A1M.0va=�?0,/< Q '2=�.A13#a=r:�13<�<n!$#-*-?;U£.0va=�BC13'/'21�D@,/#aY³B¥%-#-:�.0,213#�?�:;!$#�[�=�%-?0=>*�!$?A]�#�h:Kv-G013#a13%-?0'/]n.A1n:�13#&.AG013').0v-=�[�=;= Q =;G~*-GK,2I$=;G>5

�a¦a«���®$­'rHi��-­N­�{�­�§ei�{Z«�rRg©ªoÆ0¤a¬&¦hk�r ¤&§a­�°'u-­�lTg��TÊxN=;.0?J.0va=�[Z=;= Q =;GJ.A13#a=r.A1"[�=r¤&§�­h°'u-­�l�g��,�¡�$5"c~va=r?K%a[�?A=}ðN%a=>#&.�BC%�#-:�.0,213#�,j?�.0va=>#ß%-?A=>*�.A1.0%aGK#.0v-=�[�=;= Q =;G\13#)5

�a¦a«�����­&­�{�­3§Hi�¦�loÆ}Êc£%aGK#-? 13#�.0va=³[�=;= Q =;G�!H.�'/!$?A.�BlGK=}ð&%a=>#�:�] ?A=>'2=>:�.A=>*¡[&] .0va=Bl1$GK<�=;G�BC%-#�:�.0,213#z5�c~v-=�[�=;= Q =;GG0=><�!$,j#-?F13#�%-#&.0,/'�.0va=���­N­�{�­3§Hi&¦�¤N¤�BC%�#-:�.0,213#³,/?\=�Ê�=>:;%a.A=>*z5

�a¦a«�����­&­�{�­3§Hi�¦&¤N¤QÆ$Êc£%aGK#-?F1H¼u.0va=¢[�=;= Q =;G>5

K¡K�J�� ­ N/U�\�SLU�V³Y+U�[»o S½Y�V�U�ª¡·|PTS½¯£·_é�\�U�¯±P�S½ª�U�·

c~va=>?0=9B¥%-#-:�.0,/13#-?\!HG0=�#a1$.@'/13!$*a=>*³!$%a.A13<�!H.0,/:;!$'j'2]$U-[�%a.F.0va=;]!HG0=�!©I�!$,j'/!H[�'2=tBC1$G~]$13%�.A1�%-?0=�,2B�]$13%³Dq,/?0vz5c~va=;]�:;%-G0G0=>#&.0'2]³D�1$GK²�13#-'2]³13#".0va=�¯N57�3W�4[�13!HGK*zUZ[�%a.q:�13%�'/* Q G01$[�!H[�'2][�= Q 1$G0.A=>*f.A1.0va=��q!$#-*-]M��13!HGK*D@,2.0v-13%a.V.A1N1�< %-:Kv�.AG013%-[�'2=$5Sc~va=;] Q GK1©I�,/*a=F!¢?A.0!$#-*-!HGK*�,#�;=>*�%-?A=;Gi,/#&.A=;G0BC!$:�=\BC1$G Q G013< Q .0,/#aYt%-?A=;GK?£BC1$G�,/# Q %a.%-?0,j#aY�.0va=�¼�ú|àzàh�'ëu!$#-*;�'ë�Ohëe¼'ê [�%-.A.A13#-?J!$#�*�.0va=rBlGK1$[ ²�#a1$[)5Ùf�13%ß<n!>]�D@,j?0v�.A1 %-?A=�.0v-,/?J'/,2[-GK!HGK]fBC1$G*a=;[�%-Y$Y3,/#aY�.0va=t?A.0!H.A=91$Bz]$13%aGFG01$[�1$.+D@v�,/'2=~!>DF!>]rBlGK13< .0va=q.A=;GK<�,/#�!$'-1$G�Bl1$GF:Kv-!$#-Y3,/#aY�.0v-G0=>?0va13'/*�?i1$G�Y3!$,j#-?13#³.0va=�°�]$5

�����,k2����wh�W'�vd�ò�

g)13!$*Òj_­�lhu+nFgJ.A1�[�=�!H[�'2=¢.A1r%-?A=¢.0va=>?A=�BC%-#�:�.0,213#-?;5

Page 57: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

B$¯ bd#�.A=;GK!$:�.0,/I$=�y329?A=;G>Ôo?�4¢%-,/*a=

« l�rf®H­�¬�­Hg�rei-® rN§_«$lH¢QÆ�g�ªHk�§�g©ª�¦a«zg3­-® �,�0�&�1ɹ«$ler�l�Êbd#�.A=;GK!$:�.0,/I$=>'2]�?A=>'2=>:�.0?�!"?A.AGK,/#-Y�BlGK13< !$#ß!HG0GK!©]�1$B@?A.AGK,j#aY �C.ED�1HhE*-,/<�=>#-?0,213#-!$'�!HG0GK!©]�1$B~:Kv�!HGAh!$:�.A=;GK?R��1$B9'/=>#aY$.0v¡#¡!$#-*�GK=;.0%aGK#-?�!$#ø,/#�.A=;Y$=;GnD@va=>#�!u[�%-.A.A13#¡,/? Q G0=>?K?A=>*z5�búBq.0va=³[_%a.A.A13#Q G0=>?K?A=>*�DF!$?5¼'úHàzàz��ëZU3,2.�G0=;.0%-GK#-?i.0va=q,/#-*a=�Ê�,/#�.A1�.0va=q!HG0GR!>]�1$Bz.0va=@?A=>'/=>:�.A=>*n?A.AGK,j#aYaU�1$.0va=;GKD@,/?A=,2.\G0=;.0%-GK#-?�hKOH5+(�Ê�!$< Q '2=¢1$Bi%-?A=$^

g�ª|k3§�k2�smI�2�)p�]I�zÄ�Á�Ç�Þ�l|kN¬&¦h¢®Ýa¦3§zraÇRÉ�ÇLâZ«�¢-«�r�k�¬®Ý�¦�§hr Ç�É�Çôó�uZ«�rwÇ}£ū ler {-¦�§hroɹ«$lH�N­hvzÄ�®$­N¬&­Hg�rHia®�rN§�« l�¢£ÆFk1ÉymRÊ�Å«$¤£Æ�« le��­hv�¨z�|p¢����«$lH�N­hve¦h�|Ê

{�¦3§zrzÄ_®$­N¬&­eg�rHi�« l�rHi'��k�¬�u�­QÆFk2�d« le��­'v��/É©�£É½�hÃHÊ�Å« l�rf®H­�¬�­Hg�reia«$lerHi��ekN¬�u�­±Æ�g©ª|k�§r® �,�/ɹ«$ler�j)«$lRi��ek�¬Qɹ«$ler�j�k�vei'��k�¬Hʤa¬�¦zk'rf®H­�¬&­eg�rei�¤a¬�¦zk'rHi'��k�¬�u�­QÆqg�ªHk�§n® �&�1ÉA¤�¬&¦zk'r�j)« l|i'��k�¬£Éd¤a¬�¦zk�r?jRkhv�i'�ekN¬|Ê

bd#�.A=;GK!$:�.0,/I$=>'2]ö?A=>'2=>:�.0?!$#-*øG0=;.0%aGR#-?n!ß#&%�<�[�=;Gn[�=;.|D�=;=>#�j)«$lRi��ek�¬�!$#-*;j�k�vei��ek�¬�Dqv-,/:Kvø,/??A=>'2=>:�.A=>*�[&]¢!$*��0%-?A.0,j#aYF.0va=�BCG01$[�²�#a1$[J%-#&.0,/'H.0va=�! Q-Q G01 Q GR,/!H.A=iI�!$'j%a=�,/?)*-,j? Q '/!©]$=>*t.0va=># Q GK=>?0?0,/#aY!�[_%a.A.A13#z5³búB5ëH�h¼�ÞhÝhë"DF!$? Q GK=>?0?A=>*zU£G0=;.0%aGK#�?thKOf�C1$G hKOH5o4���G0=;Y3!HGK*-'2=>?K?�1$B\.0va=rI�!$'/%-=n:Kva13?0=>#z5X .0va=;GKD@,/?A=qG0=;.0%aGK#-?�.0va=¢:Rva13?A=>#IH!$'/%a=$5�w~=><�=><�[�=;G\.0v-!H.F.0va=tBCG01$[²N#a1$[13#-'/]�G0=;.0%aGK#�?�13#-=91$B��B�B�IH!$'/%a=>?>U-?A1�,2B£.0va=¢GK!$#aY$=�,j?FY$G0=>!H.A=;Gq.0v�!$#³.0v-!H.@#a1$.q!$'/'�I�!$'j%a=>?\D@,/'j'�[�= Q 13?0?0,2[_'2=9:Rva13,/:�=>?;5

« l�rÙg©ª�¦-®$­�l|i��huerzr�¦�l/Æ$ÊyFva=>:K²N?t.0v-= %-?0=;G9[_%a.A.A13#-?9!$#-*"G0=;.0%aGK#-?¢y!� X�X x�( ��,2B/¼�ú|àzàh�'ë�,/? Q G0=>?0?A=>*)U�(Fx-y P C+( ��,/BëH��¼hÞ�Ýzë³,/? Q G0=>?0?A=>*)UZ!$#-* }9(�bdc+�9(+w ��,/B�#a=>,2.0va=;G9[�%a.A.A13#",/? Q G0=>?0?A=>*)5qbúB�[�1$.0vM[_%a.A.A13#-?t!HG0=Q G0=>?K?A=>*zU|¼'úHàzàh�'ënv-!$? Q GK,21$GK,/.E]$5

« l�rn¨ek-«�rHi��huerhra¦�l/Æ;«$ler?jZ¦���­|Ês�!$,2.0? BC1$G =>,/.0va=;G %�?A=;GJ[_%a.A.A13#�.A1"=�Ê�=>:;%a.A=.0va=�!$:�.0,/13#ß! Q�Q G01 Q GK,j!H.A=n.A1�j_¦h�N­".0v-=>#�G0=;.0%-GK#-?D@v-,j:Kvß[�%a.A.A13#�DF!$? Q GK=>?0?A=>*z5ßc~va=³:Kva13,j:�=>?�BC1$G?j_¦h�N­�!HG0=$^�8 X s{} �h��DF!$,2.�%-#&.0,/'+=>,/.0va=;G[�%a.A.A13#M,/? Q G0=>?K?A=>*�~e2�C �^��D�!$,2.~%�#�.0,/'z#-1�[�%a.A.A13#-?~!HGK= Q G0=>?0?0=>*�~_yof�yFg�( ���rDF!$,2.@%-#&.0,/'z![�%a.A.A13#M,/?\*a= Q G0=>?K?A=>*�!$#-*³.0v-=>#�!$'/'z*a= Q GK=>?0?A=>*[�%a.A.A13#�?~!HG0=�G0=>'/=>!$?A=>*³[�=;Bl1$GK=¢G0=;.0%aGK#-,j#aYa5

�����,k2�,+C3F$&��[2'�%9?P"E$&� �ò�

g)13!$*�jZ­�lhu+n½g�!$#-* ��«�kh¢�l�¦�® r_«hg£nFg�.A1 [�=�!H[�'2=�.A1e%�?A=�.0va=>?A=�B¥%-#-:�.0,213#�?;5 f�13% :;!$# =>!$?0,/'2]�:�1 Q ]��«�kh¢�l�¦�® r_«hg£nFg�!$#-*�<�1�*-,2BC]�.0va=cg3¦�l�rN§�¦�¬zi�{|k�l�­�¬JBC%-#�:�.0,213#.A1n:;!$'/'z]$13%-G~1©D@#MG013%a.0,/#-=>?;5

�a¦a«���g3¦�lerN§�¦�¬hi�{|k�l�­N¬±Æ$Ê49=>#a=;GR!$' Q %-G Q 13?A=�:�13#�.AGK13' Q !$#a=>'~.A1�'2=;.n]$13%�I�,2=;D ,j# Q %a.0?;U�BCG01$[ø13%-. Q %a.0?;U\1$G?A=;. P .A1ß8.0vaG0=>?Kva13'/*-?;5£C+G0=>?0?0,/#-Y¾ëH�h¼�ÞhÝhënBlG013<î.0va=�<�!$,/#³<�=>#N%³1$G@?0=>'2=>:�.0,/#aY¤D ñ %�,2.½G =�Ê�,2.0?~.0va=�:�13#�.AGK13'Q !$#a=>'�5

Page 58: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

yFv-! Q .A=;G�O$OH^+c~va=¢b0y{gV,2[-GK!HG0]�`S,/'2= B3W

« l�rÒ��«3­$¨|ihk'�a­3§ekh¢N­�i�{�¦�§hr1Æ�« ler�{�¦3§zroÉR« l�rM®�k�j�{_¬&­-®�Ê8t,/? Q 'j!>]�[email protected]=�!$#-!$'21$Y�G0=>!$*-,j#aYn1$B�.0v-=JY3,2I$=># Q 1$G0.9%-#�.0,j'�!r[�%a.A.A13# ,/? Q G0=>?0?A=>*)5@búBi.0va=J[_%a.A.A13#,/?¾¼�ú|àhàz�'ë_U�,/.�.0va=>#ß?0!$< Q '2=>?�.0va=nG0=>!$*�,/#aYM!H.J.0va=nY3,2I$=># Q 1$G0.;UV!©I$=;GK!HY$=>?®�k je{�¬&­�®rG0=>!$*�,/#aY3?.A1$Y$=;.0va=;G>UZ.0va=># Q GK,/#&.0?~!$#-*³GK=;.0%aGK#-?\.0v-=J!>I$=;GR!HY$= GK=>?0%-'2.;5�b|BS.0va=�[_%a.A.A13# Q %�?0va=>*³DF!$?+ëe¼�ÞhÝzë_U,2.\G0=;.0%-GK#-?�hKOH5

�a¦a«����_«$­3¨|i�« lh{zuer_®üÆ}Ê49=>#a=;GR!$' Q %aG Q 13?A=",/# Q %a.�?A.0!H.0%-?I�,2=;D�=;G�%-?0,/#aYß.0va=u?A.0!$#-*�!HGK*{<�=>#&%�,/#aYßG013%a.0,/#a=>?r.A1¡?0va1�D*-,2Y3,/.0!$'-,/# Q %-.0?;U3!$#-!$'21$Y�,j# Q %a.0?;U$BCG01$[r²N#a1$[�U�*-, Q ?ADq,2.0:Kva=>?>U&!$#-*r<�1$.A1$G+BC1$GK:�=q,j# Q %a.0?;5±C�G0=>?K?0,/#aYëH��¼hÞ�Ýzër!H.q!$#�]�.0,/<�=�=�Êa,2.0?\.0v-=¢IN,2=;D�=;G>5

�a¦a«��n¤&§�¦��Ri�¦�u�r�{zu�rZ®�Æ$Ê49=>#a=;GR!$' Q %aG Q 13?A=�13%a. Q %-.£BCG01$[-[�=;G>5±2q?0=>?i.0va=~?A.0!$#-*�!HGK*�<�=>#N%-,/#aY9G013%a.0,/#-=>?V.A1J'2=;.S]$13%�:�13#�.AGK13'.0va=\<�1$.A1$GK?>U&'2=>* 13%a. Q %-.0?;U3,2GS13%a. Q %a.;U3!$#�*�.0va=\?A=;G0I$1a51C�GK=>?0?0,/#aY�ëH��¼hÞ�Ýzë¢BCG013<�.0va=\<�!$,/#�<�=>#N%1$G@?A=>'/=>:�.0,/#aY D ñ %�,2.½G�=�Ê�,/.0?\.0va=¢BCG01$[-[�=;G>5

Page 59: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

B$T bd#�.A=;GK!$:�.0,/I$=�y329?A=;G>Ôo?�4¢%-,/*a=

Page 60: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

yFv-! Q .A=;G�O>�N^+ "%-'2.0,ÓhEc£!$?A²�,/#aY B$6

��6 õ ��ù��F�÷ö±øÀ>�º!öu�H�;:

K!I%JFK ²iÇ�N1Z<Ç�SFN£¶

X #a=�1$B�.0va=�<�13?A. Q 1©D�=;G0B¥%-'£Bl=>!H.0%-G0=>?¢1$B�bAy�,/?¢,/.0?¢<J%-'/.0,Óh�.0!$?A²�,/#aY�BC!$:;,/'j,2.E]$5�C�G01�:�=>?0?A=>?�:;!$#u[�=�:�GK=>!H.A=>*!$#-*�*-=>?A.AG01©]$=>*f*a]�#-!$<�,/:;!$'/'/]n*-%aGK,j#aYJGR%-#�h�.0,/<�=$5

P #�]�y�B¥%-#-:�.0,213#�:;!$#�[Z=�? Q !>D@#-=>*�!$?@!�?0= Q !HGK!H.A=�.0!$?0²_5� f%-'/.0, Q '2=9.0!$?A²�?~GK%-#�#-,/#aY .0va=�?0!$<�=�:�1N*-=$U-[�%a.D@,2.0v.0v-=>,2G\1©D@#f'21�:;!$'zI�!HGR,/!H[�'2=>?;Ua:;!$#³[�=�:�G0=>!H.A=>*)5

C�GK1N:�=>?0?0=>?�:�13<�< %-#-,/:;!H.A=�.0vaG013%-Y3v�Y3'21$[�!$'+I�!HGR,/!H[�'2=>?;^J13#a= Q G01N:�=>?K?J:;!$#ß?A=;.J!MY3'21$[�!$'+.A1"?A13<�=nIH!$'/%a=$U!$#-*�!$#-1$.0va=;G Q G01�:�=>?0?~:;!$#MG0=>!$*³.0va=�I�!$'/%-=¢1$BV.0v-!H.@Y3'21$[�!$'k5

(+!$:Rvn.0,j<�=@! Q GK1N:�=>?0?+GK%-#-?>U�,2.�=�Ê�=>:;%a.A=>?�Bl1$G�!�:�=;G0.0!$,j#n#N%-<�[�=;G�1$B�ækék·s��è;U&*a=�ÒZ#a=>*n,/#n<�,/'/'/,j?A=>:�13#-*-?;5Vc~v-,/?IH!$'/%a=J,j?@*a=;.A=;GK<n,/#a=>*³BC1$Gq=>!$:Rv Q G01�:�=>?0?@!H.9.0va=J.0,/<�=J,/.q,/?q:�G0=>!H.A=>*z5qc@va=J*a=;B¥!$%-'2.q#&%-<J[�=;G@1$Bi.0,/:K²N?9,/?~Ò�I$=�~.0va=;G0=;BC1$G0=$U-!�*a=;B¥!$%-'2. Q G01�:�=>?0?�D@,/'j'-GK%-#�BC1$G¡B <�,/'/'/,j?A=>:�13#-*-?�%-#�.0,j'_,2.0?�Dd.0%-GK#HGJ=>#-*-?\!$#-*�.0va=¢#a=�Ê�. Q G01�:�=>?0?\,/?GK%-#)5 P '/' Q G01N:�=>?K?A=>?t!HG0=�²$= Q .q.AGR!$:0²"1$B+,/#"! µ�ä�¸�·¹»¹è0è�æ�ïaó$òC»h~Z=>!$:Rvu.0,/<�=J.0vaG013%aY3v".0va= .0!H[�'2=$U�=>!$:Rv Q G01�:�=>?0?GK%-#�?F13#-:�=r�CBC1$G@!$#M!$<�13%�#�.\1$BS.0,/<�=¢=}ðN%-!$'z.A1r,2.0?~#N%-<�[�=;G\1$B£.0,/:0²�?R�R5

(+!$:Rv Q G01�:�=>?0?�v�!$?�,/.0?+1�D@# µz乸©ð3äRïHñÌè>æ�ï&·s��ÿ�c~v-=q?A.0!$:K²r,/?�%-?A=>*r.A1 Q !$?0?F!HG0Y3%-<�=>#&.0?�Bl1$G�BC%�#-:�.0,213#�:;!$'/'/?;U?A.A1$G0=q'21N:;!$'-I�!HGK,j!H[�'2=>?;U3!$#-*n?A.A1$G0=~G0=;.0%-GK#�!$*-*aG0=>?K?A=>?iBCG013< B¥%-#-:�.0,213#�:;!$'/'j?;5ic~va=~?0,#�;=\1$BZ.0v-,/?+?A.0!$:0²�,/?i*-=�Ò_#a=>*!H.~.0va=�.0,/<�=�! Q GK1N:�=>?0?\,j?~:�G0=>!H.A=>*z5�c~va=¢*a=;B¥!$%-'2.~?0,#�;=¢1$Bi! Q G01N:�=>?K?\?A.0!$:0²�,/?q��B$¯�[&]N.A=>?;5

C�GK1N:�=>?0?0=>?�.0v-!H. <�!H²$=r=�Ê�.A=>#-?0,/I$=r%-?A=n1$B\G0=>:;%aGK?0,/13#u1$GJ%-?0=n'/!HG0Y$=�'21N:;!$'�!HG0GK!©]N?JD@,/'/' Q G01$[�!H[�'2]fG0=}ðN%-,2G0=! ?A.0!$:0²ß?0,#�;='/!HG0Y$=;G�.0v-!$#ß.0va=*a=;B¥!$%-'2.;5 (+!$:Kv�B¥%-#-:�.0,/13# :;!$'/'�G0=}ðN%-,2G0=>?J.ED�1u?A.0!$:0²ß[N]&.A=>?³�CBC1$G�.0va=rGK=;.0%aGK#!$*-*aGK=>?0?R� Q '/%-?q.0va=�#&%�<�[�=;Gt1$B�!HG0Y3%�<�=>#�.t[N]&.A=>?}~V,2Bi.0va=�B¥%-#-:�.0,/13#M.0v-!H.�,j?9:;!$'j'2=>* :�G0=>!H.A=>?�'21�:;!$'£I�!HGK,j!H[�'2=>?;U.0va=>#".0va=;]"!$'/?A1%-?A=�% Q ?A.0!$:0² ? Q !$:�=$5�bd#"!$*-*-,2.0,213#)Uzyà=�Ê Q G0=>?0?0,/13#-?q:�GK=>!H.A=�,/#�.A=;GR<�=>*-,/!H.A=�IH!$'/%a=>?q.0v-!H.�!HG0=?A.A1$G0=>*�13#�.0va=�?A.0!$:K²_5

bú.F,j?�% Q .A1�.0va= Q G01$Y$GK!$<�<�=;GF.A1�*a=;.A=;GR<�,/#a=t,2B�! Q !HG0.0,j:;%-'/!HG Q G01�:�=>?0?�G0=}ðN%-,2G0=>?F!�?A.0!$:0²³?0, �;=9'/!HGKY$=;G\.0v-!$#.0va= *a=;BC!$%�'2.;5 P�Q G01�:�=>?0?9<�!>]�!$'/?01n[�=J:�G0=>!H.A=>*"D@,/.0v�!r?0.0!$:0²M?0, �;=Jè0ñnïHòjòl»RäJ.0v�!$#M.0va= *a=;B¥!$%-'2.;U_,j#�1$GK*a=;Gq.A1?0!©I$=J?A.0!$:K²�<�=><�1$G0]? Q !$:�=$U�,/B£,2.\,/?~²N#a1�D@#³[email protected]= Q G01�:�=>?0?\D@,j'/'�#a1$.~G0=}ðN%-,2G0=t.0va=¢B¥%-'/'�*a=;B¥!$%-'2.~!$<�13%-#�.;5

s{va=>#�! Q G01�:�=>?0?�,j?�:�G0=>!H.A=>*zUS,2.�,/?¢!$?0?K,2Y3#a=>*�!³%-#�, ð&%-=¢µz乸�·¹»¹èKè�饺�»¹åZæké#0z·Rï�ækél¸�åuå�ã$ñóa»Rä�1$G9µzékº�5�c~v-,/?#N%-<�[�=;G~:;!$#M[Z=¢%-?0=>*³.A1�²�,/'/'�! Q G01�:�=>?0?;5

Page 61: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

¯H4 bd#�.A=;GK!$:�.0,/I$=�y329?A=;G>Ôo?�4¢%-,/*a=

K!I%JyI Ë3Z�N1Y5PTSLU�V�`cN1¶ �ÛZ�ª�¯£N1·�·RN1·

c~va=FB¥%-#-:�.0,213# .A1�:�GK=>!H.A=@!¢#a=;D Q G01�:�=>?0?�,j?�®�rek3§zrei�{a§�¦Hg$­�®N®&5 ®�r�k�§hrHi�{�§a¦eg3­�®&®F.0!H²$=>?�13#-=~<�!$#-*-!H.A1$G0]!HG0Y3%-<�=>#�.�øø.0v-=rB¥%-#-:�.0,213#ß:;!$'/'�.A1f[�=?A.0!HG0.A=>*�!$?�! Q G01N:�=>?K?;5fc~v-=;G0=�!HGK=r.|D�1 1 Q .0,213#�!$'�!HG0Y3%�<�=>#�.0?>^�.0va=Q G01�:�=>?0?;Ôo?q#&%�<�[�=;G~1$Bi.0,/:K²N?9!$#-*f?A.0!$:0²M?K,#�;=$5��Cb|Bi13#-'/]r13#a=J1 Q .0,213#-!$'V!HG0Y3%-<�=>#&.q,j?~Y3,2I$=>#zUZ,2.@,/?@!$?0?0%-<�=>*M.A1[�=¢.0va=¢.0,/:K²N?q#&%-<J[�=;G>Ua!$#-*³.0va=J*a=;BC!$%�'2.\?A.0!$:0²�?0, �;=�,/?~%-?A=>*)5��

®�r�k�§hrHi�{�§a¦eg3­�®&®¢v-!$?\.0v-=�Bl13'j'21©D@,j#aY�?A]N#&.0!�Ê�^

« l�r ®�r�k�§zrei�{�§a¦Hg$­�®&®üÆK¤�uzl�g�r_«$¦�l|�eg�k�¬N¬wÆHnhnznFÊ�É!�xêùß�¼VíH�V�1ÉE�s�'êzÞ�¼*í|�z�!ß�t'ëL�|Ê

®�r�k�§hrHi�{�§a¦eg3­�®&®¢G0=;.0%-GK#-?\!$#�,/#&.A=;Y$=;G>U-Dqv-,/:Kv³,j?\.0va= Q G01�:�=>?0?\bd8 !$?0?0,/Y3#a=>*.A1�.0va=�#-=;D Q G01�:�=>?0?;5

c~va=�B¥%-#-:�.0,213#�:;!$'/'\<�!©] [�=!$#�]ßIH!$'/,/*�:;!$'/'�1$Bq.0v-=�B¥%-#-:�.0,/13#ß%�?A=>*z5 c@va=rBC13'/'21�D@,/#aY :�1�*a=�?0va1�D@?�.0va=B¥%-#-:�.0,213#�j�ka« l:�GK=>!H.0,/#aYn! Q G01N:�=>?K?;^

�a¦a«���g©ª�­Hg �|ia®$­�l�®$¦3§1Æ;«$ler;lüÊÁ¨&ªZ«�¬�­«Æ phÊ

{a§�« lerN¤£Æ�Ç$�&­�lz®H¦�§ÛÈz��«�®®Èh�eû�lQÇ�ÉÒl!ÉÙ��«�¢�«�rek�¬wÆyl�ÊzÊ�ÅÂ�a¦a«��®jRk-« l/Æ$ÊÁ®�r�k�§hrHi�{�§a¦eg3­�®&®üÆqg�ª�­eg��Hi-®$­�lz®H¦�§QÆ)�|ÊhÊüÅ

Â

}q1$GK<�!$'/'2]JD@va=>#�! y�B¥%-#-:�.0,213#-?S=>#�*-?;U�,2.+=�Ê�,2.0?�D@,2.0v�!¢GK=;.0%aGK#�IH!$'/%a=\1$G�.0va=�DdI$13,/*HG�I�!$'/%-=$5£búB�!¢BC%�#-:�.0,213#,/#&I$1$²$=>* !$?q! Q G01�:�=>?0?~=>#�*-?;U_,/.ÒDA*-,2=>?>UGr'2=;.A.0,j#aYr,2.0?@G0=;.0%aGK#MI�!$'j%a=��¥,2BS.0va=;GK=JDF!$?@13#-=��~*-,j?0! Q-Q =>!HG>5��¥c~v-,/?q,/?1$²H!>]$UZ[Z=>:;!$%�?A= Q G01�:�=>?0?A=>?~:�13<n<J%-#�,/:;!H.A=�G0=>?K%-'2.0?F[N]�?A.A1$GR,/#aY�.0va=>< ,/#Y3'21$[�!$'/?>U-#a1$.~[N]rG0=;.0%-GK#-,/#aY�.0va=>< !$?G0=;.0%aGR#MIH!$'/%a=>?;5��Ù�q=>#-:�=�,/#M.0v-= !H[�1©I$=�=�Êa!$< Q '2=$U�.0va= g�ª-­Hg �|i-®H­�l�®$¦�§rB¥%-#-:�.0,213#f,/?9*a=�Ò_#a=>*"!$?t!$#",j#�Ò_#-,2.A='21N1 Q U-?A1�[email protected]�GK%-#BC1$G0=;I$=;G �¥%�#�.0,/'�.0v-=�[�13!HGK*³,/?FG0=>?A=;.@1$Gq!¾�Z«3¬N¬hi�{a§�¦Hg$­�®N®�,/?\=�Ê�=>:;%a.A=>*_�R5

y�G0=>!H.0,j#aY�! Q GK1N:�=>?0?�D@,2.0v�!M#a13#�hE*a=;B¥!$%-'2.�#N%-<J[�=;G�1$BF.0,/:0²�?�1$G !�#a13#�hE*-=;BC!$%-'/.�?A.0!$:0²�?K,#�;=n,/?J?0,/< Q '/]f!<�!H.A.A=;Gq1$BS%�?0,/#aY®�r�k�§hrHi�{�§a¦eg3­�®&®tD@,2.0v1 Q .0,213#-!$')!HG0Y3%�<�=>#�.0?}~-=$5pYa5

®�r�k�§hrHi�{�§a¦eg3­�®&®üÆqg�ª�­eg��Hi-®$­�lz®�¦�§£Æ)�eÊ�ɧpüÉXK��RÊüÅ

D@,/'j'-:�G0=>!H.A=¢!�g�ª�­eg��Hi-®$­�lz®H¦�§ Q G01N:�=>?K?�.0v�!H.�GK%�#-?�BC1$G9O9<�,/'j'/,/?A=>:�13#-*�? Q =;GF,/#&I$1N:;!H.0,/13#�!$#�*rv-!$?�! ?A.0!$:0²�?0,#�;=1$B1BH4�[N]&.A=>? �CBl1$G~.0v-=�Y3,2I$=>#�*a=�ÒZ#-,2.0,213#�1$B5g©ª�­Hg �|ia®$­�l�®$¦3§ZU&!n?0<�!$'/'z?A.0!$:K²³? Q !$:�=�D�13%-'/*[�=�?0%�ï�:;,2=>#�.R�R5

Page 62: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

yFv-! Q .A=;G�O>�N^+ "%-'2.0,ÓhEc£!$?A²�,/#aY ¯�O

K!I%JA´ oaN1·|P�Z�ª(p�SFU�Vx��Z�ª?¯£N1·R·�N1·

c~va=��_«�¬&¬zi�{�§a¦eg3­�®&®rBC%-#�:�.0,213#�,/? %-?A=>*�.A1"*a=>?0.AG01©] Q GK1N:�=>?0?0=>?;5ÙC�GK1N:�=>?0?0=>?J!HG0=�*a=>?A.AG01�]$=>*ß[&] Q !$?K?0,/#aY.0va=>,2G Q G01N:�=>?K?\bú8 #N%-<J[�=;G\.A1��_«�¬N¬hi�{�§a¦Hg$­�®&®NU&!$:;:�1$GR*-,/#aY�.A1n.0va=¢Bl13'j'21©D@,j#aY�?A]N#&.0!�Ê�^

« l�r3�Z«3¬N¬zi�{a§�¦Hg3­-®N®�Æ;« l�r;{�«��RÊ�Å

�Z«3¬N¬hi�{a§�¦Hg$­�®N®JG0=;.0%-GK#-?9!rIH!$'/%a=�,/#-*�,/:;!H.0,/#aY�,2Bi.0va=�1 Q =;GK!H.0,213#"D�!$?¢?K%-:;:�=>?0?AB¥%-'k59b|B+.0va=�G0=;.0%aGK#"IH!$'/%a=J,j?���U.0va=>#³.0v-= Q G01�:�=>?0?\DF!$?~*a=>?A.AGK1©]$=>*z5�b|B£.0va=¢G0=;.0%aGR#³I�!$'j%a=�,/?�p�Ua.0va=>#³.0va= Q G01N:�=>?K?\D�!$?q#a1$.\BC13%-#-*z5

c~va=FBC13'/'21�D@,/#aY¢:�1�*a=@?0va1�D@?i.0va=5jRk-«$l Q G01�:�=>?0?�:�G0=>!H.0,j#aY�! g�ª-­Hg��Hi-®H­�lz®H¦�§ Q G01�:�=>?0?;U�!$#�*�.0va=>#�*a=>?0.AG01©]&h,/#aY�,/.�13#-=�?A=>:�13#-*f'/!H.A=;G>^

�a¦a«��®jRk-« l/Æ$ÊÁ« l�r {�«��/Å{�«��zÄ�® rek�§hrHi�{a§a¦eg3­-®N®üÆqg�ª-­Hg��Hi-®H­�lz®H¦3§£Æ)�eÊzÊüÅ®3¬�­N­�{oÆ p�ny�|Ê�Å�Z«3¬N¬hi�{a§�¦Hg$­�®N®�Æy{Z«���ÊüÅ

Â

K!I%J�~ �ÛZ�ª�¯£N1·�·�­ Y+U�Y�V¡NoÌÎN/U�P�Ë ª�Ì Ì Y+U�[�·

b0y�v-!$?F.ED�1n:�13<�<�!$#�*-?F.A1�va=>' Q D@,2.0v Q G01N:�=>?K?\<�!$#-!HY$=><�=>#&.;5�c~v-=t:�13<n<�!$#-*-?F13#-'/]nD�1$G0²nD@v-=>#³%-?A=>*!H.~.0va=�bAy�:�13<�<n!$#-*M'/,j#a=$5ic~va=;]!HG0=�#a1$.9y�B¥%-#-:�.0,/13#-?F.0v-!H.@:;!$#³[�=�%-?0=>*�,/#³:�1�*a=$5

�Z«3¬N¬hihk�¬&¬ ²�,/'/'/?F!$'/'z:;%aGKG0=>#�.0'/]rGK%�#-#-,/#aY Q G01�:�=>?0?A=>?;5{z® Q GK,j#�.0?F13%a.~!n'/,/?A.F1$BS.0va= Q G01�:�=>?0?~?0.0!H.0%-?;5

c~va=�BC13'/'21©Dq,/#aY@,/#-Bl1$GK<n!H.0,213#�,/? Q GK=>?A=>#�.A=>*)^ Q G01�:�=>?0?Vbú8 U$?A.0!H.0%-?S:�1�*a=$U Q G01$Y$GR!$<�:�13%�#�.A=;G>U3?0.0!$:0²Q 13,/#&.A=;G>Uz?A.0!$:0² Q 13,/#&.A=;G91$GR,2Y3,/#zUz#N%-<�[�=;Gt1$B�.0,/:0²�?;U)!$#-*u#-!$<�= 1$B�B¥%-#-:�.0,213#".0v-!H.�,/?t:;%aGKG0=>#�.0'/]=�Ê�=>:;%a.0,/#aYa5

K!I%J�� �ÛZ�ª�¯£N1·�·�­ Y+U�Y�V¡NoÌÎN/U�P_ØÙSã��Z�Y�Z<pOé�\�U�¯±PTSFª�U�·

c~va=tBC13'/'21�D@,/#aY�B¥%-#-:�.0,213#-?\!HGK=�,/< Q '/=><�=>#�.A=>*³,j#.0va=�?A.0!$#-*-!HGR*fy{'/,2[�GK!HG0]$5

Page 63: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

¯$� bd#�.A=;GK!$:�.0,/I$=�y329?A=;G>Ôo?�4¢%-,/*a=

�a¦a«���ª�¦�¢ei�{�§a¦eg3­�®&®$¦3§1Æ$ÊP '/'21�:;!H.A=>?\!$#�!$*�*-,2.0,213#-!$'Z��B$¯�<�,/'/'j,/?A=>:�13#-*-?�1$B�=�Ê�=>:;%a.0,213#.A1�.0va=¢:;%aG0G0=>#&.0'2]�GK%�#-#-,/#aY Q G01�:�=>?0?;5búBZ.0v�,/?SBC%�#-:�.0,213#�,/?+:;!$'/'2=>*�G0= Q =>!H.A=>*-'/]$U�.0va=@?0]N?A.A=>< D@,/'/'�D�=>*aY$=@!$#�*�13#-'2] =�Ê�=>:;%[email protected]= Q G01�:�=>?0?.0v-!H.�,/?�:;!$'j'/,/#aY�ª�¦�¢ei�{�§a¦eg3­�®&®$¦3§1Æ$Ê�5 X #-'2]u!M?A]�?A.A=>< G0=>?A=;.JD@,/'/'�%�#�D�=>*aY$=nBCG013< .0v-,/?�?0.0!H.A=$5}q=;=>*-'2=>?0?�.A1u?0!©]$U�.0v-,j?�B¥%-#-:�.0,213#�?0v-13%-'/* [Z=%-?A=>*ßD@,/.0v =�Ê�.AG0=><�=³:;!HG0=$U�!$#-*�?0va13%�'/*�#a1$.�[�=Q '/!$:�=>*M,/#³!�'21N1 Q Ua%-#-'2=>?K?FD�=>*aY3,j#aY�.0va=�<�!$:Rv-,/#a=�,j?F.0va=�*a=>?0,/G0=>*13%a.0:�13<�=$5

�a¦a«�����­�¤�­�§£Æ$Ê "!H²$=>?q! Q G01N:�=>?K?@?ADF! Q 13%a.@,j<�<�=>*-,/!H.A=>'/]r!HBC.A=;Gq.0va=�BC%-#�:�.0,213#³,/?~:;!$'/'/=>*z5/29?A=;BC%�'),2BV! Q G01�:�=>?0?²�#a1©D@?t.0v�!H.�,2.tD@,/'/'£#a1$.¢#a=;=>*u.A1�*-1�!$#�]fD�1$G0² %-#&.0,/'£.0va=�#a=�Ê�.¢.0,/<�=�!HG013%-#�*f.0v-=�?0:Kva=>*�%-'2=;G'21N1 Q 5 �N­&¤N­�§1Æ}Ê�,j?~,/< Q '/=><�=>#�.A=>*³!$?@!ry�[�%-,j'2.dhE,/#rBC%-#�:�.0,213#z5

Page 64: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

yFv-! Q .A=;G�O>LN^+`S'213!H.0,/#aYÒCV13,j#�.~`-%�#-:�.0,213#-? ¯$L

��¸ Éòù��Ù>n�\�H�;:éѱ�f���u�7É������¢�\���f��º

bd#�!$*-*-,2.0,/13#¢.A1@[�!$?K,/:S°�13!H.0,/#-Y Q 13,/#�.V!HGK,2.0v-<�=;.0,j:@�¥!$*-*-,2.0,/13#zU�?0%-[-.AGK!$:�.0,213#zU�<J%�'2.0, Q '/,j:;!H.0,213#zU©!$#-*J*-,2I�,/?0,213#Z�!$#-*�°�13!H.0,j#aY Q 13,/#�.\:�13< Q !HGK,/?A13#-?>U-!�#&%-<J[�=;G\1$BV=�Ê Q 13#a=>#&.0,/!$'z!$#-*.AGK!$#-?K:�=>#-*a=>#&.0!$'zBC%�#-:�.0,213#-?\!HG0=¢[_%-,/'2.F,/#.A1�b0y9^

¤a¬�¦zk'rf®�« loÆ0¤a¬�¦zk�rÒk�lH¢a¬�­RÊw~=;.0%-GK#-?\?0,/#-=¢1$BQk�le¢a¬&­-5 P #aY3'2=�,/?\? Q =>:;,2Ò�=>*³,/#GK!$*-,j!$#-?�~�G0=>?0%-'/.F,j?~,/#GK!$*-,j!$#-?;5

¤a¬�¦zk'rÙg$¦�®üÆ0¤a¬�¦zk�rÒk�lH¢a¬�­RÊw~=;.0%-GK#-?\:�13?0,/#-=�1$BQk�lH¢�¬&­-5 P #aY3'2=�,j?\? Q =>:;,ÓÒ�=>*³,/#GK!$*�,/!$#-?�~�G0=>?0%�'2.\,/?~,/#GK!$*�,/!$#-?;5

¤a¬�¦zk'rÒr�k�loÆ0¤a¬�¦zk�rÒk�lH¢a¬�­RÊw~=;.0%-GK#-?F.0!$#aY$=>#&.@1$B1k�le¢a¬�­�5 P #-Y3'2=�,/?~? Q =>:;,ÓÒ_=>*�,j#GK!$*-,/!$#-?}~aG0=>?0%-'2.\,/?\,j#GK!$*-,/!$#-?>5

¤a¬�¦zk'r k'rek�l/ÆK¤�¬&¦zk'rÒk�lH¢�¬&­|Êw~=;.0%-GK#-?\!HGK:¢.0!$#-Y$=>#�.q1$B£k�lH¢�¬&­-5 P #aY3'2=�,/?\? Q =>:;,2Ò�=>*³,/#GK!$*-,j!$#-?�~�G0=>?0%-'/.~,/?\,/#GK!$*-,j!$#-?;5

¤a¬�¦zk'rf®�°&§zr£ÆK¤�¬&¦zk'r�lzu�j�Êw~=;.0%-GK#-?\?½ðN%-!HG0=�GK1&1$.\1$Bwlzu'j�5

¤a¬�¦zk'r³¬�¦h¢Tp �QÆ0¤a¬&¦hk�r¾lhu�jwÊw~=;.0%-GK#-?\'21$Y3!HGK,/.0v-<Ö1$B�lhu�j�.A1n.0va=�[�!$?A=�O;4�5

¤a¬�¦zk'r³¬�¦h¢£Æ0¤a¬�¦zk�r�lhu�jwÊw~=;.0%-GK#-?\#-!H.0%aGR!$')'21$Y3!HGK,2.0v�<Ì1$B�lzu�j)5

¤a¬�¦zk'r­�v'{�p �QÆ0¤a¬&¦hk�r¾lhu�jwÊw~=;.0%-GK#-?¢O;4�.A1n.0va=�lhu�j Q 1�D�=;G©5

¤a¬�¦zk'r­�v'{oÆ0¤a¬�¦zk�r�lhu�jwÊw~=;.0%-GK#-?@» .A1�.0v-=�lhu�j Q 1�D�=;G>5

ÆK¤�¬&¦hk�rTÊ?k§×,ÆK¤�¬&¦hk�rTÊ��w~=;.0%-GK#-?+kn.A1n.0va=�� Q 1©D�=;G>5

Page 65: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

¯�� bd#�.A=;GK!$:�.0,/I$=�y329?A=;G>Ôo?�4¢%-,/*a=

Page 66: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

yFv-! Q .A=;G�O��a^+ f=><�1$G0] P :;:�=>?K?q`-%�#-:�.0,213#-? ¯�B

��ì õ 8�® �M�0ç ô �J��8�º!ºQÉ������¢�\���M��º

b0y�v-!$? Q GK,/<�,2.0,/I$=>?SBl1$GF*-,2G0=>:�.0'/]J=�Êa!$<�,/#-,j#aY�!$#-*�<�1�*-,2BC]�,/#aY¢<�=><�1$G0]�:�13#&.A=>#�.0?>5+c~va=>?A=9?0va13%-'j*�[Z=q%-?A=>*D@,2.0v³:;!HGK=�!$?@,2.~,j?F=>!$?A].A1n:�1$G0GK% Q .~<�=><�1$G0]!$#-*�:�GK!$?Kv³.0va=�?A]�?A.A=><î%�?0,/#aY�.0va=>?A=�BC%-#�:�.0,213#-?;5

« l�r�{-­N­��/Æ;«$ler¬&¦egeÊw~=;.0%-GK#-?F.0va=�[N]N.A=�'21�:;!H.A=>*M!H.@!$*-*-G0=>?0?@¬&¦eg�5

« l�r�{-­N­��N¨-¦3§��QÆ;« l�r�¬&¦Hg�Êw~=;.0%-GK#-?z.0va=~O>¯�h�[_,2.)IH!$'/%a=�'21�:;!H.A=>*�!H.V!$*�*aG0=>?0?�¬&¦eg\!$#-*J¬&¦Hg�¥Tp35S¬�¦Hg�v-!$?�.0va=�<�13?A.V?0,2Y3#-,ÓÒZ:;!$#�.[N]&.A=$U�!$? Q =;G\.0va=J¯$T�O$OnO>¯�h�[_,2.@!$*-*aGK=>?0?0,/#aY�?A.0!$#-*�!HGK*z5

�a¦a«���{�¦��-­QÆ�« l�r¬�¦HgwÉ9« l�r����zr�­RÊxN.A1$G0=>?~.0va=JT�h�[�,2.\IH!$'/%a=��e�zr�­n!H.@<�=><�1$G0]³!$*-*-G0=>?0?@¬&¦eg�5

�a¦a«���{�¦��-­3¨a¦�§z�£Æ;«$lerr¬�¦Hg±É@« l�rr¨a¦�§��RÊxN.A1$G0=>?~.0va=nO>¯�h�[�,2.@I�!$'/%-=t¨a¦�§z�r!H.@<�=><�1$GK]�!$*-*-G0=>?0?A=>?q¬&¦Hg !$#-*f¬&¦Hg�¥Tp35

�a¦a«�����«�rHi-®H­�r£Æ;« l�r�¬&¦HgwÉq«$ler¾j�k-® ��ÊxN=;.0?\[_,2.0?\.0v-!H.@!HGK=�?A=;.@,/#�j�k-® �³!H.@<�=><�1$G0]!$*-*aGK=>?0?@¬�¦Hg�5

�a¦a«�����«�rHieg3¬&­hk�§1Æ�« l�rr¬&¦HgwÉq«$ler�j�k�®$��ÊyF'2=>!HGR?\[�,2.0?F.0v-!H.q!HG0=�?A=;.~,/#ÒjRk�®$�!H.@<�=><�1$GK]�!$*-*-G0=>?0?q¬&¦eg�5

Page 67: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

¯$¯ bd#�.A=;GK!$:�.0,/I$=�y329?A=;G>Ôo?�4¢%-,/*a=

Page 68: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

yFv-! Q .A=;G�O}BN^+(�GKG01$G¡�9!$#-*-'/,/#-Y ¯3W

��ó ¯Ö�~�\�M��ú >�����ùH�H�;:

c~va=;GK=�!HG0=�.ED�1�.E] Q =>?@1$BS=;G0G01$GK?\.0v�!H.q:;!$#Mv�! Q-Q =>#D@va=>#³D�1$G0²�,/#aY�D@,/.0vbAy9^)·¹¸�ñ�µzé/òl»�¶dækéjñr»J=;G0G01$GK?q!$#-*ä�ã$å_¶dæké/ñr»�=;G0G01$GK?>5

y�13< Q ,/'2=�h�.0,/<�=³=;GKG01$GK?�1�:;:;%aG*-%aGK,j#aY .0va=f:�13< Q ,/'/!H.0,213#ö1$B¢.0va=f?A13%-GK:�=�Ò_'/=$5{c@va=;]�!HG0=f,/#�*-,/:;!H.0,2I$=�1$B<�,/?0.0!H²$=>?J,/#�.0va=y ?A13%aGK:�=�:�1N*-=$5Mc+] Q ,/:;!$'+:�13< Q ,/'2=�h�.0,j<�=�=;G0G01$GR?�G0=>?K%-'2.¢BCG013< ,j#-:�1$G0G0=>:�. ?A]N#&.0!�Ê�1$G�<�,/?dh<�!H.0:Rv-,/#aY�1$Bi*-!H.0!�.|] Q =>?;5

w@%�#�h�.0,/<�=�=;GKG01$GK?q1N:;:;%aGtD@v�,/'2=�! Q G01$Y$GK!$<�,/?qGK%-#-#-,j#aY�13#M.0v-=J[�13!HGK*z59c~va=;]�,/#�*-,/:;!H.A= Q GK1$[�'2=><�?@D@,2.0v!�IH!$'/,/*ßy�BC1$GK< D@v-=>#�,2.�,j?�GK%-#�#-,/#aYa5 P ?K,/< Q '2=�=�Êa!$< Q '/=�D�13%�'/*u[�=n!M*�,2IN,j*a=�h�[&]&h-�;=;G01�=;GKG01$G>5 P #-1$.0va=;G=�Êa!$< Q '2=�<�,/Y3v�.\[�=¢GK%-#�#-,/#aY 13%a.\1$Bi?A.0!$:0²�? Q !$:�=$U�,2B£!�G0=>:;%aGK?K,2I$= Q G01�:�=>*-%aG0=tY$1N=>?~.A1N1n*a=;= Q ,j#G0=>:;%aGK?0,/13#z5

c~va=>?0=¢.E] Q =>?~1$B£=;GKG01$GK?\!HG0=�v�!$#-*-'2=>*³*-,2¼Z=;G0=>#&.0'2]$Ua!$?@,j?F=�Ê Q 'j!$,/#a=>*[�=>'21©D�5

K0�%JFK Ë3ª�Ì¥r�Sã ½N#Îzæ3SLÌÎN Ú²Z�Z�ª�Z�·

s{va=>#�:�13< Q ,j'2=;G~=;G0G01$GR?~1�:;:;%aG>U�!$#M=;G0G01$Gq<�=>?0?0!HY$=J,j? Q GK,/#&.A=>*³.A1�.0v-=J?0:�G0=;=>#)5 P '/'z:�13< Q ,j'2=�h�.0,/<�=¢=;G0GK1$GK?< %-?A.\[�=tÒ-Ê�=>*³[�=;Bl1$G0=�! ÒZ'2=�:;!$#�[�=¢*a1©Dq#-'213!$*a=>*³.A1n.0va=¢[�13!HGK*z5

K0�%JyI û \�UdÎzæ3SFÌ N�Ú�Z�Z�ª¡Z�·

s{va=>#M!�GR%-#�h�.0,/<�=¢=;GKG01$G@1�:;:;%aGK?;UZ!$#�=;G0GK1$Gq<�=>?0?K!HY$= ,/?@*-,/? Q 'j!>]$=>*³13#M.0va=JgSyF8 ?0:�G0=;=>#",/#-*-,j:;!H.0,/#aY�.0va==;G0G01$G�#&%�<�[�=;G>5£b|B�.0va=q[�13!HGK*n,/?+va1&1$²$=>*�% Q .A1 b0y�D@va=>#�.0va=@=;G0GK1$G+1�:;:;%aGK?;UN!�<�1$G0=qI$=;G0[�13?A=@=;GKG01$G�<�=>?K?0!HY$=,/? Q GR,/#�.A=>*13#M.0va=¢.A=;GK<�,j#-!$'k5

�q=;G0=�,/?~!�'j,/?A.F1$BV.0v-=�GK%-#�h�.0,j<�=t=;G0G01$G@:�1�*a=>?;^

O #a1�?A.0!$:K²�? Q !$:�=�BC1$G�®�r�k�§zrei�{�§a¦Hg$­�®&®üÆ$Ê� #a1 Q GK1N:�=>?0?@?0'21$.0?\G0=><n!$,/#-,/#aYL !HG0GK!©]G0=;Bl=;GK=>#-:�=�13%a.\1$BS[�13%-#-*-?� ?A.0!$:K²³1©I$=;GA°�1�D�=;GKG01$G@,/#GK%�#-#-,/#aY Q G01�:�=>?0?B 1 Q =;GK!H.0,213#³Dq,2.0v³,/#&I�!$'/,j* Q 13,/#&.A=;G

Page 69: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

¯$T bd#�.A=;GK!$:�.0,/I$=�y329?A=;G>Ôo?�4¢%-,/*a=

¯ °�13!H.0,/#-Y Q 13,j#�.~%-#�*a=;GA°�1�DW °�13!H.0,/#-Y Q 13,j#�.\1�I$=;GA°�1©DT °�13!H.0,/#-Y Q 13,j#�.~*-,/IN,/*-=�h�[&]&h-�;=;G016 #N%-<�[�=;G\.A1N1n?0<�!$'j'�1$G@'/!HG0Y$=�.A1r:�13#�I$=;G0.q.A1n,/#&.A=;Y$=;GO;4 .AGK,2=>*.A1r.0!H²$=J?½ðN%-!HG0=¢GK1&1$.\1$Bi#a=;Y3!H.0,2I$=J#&%-<J[�=;GO$O .0!$#aY$=>#&.@1$Bi6H4n*a=;Y$GK=;=>?~!H.A.A=>< Q .A=>*O>� '21$Y�1$G9'/#1$B£#-=;Y3!H.0,2I$=J#N%-<J[Z=;G\1$G¡�;=;G01O}B °�13!H.0,/#-Y Q 13,j#�.\BC1$GK<�!H.\=;G0GK1$G@,/# Q GK,j#�.ABO>¯ ,/#&.A=;Y$=;Gq*-,/IN,/*-=�h�[&]&h-�;=;G01

Page 70: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

yFv-! Q .A=;G�O>¯N^+�F,/#-!HG0] C�GK1$Y$GK!$<�? ¯$6

��� ü �H�;>�0ç�Ñ��\�Ù:M��>U® º

s{,2.0vM.0v-= %-?0=J1$B�!r:;%-?0.A13<�,#�;=>*u¯$T�O$O�!$?0?A=><J[�'2=;G Q G01$Y$GK!$<�UZb0y�!$'/'21�D@[email protected]=�%�?A=�1$B�<�!$:Kv-,j#a= 'j!$#aY3%-!HY$=Q G01$Y$GR!$<�?�D@,2.0v-,/#n.0va=�yø=>#�I�,2G013#�<�=>#�.;5ic~v-=;G0=¢!HG0=t.ED�1�D�!©]N?F.0v-!H.\<�!$:Rv-,/#a=¢'/!$#-Y3%-!HY$= Q G01$Y$GK!$<�?F<�!©]r[�=,/#-:�1$G Q 1$GR!H.A=>*z^

OH5ÙC�GK1$Y$GK!$<�?~<�!©][Z=�:;!$'j'2=>*³BCG013< y{!$?~,/B�.0va=;]D�=;G0= y�B¥%-#-:�.0,213#�?;5�N5ÙC�GK1$Y$GK!$<�?�<�!©] ,j#-?A.0!$'/'N.0va=><�?0=>'2I$=>?�,/#&.A1t.0va=~,/#&.A=;G0GK% Q .S?A.AGK%�:�.0%aG0=\1$BZ.0va=~¯$T�O$OHU&GK%�#-#-,/#aYqG0= Q =;.0,2.0,213%-?K'2]

1$G~D@v-=>#�,/#&I$1$²$=>*M*-%a=t.A1n!nv-!HGK*aDF!HG0=¢1$G@?A1$BC.EDF!HG0= ,/#�.A=;GKGK% Q .;5

s{va=>#¡1 Q =;GK!H.0,/#-Y�!$?n!�BC%-#�:�.0,213#zU�.0va=f,/#&.A=;G0B¥!$:�=M[�=;.ED�=;=># yÖ!$#-*ø!�[�,/#�!HG0] Q GK1$Y$GK!$< ,j?�'/,/<�,/.A=>*z^M![�,/#�!HG0] Q G01$Y$GR!$<Ö<J%-?0.\[Z=9Y3,2I$=>#³13#-=�,/#�.A=;Y$=;Gq!$?~!$#³!HG0Y3%-<�=>#&.;U�!$#-*�D@,j'/'�GK=;.0%aGK#³!$#³,/#&.A=;Y$=;G@!$?~,2.0?FGK=;.0%aGK#IH!$'/%a=$5£�@1�D�=;I$=;G©U Q G01$Y$GK!$<n?�,j#r!J[�,/#-!HGK]JÒZ'2=9:;!$#*a=>:;'j!HG0=9!$#&]n#N%-<J[Z=;G�1$B)Y3'21$[_!$'Z,j#�.A=;Y$=;GFIH!HGK,/!H[�'2=>?�,/#r.0va=yö=>#�I�,2G013#�<�=>#�.;5 P '/?A1aU�.0va=¢[_,/#-!HG0] Q GK1$Y$GK!$<Ì:;!$#�%-?A=t,2.0?F!HG0Y3%-<�=>#&.~!$?\! Q 13,/#�.A=;GF.A1�!�y�*-!H.0!�?A.AGK%�:�.0%aG0=$5

K2�JFK æ3¬�N�ÌÀSLU�Y�Z<p«W?ª�\�Z�¯£N®é¤S£ FN

x Q =>:;,/!$'�²$=;]ND�1$GK*�?r,/#�.0v-=M?A13%aGK:�=f!$?0?A=><J[�'2]�'/!$#aY3%-!HY$=³ÒZ'2=��C1$Gr<�1�*-%-'/=���!HGK=M%-?A=>*�.A1 =>?A.0!H[�'/,j?0v�.0va=BC13'/'21©Dq,/#aY�Bl=>!H.0%-G0=>?~1$B£.0va=�[�,j#-!HG0] Q GK1$Y$GK!$<³^

Ë£¿NÀdÂÖØrÃzÉ$È2¿&Àc~va=¢=>#&.AG0] Q 13,/#�.\BC1$G@:;!$'/'j?\.A1�=>!$:Kv Q G01$Y$GK!$<�*a=�Ò_#a=>*³,/#�.0va=¢[�,/#-!HGK]�Ò_'2=$5

¾A¿-È2ÀAÈ2ÍHØ2Ȫý;ÍHÀAÈ2É$¿ Á©¿NÀdÂþØrÃzÉ$È2¿NÀ(+!$:Rv�Ò_'2=F<�!©] v-!©I$=\13#a=\G013%a.0,j#a=�.0v�!H.�,/?S:;!$'/'2=>*�!$%a.A13<�!H.0,/:;!$'j'2]J% Q 13#�!9G0=>?A=;.�:�13#-*�,2.0,213#z5F��xN=;=xN=>:�.0,213#¡¯N5/OH57��� g�1N:;!$'\!$#�*�4t'21$[�!$'~x�:�1 Q =>?y��U Q !HY$=�O©W&U+BC1$G�!u*�,/?0:;%-?0?K,213#�1$BqY3'21$[�!$'�I�!HGR,/!H[�'2=,/#-,/.0,/!$'/,#�>!H.0,213#)5��¢c~v-,j?�,/#�,2.0,/!$'/,#�>!H.0,/13#�G013%a.0,/#-=9,/? Q !HG0.0,j:;%-'/!HGK'2]�%-?0=;BC%-'_BC1$G Q G01$Y$GK!$<�?�D@v-,j:Kv�D@,/'/'B¥%-#-:�.0,213#³!$?q,/#�.A=;GKGK% Q .FG013%a.0,j#a=>?;5

º�ÿ�Í�Â�È2Í�Ù�Ø2Á�ÄaÁ$Ð�¿-È2ÀAÈ2É$¿�ÎP #�]�#N%-<J[�=;GV1$B-.|D�1Hh�[N]N.A=9y�,j#�.A=;Y$=;GiIH!HGK,/!H[�'/=>?V<�!©]�[�=�*-=>:;'/!HG0=>*JD@,2.0v-,/#J!@[_,/#-!HG0]tÒ_'/=$5�s{va=>#.0va=�<�1N*-%�'2=9,j?~'213!$*a=>*�,j#�.A1�b0y9Ua.0va=>?A=�I�!HGK,j!H[�'2=>?F[�=>:�13<�=�*a=�ÒZ#a=>*³!$?\Y3'21$[�!$'j?~,/#My95

cV1�=�Ê Q 'j!$,/#³va1©Dà.0va=>?A=�BC=>!H.0%aG0=>?@D�1$G0²ZU�'2=;.;Ôo?@'21&1$²!H.@!�?K!$< Q '2=tb0y�[�,/#-!HGK]r?A13%aGR:�= Q G01$Y$GK!$<³^

�eþ ��k�j�{_¬&­e«zg ��¤-«�¬�­³þ���eþø¦3§_«�¢�« le¤�¦�§�j_¦h��u_¬&­ k�lH�3��k�§�«'k���¬&­-®Ûþ��

Page 71: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

W�4 bd#�.A=;GK!$:�.0,/I$=�y329?A=;G>Ôo?�4¢%-,/*a=

à�ß!à á�Þ ß�ãeiz��ê�Þ�ßzê�eþ;{�§a¦�¢&§ek j³ra¦�§�­�r'ua§�l r&¨Z«hg3­ r3ª�­ k�§z¢'u'jZ­�l�r�{Hk�®N®H­h� r�¦�uz® þ��®$uh�a§�¦�uer�« l-­�i��N¦�uh�_¬&­ �Þe�VO�â

ß�êH��eþ��N­Hg3¬hk�§�k�r�«3¦�l ¤�¦3§ r�ª�­ ��k�§�«'k���¬&­òÇ;¤�¦&¦üÇ�þ'��ek3§_«�k��_¬�­�i3¤�¦N¦ �âhâL� KIK�eþ;{�§a¦�¢&§ek j³ra¦�®H­�r r3ª�­ ¼ �ek3§_«�k��_¬�­XÇ;¤N¦N¦�Ç;þ��®$uh�a§�¦�uer�« l-­�i-®H­�rei�¤�¦&¦ ��'êhâ ��k�§_«�k���¬&­�i3¤�¦&¦

ß�êH��eþ;{�§a¦�¢&§ek j³ra¦�§�­�r&§_«3­'�a­Ûr3ª�­ ��k�§_«�k���¬&­ Ç�¤�¦&¦üÇ�þ��®$uh�a§�¦�uer�« l-­�i�¢N­�rei�¤�¦&¦ �Ohâzâ ��k�§_«�k���¬&­�i3¤�¦&¦

ß�êH��eþ g$¦h�N­ r�ª|k'r{§�uhlz®ö¦�là§a­�®H­�r¿g$¦�lH�-«�r�«3¦�l�®Ûþ'�®$uh�a§�¦�uer�« l-­�ia«$l�«�r_«'kN¬a«*)�­�i$jZ¦'�'u�¬&­ �Ohâzâ Ý «z��'êhâ ��k�§_«�k���¬&­�i3¤�¦&¦

ß�êH�

c~va=�Ò_GK?A.�?A.0!H.A=><�=>#&.�1$BF.0va=�Ò_'2=M�qDFà�ßLàgá�Þ ß�ãeiz��ê�Þ�ßzê�G��q*a=>:;'/!HG0=>?�.0va=n?A.0!HG0.�1$B�.0v-=�[�,/#-!HGK] Q G01$Y$GR!$<�?;5c~v-,j?\'/,/#a=t<J%�?A. Q G0=>:�=>*-=¢.0va=�:�1�*a=�,2.0?A=>'2B£,2.0?A=>'2Bú5

c~va=�=>#&.AG0] Q 13,/#&.¢Bl1$G ! Q GK1$Y$GK!$< .A1f[Z=r:;!$'/'2=>*uBCG013< y ,/?�*a=>:;'j!HG0=>*�D@,/.0v�!M? Q =>:;,/!$'�Bl1$GK< [�=;Y3,/#-#-,/#-YD@,2.0vf.0va= .A=�ÊN. ®$uh�a§�¦�uer�« l-­�i-5\bú#".0v-,/?q:;!$?A=$Uz.0va=�#-!$<�= 1$B�.0va= [�,/#-!HGK] Q G01$Y$GK!$< ,/?��N¦�uh�_¬&­-UZ?A1r.0v-= '/!H[�=>',/?t#-!$<�=>*ß®$uh�a§a¦�uer�« l�­zi��N¦�uz��¬&­-5 P ?t.0va=�:�13<�<�=>#�.�,/#�*-,/:;!H.A=>?;U�.0v-,/?9,/?t! Q G01$Y$GK!$< .0v�!H.9Dq,/'/'�*-13%a[�'2= .0va=IH!$'/%a=¢1$B£.0va=�!HG0Y3%-<�=>#�. Q !$?0?A=>*³.A1n,/.;5

s{va=>#n.0v-=q[�,j#-!HG0] Q G01$Y$GR!$< ,/?�:;!$'/'2=>*rBCG013<îy9UN,/.�,/? Q !$?0?A=>*r13#a=¢,/#&.A=;Y$=;G\!HG0Y3%-<�=>#&.;5�c~v-,/?�!HG0Y3%-<�=>#�.F,/?Q '/!$:�=>*f,/#.0va=�¯$T�O$OHÔo?q8 GK=;Y3,/?A.A=;G �¥!$'j?A1�²�#a1©D@#f!$?~.0va=§DA8q13%-[�'2= P :;:;%-< %-'/!H.A1$GFG��\[Z=;BC1$G0=�.0v-=�[�,/#-!HGK]�:�1�*a=,/?\:;!$'/'/=>*z5

c~va=��N¦�uh�_¬&­ Q G01$Y$GK!$<±*a13%a[�'2=>?�.0va=9#N%-<J[�=;G�,/#n.0va=q8àG0=;Y3,/?A.A=;G>5ic~v-=�Þe��Ohâ�,/#-?A.AGK%�:�.0,213#M�+D P GK,2.0v�<�=;.0,/:x�v-,/Bl.�g�=;Bl.+8913%a[_'2=�� P :;:;%-<J%�'/!H.A1$G©� G��+,/?i=}ðN%-,2IH!$'2=>#�.+.A1J< %-'2.0, Q '/]N,/#-Y@[N]��z~ava=>#�:�=~.0v-,/?�*-13%a[�'2=>?i.0v-=@#&%�<�[�=;G,/#.0va=J8�GK=;Y3,/?A.A=;G>5

Page 72: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

yFv-! Q .A=;G�O>¯N^+�F,/#-!HG0] C�GK1$Y$GK!$<�? WNO

c~va=Òß�êe�",/#�?A.AGK%-:�.0,213#ß,/?,DAw~=;.0%-GK#ßBlG013< x�%-[-G013%a.0,/#-=$5G P '/'�[�,/#-!HGK] Q G01$Y$GK!$<�?�< %-?A. =�Ê�,/.�%�?0,/#aYf.0v-,/?,/#-?0.AGK%-:�.0,213#z5s{va=>#ß!M[�,j#-!HG0] Q G01$Y$GK!$< =�Ê�,/.0?;US.0va=rIH!$'/%a=�,/#u.0va=8ÖG0=;Y3,j?A.A=;G�,/?�.0va=rG0=;.0%aGK#�I�!$'j%a=n.A1�y95c~vN%-?;Ua.0va=���¦�uh�_¬�­ Q G01$Y$GK!$<�*a13%a[�'2=>?\,/.0?@y{!HG0Y3%-<�=>#&.@!$#-*�G0=;.0%aGK#-?\,/.\.A1�y95

��������������������� �E$�'�[¡BH� �E$�� 8Y�&��?U$�'³ì¢$�';� ��}i_�$��,�W?

c~va=�'j!H[Z=>'Q�ek�§�«'k��_¬&­zi�¤N¦N¦³,/?¢!$#�=�Ê�!$< Q '2=�1$B\!�? Q =>:;,/!$'SBC1$GK< .A1M*a=>:;'/!HG0=n.0va=n#-!$<�=r!$#-*�'21�:;!H.0,213#�1$B! IH!HGK,/!H[�'2=!$:;:�=>?0?0!H[_'2=�BCG013<´y95ic~va=³? Q =>:;,/!$'F'/!H[�=>' Q G0=�Ò-Ê�Dy��k�§�«'k���¬&­zi�G",/?�Bl13'j'21©D�=>*�.0va=�#-!$<�=1$B9.0va=IH!HGK,/!H[�'2=$Ua,/#.0v�,/?~:;!$?A=$U/DA¤�¦N¦-5G

c~v-,j?�'j!H[Z=>'�< %-?A.\[�=�,/<�<�=>*-,/!H.A=>'2]�BC13'/'21�D�=>*�[&]�.0va=�?A.0!H.A=><�=>#&.;âhâL��¦�lhu�je�-­�§e¨-5Sc~v-,/?F,/?\!$#�!$?K?A=><�[_'2=;G*-,2GK=>:�.0,2I$=¢.0v-!H.@:�G0=>!H.A=>?9!�.ED�1Hh�[N]&.A= I�!$'j%a=n�CD@v-,/:Rv³,/?\.0va=�,j#-,2.0,/!$'ZIH!$'/%a=¢1$B£.0va=�IH!HGK,/!H[�'2=��R5

��!HGK,/!H[_'2=>?�%-?0=>*�[N]u[�,/#-!HG0] Q G01$Y$GR!$<�?J< %-?A.J[�=n*a=>:;'/!HG0=>*ß,/#u.0v-=r[�,j#-!HG0]fÒ_'2=$5�c~va=>?0=nIH!HGK,/!H[�'2=>?�.0va=>#[�=>:�13<�= y�Y3'/1$[�!$'/?FD@va=>#�.0va=¢[�,/#-!HGK]�Ò_'2=¢,/?@'213!$*a=>*�,/#&.A1ry95

c~va=�#-=�ÊN.q[�,/#-!HG0] Q G01$Y$GK!$< ,/#³.0va=�Ò_'2=�,/?q#-!$<�=>*®D�®$­'rHi�¤N¦N¦-5G�b|. Q =;G0Bl1$GR<�?F.0va=J!$:�.0,/13#�1$Bi?A=;.A.0,/#aYr.0va=IH!$'/%a=�1$B+.0va=�IH!HGK,/!H[_'2= ¤�¦N¦-U�D@v-,j:Kv ,/?¢*a=�Ò_#-=>*"'j!H.A=;G�,/#".0va= Ò_'2=$5�bú.¢*a1N=>?t.0v-,/?9[&]"?A.A1$GK,/#-Y�.0v-=�8±G0=;Y3,j?A.A=;G,/#&.A1�.0va=�<�=><�1$G0]�:�13#&.A=>#&.0?@G0=>?0=;G0I$=>*�BC1$G@¤�¦&¦�U-!$#-*.0va=>#MG0=;.0%aGK#-,j#aYa5

c~va=�#a=�Ê�.£[_,/#-!HG0] Q GK1$Y$GK!$<�,/?V#�!$<�=>*,D©¢N­�rei�¤�¦&¦�5GMbú.S'213!$*-?£.0va=\8öGK=;Y3,/?A.A=;GSBlGK13<�.0v-=�<�=><�1$G0]�G0=>?0=;G0I$=>*BC1$G@¤N¦N¦r!$#-*.0va=>#³G0=;.0%-GK#-?;5

���������,+C��������� �E$�'�[���'�GI'Y$,"!$�����$&J��#"!$&%('�TX�L%�[9�!��w

c~va=�'/!H[�=>'F®$uh�a§a¦�uer�« l�­zia«$l�«�r�«'kN¬a«�)N­�i$jZ¦h��u_¬�­n,/?¢!�? Q =>:;,/!$'SBC1$GK< %-?0=>*u.A1M,/#-*�,/:;!H.A=�.0va=�=>#&.AG0] Q 13,j#�.BC1$G�:�1�*[email protected]�!H.�?0v-13%-'/*�[�=~GK%�#�.A1J,j#-,2.0,/!$'/, �;=\.0va=@[�,j#-!HG0] Q G01$Y$GK!$<�?>5�c~v-,/?�:�1�*a=9,/?�GK%�#n% Q 13#�?A.0!$#�*-!HGK*�GK=>?A=;.:�13#-*-,/.0,213#-?;^ Q G01$Y$GR!$<î*a1©Dq#-'213!$*zU-v-!HGR*aD�!HGK=¢G0=>?A=;.;U-1$GqGK%-#-#-,j#aY�1$BS.0va=¡j�ka« loÆ}Ê�BC%-#�:�.0,213#z5

bd#�.0va= =�Ê�!$< Q '2=J?Kva1©D@#)U�.0va=�,/#-,2.0,j!$'/,#�>!H.0,213#³:�1�*a=�?A.A1$G0=>?q.0va=JIH!$'/%a=�¯$6n,j#�.A1r.0va= '/1N:;!H.0,213#fG0=>?A=;GKI$=>*MBC1$G.0va=�IH!HGK,/!H[_'2=�¤N¦N¦�5�c~v-,j?F.0va=>#�1�I$=;G0D~GK,2.A=>[email protected]=�B�B�D@v-,/:Rv³D�13%�'/*³1$.0va=;G0Dq,/?A=¢[�=�.0va=�*-=;BC!$%-'/.\I�!$'/%-=�[email protected]!H.IH!HGK,/!H[�'2=$5

bd#-,2.0,/!$'/, �>!H.0,213#"1$B\Y3'21$[�!$'/?¢IH!HGK,/!H[_'2=>?�*a=�Ò_#-=>*�,/#�!$#�[�,/#-!HG0]"<�1�*-%-'2=�,/?�*a13#a=n*-,2¼Z=;G0=>#&.0'2]".0v-!$#�Y3'/1$[�!$'/?*a=�Ò_#-=>*ø,/# y95�bú#�!ß[�,/#-!HGK]�<�1N*-%�'2=$U\.0va="Y3'21$[�!$'/?!HG0= ,/#-,2.0,j!$'/,#�;=>*�.A1�.0va="I�!$'j%a="*-=>:;'/!HG0=>*ø[&]¡.0v-=XâhâL�?A.0!H.A=><�=>#&.�13#-'2] D@va=>#�.0va=q:�1N*a=q,/?�*a1�D@#-'213!$*a=>*�.A1�.0va=q¯$T�O$Oq[�13!HGK*M�¥#a1$.�% Q 13#�G0=>?A=;.�1$G�GK%-#-#�,/#aYt1$Bz<�!$,/#zU'/,2²$=�#-1$GK<�!$'�Y3'21$[�!$'j?R�R5

Page 73: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

WH� bd#�.A=;GK!$:�.0,/I$=�y329?A=;G>Ôo?�4¢%-,/*a=

�q1©D�=;I$=;G>US.0va=r,/#�,2.0,/!$'/,#�>!H.0,/13#fGK13%a.0,/#a=�,/?�GK%-#u% Q 13#�?A.0!$#�*-!HGK*uG0=>?0=;.J:�13#-*-,/.0,213#-?;U�!$#�*�:;!$#�[�=�%-?0=>*u.A1,/#-,/.0,/!$'/,#�;=9Y3'21$[�!$'/?>U�[email protected],/?F=�Êa!$< Q '2=�v�!$?@,/'/'j%-?A.AGK!H.A=>*z5

K2�JyI bHU�PTN1Z�Zü\�r�PEÎIoaZüS�Ç�N/U ̳SFU�Y�Z<ph�ÛZ�ª¡V¡Z�Y+Ì ·

6811 interrupt vector(dedicated RAM position)

6.270 system softwareinterrupt driver

RTIReturn from Interrupt� instruction

Before User Program Installation

bd#�.A=;G0GR% Q .dhE*aGK,/I$=>#�[�,/#�!HG0] Q G01$Y$GK!$<n?�%�?A=q.0v-=9,/#�,2.0,/!$'/,#�>!H.0,/13#n?A=}ðN%a=>#-:�=91$B�.0va=t[�,j#-!HG0]�<�1�*-%-'2=q.A1�,j#-?A.0!$'/'! Q ,/=>:�=¢1$BS:�1�*a=�,/#&.A1�.0va=�,j#�.A=;G0GR% Q .\?A.AGK%-:�.0%-G0=¢1$BV.0v-=J¯$T�O$OH5

c~va=�¯$T�O$O�v�!$?�!³#&%�<�[�=;Gt1$B�*�,Ó¼Z=;GK=>#�.¢,/#&.A=;G0GK% Q .0?;U)<�13?A.0'2]"*a=>!$'/,/#-YrD@,/.0vu,2.0?t13#�hE:Kv�, Q v-!HGK*aDF!HG0=�?0%-:Rv!$?9.0,/<�=;GK?9!$#-*":�13%-#&.A=;GK?;5 X #a=J1$B�.0va=>?A=�,/#&.A=;G0GK% Q .0?q,/?9%-?A=>*f[&]�.0v-=�¯N57�3W�4³?A1$BC.EDF!HG0=�.A1³,/< Q '/=><�=>#�[email protected],/<�=�h²$=;= Q ,/#-Y!$#�*f1$.0v-=;G Q =;GR,21N*�,/:�B¥%-#-:�.0,213#�? �¥?0%�:Kvu!$?¢g£y\8 ?0:�GK=;=>#u<�!$#-!HY$=><�=>#&.R�R5 c@v-,/?9,/#�.A=;GKGK% Q .;Uz*-%a[�[Z=>*.0va=ÙDKx�]N?A.A=><îbú#&.A=;G0GK% Q .;UG�GK%-#-?\!H.�O;4$4$4Ò�@=;GK.©�$5

bd#-?A.A=>!$*r1$B�%-?0,/#-YJ!$#a1$.0va=;G~¯$T�O$Ot,/#&.A=;G0GK% Q .�.A1�GK%-#n%�?A=;GF[�,/#-!HG0] Q GK1$Y$GK!$<�?;U�!$*-*-,2.0,/13#-!$' Q GK1$Y$GK!$<�?t�C.0v-!H.#a=;=>*³.A1rGK%-#³!H.�O;4$4$4����$5+1$G@'2=>?K?R�F<�!©],j#-?A.0!$'/'Z.0va=><�?0=>'2I$=>?@,/#&.A1�.0va=�xN]N?0.A=><Öbú#&.A=;G0GK% Q .;5/29?A=;G Q G01$Y$GR!$<�?D�13%-'/*[�=¢.0va=>#³[�=>:�13<�= Q !HG0.\1$BV.0v-=nO;4$4$4�����,/#&.A=;G0GK% Q .F?0=}ð&%a=>#�:�=$5

c~v-,j?�,/?\!$:;:�13< Q '/,/?0v-=>*r[N]rv�!>I�,/#aY�.0va=�%-?A=;G Q G01$Y$GK!$< DA,/#&.A=;GK:�= Q .½G�.0v-=91$GR,2Y3,/#-!$'z¯$T�O$O�,/#&.A=;G0GK% Q .�I$=>:�.A1$G.0v-!H. Q 13,/#&.0?F.A1r¯N57�3W�4r,/#�.A=;GKGK% Q .\:�1�*a=$5+c~v-,j?FI$=>:�.A1$G9,/?\<n!$*a=¢.A1 Q 13,/#&.\!H.~.0va=�%-?A=;G Q G01$Y$GK!$<³5+s�va=>#M%-?A=;GQ G01$Y$GR!$<ÌÒ_#-,/?Kva=>?;Ua,2.w�A%�< Q ?F.A1�.0va=J?A.0!HG0.~1$B£.0va=J¯N57�3W�4r,/#�.A=;GKGK% Q .\:�1�*a=$5

Page 74: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

yFv-! Q .A=;G�O>¯N^+�F,/#-!HG0] C�GK1$Y$GK!$<�? WHL

JMP

6811 interrupt vector(dedicated RAM position)

6.270 system softwareinterrupt driver

RTIReturn from Interrupt instruction

User assemblylanguage program

Jump instruction

After User Program Installation

����� �� �V������ ���������� � �� ������� � � � ��� � �� ����� � � ��� ������ "! � � �# � � � � ! �$��%$& �'� �� %$(�(�%)� ��!��+*,���#��-$.0/$/�1$�2� � ! �( !0� %)� �3!��4�5!��'� � 6� ! �70�� � &8 !$ �:9�%)� �;�<!0���$= 9 �#���>� � � ��& ��� %)� � ��� %@?A� � � ��� �B � ! & ��� � � � ��� � � C ��� ����� � � �3!��+*

����� �2�<!��� ����� �D� ('(��#�����%)� � E� ��� � � �#(3�F% � � �G� ��� �# � � � � ! �$��%$& � �'� �� %$(�( �2�H*I�����J-$.0/$/D1$�2� � ! ���!���� � K� ! � ��� �# � � � � ! �$��%$& = 9 �#���>�F�<L�� � � 7NM��#& ���� �O� ! � �#� �70�� � &P !$ �Q9R%)� �O� � ��1$� � *��S�#� � � �31$� � �<L�� � %$ ���� "! � �$= 9 � � � � �#�UT���V��'� ������ � � ��!��+*

W@�#(3� �3� ( � �# � � � � ! �$��%$&G �<! �( �X���Y�'� �� %$(�( �2�X��� � �� %$ ��3!��+*FZ % �>�[!���� 9 ! �#( �[��� � %$(�( � � � ( % ��� % �!$ � ���\� � ��10�3! �# !����$*O]^! & � � % �#� %)� �@-^*`_�acb ( �3� ��%)� 7 � �#� � �3!�� = � ��� %$N� ��� � % � �2��<!^��� �O !$ �:9�%)� �$=+� � & � ( � & �2� � �2�D��� � �#� %$ �#�3!��H*

dfe^gihkje�lnmpo q)rts5ruethmnm$v�wAxr<yzqdd mn{^xcy�vlnm}|uj~g�|u�0mket��rc�0x0l^l0et����e)��r$m^lujkei����|d ��s�rc��mty��2�����t�^�n�����~et�0��m��^�u�nv��d

Page 75: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

at� VA� � � ��% � � ��1$�Y�}� � �>�N��� �����

d �^�0mn���#x��^�et�d �u�n����g)�P�t������o<�)�zo<�t�~�c�n�5�d  ei��g�l)�#�^mf¡n¢n£5�n�i��mu��r�wAxr<y�¤

�$¥�¦ �0§��c¨�©^�$�0§u¥^�ri�nh��0|$���et�#m0©�ei��ec��e�x^l�e)�0m0©iy5|����lnmzo  ei��g�l)�#�^mf¡^l��^{#ethx#r$m6wAxr<y�¤d«ª��|$¬}�xr­h#xr)m®v|�et���0mu�}�0|ket�0��mu�n�u�nv��}¯0m#g)�0|u��r±°³²$�^�0�^�f|u�k²$´^�0�^��µd«�0m���gt�0�^��m)���}¯0m#gc��|u�6¶·v|$¸#m~r2��gt�f�u�x��}¬n�#m$��¬#m}j#et�5e0ri�R¹º¬#m}�^|��u�#mu��m

»n¼^¼ ���n½n¾�c¨n�p¹�ª ¶@��s�rc��mty��2����|)���#�n½u¾��� ¼ ei����m��^���^v���©�g$|n�0m^©nmu{e)�^¿��

dfet��rc�0x0l^l�|$����r$m^lujfx#r­�m�¬�¯0m#gc��|u�»n¼^¼   et���0mu�n�u�^v0�#©0g�|n�^m0©�rc��x��^���� ¼ ���n½n¾�c¨n�p¹�ª¥0�#�

dfet�0��m��^�u�nv���v0��|u�n��xty�hmu�ei�+rÀ�#mu��met�0��m��^�u�nv���©�g�|u�0m^©#rc�0xu�n��od«jn�0|$h����m«hmnm$v#mu��m�¯�mu�ns}��e�y5mkg$x0l^lumn�

»n¼ §n§ Á��$¥0�^§Â �$¥0§  nà �^�n�^���c�^�n� ¶ºhmnm$v#mu��h5e)����0§n§ Á��$¥0�^§

et�0��m��^�u�nv���©�g�|u�0m^©nmn{#e)�RoÄ �0Á ²u�^�^�n� ¶J����e0r­¯�x0lc�m«v#|�¸#mu�ket�fh0s�et�5e)�f��|)���et�m

����� % ��!t1$�4� � ! �$��%$& ��� �� %$(�(� � � � ( ���� � ! � ���º] 70�� � & VÅ� � � � ��� � � *·���� � � ! �$�>%$&Æ� ! �$��( � E� ��� � � � %$(( ���#�O�<!�� ��� ! (�( ��� �Y� ������3��Ç�!F��������� � ��1$� � 7º� � & �U� � � ���� �+È �'�#�<� � ���\] 70�� � & VA� � � ����� � ����� � �%)� /�b$b$bBÉNÇ$*3=� �#� � � ! �$��%$&Ê9 � (�( � � � %)� � % �<!�� � ����! ��� !����U!$ KË)b$bBÉNÇ$*

����� Ò�����+( ����� % � � ��� ���p�<! &G& �2� � ��� % ��� � ���#� (�� �#� 5%\Ò�( �z� %$& �2� ? ¢n£5�^�2��mu��r�wÅxr<y C *+���#� ZÒ5( �z�<!�� � % �'� �2Ì �#%)� � "! �N%$('( -$.0/$/ � � � � �� � ��N% �#�Í��� � � � ��� � � 1$�2� � ! �� È & ! �� ����� %)� 7 � � ! �$��%$&GS9 � (�( �����2� %)�N( � %$ �N% "� 9!$ � ��� �$*4V � � U � & � ( � ��O� !ÍÎ$����� � ��� &Ï%$(�( �'�[!���� Ò�( � � � %)� � % �Ð���F� %$ � (37 �'�#� (�� ���2�H*DÑÒ�S�#� U% �#�Ð! � ��� �Ò�( � �'�#� (�� ���2�·� 74� �#� x#r��n� %$ � & � ( � �S%)� � ( !^� %)� �2�Ó��� � ��� %$ � & � ( � �>Ô� ���� %$�#(3��( �3� ��%)� 7 �#� � �2� � ! � 7 = 9 �#�'���� SÔ y+e)� Ô ¢pwA�nÕ^� Ô l0eth Ô xr0�^� Ô !�� � ��� W VA��Ö � ���2� %G�70�� � & *Ø×

����� ri�nh���|)���et�m^©�ei��e)�e�x^l�e$�^m0©iy5|�����lum �#�2� (�%)��%)� �3!��[��� � ��� N� �#�G���#� � � %$( �3Ç %)� �3!��Ó�5! ��� �3!��X!$ � �#�F� � !)Ù�$��%$& *����#� Ò�( � ? lu�^{#eth#xr$m6wAx#r�y C � �� ���2�Ó���#� (�� �#�2�+*6���#� FÒ�( �U�<!�� � % ��� ;% "� 9k( �'��� !$ z-$.0/$/ %$� � & � ( � �

Page 76: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

��� % � � � � /2-^Ú6Û���� %)� 7ºÜz� ! �$��%$&G a)Ë

�<!0��� � � %)� ��� � "! ��&Ê� ���\ � �� � �3!��Í!$ z��� � � �>& ���#��� �F� ���Ý� %$ �Ý��!���� � � �S� ! � ���E-$.0/$/Y��� � � � ��� � � 1$�2� � ! �U%)� � % =% �#� ( ! % �#��� �Y� �#� ��!���� � � � ��� � ! � ���\-$.0/$/ÝÞ � � � � �� � � *

������ "! (�( ! 9 ��� � ß! ���à( �'��� !$ X�<!0���f��� �� %$(�(4� ���f��� � � � ��� � � � � ! �$��%$& Ñ"��� � ���#�#��� ��9 � � � � ��� (�% ��� (et�0��m��^�u�nv���©�g�|u�0m^©#rc�0xu�n� × % ���<! � �#�'� �G� ! � ��� & � � ��!^�J��� � � �3���2� % ��!i1$�$*

á � ���� = � �����<L�� �� �'� � �'� � � � �>� � � �5!��'� � � � � "� � ���#�2�+*6Ö ���#�#�'� %)� �2�4� 7B� �#�U�<! &G& �2� � = � ���Ý-$.0/$/ Ô� �NâU�R�� � & � � � ��# �2� � !@� & � ( � & �2� �O� ���4] 7^�� � & VÅ� � � � ��� � � *G�����F1$�2� � ! � � ��!$Î$�2�Ð��� � ! � ���·ã W@Ü ��� ����� � � �3!��� � %)��9 � (�( �<!��#� (�� �#� � �#�Ý��� � � � ��� � � �<!0���U� � � ( Q*

ä �<L � = � ���G-$.0/$/B��� � � � ��� � � ��!���� � � � � O� ��� ('% �<�2� 9 � � � % ��!���� � � �;� ! � ���G��� 9 �<!0���$*F����� � �Q9 ! � ��� �<! & � ( � � � � ���U���#� � � %$( �3Ç %)� �3!�� �2Ì � �2�#�<�$*

����� % � � �%$( ��� � � � ��� � � �<!^���4� Ì � � � � �#! � � *BV �U� ! �$��( � �� �Ýå !$ � �#�4-$.0/$/ Ô�YÜ âOT���Ö � � � � �� � � *·�����Ü â�T���Ö � � � � �� � � �<!�� ��� ! ('º� ���Ó�2� � � � ���� !$ Ü ! � � Ö � � %)� �<!��#�#�2� �·� !æ�<L � � � � %$( � %)� � 9R%)� �$ÈO�� �·å � �<!��#���2� � �2� � ! � ���U���3��Ç�!F�������5� � *

�����Y��� � � � ��� � � �<!0���Y�<L0� � ;9 � � � %ÝM �#& �X��� ����>� � � �3!��+*������ %)� ���#& �2� � "! ��� �#� zM��#& �@� ��!$Î$�2�[���Ó� 7� ���Ý�'�#� � � %$( ��Ç %)� �3!��B� � ! �$��%$& *

����� & � � ��!^� %$(�( ! 9N6% � 7 � �#& ��� � !$ 5� � ! �$��%$&Gp( !^� %)� �2�4��� ��� %)��%)� � Ò�( � K� ! %)��� % ��� � ��� &B � ( 1$� z� ! � ���] 70�� � & VÅ� � � � ��� � � *UÛR�2� %$�# � � ��� � Ò�( � � % �X��� ( ! % ���2�@ � ! &ç� ���F�k�2�n10� � !�� & �2� � = � �#� ;�70�� � &è%cé ! � � &G% L�� &G%$(5ê �<L��3�� ( � �:7B� ! � ��� �# � � = 9 � � � &G%$('( !i1$� � ��� % �@��� � � ��&B !$ K�<!^�����<ë·���3�2�#� 7 *

ìRíUîÅï ð}ñYò®ó�ô>õYö�÷�øúù~ûUüòzý�þ[ÿÐô���ò

����� ! ��� �<��� ( �\ "! �U% ���� %)� 7 � � ! �$��%$&è&E�#�� ���Y� %$& �2� 9 � � � � ��� wAx#r�y � ëGL5*YâO�#�<� � ��� wÅxr�y � ( �� � � � %)� �2�+= %· ���2��� %$( 1$� �> �3!��Ó!$ � ���F-$.0/$/ %$� � & � ( � � � � ! �$��%$& � ;�# �2� � !·�<!�� ����� � �;� ���\����� %)� 7 !$� M �2� ��<!0���$*;�S�#� � � ! �$��%$& � � � %)� � U% � ( �E�<!�� � % ������ �B� �#� %$ � & � ( �2� &B% ���#���#�\�<!0���\� (��#S('% �5� ( �������#� � �3!�� !$ �2� ��� 7 �5!��'� � �% �#�@��1 %)� � % � ( � *

���n�c¢n£^�0�u�^���n�^�n�^�n�^Õu� ¼ £n�0�^�u�^�$��½n£^�n�^�n�n�n½n½^�u�n¾���� ¼ £^�^�n�u�^�u�^½�n�n�^�n�^�^�n�u�0½���n�c¢n£^Õ0�$´����n�^�n�^�n�^Õu� ¼ £nÕ0� ¼ �^�$��½n£^Õn� ¼ �n�n½n½^�u�n¾���� ¼ £^Õ^� ¼ �^�$�0¾�n�n�^�n�^�^�n�u�0½¢^£��^�àx#r^r$mty�hlnmu��¯�m��5rne$|$�~�zw<� �c���u§�����u�5�v�lum^x#r$m~r$m)�#�«hn�#�rà��|�¥#x)�#�us��nx��0�0m)��� °��5r)xu�0�^m$�0�^x��u�#m$�x6wÒy+e)��wÅmn�$�Hµ|u�e$�#et�x^làv��0|n�u��xcyfh�s}�#|���|���|0luxpw

ri�nh��0|$���et�#m0©u�^|$�nh�lnm®£nÕ0�)h±d$�^�n�^Õ

Page 77: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

a)- VA� � � ��% � � ��1$�Y�}� � ����N��� �����

ri�nh��0|$���et�#m0©u�^mu��©uj0|n|®£^Õ^�n��d��n�0��ri�nh��0|$���et�#m0©�ei��ec��e�x^l�e)�0m0©iy5|����lnmæ£nÕ^�^Õkd$�^�^�n¢ri�nh��0|$���et�#m0©#r)mu��©uj0|n|®£^Õ0��jkd��n�5�t¢¯�x���e$x$h�lum0©�j0|^|«£^Õ^�u�~d$�^�5�c���^���cÕf�n�0�^�}�n�0�u£

�����F� � ! �$��%$& xr0�^�)©0e^g � Ý�# �2� � ! %$� � & � ( � � ��� ! ��� �<�B�<!0��� % �#�I� � � %)� � % ����� %)� 7 !$� M �2� � � ( �$*GV �� ;� �31$�2� � �#� � ( �2� %$& �E!$ � ��� ! ��� �<��� ( � %$�% � %)� ���#& �2� � *E�S��� � � �#(3� �'� � !$� M �2� � � ( �Y� ;%$�#� ! &G%)� ��� %$(�(37� �31$�2� � ��� �� ëGL w e^gih Ñ" "! � V �àÛ���� %)� 7 ×>*K���#������ %)��7 !$� M �2� � � ( � � � %)� � � � � %)� �2�· � ! &±� �#� ��m#rc�e^gth�wAx#r�y�<L %$& � ( ��� ( �º� G ��! 9 � % ��!i1$�$*�� ��� � �2� � (37 = xr��n�)©0e^g ��� � !�� (37æ� �#��� � � ä VÅÞEÈ6�3 7 ! � �����2� � !I� � � %)� �w�ength � ( � � ! & % ��! � ��� � � (�%)� "! ��& = 7 ! � � % � �# �\! ��� V���Û�Ö � & � ( � �N � � 1$� � !�� � �����[! �>( ���}�������[���ÑÒ� ��� �HÚ���� 9�9�9 *��#� 9�� !�� (�% � *��<! & �c�����c���<�H*�� � &G( ×O*

ìRíUî�� ���Nö��Gô�õ �~ö�õúô ýzû8ÿÐô�� ò

âO�#�<� � �#� w e^gth � ( �G� � � � %)� �2�+=K� � � % �I��� ( ! % ���2�Ð�'� � !ÍV � M �#��Ý( �3Î$� % � 7 ! � ��� � � � ( �$*GVQ � ��� � � %)� ��k � �#� � �3!�� O� � %)�U%)� � � !Í��� �# �2�[���X�<!�� M � �#� � �3!�� 9 � � � � ���F���� %)��7 � � ! �$��%$&B =�� � � � �# � ! &G%)� 7@� !Í� ���� ��� & ��� � ! % � ( � 9 � � � � ��� %$& �O� %$& � %$�� �#� w�ength � ( �$= % �#� � ���2� �# � % w�l0e0r � ( � � ! ( ! % � R� ��� �:9 ! � ( � � ! � � � ��� � *

ìRíUî"! #­ö�$%$�ô�õ �'&P÷+÷+öKø(#)�Nô�õOþ5òz÷*$@þ+��ö�ó�ô>õYö�÷�ø(#«÷*�,�S÷+ö.-

Ö~��!���� � � �S� ! % � %)� ��%27 � �% /2-tÙ �� � ��� � � � � �;% �� � � *R��!·�<!n� � �<� % � %)� ��%27 ��!���� � � ��� ! % �J��� � � � � � = �# �� ���U "! (�( ! 9 ��� � "! ��& Ú

xu�n��x�s#©)v0�^��/Ê°�ei���5µàxu�n��xus6¶

9 ��� � � x��^�0xus#©cv��n� � �% �Í��� � � � � �N% �#� x��^�0xus � �% � %)� ��%i7 *

�}���2�F�<! & �� ( ��� � �<!0��� � � %)� �5� � ß! ��&B,� �� ��:7 �5��!$ 5��!���� � � � �<!��u1$� �� �3!��+=�V � &\��� ��� � �2�F��� %� ���2��� %$(& !0���$* ä ! ��&G%$(�(37 =�V �}��!^� ��! ��%$('( ! 9 �<� ��� % ��� �:7 ��� !$ ���!���� � � ��&B% �#�3� �#('%)� �3!��+*���!B�<! & �� ( � � �#� ��Q7 ���U!$ �<!0���$= �# � � �#�� ß! (�( ! 9 ��� � �'�u1$!$Î %)� �3!��+Ú

e^g0�)¬5e)�0xu�^�

Ö � ��%270�%)� �\��� � � � � %$(�(37G� ��� � � �2� � �2� 9 � � � %Y�:9 !)Ù � 7^� � ( �2� �$� �D1 %$(�� �� "! (�( ! 9 �2�D� 74� �#� %)� ��%27 �<!�� � �2� � *

Page 78: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

��� % � � � � /ianÚzV � á � ( � á ! ��&B%)� S% �#� W@% � %)� � & �2� � a$a

132 4�5 687:9<;=6?>[email protected] CED�FGCIHKJML CIHNCIO�;PB ;PHQD

���#� R �2� � �3!���<L0� (�% ��� �#! 9 V ����� %$(��9 � � � &E�#(3� �3� ( � ! �#� �<�R� ( � *

ìTS�î�ì UV#«÷*�,�S÷+ö.-W$

Ö (�( � ( � �<!�� � % ���#��� � �}�<!^�#� &\�# � ���O� %$& �2� 9 � � � � �#� ? w g CG � ëGL5*

X ! % ���� � � �� � �3!�� � ! &�& ! � � � � % �Y!����S�Y� ( ��� % �Y������!������ 7 � � � ��� � �<! &G&G% �#� K%)�z� ����V��À� � ! & � �� ! ( ! % �Í� % ���Ó!$ � ���Z� ( � * á ! � �<L %$& � ( �$= � ! ( ! % � � ���\�G� ( � � %$& �2� j0|n|pw�g % �#� hx���w�g Ú

½0¤flu|^xu�fj0|^|6w�g½0¤flu|^xu��hxu�Rw�g

Ö (3� � � � %)� �31$� (�7 = � ���R� ( � �<! �( �º��� ( ! % ���2� 9 � � � %G ��� ��( �O�<! &B&G% �#�+Ú

½0¤flu|^xu�fj0|^|6w�g­h#xu�Rw�g

ìTS�î"[ �Jô�$#þ[ÿÐô���ò\$

VÅ � ���U� � ! �$��%$& � � ��� %)��%)� �2�Í��� � ! &E�#(3� �3� ( �]� ( � �� � %)�S%)� � %$(�9R%i7^�( ! % ���2� � ! � � � ��� � = %[?�( � �� � ( � CY&G%27���\� � � %)� �2�H*;���� � ( � � � (�(� V�� � ! ( ! % � %4 � � !$ 6� %$& �2��� ( � *O�R!�� � �'� � �'� �G� ���\� � ��10�3! �# �<L %$& � ( �$= % � ( �� %$(�( �2� �$�^��w�l�e^r � % �J���O� � � %)� �2�Ó�<!�� � % ���#��� �F� ���� ß! ('( ! 9 �'� �F( ����� *3Ú

j0|n|pw ghx���w g

�����2� �:7 ���� �N� �����<! &G&G% �� ln|^xu�4�$�^��w�l�e^r � ! &~� ������ � ! & � �,9 ! �#( �\� %$�# �R��! � � j0|n|pw g % �� hx���w�g� !G��� ( ! % ���2�H*

ìTS�îÅï ÿÐô�� ò«ö�õ �ÊÿP^FõYý�þ+ô_�Nõa` ö�õYö��Sòb-Æò6õ;þ

Page 79: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

a). VA� � � ��% � � ��1$�Y�}� � ����N��� �����

cedbfhg�f"cjilk4�nmporqts"k.uwv3s��&�yx

�}���2�I� ( � �%)� � ( ! % ���2�D��� � !FV��;= � ��� 7º�� %i7·( ! % �#�2� � � � � (5� ��� 74%)� ���<L0� ( �'��� � (37B� � ( ! % ���2�+*�VÅ �!�����!$ � ���� � ! �$�>%$& � ( � � ���2��� �E9 ! � Î$�2�D!��+= � ����! � ��� � !���� �9 � (�(�� � &G% �'�D��� & � & ! � 7· ! � � %)��� ��� 7 ��!�� � � � % 1$� � !�����<L^� ( ����� � (37B� �<Ù ( ! % ���2�D� % �>� � � & � � ���U!���� � �#��� � � !���� � �#��1$� ( !$� & �2� � � �� � ( ! % ���2�+*

ÉN! 9 ��1$� � = � ��5! � � ���z� ( � j0|n|pw�g � Ý( ! % ���2�H= 9 �#�����À�<!�� � % �'� \% �������� � �3!��[ "! �\� �#�4 � �#� � �3!�� y�x#et� *�����2� � ����� ( � h#xu�Rw�g � ;( ! % ���2�+= 9 ������Ó� % �#���2� N� ! %$(' !·�<!�� � % ��� % �������#� � ��!��Í "! � y5x#ei� *;�S��� � � 9 � (�( ���% �Ó� � � ! �O& � %)� �$=5���2� %$�# �Ý��! � ��� ( � �<!�� � % ��� % y�x#ei� *�V�� 9 � ('(+� � ( ! % � h#xu�Rw�g =� � � � ! � ���\� � � ! � = % �#�� �<Ù:��! 9 � ( ! % � j^|^|6w�g % �� % � 7 ! � ��� � � ( � �� � %)�S%)� �U� � � �2� � (37º( ! % ���2�+*

����� ! (���� �3!��4� z� !�� �� �6� � ( ! % � � ���.� ( �N�<!�� � % ���#��� �U� ��� y�x#ei� � � %)� � ��! � ��� � � �2�+= % �#� � ���2� ( ! % � � ���� ( � � � %)� �<!�� � % ��� �� ���Ý�#� 9 y�x#et� Ú

½0¤®�n��lu|^xn��j0|^|6w�g½0¤flu|^xu��hxu�Rw�g

Page 80: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

��� % � � � � /2.^ÚR�R!���� ����� ��� � V � � �#��� � � ä VQÞ a:{

1z| 5}>�H)~�O��[email protected]:HNO�4�5 �KHKJN;P@�����4r�

V �f� %$N%B&E�#(3� � � � �#�U!$ z�<! &G&G% �#��Ù ( ����� �9 � � ����� S� � %)�O%$(�( ! 9 �<!�� ��� ! ( !$ % � �#& ��� � !$ � �#�'� �� *�ZKL0� (�% Ù� %)� �3!�� ß! �S� ��� � �9 � � ����� � % �D��� � ! ��� �2�J� 7 � � ��� �\� ���\�<! &G&G% �#� ? e^gE�c�m^l)v C *

V � � ! � � �� ��� � %)� �>�D� %)� �· ß! ��% ��·� %$& �O!$ � ��� ( ��� ��%)� 7 � ( � ��� � � � � %$('(37 È � ��� � �&B%27 ������� % � � �2�º� 7�<L0�2� ��� ��� �E� ���N�<! &B&G% �#� ? eng3��g$|$��je$� C *����#�2� � �#� �<! &G&G% ��·� z��� �H=uV � 9 � (�( � � ! & � � "! �R% ��� 9 � %)� �% �#� ( �3� ��%)� 7 � ( ��� %$& �$= % �� 9 � (�( � � � %)� � % ��� 9 �<L0�2� ��� % � ( �\�<!$� 7 !$ K� � � ( 9 � � � � ��� �Ý��� % � � � *

����� e^gz��g$|$�#j#e$� �<! &G&G% �#�J� �%$(� ! �# �2� � ! � ��7 ! �#��( ���<�2� �;Î$� 7D% �#�º� %$& � 9 �#�2�E� �������� �#���� � V �;*

Page 81: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

.)b VA� � � ��% � � ��1$�Y�}� � ����N��� �����

Page 82: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

� CI�K9<;�>��Q5}>�HQDT; H?DTF

ì �#õOþ5÷*�Z�z^Yý�þ+ô_�Nõ������*���y�����*�����y���*�������y�*�������*���y�����*�����y���*�������y�*�����fì

[ � ò�þþ+ô�õ ����þ5ö�÷5þ5òp�����y�����*�����y���*�������*�y�������*���y�����*�����y���*�������*�y��� ï_^*�/ � � ��� �'� � ] � %)� � �2� � �#��� � � ä VÅÞ��:���<���<�<���<���<�<���<���<�<���<���<�:���<�<���<���<�<���<���<�<��� å_^*`_ � � ��� �'� � ] � %)� � �2�Í!�� � ��� W@% �p���<���<���<�<���<���<�<���<���<�<���<���<�<���<�:���<���<�<���<���<�<���OË_^* å � � ��� �'� � ] � %)� � �2� � �#��� � �}���#��! 9S ���<���<�<���<���<�<���<���<�<���<���<�<���<�:���<���<�<���<���<��Ë

ï ��$�ô�õ ����U����y���*�������y�*���������*�y�������*���y�����*�����y�*���������*�y�������*���y�����*��Så *�/ V ���R! &G&B% �#� �<���<�<���<���<�<���<���<�<���<���<�<���<���<�<���:�<���<���<�<���<���<�<���<���<�<���<���<�<���Daå *`_ X ������Z6�#� � ��� � �����<���<�<���<���<�<���<���<�<���<���<�<���<���<�<���<���<�<�<�<�<���<���<�<���<���<�<���<���<�<���Y.å * å ���#� &G% ����Ñ × á#� �#� � �3!����<���<���<�<���<�:���<���<�<���<���<�<���<���<�<���<���<�<���<���<�<���<���<�<���<�:�E{

� ��U �Nòz÷*$+^ $(��þ5ö�õ �Fö�÷*��U��y�����*�����y���*�������y�*���������*�y�����*�����y���*�~ìNì

! & � ^Fô ý�� U ð¡^\þ��S÷Hô�ö.�I�����*���y���*�������y�*���������*�y�������*���y���*�������y�çì�ï

í ¢ öRþ5ö ù~û�üò6ý�þ�$��y���*�������y�*���������*�y�������*���y���*�������y�*���������*�y�������*��ì�S-^*�/ £ %)� � % � ( � ���<���<���<�<�<�<�<���<���<�<���<���<�<���<���<�<���<���<�<���<���<�<���<���<�<���:�<���<���<�<���<���<�·/ia

-^*�/)*�/ ¤;�2� (�%)��%)� ��!��¡�<���<�<���<���<�<���<���<�<���<���<�<���<���:�<���<�<���<���<�<���<���<�<���<���<�@/ia-^*�/)*`_ X !^� %$(H% �� �O( !$� %$( ]��<!$�5� �<���<�<���<���<�<���<���<�<���<���<�<���<���<�:���<�<���<�º/ia-^*�/)* å £ %)� � % � ( �OVÅ�� � � %$( �3Ç %)� ��!������<���<�:���<�<���<���<�<���<���<�<���<���<�<���<���<�<���<���<�E/2.-^*�/)* � Ü � �� � �� �2� �N��( !$� %$( £ %)� � % � ( � ���<���<�<���<���<�<���<���<�<���<���<�<���<���<�<���<�Y/2.

-^*`_ �R!�� �� % � � �<���<���<�:���<�<���<���<�<���<���<�<���<���<�<���<���<�<���<���<�<���<���<�<�<�<�<���<���<�<���<���<�@/�{-^*`_^*�/ VA� � � � � � �R!�� �� % � � �<�<���<���<�<���<���<�<���<���<�:���<�<���<���<�<���<���<�<���<���<�<���N/�{-^*`_^*`_ X !�� � VÅ� � � � � � ��!�� �� % � � �<���<���:�<���<�<���<���<�<���<���<�<���<���<�<���<���<�<���·_)b-^*`_^* å á�( ! %)� ��� �GÜ !��'� � ��!�� �� % � � �:�<���<���<�<���<���<�<���<���<�<���<���<�<���<���<�<���<��_)b-^*`_^* � ��� %)��% � � � ���% �#�@] ��� ��� � �R!�� �� % � � ���<�<���<���<�<�<�<�<���<���<�<���<���<�<���R_)b-^*`_^*`Ë ä � X¥X ���<�<���<���<�<���<���<�<���<���<�<�<�<�<���<���<�<���<���<�<���<���<�<���<���<�<���<���<�<�G_)b

-^* å ¤ %)� % � 7 �5� �����<�<���<�:���<���<�<���<���<�<���<���<�<���<���<�<���<���<�<���<���<�<���<�:���<���<�<���<���<�<��_)b-^* � Ü !���� � � �� �<���<�<���<���<�<���:�<���<���<�<���<���<�<���<���<�<���<���<�<���<���<�<���<���<�<���:�<���<���<�<���<���\_$_

-^* ��*�/ Ü !���� � � � ] % "� �:7 �:�<���<���<�<���<���<�<���<���<�<���<���:�<���<�<���<���<�<���<���<�<���<���<�O_$_-^* ��*`_ Ü !���� � � � ¤;�2� (�%)��%)� �3!�� % �#�Í� �\���<�<���<���<�<���<���:�<���<�<���<���<�<���<���<�<��_ å-^* ��* å Ü�%$ �'� �GÜ !���� � � �>�%$ Ö � ���#& �2� � ���<�<���<���<�<���<���<�<���<���<�<�<�<�<���<�D_c�-^* ��* � TS� � ��� �#��� �EÜ !���� � � �� � ! &úá� �#� � �3!�� �<�<���<���<�<���<���<�<���<���<�<���<���N_$Ë

-^*`Ë Ö � ��%i7^ �<���<���<�<���<���<�<���:�<���<���<�<���<���<�<���<���<�<���<���<�<���<���<�<���<���<�<���<�:���<���<�<���<�D_$Ë-^*`Ë^*�/ ¤;�2� (�%)� �'� �G% �#�ºVA�#� � � %$( ��Ç2��� � Ö � ��%i7^ ���<�<���:�<���<���<�<���<���<�<���<���<�<���R_$-

Page 83: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

��� VA� � � ��% � � ��1$�Y�}� � ����N��� �����-^*`Ë^*`_ Ü�%$ �'� � Ö ����%270�%$ Ö � ���#& �2� � �����<�:���<�<���<���<�<���<���<�<���<���<�<���<���N_�a-^*`Ë^* å W@�#(3� � Ù:�� & �2� ��!�� %$( Ö � ��%i7^ �<���<���<�<���<���<�<���<���<�<���<���<�<���<���<�<���<�D_$.-^*`Ë^* � ¤;� � � ��& �'�#��� �Y� ��� ��Ç��U!$ �Ö � ��%i7^N%)� T � � � � & �����<�<���<���<�<���<���<�º_$.

-^*`- ] ���>� � � ��� � ���<���<���<�<���<���<�<���<���<�<���<���<�<���<���<�<���:�<���<���<�<���<���<�<���<���<�<���<���<�<���E_�{-^*Øa �R! & � ( �<L4VA�#� � � %$( �3Ç %)� �3!��·�<L %$& � ( � ���<���<���<�:���<�<���<���<�<���<���<�<���<���<�<���<���<�<��� å b

S ��þ�öRþ5òp-Ïò6õ;þ+$~ö�õ � ¦Y§�¨Y÷+ò\$�$�ô_�Nõ $w�y���*�������y�*���������*�y�������*���y���ÊïNïan*�/ â;��� ��%)� ! �> �<���<���<�:���<�<���<���<�<���<���<�<���<���<�<���<���<�<���<���<�<���<���<�<�<�<�<���<���<�<���<���<� å$å

an*�/)*�/ VA� � � � � � â;��� ��%)� �3!�� ���<�<���<���<�<���<���<�<���<���<�<���<���<�<���<���<�<���<�:���<���<� å$åan*�/)*`_ X !�� � VÅ� � � � � �� �<���<�<���<���<�<���<���<�<���<���<�<���<���<�<�<�<�<���<���<�<���<���<�<���<� å$åan*�/)* å á�( ! %)� ��� �GÜ !��'� �Sä;�#& ��� �� �����<���<�<���<���<�<���<���<�<���<���<�<���<���<�<���<�:��� å �an*�/)* � ��� %)��% � � � �� �<���<���<�<���<���<�:���<�<���<���<�<���<���<�<���<���<�<���<���<�<���<���<�<���<��� å �

an*`_ Ö � � � & �2� � âO�5� �>%)� ! ���% �#�DZzL^� � � �3!�� ���<���<�<���<���<�<���<���<�<���<���<�<���<���:� å �an* å VA�#� � � & �2� ��% �#��¤;�2� � � & �2� � â;��� ��%)� ! �� ���<���<�<���<���<�<���<���<�<���<���<�<�<�<�<���<���<� å Ëan* � ¤ %)� % Ö;���<� â;��� ��%)� ! �� �<�<���<���<�<���<�:���<���<�<���<���<�<���<���<�<���<���<�<���<���<�<���<���<� å Ëan*`Ë Ü6� �2�<�2���2�#�<� % ��Óâ � ��� � !$ KZ61 %$(��%)� �3!��3���<�<���<���:�<���<�<���<���<�<���<���<�<���<���<�<��� å -

© Uw�Nõ;þ�÷*�,�Óÿª�_�b« ���������*�y�������*���y�����*�����y���*�������*�y�������*���y�����*�����y��ï¬S.^*�/ ] � %)� � & �2� � ;% �#�DÛ ( !0� Î ���<�<���<���<�<���<�:���<���<�<���<���<�<���<���<�<���<���<�<���<���<�<���<��� å a.^*`_ VÅ 'Ù:Z (� �e���<���<�<���<���<�<���<���<�<���<���<�<���<���<�<���<�:���<���<�<���<���<�<���<���<�<���<���<�<���<���<�<���<� å a.^* å �}�#� ( �t���<���<�<���<���<�<���<���<�<���<���:�<���<�<���<���<�<���<���<�<���<���<�<���<���<�<���<���<�<���<���:�<���<� å a.^* � á ! � �<�<���:�<���<���<�<���<���<�<���<���<�<���<���<�<���<���<�<���<���<�<���:�<���<���<�<���<���<�<���<���<�<���<���<�<� å ..^*`Ë Û � � % Î3�<�:���<�<���<���<�<���<���<�<���<���<�<���<���<�<���<���<�<���<���<�<�<�<�<���<���<�<���<���<�<���<���<�<���<� å .

­ �?U0¢ �ÝýK÷+òzò6õ®#«÷Hô>õ;þ�ô>õ �ª�y�y�����*�����y���*�������y�*���������*�y�������*���y���*�[ï,­{^*�/ Ü6� ��� � ��� � ZKL %$& � ( � ���<�<���<���<�<���<���<�<���<�:���<���<�<���<���<�<���<���<�<���<���<�<���<���<�<���<� å {{^*`_ á ! �>&G%)��� ��� � ��! &G&G% �#�Ó] �#&G&G%)� 7 �<�<���<���<�<���<���<�<���<���<�:���<�<���<���<�<���<���<�<�º��b{^* å ]^���2��� %$(+ä ! � � �<�<�<���<���<�<���<���<�<���:�<���<���<�<���<���<�<���<���<�<���<���<�<���<���<�<���<���<�<���<�E��b

ìp¯ #«÷+òp¨Y÷*�ÝýKò\$%$��S÷N�y�*���������*�y�������*���y���*�������y�*���������*�y�������*���y�����*���Eì/�b0*�/ Ü6� ��� � !0�<� ! �SW@% � � ! �<�<���<���<�<���<���<�<���<���<�<�<�<�<���<���<�<���<���<�<���<���<�<���<���<�<�º�#//�b0*`_ �R!���#� � �3!�� %$( �<! & ��� (�%)� �3!��°�<���<���<�:���<�<���<���<�<���<���<�<���<���<�<���<���<�<���<���<�<���<���G�u_/�b0* å �R! & � %)� � !�� 9 � � � � � ���#(�%)� ��� � ��� � !^�<� ! �� ���<�<���<���<�<���<���<�<���<���<�<���<���G� å

ìSì ð}ñYò���U �Jô>ûY÷+ö�÷�ø ÿÐô���òA�¥�������*�y�������*���y�����*�����y���*�������*�y�������*�ª�Z!/$/)*�/ â �#� � ��� �R!�� ��� ! ( �����<�:���<���<�<���<���<�<���<���<�<���<���<�<���<���<�<���<���<�<���<�:���<���<�<���<���U�uË

/$/)*�/)*�/ ¤U� W ! � ! �� ���<���<�<���<���<�<���<���<�<���<���<�<���<���<�<���<���<�<���<���:�<���<�<���<���z�uË/$/)*�/)*`_ ]^� � 1$! W ! � ! � �:�<���<���<�<���:�<���<���<�<���<���<�<���<���<�<���<���<�<���<���<�<���<���<�<���u-/$/)*�/)* å �;�#���#� � �2� � �3!�� %$( ¤ � �31$� �� �<�<���<���<�<���<���<�<���<���<�<���<���<�<���<���<�<���<���Í�na

/$/)*�/)* å *�/ X Zp¤8¤ � �31$� �� ���<���<���<�<���:�<���<���<�<���<���<�<���<���<�<���<���<�<���6�u./$/)*�/)* å *`_ ZzL^� % � �3!��ºÛR! %)� � W ! � ! �NÜ ! � � �<���<�<���<���<�<�<�<�<���<�·�u.

Page 84: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

�����/$/)*`_ ]^�2� ! � VA��� ��� ���<���<�<���<���<�<���<���<�<�<�<�<���<���<�<���<���<�<���<���<�<���<���<�<���<���<�<���<���<�<���±{

/$/)*`_^*�/ ¤O� � � � %$( VÅ��� ��� ���<���<�<���<���<�<���<���<�<�<�<�<���<���<�<���<���<�<���<���<�<���<���<�<���S�±{/$/)*`_^*`_ Ö;� %$( ! � VA��� �#� ���<���<���<�<���<���<�<���<���<�<���<���:�<���<�<���<���<�<���<���<�<���<���NË)b/$/)*`_^* å VA�� ��%)� �2�J] � � �7^ � � & ���<���<���<�<���:�<���<���<�<���<���<�<���<���<�<���<���<�<���<���\Ë0/

/$/)*`_^* å *�/ VA�� ��%)� �2�D� ��% � & � �3!��°�²�<���<���<�<���<���<�<���<�:���<���<�<���<�FË0//$/)*`_^* å *`_ VA�� ��%)� �2�DT��2�<��� � �3!��3�����<�:���<���<�<���<���<�<���<���<�<���<���<�<���EË0/

/$/)*`_^* � ]0� % � Zp�#�<!^�#� �� ���<���<���<�<���<���<�<���<���<�<���<���<�<�<�<�<���<���<�<���<���<�<���<��Ë å/$/)* å ��� & �\�R! &G&G% �� �����<�<���<���<�<���<���<�:���<�<���<���<�<���<���<�<���<���<�<���<���<�<���<���<�<���<��Ëc�/$/)* � �,!���� á#� �#� � �3!�� ���<�<���<���<�<���<���<�<���<���<�<���<���<�<���<���<�<���<�:���<���<�<���<���<�<���<���<�ºË$Ë/$/)*`Ë W �2� � ��� �G% �#��¤O� %)� �#! �� ��� Sá� �#� � �3!�� �����<�<���<���<�<���<���<�<���:�<���<���<�<���<���<�<�zË$Ë

/$/)*`Ë^*�/ & �2� � *��P�<���<���<�<���<���<�<���<���<�<���<���<�<�<�<�<���<���<�<���<���<�<���<���<�<���<���<�<�ÍË$Ë/$/)*`Ë^*`_ �#� %)� ��! �� ���)*��¬���<���<�:���<�<���<���<�<���<���<�<���<���<�<���<���<�<���<���<�<���<���<�<�<�<�YË$-

ìT[ ` ^P��þ�ô"³^ðJö�$��Ýô�õ �´�������*���y�����*�����y�*���������*�y�������*���y�����*�����y���*�����w!]­/2_^*�/ â;1$� � 1^�3� 9 �<���<���<�<���<���<�<���<���:�<���<�<���<���<�<���<���<�<���<���<�<���<���<�<���<���<�<���<���<�:���<�OË�{/2_^*`_ � � � %)� ��� �Gä � 9kÜz� !^�<� � �<�<���<���<�<���<���<�<���<���<�<���<�:���<���<�<���<���<�<���<���<�<���<�D-)b/2_^* å ¤;� ���� ! 7 �'� �BÜz� !^�<� � �:�<���<�<���<���<�<���<���<�<���<���<�<���<���<�<���<���:�<���<�<���<���<�<���<�F-0//2_^* � Ü6� !^�<� �SW@% � %)� � & �2� � �R! &G&B% �#� �<���<���<�<���<���<�<���<���<�<���<���<�<���<���<�<���<���\-0//2_^*`Ë Ü6� !^�<� �SW@% � %)� � & �2� �,X ��� ��%)� 7·á#� �#� � �3!�� ���<���<�<���<���<�<���<���<�<���<���<�<���<���N-0/

ìRï ÿª�_�NöRþ�ô�õ �µ#)�Nô�õOþ�ÿP^FõYý�þ�ô��Nõ $ ���*���y�����*�����y���*�������y�*�������*���y�ÆíNï

ì\� ` òb-W�S÷�ø®&±ýKýKò\$�$�ÿP^FõYý�þ�ô��Nõ $Y�����*�����y���*�������y�*���������*�y�����*��í¬!

ìT! ¦À÷+÷*�N÷'¶Êö�õ �z��ô>õ �}�y�����*�����y���*�������y�*���������*�y�����*�����y���*�������y�*�Æí¬S/2Ë^*�/ �R! & �� ( �<Ù:��� & �;Z � � ! �� ���<�<���<���<�<���<���<�<���<���<�:���<�<���<���<�<���<���<�<���<���<�<���<���<�O-�a/2Ë^*`_ T � �0Ù:��� & �OZ � � ! �� ���<���<�<���<���<�<���<���<�<���<���<�<���<���<�<�<�<�<���<���<�<���<���<�<���<���<�<���R-�a

ìRí ó�ô�õYö�÷�ø·#«÷*�]�N÷+ö.-W$��������y���*�������*�y�������*���y�����*�����y���*�������y�*�����Xí,­/2-^*�/ ���#�UÛR�'� %)� 7 ]^! ��� �<� á � ( �����<�<���<���<�<���<���<�<���<���<�<���:�<���<���<�<���<���<�<���<���<�<���<��-�{

/2-^*�/)*�/ ¤;�2� (�%)� �'� � £ %)� � % � ( � ���DÛ���� %)� 7·á � ( � �<���<���<�<���<���<�<���<���<�<���<���Ra^//2-^*�/)*`_ ¤;�2� (�%)� �'� �G% �DVA�#� � � %$( ��Ç %)� �3!�� Üz� ! �$��%$& �:�<���<�<���<���<�<���<���<�<���<���Ea^/

/2-^*`_ VA� � � ����� � � Ù¸¤ � �31$�2�JÛR�'� %)� 74Ü6� ! �$��%$&G �<���<���<�<���<���<�<�<�<�<���<���<�<���<���<�<���<���<��a)_/2-^* å ���#�UÛR�'� %)� 7 â;� M �2� ��á � ( �\���<���<�<���<���<�<���<���<�<���<���<�<���<���<�<���<���<�<���:�<���<���<�<�Sa)Ë/2-^* � X ! % �#��� �G% �Í�'�<� á � ( �y���<�<���<�:���<���<�<���<���<�<���<���<�<���<���<�<���<���<�<���<���<�<���<���:�<���Ra)-/2-^*`Ë Ü�%$ �'� � Ö ����%27DÜ !���� � � ���� ! % Û���� %)� 7·Ü6� ! �$��%$& �<�<���<���<�<���<���:�<���<�<���<���·a)-

ìTS ��U ÿÐô�� ò ÿ �N÷�-ÆöRþ�$~ö�õ �j` ö�õYö��Nòp-Æòpõ;þ��¥�*�y�������*���y���*�������0S,S/ian*�/ � Ü6� ! �$��%$&G �<�<���<�:���<���<�<���<���<�<���<���<�<���<���<�<���<���<�<���<���<�<���<�:���<���<�<���<���<�<�Ja$a/ian*`_ X � ���á � ( � ���<�<���<���<�<���<�:���<���<�<���<���<�<���<���<�<���<���<�<���<���<�<���<���<�<���<���:�<���<�<���<�Ua$a/ian* å á � ( � % �� á#� �#� � ��!�� WÓ% � %)� � & �2� � ���<���<�:���<�<���<���<�<���<���<�<���<���<�<���<���<�<���<���Ra$a

Page 85: cs.brynmawr.edudblank/cs376/docs/ic.pdf · yFv-! Q.A=;G OH^ bd# .AG01 *-%-: .0,/13# O \ \ F M bd# .A=;GK!$: .0,/I$=tye Cb0y BC1$G ?Kva1$G0.R i,j? ! y¡'/!$#aY3%-!HY$=@: 13# ?0,/?A.0,/#-Y¢1

�31 VA� � � ��% � � ��1$�Y�}� � ����N��� �����/ian* å *�/ �;� ( ! % �#�'� �Fá � ( � ���<���<�<�<�<�<���<���<�<���<���<�<���<���<�<���<���<�<���<���<�<���<���@a).

칩 U0�;õ�ºz�,^Y÷Hô�õ �}��U ^Fõ �Fòz÷8��»��¼V�����y�*���������*�y�������*���y���*�����NS]­