From d593dc5e178b77954249d3a93b6b6a14ea336f90 Mon Sep 17 00:00:00 2001 From: Claudio Maggioni Date: Tue, 14 May 2019 08:57:03 +0200 Subject: [PATCH] Fixed GA3 again and again and again --- GA3/ga3.pdf | Bin 227034 -> 226844 bytes GA3/ga3.tex | 35 +++++++++++++++++++++-------------- 2 files changed, 21 insertions(+), 14 deletions(-) diff --git a/GA3/ga3.pdf b/GA3/ga3.pdf index a18655445c0fff1e2faaf144041dbe5af8335d3e..e094ee2197d2b38263830c07377965896b8c919b 100644 GIT binary patch delta 12922 zcmaiaQ*b3fyKQXSwv!zjJGL{ijmgB^NhY>!+nm@F+xA2gTX+6*?>SZH={|N>*ZS64 z->T}a?q0t{&b~m7rvm3mA}6B<9cdXjEwEwvUDaI|QJNh1e0;3Nvct2(&vhvZn%m(> zy29J4!4Kt~{8Cz}VUXO9XrQHSo%!Gu9*r5}K6N^H2Ix@qShm}NrN-p$VlcIiz=u^z#KB8l+uDq;q) z*1q8*W3J0#vX6G_Xm4n4U`Cr7Xe%x}8f4WYH3M<%-)fD@uc&-fMXA3 zqfkP!qF2kFLOs*@-7DxMlPj>Zyw=Y4jq;-og2Qv@b~0+H>e4!+28siZo{yfqT~<)I zEFQQOO{2q!JdP~kRx4ORg3$d!R79(MR3+mzF&ZriBMKR+Y6L34>#{|!9gGu`QNHde zMD)V_Ml`MN!oYH$WY$h}w4W2fB$i7vt{Bd zWx=&cvn?^|LuM}N(cjEz9bqBBx6p|$=m{}(r14v(cjGSES`7f8?55cSuYQ5UD2oi# zF2Cp2T93B06EiNHzSC*?;IQX7lJtn1tDL=Q0W*pdmu`%<^D`FbTdsxV@U_JU_-X3` z0*`DPY{T5&drXwxrsivPZR$yjcYeKNJDIQfF5dF{ZI8WkQ4zTp5brNs*X@ugi6eTA zxF7h|ecipejy+7UR=r^F^*wD(Y7j=S5L}!|eXw*%8}P`Wgh21^tFSqJ2u^5kx>>0< zDmJ35){x)HjAQIb_oE)Ne}Ddvi6lbxmZ9nqMmgE|#*!vy?W{e!|Aa{(yu+$IEyAY9 zCY7z$rL&Erh0dT~kn>essk4ohhcoeZd#`}d+P+o2lBMp5J5zO5Yw*x+pjo!b^q5uV z*B#1|dp=wRGU)WWa|5+hj%T?qtavZTcUrt@Xht+T&4?c0E1V!*iLh)qRE3SYy{NR7 zb*|TOWAlA9z7HCW;U@vd(Jt?7K_G9McE^f=s}F|1-b)Y1dwZ3?I?CbcNpJ4nf0}O< zKLfr?1UFsc|9ErgV8br*p(x(n3wHVn zflE8@I|U1g{?c+pZq*w$s!G|$4hf&WI!MF;JI@O*tIK6u?)GHGsa>hF0pa#z zt#$AF)@H7G+WD1+8hvjKxxbMR5{HrW5R!>-;`c-7;)ly|p~LzQ$7+miXBE1cXNBFR z7-`ef;d@)IXgmkiN^J0yO0FibrATy{YArT9UgdF&X(G9CbQSue3}_iXDKhpWW33Gk z{dkX(s>?u)y#R&C{EmIrfX|kRtlXJX!Qgr~(IZ9o110qwFHdJ%QsQ_pL^=?TGBUU@ z)P)Mqgot{>iMGU^7K>~H&Sc15LX}dJGPyS}40h-IVaahtn^PR4z=A1Lgoo#7_@?nj z0&=INFdZmLost3lJpx@O8Q$_?)zu%=M_g1tOOeg7r!N7Xtu)YUqQi8>Yv6gxmylIGE~ZVI@C#mB&!epjg&Tntu2WQ8?j(jx<@pXF+)r63lk`e%fN4DkIm%s zs2+{oqg4*y#O`IKnMUXS0lab`=KljI{|7LgG#gBq{LL9jL(a<*TrCz|Mu9J#OE59{ zlkb}hw;5Fj<5Swh$HfCkrqN$FojWs`#F}?Ji5rH&Ynmy*Dq6JAip{Rt>M#=z_c)R8 zo1cLh^L@L>861EPGX}5xkhKZylMN!`v#**R^a;i?yqe$G;Jui8ol?g)o=pwIuzp^D zydeQkwfeIu^v;~G0EYGmt~~j65~7%hGCutWo89vWP4%Pmcm@xs)v_A3w+Y_i1G>P| zUx405i7vn*n61#9&bC+`D-`nxYeZ3z?lkXBrIejrMfU$$@bJ%q&tyuCv$?R#2oJ8Y z_n)NWNdM}dPA~-s|06H_pS*3N**SX)K>aTRvT11|(C7d`c>m1?^ndA0Wf*gR<-6>Q z?%VqK8O2eY8G)vK7AWW*)&|+51LQ&hh{kx7@z!{g1o#YUveigQp;da<*Ri3)h{s+)bX=)yVbc;=%X~7>=-0%ZAYIr zdc&X~nRHPcYY~BR`~bv!%zsh9 zoFt&vmdpb2a}??KwmiJpy`e{Wh_}2>faLNJ_yrkDZ@|2by(uid&Kq)>AiJS&5$ zZh*HfVqH?6DWU`%3k)2{6or3*=lmCV&U7xd-9 z;^0ga!RXZDs%A@PD#$j#0l&y1NFv@;@DenXClV@x}zx|MJ=J$%kiw z0>Xw&QOo@nkZcBpp^jpSd?L#@Ks-*w0K-rs*aSvD3P)8+G)a&#!| zEOGj%{t2N<=gOvKiAV*}HRb+K82&2@yvorpVnpMcRR5bo2Qj;3x@D7-w1}(i(qUc& z?*Sz+qX0-IIfl=*!!Cs<#*WAJjx|X~nb~l9m1djd^_OqjMlox)F^D&8A14rN%W~1T z4bKFs&3N(mLPJZit?Fs{~3p)*f09%c}cqI7+AzJ{ZK^86P-Z}Oc=cRS5PGsj3D(U7s zM@cK9%4IdGyIk1E)kgSh3Pi&^TLxIAS>tGCzd3>!L{d`&Q4-}3IP~8#V9+tnAj&Zf<6F#Q-VvSzHu=XUs8-Lby0oCk;lw^LJ_pD|@+lh(LK(27HPJY( zK^QeS40~hl<>p){sl|FK24%3NimuVjf?KR0sFazJAC9zP!Vu0$&dBLR>;*YxoSNMp zO1E=dlBersm$o^bf77&A5=WG`L_{1ux_z^*ZhwgQgC4cdK|Q@SB7orFW&u6PEZ-55p@siLoQl&Z^MtN?GTd-|AU5NA?ZVB%&IrrSMH|UUHFG~y}^_`BGiZnb{`_D4 zWuI#N>M}H{dSODwM(T%ZL}U&0v+!SaXA6Y$1Il{~Cc8bg?y6)$oQU28)<%*w^5liG zRtDBtX{c|b3xpQrTpan;SdS@Sl}&XdcA+4@5;UsS75nN{sWnnBxM8$ZCg+xVckEXI zqpv~#m)Kl%<6u#uU}Y1qf2AS+S%N3}&l2#-5&j>?)WKpw-$@1k(h_HqeD`rV(De;9 za|xQSf1MH~E(5oLDcWHH?z+&-C%CZoJ4{HJmc0p|JeGbtgBSzu z2NEx!Fv;B9XT_%2f}u>I3eY@))t4NQQycjM&nxPb_%!X=4{*v#^_H~@I>R|ZJ2`iVs~>vo!R+I3vgD}ZasM2%7*1p500lbmHSK}j|?yiz(Jc}$L)ju)6~ zi4uY%Xq9R8;9xHIC)IJ=jky!kkCkQT)SO=32#<8QRd0TVpq9s`N}d=(MBRq<^yIBn z>L3Fe!5>Y1u_gW>;#^5 z?0MV_b&tSzQMD5GPU0a=@v#KbiD+>s$CmU=OjQh+lpkp~sDpGWES& z)h`HMf!;gyQ34BmkCyTEFzFD~U>0>KW4hll-{scL=TdxsX2Wpx7Q%`g6Imma-ir`@ z?3cwWkQdcg0SW^4uGNZ>2;X_%xs}!xr;N3JKGHo(p&^`47Z~n)MMTuX`0UV7Fi~Pa+P=s4=a*~C4#Ho0%>EUYK$0In=alV=d=^|$2gY8>CEOt z>xh%f#@WpfJOYOrS?S#kR%AzTYCt_H(Jkmh(xjo#g=*48sF({Fh#nNq(e!BP5pB0Y zS%?F;ARV5WE%{~5HLNTxe(?E}jg|JNjobJ3=} zP(Kl_)#Y>TQr$<-l;J~#I24L;vwNI|4-ZL@F!iskHi4EX6Xw30;Z^JMwf(0NY%wCk zw#JCQZPqG3J%X+$`Z*z7TEXMW_~?jJtncS1*J7^mG7^eAQn3D1s|3aN39~alB0Af= z&}_$pilqk9)ny6JJ!37&r58+MVWPafK$Ul;V}4V^`R^yU`Nz6kr29&6T1b%mtZixUj2@D{it#W z$euUMAgcIB6fu@68qT&&194q+AULI>dy`CU*%ZkJ?l;2O#zQdRg+7T;B8{MzK@Qc4 z>)7jGiD2h;j20d=nCN39sch$)GK|8nmS*?-2mm1zgj|KUa!s@N*h$~0mPD-DnYv#>reh6qrK49K8d4}3WV!ytdp zjSPr^G`Cs~B+A%Zra=is8NF19hdagxqe25yEBCZq%c~y~{T%?x7c1aJ81twCBRi2S zN^nDi^#!+TSwn@Ah8G_g86KReiL$he&KBO){cF?8fMVq9#9B$q z9!Lw}%YBmLC9Uk+2lE?HrB_)t@O4-cZ+ zmO#O5pl0w1bd!lEJna!AAZ4W&Cz;wNH#Vbtj7!3*?vuEcyh(+^E1U~hcC^t`);Qfd zH0q!@Qro`o3dk|!2)0KnMuUPFeI9bWB0TS%lH1V7?Me?gW%Kp6zINUFwl|tebokgR z6g{qP2=UsH2OI1j`I_PV(f-J+ zlybsoBk1+Fa$V$p7V@*FKge?JI3$89zr%pgEPk~M6FF9}X zCq9N55Q+7VY|MoZyt~D|IU9OfwLn&om!XMA+18&q3> zKk?*k`8qSy$6}Xtoj-CJ?J7S!iefXmtw$7fJq@aazEVmg;*C2qhfZBuxM_4)bzNpR zP96nVp5!N(KO&!ep$vaC!XwAgCn5Q+#Jb=sfGS1SPuV>AhYKq`*|n7cynp0;cmz{4 zj|gTe&-`>l&x_ic&Iq#GR$cP0C$a-7Uc#N}B)0{AMAuCIJsmk2%n+S3ucYwwp@qHp z*gNde^g7aPV=ChM3*a%FH`?2v&^JpphyyVQ%r{u$7XT`5gvDTKO&-|RtrS^<9O^p< zK>+Gzxk^XyD~5%8!@|;1Vzf`yAxJw&cEcm*=4c^}bZSR|XpV@U=*us$}u+eVhtWUq@ zR}7u_^gD0FIft|q@Zy2QJ=Bk^0 zeq@_@7Iipp-Rwr5UG9PHd8q`o>B@9}I{1y0)rfg0nC zTTRBr-;R^+7l(&mjBh?|I^H27t>pf?3gyEQoXMrNcDHg8aO7N8M!y{nu1#Yn9P9%f zqGSGcuOGzzK8E*>@k0-+AHcV_U29tgx8w4@QH#c3F3I-!2mv_l8NwJB6}F+UP|NA} zFJ~00Yw$~=(CIHxcD<@;@r9a}gM2L!5#}iR^JW~6N0|(F^r8siv)AI_SKE`4){Q?> zqRKY%8QSiX&#$g`ub=T8lVIL#KL_$@VwDpgYd=W;SUp3Ul6;>)jr@J#D5jg8GCy-p zATrk3cxY>Wq=(@K2+O9;B~KU8Cch7Aa1^@&N21mHeDrUs+Yo0Zrmmx;ROv zxxHrtLl5P_H>yv0pj~?28hRBj{(zfeX&6xYKNS|ftT^kZ4VA8BTd^cLYIsD9esV-_ z+k4zE>&u&)r*MHWJ=x_t{Ia{B)tpi4{K8*nLTiF0pJP8+xkM15`jey9MpoY{a{4zU zi#VIqsK0620b|rqTNTeJ7Sxrr4Cg(2>NRl3^M}VenVZ3!+&|t0=ixUE+tDeuM$A3& z`*to=HHO@|@oBz-(+)Jp%muN8Pj6AGA9M#o$M@&lvXr8h)m!SceXGuyyc}G;)wiCX z=E@H5l)lOy@=9-Qd}f^`Oyh4+F0#Oc(hAPUYaTCeIK>c`6%r+-4iKl&Z%z4^O~D31 zAHdPtO+Ddym{f9_8DejU9xI~q+IPk?&00>qjoY0qHV#YkAW751g|s-E?o!1X%L1*- z%a5PyfS>JC3O0!JxFSDx@b%vqYNi}Z-Q1k-^?OWj4SUK zUodV6&-Z;a?yJI&hyi7yJ(|<|LNAP6N5$vvST1|2^9t2vNnPUmF@TKR*UrD4mxQ2+ z8_T?|giG0-M}i~+skRmusr^|W(reB}EW?pa2JvEf!8pBeDUdV6jl9PBI7p4`zGUEn zI9EX$rxd!1lH{VxZlZmX0n|+S)$S7??|Uo7+T*t?)gS)Wx8$1KD0Ai^MQFz_zR-=cA7i^(^9E8})3^Z=)hCj4mK1 z{m>>wu;m$cP6>c?Sz5?fRFL~?a?c3<f(-)g=VWo?PLciNl>>Cs}S0iz3H}OTXy4Jqn%0~aTG^jo})5X@~1e& z-qScKTsy_bneG|@6jv}^40_FS&CM)@( zK*;B6kh>J8{Nt`w*{;<+qXhHsld-HRAzi{oA7=w*#D{fVXy+u8&|>5k^wd|e#)G43 z%k4D#tRiT>oz;K^H;VA15*dLP>$3#De9V{f_BZYs-gE@^Wbspsm9)Xry=|* z%XX`}p}4g5mt1duco$+!`vyswTw8YDZn}BqQGOFq6+GWlDc@%_(^vKzheOs znlloi#ZJB>Db9YVVUR|R?yrY*+qSUr-)uUKHvB~#*R)vPNke(IKlKo14*@Uhyh)np z6^e6_*Q`?>+~AmezD1YsDrX`!xvqa7DG>tf)$et7IkEVhM(E*De~CTm;$|@gQ50g0 zXbjhF^QzVP4Z@XNmuN^7$#kA55=~!!>&hC~O)A9f#dBdOxwZ>e!lS0~sJs7AW$su9 zXxQ9{L zW7<6c0q&Ga*5; zjikJREKhK|y9BeK_CC9*%h}5LLkASh=iUC#s%50Wfk(r-4?H8Sp3%qr!v>m@~}5*{j|Ol;}B5n>yc>pRBaDE z7n8L_vSGxlYo!VaphUwDJJ~U%-)DSrce*fW$#->uyrhEJix#$7s zKr-FyxhvVKp!!4C16sRn5lz=vn4wnzxVZg(`6ma-bJ#CxC}tQ`(lpmk`4jL9e!DhX zCxNl~wm2VVl(v@iu#9!AHk!p)+?C-tO?E+Sz65u;t~9eG+zpgt-O@2*#e{oZdl-Gm zrzm&T)9s5Sb`)7`lr{hkQ!o=Qxd+ktXQ_EIvjz9?^JY#lAzU|!ReE8RH*!*oq$bq# zOX0(vrP>cmhhtJ$!R&w$W6}33NSfz!FdPc;W08oDJD-pKDK&l>|7pIh7m;zN%T0*g z^wI9)&b6SeQa5W%8Kp(}gY*(;ZTYijIIL$Fysc*#q9h-dlZ}^)lY=YG))JEFe+Ds@ zkQbnD%9OGg|6X){j~diucCl7)sVyLN`^_QEt~7hHsRVG146j;-<{I@HnWq|rv9|`U z5!Xl!oK{!<{>>U29j<^I2~YDaTw#9$A19+RRCcg=1bHetQNi0XXwb~E+e(hj3M(nW ztHwtTKnkfI3C*S&C>h6y>Tbw}%wZ$Auv-9fHD3>+Cb7)~M{@1+=+n<{+kS|qLQ2F} zKt7%fU)Z(DdG1dYL(45@w2}N7xu&6#Ss3KzH+w@2u0?!1b zf@l7~yTZ=r#|XATzd@!$$?t-OGD-KK5~(c!!<9rW{03es%wbn(3|<+(ONixyqd*3V zL`)|dzlAu1!>dfOAbY^cFQTx3$3YIYUWh`G$Tn9ozLvGw#V1d}LKsT?+ebwbU-JEa z)r5vl!um43Xq4Y}Qqk3rL)x;L<5P0(fOTT78BdW`VUQKo`#nEBnde}^6oOWfXB*e*=cl{Z zL=U{wI&Dnl0ZC{aJ4zGg5~>K*NT=~gu85UynqYdaO4{Ls0X8{@o7l|L=+P<2gxz8X z%)%<|rfA=NJl3lE?+~2@uDLJLZ$6?Pc|=h+a1pE$1CZn%_bx zbyW}7iUek@7tU9DDvlGodIB9Gk;; z9j~Y~x3!X|`}14~#aAOW4)u~idg08e3AkA};_2!tPriv*227DS=AAcZr zTBXogkg?3o3O4uDFIKpLGEg0WkTtCK_|OS-Vn~IQCKUZ}9N=8JFcDCwNMOoqP+|o! z{kwbDiM=3@>iOBS;oY+|%P8$??GQET1p)}iM$9EuEmJ0FSaAcaZ(~Mon=py$Va#K|VVucT}V|aYeKfw9=BAAz9ut{vQ zpRN7%+4*7A2BO^sea+dK3S3rkq$o|!UGNz9TUX(nxp(!T0sSHb(LbIDsJ=xOmQKyYP!rL_ zuyJX6r*b8~YG{?{pC+zOGt8FhXSk;3F+bLn*$2Mo2>-q~mH4JJoZP8)Y_N<0D!R_%jjQ%7`X%?U5Y3}HS4St_{t^;n zLUXMT@9?Y{Xl{92?xP5p-&$|hPzrHXtW>5v)_7T)gmX09Uz}lhlKt2$ec25ifl)gk zsNvAC;?`p|+Xp)4Z1{#PDvN}rYbd=Q+Oni%7ke{+mQ{M_8EQF7w18&2n;DQQKJ9q! zpD$j+Trst;@p0yu6}v@qOW74M+?u~*1T;#=5V**5WSi)|^(65T?j1KB3Uh+<9lSC4Re(GWOPKrN=4PkkIOFsc64cE}XE;d3P7ot^7bV&@}9tt~s^CB?pY zsJk`?Ih{OIDQ|pvKYiwRoy8S_J-_J=T30AhEENg=@7J!=J7J@SPvL*GW;7jG|dWp)rO0d6{d4O@xL>zSNL8 zLOt~#M_ui&Q9py6?$X|+KVz@%)D5qJLo=|TUhMa-F8n)0;ay6@+aDU&=ca=HzLTXZ zKPM}*j!O2I^`^at?tB8G>IM3m#kk|-wQP>dK3D}v{evvGpUToiww0ph%vEBGJ>6CG zH<8{BI#Y^~T(M521W#-^4uK?pKdKgS;Gzq+YG z72Cjho;Ra7;jT)mDYjj>r^pKGq2}f*O`T?~MYUh6kHPs@cfnTklfae<$*lv@XLJ!} zayAA3iH*i}Me~pE*Eg5b?()m^p^~y1^uw4DXG?0Tdkf5a?=%ArSKZq$jSD)HPY9OD zg%1k7Z}ZASYA>bM4b%h%wGFvB1`IkN!|Bdp-y(OyBK;g9 z%wb36jrVK5bGW_R_hIkZc?V9j2;gb&w{H&?>_OZ9dlLT8Pk6{^XqEMSb*K5RI@!uD zPT8xPbNk+&fW6-BGeLvEpasN!p(qO8PG`UrPSJzji@b2aOh>hW3cz zN8yWi-+MPl_TB+gI&l+r>E1=y#&idr=q{%Yz`6xGFDEn2I?l#kopH%HMp4t}A%~>F z{13`S?vgmdkk#(3k1bp$%lSH;uo1P_2!sT#SLnTszXZ!J+E=N+?A-Z&6xIe7ZQINC zY`)w#M)HL1)G3YcnOmSlTzr!Qktar4?Zjj5otU79{g}a!eLHY|@%iy(s-qwH?|6^< zVZ%PnfR~ECYZRDMU)Sjg+Uf=x2YFG~76WlbUv=}P)c&x>~crm(_;wMM5TpuDu5xyk->zng3SXntVJ0HLLEc;3<$(;s6T{SYF zKjHRn;-xxo#CC5p7}_$&k`(f*W!QJYInMA(ZCeWd@O-vb{-{R%%89u zCvqlx-`EubYcs>5Nm$)SCOm&2;0}B~YM1iWBs$wq$dSSdvDBPVkE74$Y!BdIbq>yk-a*3P!vU0GkR=#TtVhDT> z{PVD4$zM5ssUKQfCXQ!@Ggc`o7#Hp4X|X;NM7Pj@&vE4n+Vu+6Dcxs)5!9KWpbg3v zVc0n<7o^Ybm1W55ywg7-8W!C(Qi*J9(jq=4c!?rvLU~8!M#70Jxc2J8TSAj|R4P49 zbfgHdf1;K2*0#u@Ox4ma#%*2jVekBTV=fm6SNQnc>3^_)w`=dsXHr|3-2u}b>Swjs zjk;6$GXaGcv;r+HP2lofZH$k3ReG5ki>;uVN&6;fhUA3Bag6yud|p} zVPI@)9boB{g}0NhUDGE4rS&^$Yv}eSrl_7f*#>*rnRsE0;^2y{hJSzN4f(RZcjMw* z${z@IX8p<$>^!g)p%YqSeME$&MrehZK7~buBs|7h-u{(UuVV z!%QAF^{&Pm-A=#t=fuR6GxH9Idm!_wY8&z7V&6L^m|l;^DFlE~%N#P@2f|qX3EDs( zF>oo|;+t$uVAQrj&g?`LPjgjzZ=~E8Q!-31aklD1<~C%?3zurf4qr+{&?hOgUkR`O zJK6CIf4621?cB?fW{y+lJ9i~}Rr|TcredfKfbv|6J<*-JF(~C|;_BEPrsrZ%?nsi= zC4B}d^9$^tS7tpe!xhq5g%7~a%L!x$a!LTWc=@;h99)uYoMLQ105=bhBp)Y_Fqz>0 zcZtD&KSGlM*pkS|7(moBovc5d@rG|)w%c&sstU{Ps%kacey!xF$xShd2gl=4xkoKg zHLOaSKH%aZNx@jM%m0efm^OPk^vT`1K86k`gnXtKC4|)$j zeT{&+ce6Id>KpttW+|GC_UV&lQJ4(3xvq~{RVbc}S-|MCiUtx>l?5tY;$Ub3IqjRI zG%y>KvrJUwhd>U?QT!CnW&jF;@WtFI#W^a1i2IVQd zRsxQLsT^>)IXnV?j%B}4!Zng*j@cVnCxiCy7pNoYO?;CaMx11o|NhI@6KwbjZj~6v zn*$ecyIT)AiOFbGi@x!@377b1agEgJMV?N~+>2)uL0OhyQzn{MgXGh9Sl1cEXUN|Z Xj8bV0?vSJi9K5^;)YOv7QV9PC3+Luy delta 13158 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 diff --git a/GA3/ga3.tex b/GA3/ga3.tex index 2fa6e30..b97aa20 100644 --- a/GA3/ga3.tex +++ b/GA3/ga3.tex @@ -222,7 +222,8 @@ Delete 12: \end{verbatim} } -The following printout was obtained by running the following BST implementation.with the following command: +The following printout was obtained by running the following BST implementation. +with the following command: \begin{verbatim} ./tree.py 12 6 1 7 4 11 15 9 5 13 8 14 3 10 2 \| 6 2 12 @@ -613,9 +614,9 @@ if __name__ == "__main__": \end{lstlisting} \subsection{Point B} -A red-black tree of n distinct elements has an height between $\log(n)$ -and $2\log(n)$ (as professor Carzaniga said in class) thanks to the red-black -tree invariant. The worst-case insertion complexity is $\log(n)$ since +A red-black tree of n distinct elements has an height between $\log(n)$ +and $2\log(n)$ (as professor Carzaniga said in class) thanks to the red-black +tree invariant. The worst-case insertion complexity is $\log(n)$ since finding the right place to insert is as complex as a regular tree (i.e. logarithmic) and the ``fixup'' operation is logarithmic as well (the tree traversal is logarithmic while operations in each iteration are constant). @@ -628,15 +629,15 @@ since it is a constant factor (since the maximum height is $2\log(n)$ and the mi FUNCTION JOIN-INTERVALS(X) if X.length == 0: return - + for i from 1 to X.length: if i % 2 == 1: X[i] $\gets$ (X[i], 1) else: X[i] $\gets$ (X[i], -1) - + $\textit{sort X in place by 1st tuple element in O(n log(n))}$ - + c $\gets$ 1 n $\gets$ 0 start $\gets$ X[1][1] @@ -648,17 +649,23 @@ FUNCTION JOIN-INTERVALS(X) if i < X.length: start $\gets$ X[i+1][1] n $\gets$ n + 1 - X.length $\gets$ 2 * n + X.length $\gets$ 2 * n \end{lstlisting} % -The complexity of this algorithm is $O(n\log(n))$ since the sorting is in $\Theta(n\log(n))$ and the -union operation afterwards is $\Theta(n)$. +The complexity of this algorithm is $O(n\log(n))$ since the sorting is in +$\Theta(n\log(n))$ and the union operation afterwards is $\Theta(n)$. \section{Bonus} -The number of possible trees with $n$ nodes can be defined recursively. The number of trees with 0 or 1 node is clearly 1, since there is no freedom in arranging any remaining elements as children. For $n$ nodes, this number can be defined as the the sum, for each $x, y \in N_0$ s.t. $x + y = n - 1$, of the number of trees with $x$ nodes times the number of trees with $y$ nodes. We consider only $n - 1$ nodes since one node must be the root of the tree. -Using math notation, the number $T_n$ of trees with $n$ nodes can be expressed as: +The number of possible trees with $n$ nodes can be defined recursively. The +number of trees with 0 or 1 node is clearly 1, since there is no freedom in +arranging any remaining elements as children. For $n$ nodes, this number can be +defined as the the sum, for each $x, y \in N_0$ s.t. $x + y = n - 1$, of the +number of trees with $x$ nodes times the number of trees with $y$ nodes. We +consider only $n - 1$ nodes since one node must be the root of the tree. +Using math notation, the number $T_n$ of trees with $n$ nodes can be expressed +as: $$T_n = 1 \hspace{1cm} n = 0 \lor n = 1$$ -$$T_n = \sum_{i = 0}^{n-1} C_i C_{n-1-i} \hspace{1cm} n \geq 2$$ -\end{document} \ No newline at end of file +$$T_n = \sum_{i = 0}^{n-1} T_i T_{n-1-i} \hspace{1cm} n \geq 2$$ +\end{document}