2.3 Booleans "!#%$'&)($+*,&-.",/,103245(65575&8,1:9 ;=<?>1< 03( < @- ,A,1CB5 -.0 <ED - ,:B5!,5,:",F#G *IH !J,1 D K05.H?55,1 < L "!#NM$'&)!",O03 P 0 0+&QR$ < ,RS6T:03F,503U.9WVX03!Y(6-Z&Z&6,1Cbool G$ < ![24\5C%0]T^05H_5C$' -`0 < ,a0 <bP 00+&cd$ < , $ <XD (6*e0 < &)*fT:5(g0]TF#",:O05H_CC$' -.0 < ,A,C!1hiBC4K0jdk"H?5",5,G$'&Z&#%0+#5U,:9 VX03!f(- &l&_&cd$+ < 03(bK075M$'&)!m$'KndkUH?C",5,C-`0 < ,o- < M0+&)M1- <p #q *IH Sr!,C- <p bool 9 sKtvuwKx`y#z5{|wKz5}v{|x6~C:}:x]{u3 t[Ix{sx]tv~s.{~5s.x6 x_~L+u3}z"1Ox]tv{Ou3. ~xKt{|v%u3x_~5s/{x]~CwKs u3x]tv~5{|w11}v~w1v 3~5sC¡xKt~C%+u3}¢{|rvw]u£[:£|^z5u3~}{|x]t¢7x_~tvu3sK~:}v~w1v 3~ {s~Cxuwz5u3vsK{s`x]su3u3v~q_u3sKsK{8£[|~ 11}v~¤u3v|+¥6¦w] 3}:£|+¡v1|}~Csu3=sK}vztAx~5s:w]~q+~RwK ~"1s`¤x]uw]~Cvw]~CsK~5x5¡'~R+~5/{|x]tvu3}x§s`_~5v¨v{v 1q~5uwKw]~5sKu3}w]zC~5s5¥r©uU~C+~Cw"¡+18x]tvu3} 3tqsK}vzdt x_~Cs:wK~o}vsK~Cª}?{z5~CwKx]1{z5{|w]z5}vs.x]1vz5~5s5¡+u3}z"1?«¬x6¨vu|uxu3{'x]~Cw]~Cs.x]{v z5u3}x:x]{u3vs {8x]tx]tv~5f¥=¦x]~Cw1 ¡xKt~Rw]~q{s6vuu~Cw:x]{|u37u37x]tv~5ux]tv~Cw6x]t17xKt~o{¨v~5'x]{|x+¥ ® u¡~Cx}vsw]~R[tw:sK~@x]tv~@:£_uU+~¯}~Cs.x]{u3?° t[IxX{s?x]tv~sK{|[|~5s.x?vu3y xKw]{8{ª1'6ox_~@+u3} z"1Lx]tv{u3K±¦x]~Rw²x]tv~:£_uU+~¨v{sKz5}vsKsK{|u3L~z5~CwKx:{v|t5+~u3v~z"1v¨v{¨:x]~°=ox³_~{8x]tL 11}v~ w: 3~ox]t:xzCu3s.{s.x]s´u3=~Rµv1zRx]|Lxu~5~5~Cx]s5¥¦x´¶wKs.xsK{| 3tx"¡vsK}vztA/x_~qL"1 +:{ :v_~"Iw+~CwK7{{|xK~5¨?¥·6~C+~CwKx]tv~5|~5sKs5¡~ {|_sK~5~q£~5uU¸xKt[Ix{|x1uUsªuwL:L{'x]~Cw]~5s`x]{v u_~Cw]:x]{u3vs5¥X¦zCx]}1|+¡1sK}vzdtLx~{ssK}¹zC{~5x1s@£[1s.{s@ªuw1{v¨vs@u3[z5u3}vx]:x]{u3vs§+u3} z"14{L1 3{v~¥/º#»6~5z"1Z¡_ªuwq~Rµ1~¡JxKt[Ix {|x]~5 w]1=}v£_~Cw]sz"1A£_~w]~Cvw]~5sK~Cx]~5¨^{4£{:wK ªuw]L:x5¡x]t:x6{s5¡v}vsK{v x]tv~oxu11}v~5s 0 1v¨ 1 u3v|+¥½¼ 2.3.1 Boolean functions ¾ t~1~f¿]Àuu3~":Áns.x]~5sw]u3xKt~/À@wK{|x]{sKtfLIx]tv~5L:x]{zC{ª17Âo~5uw] 3~/Àuu3~º 1815à 1864 ¼ tvu{u3v~5~Cw]~C¨^{A~5s.xI£[|{sKtv{v z5u3vv~5zCx]{|u3s£_~Rx³~C~5^u3 3{|z1v¨^s./£u3{z¤: 3~C£vw¥qÀ@fx]tv~ x]~CwK P 00+&QR$ < TC! < B" -.0 < ~¤¨v~5vux]~¤nª}vzRx]{u3 f : Ä n → Ä ¡[t~Rw]~ Ä := {0, 1} :¨ n Å^Æ ¥ º#»6~"1¨ 0 1s T:$'&),1 1v¨ 1 :s "! ¥Ç¼ |~":w]|Ax]tv~}£_~Cwqu3¨v{|È~CwK~5x/Àuu3~"1^ª}vzCxK{u3vs¤{sq¶v{|x]~/ªuw~C+~CwK^¶vµ~5¨ n É@Ê µ~Rw.y z5{s.~4Ë"ÌF1s`s+u3}Ox]uAsKtvuUEt:x~Rµ1zCx]8ax]tv~5{|w}£_~Cw¤{s5¥ ¾ uA 3{8+~+u3}7¶vw]s.x/tv{x5°Íuw Î 0 1v¨ n = 1 x]tv~Cw]~:w]~qu387ªu3}woÀuu3~"1fª}vvzCx]{u3vs5¡x]tv~qxuz5u3vs.x:xª}vvzCx]{u3vs c0 : x → ¾ Î 1 ¡§xKt~{¨v~5xK{|x^{¨ : x → Î x 1v¨ax]tv~v~5 +:xK{u3¢·Ï Î x ¡§tv~CwK~ 0 := 1 1v¨ c1 : x → :x→ 1 := 0 ¥ Gx]tv~ªu3uU{v L~nw]~5s.x.w]{zCxu3}wªuz5}vs¤x]uf}v:wKG:¨G£{:wKaÀuu3|~"1Gª}vvzCx]{u3vs5¡§xKt[Ix {s5¡=ª}vvzCx]{|u3sqw]u3 Ä uw Ä 2 xKu Ä ¥ ® }vztOª}vvzCx]{u3vsIw]~u3s.x¤zCu3+~5v{~5'x]|^¨~CsKzCw]{|£~5¨:s sKL1|§x:£~x]t:xo{s.xKsxKt~ª}vzRx]{u3411}v~5s ªuw¤:=_u3sKsK{|£~/:wK 3}~Cx]s5¥¦^~Rµv1~ªuwq £{:wKOÀuu3~"1%ª}vzRx]{u3{|s/¦·Ð : (x, y) → Î x ∧$ y<XD sKtvuU{ͧ{ 3}w]~LѺ#3¼d¥¢Zx{|s1~C¨ ¦·ÐÒ£~5z"1}vsK~ x ∧ y = 1 {|1v¨Yu3v|O{ x = 1 y = 1 ¥NÓru3}L5 3}v~5s.stOx]tv~ ´Xb @X66 ª }vvzCx]{u3 f : (x, y) → Î x ∨ y ¨v~C¶v~5¨G{¢Í§{ 3}w]~/ѺZ£J¼o{|s z":~5¨¢Ï» ¥L GQ:zCx"¡xKt~Rw]~:wK~xu _u3sKs.{|£~±{'x]~CwKvw]~Cx]:x]{u3vsu3x]tv~±uw]¨ ¿.uw]Á°4Óru3} z"1Yw]~"1¨Y{|x1s%¿K:xL|~"1s.xLu3v~fu3³Á¡6£}x }vs.x:s~5{|x/z":~"1i¿.~5{|x]tv~Cw¥5¥"¥Kuw]Á¡rx]t:x{s5¡¿.~dµv1zCxK|%u3~u3³Á¥ ¾ t~ª}vvzCx]{u3xKt[Ix z5uwKwK~5s._u3v¨vs6xKuxKt~oª:x.x]~Cw{'x]~CwKvw]~Rx:x]{u3L{ssKtvuU{±Í§{| 3}vwK~Ѻ zU¼R¥@Zx6{s}vsK}1|wK~5ª~CwKw]~C¨7x]u dkB5&)!J,C-ZM^03 ¥±Í§{ 3}w]~nѺ ~U¼ ¨v~C{zCxKsqx]tv~nx:£~ªuw¤x]tv~}v:wK 1 s ´Ï» : (x, y) → Î x y uw ¾ ª}vvzCx]{u3±·Ï ¥ x 0 0 1 1 y x∧y 0 0 1 0 0 0 1 1 ! x 0 0 1 1 y x∨y 0 0 1 1 0 1 1 1 #"%$&'! Figure 4: 4 x 0 0 1 1 y x y 0 0 1 1 0 1 1 0 )(*+$&'! x 0 0 1 1 y x↑y 0 1 1 1 0 1 1 0 -,./'! x x 0 1 1 0 )01$23! kv$+2Hm&Q",´T:03 P 010+&cd$ < TC! < B" -.0 < ,:9 Í {| 3}vwK~^ÑsKtvuUs }vs.x±Oª~Cg~Rµv1~Cs5¥ ©uU~C+~Cw"¡{ Oz5~Cw.x1{esK~Cs.~¡ {8x § sKtvuUs+u3}e~R+~CwKxKt{| :£_u3}xL£[{|[IwKNÀuu3~": ª}vzRx]{u3vs5¥ ® u3~Au3qx]tv~5s.~aª}vzRx]{u3vs7Iw]~ sKu±ª}vv¨1~5'x1=x]t:x CM5"* £{:wKaÀuu3~":^ª}vvzCx]{u3Gz":a£_~ 3~5v~CwIx]~5¨Gw]u3 x]tv~5f¥Íuw ~Rµ1~¡5´Ï»bz517£_~ 3~5v~Cw:x]~C¨±w]u3 ¦·Ð¤¡Ï» 1v¨F·Ï ¾ ° Completeness. ´Ï» (x, y) = ¦·Ð ( Ï» (x, y), ·Ï ¾ (¦·Ð (x, y))). vªuw]L18+¡=¿.~5{|xKt~Rwuw]Án~"1vs¿.uwKÁ£}xvuxL¿K:¨vÁ¥ÍvuwK}vª1s{8+~ox]tv{s´:w]~ ~"1sK{||Lzt~Cz+~C¨ £ 3u3{v x]tw]u3}v 3tf1=ºZªu3}vw¼_u3s.sK{|£~z5u3£[{|[Ix]{u3vs²u3XIw] 3}v~5x]sC¥ ® {{ªIw]|+¡²x]tv~Aª}vzCxK{u3e·´¦·Ð : (x, y) → Î x ↑ y ¨~CsKzCw]{|£~5¨ {Nͧ{ 3}w]~FѺ ¨[¼z"1N£_~ 3~5v~CwIx]~5¨±w]u3Ò·Ï ¾ 1v¨±¦·ÐWº tv~5vz5~ xKt~o1~¥5¥5¥¼d° ·´¦·Ð (x, y) = ·Ï ¾ (¦·´Ð (x, y)). 6 ~Rx}vs¨v~C¶v~t:x~ ~51£¿. 3~C~Rw:x]~5Á¥ 0 < ,C- D 5a$O,1" 0]T4\C00+&QR$ < TR! < B" -`0 < ,:998 \5- < $+"*j\C00+&QR$ < TC! < B5 -.0 < -Z, Definition 2 7 BR$'&l&c D \"* -¬T BdF$ < \C dkUH?C",5,1 D \5*W$GT:03"27!J&Q$b#J$'40 < &)*WBC0 < .$+- < ,f# F M$+"-³$\U&cgenerated 5, $ <XD S6# 7BC0 f< ,C.$ < # , $ <XD S$ <XD #6TC! < B" -.0 < ,TC5032 9 x y 0 1 F : 03$,:"'; 0]T¤\"- < $+"*TC! < B" -.0 < ,CS$n,1" 0]T\"- < $+"*TR! < B" -`0 < ,- ,o,:$+- D K07\C F complete - T$ <XD 0 < &)*f-¬TCM5"*TC! < B" -.0 < ; BR$ < \5 p < 5C$'K D \5* 9 fÅ F ~q:w]~ouUbvw]~C[:w]~5¨7ªuwz5u3~Cx]~C~CsKswKuu3#¥ @4,:"0]TqTC! < B5 -.0 < , ¦·Ð Ï» ·Ï ¾ - ,aBR032Hm&Q"KT:03A#^,150]T^\5- < $+"* { , , } P 00+&QR$ < RT ! < B" -`0 < ,:9 Theorem 1 Ë B5J$+C$vB"K5"-Z,5 -.B¤MCB Proof. ¦/£[{|[IwKÀuu3~51nª}vvzCx]{u3 f {srz5u3~Cx]~58¨v~5sKzCw]{8£_~5¨n£n{|xKs K03 (f(0, 0), f(0, 1), f(1, 0), f(1, 1)) ¥Íuw~Rµv:[|~¡:¦·ÐOt1smzt[Iw1zCx]~Rw]{s.x]{|zr+~5zRx]uw (0, 0, 0, 1) ¡ uw 0001 ªuw¤sKtvuwKx"¥ 6 ~Cx f ¨v~5vux]~x]tv~Àuu3~"1Aª}vvzCx]{u3^{|x]tAzt[Iw1zCx]~Rw]{s.x]{|z+~CzCx]uw b1 b2 b3 b4 b1 b2 b3 b4 ¥@Ívuw´~Rµ1~¡¦·´Ð = f0001 ¥ nx]tv~¶wKs.xrs.x]~Cu3x]tv~6vw]uu3#¡3~´sKtvuU x]t:x@1x]tvu3sK~6ª}vzRx]{u3vsz"1n£_~ 3~5v~Cw]:x]~5¨ntvu3sK~ zt:w1zCxK~Cw]{s.xK{z+~5zCx]uwz5u3x:{vs´sK{v 3~ 1 ¥@ v¨v~5~5¨?¡ f0001 (x, y) f0010 (x, y) f0100 (x, y) f1000 (x, y) = = = = ¦·Ð ¦·Ð ¦·Ð ·Ï ¾ (x, y), ¾ (x, ·Ï (y)), ¾ (y, ·Ï (x)), ( Ï» (x, y)). ¾ uztv~5z]ex]tv~aªuw]/}vªGªuw f0010 ¡oªuwf~Rµv:[|~¡~az"1bzCwK~":x]~G%x:£~^ªuw7x]tv~aª}vzRx]{u3 ¦·Ð (x, ·Ï ¾ (y)) 1s´{|±Í§{ 3}w]~oÑ1v¨±z5u3{vz5~ou3}vwKsK~5|+~5sx]t:xx]tv~w]~5sK}v|x]{| zt:w1zRx]~Cw]{s`x]{z +~5zCxKuw{s 0010 ¥ x]tv~sK~5zCu3¨s.x]~Cm¡~sKtvuUex]t:x61Lª}vvzCx]{|u3tu3s.~zdt:w]1zCx]~CwK{s.x]{z+~CzCx]uw6{svu3 C~Cw]u z"1£_~ 3~5v~Cw:xK~5¨?¥ ¾ tv{s{s¨vu3v~£Lz5u3£[{|{| x]tv~ :|w]~"1¨ 3~C~Rw:x]~5¨¿.sK{v 3~Ry 1Áª}vvzCx]{u3vs x]tw]u3}v 3tfÏ»q¡t{|zdt7sK{|:¨¨vs6}±x]tv~5{|w 1 « sC¥@Íuw~Rµv1~1¡ f1100 (x, y) = Ïo» (f1000 (x, y), f0100(x, y)), Ï » ( Ï» (f (x, y), f (x, y)), f (x, y)). f0111 (x, y) = o 0100 0010 0001 / ~ :£s.x]1{Aw]u3 uwK{v x]tv{s:wK 3}~Cxu3}xªuw]L18+¡JsK{vz5~~£_~5{|~C+~¤x]t:x+u3}a 3~Cxo{|xKs 1s {¨v~"¥rͧ{|[:|+¡~o 3~5v~Cw:xK~ f 0000 f0000 (x, y) = 0. ¾ ¾ Ê µ~Cw]z5{|sK~Ë61s.sr+u3}nxKu sKtvuU x]t:x=x]tv~´s.~Cx]s {¦·´Ð , ·Ï } ¡ { Ï» , ·Ï } ¡'1v¨~R+~5nx]tv~6sK~Cx x]t:xz5u3vsK{|s.x]su3x]tv~sK{v 3~ª}vvzCx]{u3 { ·´¦·Ð } :w]~z5u3~Cx]~ ªuwx]tv~sK~Cxou3r£{:w.FÀuu3|~"1 ª}vvzCx]{u3vs5¥ 2.3.2 The type bool /6 ¡'Àuu3~51vs§:wK~w]~Cvw]~5s.~5x]~C¨/£ x]tv~²ª}vv¨1~5'x13x_~ bool ¥=Zx]s1|}~rw1v 3~zCu3s.{s.x]s 3u _x]tv~x³u~C~5~5'x]s "!§ :¨ T:$'&),1 x]t:x6:w]~1s.sKuz5{:x]~5¨{8x]tx]tv~{|x]~Cw]1s true 1v¨ false ¡ w]~5s`_~5zCx]{8+~5|+¥rÍuw~Rµ1~¡ bool b = true ; ¨v~C¶v~5s1:w]{ª:£~ b u3mx_~ bool :¨{v{|x]{ª:{5~5s{|xx]u "! ¥ Íuw]L1|+¡Ix]tv~²x_~ bool {s1{xK~5 w1'x³_~¡+¨v~C¶v~5¨x]u£_~~CsKs 3~5v~Cw1x]t1 int ºltv{zt {x]}w]±{s6~5sKs6 3~5v~Cw:mx]t1 unsigned int ¡vsK~5~ ® ~5zCx]{u3¥¥3¼d¥ ´Xb @X66 ¾ v t ~ zCu3[|~Cx]~sK~Rxu3m£[{|[IwKÀuu3|~"1ª}vzCxK{u3vs{s6"11{:£~{ªqxKt~ &Q0 p Logical operators. -.Bd$'&o05H5C$'K03U, · мR¡ || º#Ïo»¼R¡X1v¨ ! º#·Ï ¾ ¼R¥u3[:w]~5¨Ax]u7x]tv~nvuxIx]{u3^}vsK~C¨%{| && ºZ¦ ® ~5zCxK{u3 ¥ ¥Ë¤~s.{|±{¨v~5'x]{ "! 1v¨ T:$'&),1 ¥Àux]t 1 {8x]t 0 {|x]t && :¨ || :w]~£{8y :wKfu~Cw:x]uwKs5¡tv{~ ! {|so}v:wK+¥¦|Xu_~Cw:¨vs:wK~w.1|}~Csu3rx~ bool ¡?1v¨^:Xu3 3{z51 u_~Cw]:x]uw]sq1sKuw]~Cx]}w]GwK11}v~5s u3²xK_~ bool ¥ 6 {|+~{au3 3{|z5s5¡ && £{v¨vs uwK~s.x.w]u3v 3|4xKt[: || ¡v1v¨ ! £{v¨vs6uwK~os`xKw]u3v 3|x]t1 && ¥ ¾ tv~Cw]~²{s§1sKu´}£_~Cwu3u_~Cw]:x]uw]su3:w]{|x]tv~CxK{zXx_~5smtvu3sK~wK~5sK}v|x Relational operators. {su3x_~ bool ¥Íuw~"1zt^Iw]{|x]tv~Cx]{|zx_~¤x]tv~Cw]~~Rµ{s.xx]tv~sK{)µ 5"&ª$' -.0 < $'&605H_5C$'K03U, < ¡ > ¡ ¾ <= ¡ >= ¡ == ¡?1v¨ != ¥ tv~5sK~/:w]~£{:wK7u_~Cw:xKuw]stvu3sK~¤xuwK11}v~u_~Cw:¨vs:wK~u3@sKu3~ :w]{8x]tv~Cx]{zx_~1v¨¢tvu3sK~nw]~5s.}8x{s1GwK11}v~u3²x_~ bool ¥ ¾ tv~u_~Rw:x]uw]s <= 1v¨ >= z5uwKwK~5s._u3v¨fx]ux]tv~¤L:xKt~CL:x]{z":Jw]~5ªIx]{u3vsi1v¨ ¡JwK~5s._~5zRx]{|+~5|+¥ ¾ tv~¤u~Cw:x]uw == x]~Cs.x]s ªuw´~5¯}1{8x³:¨ != x]~5s.x]s6ªuw{|~C¯}1{|x+¥ ® {vz5~ bool {|s=1{xK~5 w1'x³_~¡x]tv~wK~5ª:x]{|u3[:u_~Rw:x]uw]sL51s.ut"+~u~Cw1v¨vsXu3x_~ ¾ T:$'&),1 "!§ ¥ bool ¥ t~w]~5s`_~5zCx]{8+~qz5u3[:w]{|sKu3vs:w]~o¨u3v~ 1z5z5uwK¨{| /x]ux]tv~ z5u3'+~5xK{u3 < Watch out! ¦ w]~C¯}v~5xq£_~5 3{vv~Cw"«¬so{|s.x:+~{sx]u7}vsK~/x]tv~n:sKsK{ 3v~5'x u~Cw:x]uw = tv~Cw]~x]tv~o~5¯}1{8x³Lu~Cw:x]uw == {s6~"1'x"¥ ¦ s 3~5v~Cw:mw]}v~1¡v:w]{|x]tv~CxK{zu_~Cw]:x]uw]s£{v¨7uw]~os.xKw]u3v 3|xKt[:7w]~5ªIx]{u31u3v~5s5¡1v¨ x]tv~5sK~ {xK}vwK7£{v¨7uw]~s.xKwKu3 38x]t1x]tv~ u3 3{z"1Ju_~Cw:xKuw]s5¥ Boolean Evaluation Rule: À{:wK:wK{|x]tv~Cx]{zu_~Cw:xKuw]st[5+~ t{| 3t~Rw´vw]~5zC~5¨v~5vz5~ x]t1 w]~5:x]{u31u~Cw:x]uwKsC¡1v¨7x]tv~5sK~ t"+~otv{ 3tv~Cw6wK~5z5~5¨v~5vz5~ox]t17£{:wKLu3 3{|z"1u_~Rw:x]uw]sC¥ Íuw~Rµ1~¡x]tv~o~Rµvw]~CsKsK{u3 7 + x < y && y != 3 * z {s6u3 3{z":|n[:wK~5x]tv~5s.{5~5¨f:s ((7 + x ) < y ) && ( y != (3 * z )). À~z5:w]~5ª}v{|x]t L:x]tv~5L:x]{|z"1IsKtvuwKx]z5}xXvuxIx]{u3osK}vzdt/1s a = b = c ¥¦sX´6 ~Rµvw]~CsKsK{u3?¡ a == b == c {s6vux´~C¯}v{|11~5'x´x]u a == b && b == c. À@ |~5xF1sKs.uz5{ªIx]{|{8x³ u3 == ¡x]tv~a~RµwK~5sKsK{u3 a == b == c {su3 3{z":|[:w]~5'x]tv~5sK{C~5¨¸1s ¡ 1v¨ c :w]~Iw]{ª:£~5su3x³_~ int {|x]t11}v~ 0 ¡+xKt~6~C11}:x]{|u3 (a == b) == c ¥r 1u3 a ¡ b ' {|~5¨vs (0 == 0) == 0 −→ true == 0 −→ 1 == 0 −→ false , }vs.x´xKt~ouv_u3sK{|xK~ou3t:x+u3}±}vsK}1|L~51£ a = b = c¥ & 0 (1 ' 0 " ., 0 !!#"$%& '.0()*+( ,"$.0- 0*( 0 ,.0- ( 0! ¾ tv~~58yZvuUªuw]/}vª1~´u3_tuUNxKu¤~Rµvw]~CsKs¦·ÐN{x]~Rw]su3mÏ»N:¨ {|z5~+~Cw]sK´{|xKtqx]tv~²tv~5|u3·Ï ¾ ¡3:w]~²1~C¨1x]~Cw§x]tv~À@w]{|xK{sKtL:x]tv~5LIx]{z5{ª:¦}v 3}s`x]}vsXÐ~ uw] +1fºKË"Ì Ã Ë"Ì ËU¼R¥X©~661s²{u3v~5~Cw@{s.£_u3{|z1 3~C£vwo1v¨u3 3{z5sC¥X¦sKuox]tv~´w]{| 3uw]u3}vs ªuw]/}vª:x]{u3u36¿.L:x]tv~5L:xK{z"1{|¨v}vzCx]{|u3Áq1s~vuI 1v¨}s.~{|xx]u¨" 3u~Cs²£J:zx]utv{f¥ ¾ t~o¨v~Ry uwK +1y#ªuw]/}vª1~s.x:xK~ox]t:xoº {|f6 y#ª: 3}1 3~"¼ De Morgan’s laws. !( x && y ) == (! x || ! y ) 1v¨ !( x || y ) == (! x && ! y ) . ¾ t~CsK~qªuw]/}vª1~z"17u3x]~5±£_~o}vsK~5¨±x]u/xKw1vsKªuw] P 00+&cd$ < dkUH?C",5,C-`0 < º#17~Rµvw]~5s.sK{u3fu3 x _~ bool ¼{'x]un4¿.sK{~Rw]Á~5¯}v{|11~5'x6ªuw]f¥rÍvuw´~Rµ1~¡ !( x < y || x + 1 > z ) && !( y <= 5 * z || !( y > 7 * z )) z"17~5¯}v{|11~5'x]|£_~wK{|xKx]~571s x >= y && x + 1 <= z && y > 5 * z && y > 7 * z tv{zt{s´zC~":w]8wK~5ª~Cw:£~o{7xK~Cw]su3w]~51¨:£{{|x+¥ Íuwuw]~n¨v~Cx:{s :£_u3}xqvw]~5zC~5¨v~5vz5~5s/1v¨%1sKsKuz5{ª:x]{8{|x]{|~5su3xKt~nu3 3{z"1r1v¨Gw]~5:x]{u31 u_~Cw]:x]uw]s5¡UsK~C~ ¾ I£[|~ ¥§Óru3} L5¶v¨oxKt{|sm{|ªuwKL:x]{u3tv~58[ª}v3{ uw]¨v~Cw?x]u6sKu3|+~ Ê µ~Cw]z5{|sK~ ¥ Description u3 3{z":vux ~5sKs w]~":xK~Cw ~5sKs6uw´~5¯}1 w]~":xK~Cwuw´~5¯}[: ~5¯}1|{|x {v~5¯}1|{|x u3 3{z":_1v¨ u3 3{z":uw Table 2: Operator ! < > <= >= == != && || Arity Ë Prec. Assoc. Ë Ë3Ë 3Ë Ë 3Ë Ë 3Ë Ë Ë Ë 5RBC D < BC", $ <XD '$ ,5,101B5-`$' -lM- -`",¸0]Tj&Q0 p -.Bd$'&A$ <XD 05H_5R$ <XD ,L$ <XD 5 " !J < M$'&)!",L$+Cn"M$'&!§",I9 w]{| 3tx ~Cx ~Cx ~Cx ~Cx ~Cx ~Cx ~Cx ~Cx C"&Q$' -`0 < $'&405H_CC$'K03U,:9 8 &Z& Zx¤{|s _u3sKs.{|£~x]t:xox]tv~nxu±u_~Rw1v¨vsqu3wK~5ª:x]{|u3[:ru~Cw:x]uw ¾ t5+~¨v{|È~CwK~5x²x_~¥ t{|s²z"1sK~{s@xKwK~":x]~5¨L{x]tv~s]1~66"n1s²ªuwx]tv~:w]{|xKt~Rx]{zu_~Cw]:x]uw]s5¥ ¾ t~z5u3u3sK{|x]~²~dµvw]~5sKs.{u3{s=~C11}:xK~5¨nu3/x]tv~6uwK~ 3~5v~Cw1x~¡3x]uotv{zt/x]tv~u_~Cw]1v¨nu3 x]tv~o~5sKs6 3~5v~Cw1_x~ {s6{{zC{|x]|/z5u3'+~CwKx]~5¨?¥@ 7[:wKx]{|z5}vª:w"¡ bool u_~Rw1v¨vs´Iw]~ zCu3+~CwKxK~5¨ x]ux]tv~qw]~Cs._~5zCxK{|+~{x]~C w1x_~u3=x]tv~ux]tv~Cwu_~Cw:¨?¥©´~Cw]~¡x]tv~¤11}v~ TI$'&8,1 {sz5u3'+~CwKx]~5¨ x]u 0 ¡1v¨ "!§ x]u 1 ¥E qx]tv~4{x]~C w1x_~A{s int ¡x]tv{sz5u3'+~Cw]sK{u3e{|s¨v~C¶v~5¨ x]u%£_~^ H?503240+ -.0 < ¥=¦ wKu3ux]{u3{s@os.~5z5{ª1vz5u3'+~Cw]sK{|u3ªuw@tv{ztnx]tv~6oes`x1v¨:w]¨n 3}:w]1x]~C~5s x]t:x6vun{vªuw]LIx]{u3L 3~Cx]s6u3s.x"¥ Conversion and promotion. ´Xb @X66 Ñ ¾ tv~z5u3'+~Cw]sK{|u3^ 3u~Cs{x]uxKt~qux]tv~Cw¨v{|w]~5zCxK{u3Fªuwu3 3{z"1mu_~Cw]:x]uw]s5¥ A{8µ~5¨f~Rµvw]~Cs`y sK{u3vs5¡+x]tv~{|x]~5 w]1vu_~Cw1v¨vsu3Ju3 3{z"1vu_~Rw:x]uw]s@:w]~´z5u3+~RwKx]~5¨x]u bool {s.}zto65/x]t:x TI$'&8,: 1v¨f1ux]tv~Cw611}v~ {|s´z5u3'+~CwKx]~C¨±x]u "! ¥ 0 {s´zCu3+~CwKxK~5¨±x]u ¾ tv~5s.~z5u3'+~Cw]sK{u3vs1sKux:+~ª1z5~{ {v{|x]{ª:{ ":xK{u3vsJ1v¨q1sKsK{ 3v~5'x]s5¡I1sm{ xKt~rªu3uU{| ~Rµ1~5s5¥ bool b = 5; // b is initialized to true int i = b ; // i is initialized to 1 2.3.3 Short circuit evaluation ¾ t~~C:}:x]{u3u3_~Rµvw]~5s.sK{u3vs²{'+u3|{v u3 3{z"1v:¨wK~5ª:x]{|u3[:u~Cw:x]uwKs@vw]uzC~5~5¨vs1z5zCuw]¨y { v x]ux]tv~ 3~5v~Cw]1§w]}v~5sC¡_1s¨v{sKz5}vsKs.~5¨4{| ® ~CzCx]{u3vs ¥¥|ˤ1v¨ ¥¥ ¥©uU~C+~Cw"¡x]tv~CwK~{su3v~ {_uw.x1x²¨{8È~Cw]~CzC~ w]~5 +Iw]¨v{v x]tv~quwK¨~Rw{tv{zt7x]tv~qu~Cw1v¨vs´u3X1±u_~Cw]:x]uw:w]~q~R1)y }:x]~5¨?¥ tv{~¤{|A 3~C~Rw1Xx]tv{suwK¨~Rw{s}vv¨~R¶[v~5¨?¡x]tv~¤£{:wK7u3 3{z":u_~Rw:x]uw]s && 1v¨ || 1|65sn 3}:w1'x]~5~x]t:xnx]tv~5{8w~5xu_~Cw1v¨{s~C11}:x]~5¨¶vw]s.x5¥ uwK~5uI+~Rw"¡´{|x]tv~711}v~±u3 x]tv~Lz5u3_u3sK{8x]~n~Rµvw]~5sKsK{|u3{s/1|wK~"1¨G¨v~C¶v~5¨%£Gx]tv~1|}~Lu3x]tv~L~5xu_~Cw]1v¨%x]tv~5%x]tv~ w]{ 3t'xu_~Cw:¨{s < 0+o5M$'&!$'K D :x61| ¥ ¾ tv{s~R1|}[Ix]{u3LsKztv~5~{svuI7:s ,C03UoB5-l5B5![- 5M$'&!$' -`0 < ¥ ©uUz"1{|x/t:v_~5Ox]t:xx]tv~L¶111}v~{|s:|w]~"1¨¢¨v~Cx]~Rw]{v~5¨¢£¢x]tv~|~5xnu~Cw1v¨ u3v|v ® }vv_u3s.~6x]t:xr{n1 && u~Cw:x]uwx]tv~6~5xru_~Cw]1v¨~C11}:x]~5s=x]u T:$'&),1 É x]tv~5u L:xKx]~Rw t:xxKt~w]{ 3t'xu_~Cw:¨ 3{|+~5s5¡xKt~w]~CsK}v|x{1|65s²£_~ TI$'&8,1 ¥©~CzC~¡x]tv~Cw]~o{svuv~5~5¨x]u ~C11}:x]~/x]tv~w]{| 3tx u_~Cw1v¨¢:xq1Z¥ ¾ tv~n11u3 3u3}vssK{|x]}:x]{|u3^uzCz5}w]s¤{²{|G1 || u_~CwIx]uw x]tv~o~5x´u_~Cw1v¨±~R1|}[Ix]~5sx]u "! ¥ ¦x¤¶vw]s.xsK{| 3tx{|xquus¤1sq{sKtvuwKxz5{8w]z5}v{|x¤~R1|}[Ix]{u3G{s ~Cw]~5|^7L:x.x]~Cw u36~R¹z5{~CzR+¥ À}x xKt~Rw]~{|s :uxKt~Rw £_~C~R¶x5¥Zxouz5z5}w]s tv~5^¨v~"1|{v L{|x]t4~Rµvw]~5s.sK{u3vsoxKt[IxqIw]~¨v~C¶v~5¨ ªuw´z5~CwKx:{[:w:~Cx]~Cw]su3v|+¥@u3vsK{¨v~Cw6ªuw~dµv1~x]tv~o¨v{|{s.{u3Lu_~Cw:xK{u3xKt[Ix´{|s6¨v~C¶v~5¨ ªuw/vu3 5~Cw]un¨{8{sKuw6u3v|+¥Ð}v~oxKunsKtvuwKx´z5{|w]zC}{8x´~R1|}[Ix]{u3?¡~oz"17´w]{|x]~ x != 0 && z / x > y 1v¨f£_~¤sK}w]~¤xKt[Ixx]tv{s~dµvw]~5sKs.{u34{|s1|65s:{¨?¥ =x]tv~qwK{ 3txu_~Cw1v¨f61s~R1|}[Ix]~5¨Fªuw x==0 ¡ 6x]tv~5x]tv~ow]~CsK}v|x´u3}v¨£_~o}v¨v~C¶v~5¨?¥ 2.3.4 Details ¾ tv~ ´Ïo»Eª}vvzCx]{u3¢{s:sKufw]~5¯}v~5x]8¢z"1~C¨ $ < -ZM$'&Q < BC 1v¨¢¨v~5vux]~5¨¢£ ¥ ¾ t~·6¦·ÐEª}vvzCx]{u3%{s1|sKu±vuU%1s $'&)K5 < $'K D < -`$'& uw 54,5 50 > ¥ ¾ tv~ª:xK= x]~Rw 1~n{|s¤1x]~Rwx]tv~¦~Cw]{|z"1aL:xKt~CL:x]{z5{1A©~5wK ¥ ® tv~CÈ~CwLºKË"Ì3Ì Ã Ë Ñ'¼tuwKuI+~5¨ x]t:x´1?ux]tv~Cw´u3 3{z51u_~Cw]:x]{u3vsz"17£~ ~Rµvw]~5sKsK~C¨A{|x]~CwKs6u3=·´¦·Ðq¥ Naming. .030 #"& % 0 + 0(* ' 0 # & ( ) x 0 + ~^t5+~4sK~C~5e{ ® ~CzCx]{u3 ¥ ¥½ÌGx]t:x{xK~5 3~Cw]sz"1N£~Aw]~RwK~5sK~5'x]~5¨e{ £{:wK%ªuw]L:x5¡rx]t:x{s5¡1sFsK~5¯}v~5vz5~±u3£{|x]s/~"1ztu3tv{zt{s/~5{|x]tv~Cw 0 uw 1 ¥Àuu3~"1 ª}vvzCx]{u3vsoz"1a:x]}w:|±£_~/~Rµx]~5v¨v~5¨ax]u7{|x]~5 w]1=x³_~5so£4:v|{v x]tv~5£{|x{sK~x]ux]tv~ £{:wKw]~RwK~5sK~5'x:x]{u3vs5¥ Bitwise operators. Pb 0 < ,C- D 5%$ < 0 <_< p $' -lMa- < K p 5 $ <XD (0- < K p 5U, $ <XD Definition 3 7 b x = ai 2 i i=0 P S?T:03n(6-.B" T103$'&Z& 9 y = bi=0 bi 2i ai , bi Å {0, 1} 0 i b : 03$! < $+"* P 00+&QR$ < TC! < B" -.0 < # BC03"55,`H_0 <XD f : {0, 1} → {0, 1} bitwise operator ϕ f P - <p K0 -Z, D < D $', 9 f ϕ (x) = b f(ai )2i : 03O$N\5- < $+"* P 00+&QR$ f < TR! < B" -`i=0 <0 # BR03"5 g : {0, 1}2 → {0, 1} bitwise operator ϕg Pb ,`H_0 <XD - <p K0 - , D < D $', 9i g ϕg (x, y) = i=0 g(ai , bi)2 Í uw {|}vs.xKwIx]{u3?¡vsK}u3sK~¤x]t:x~t5+~:4}vvsK{ 3v~5¨F{'x]~5 w1x³_~¤{8x]tAÑ1y £{|xw]~RwK~Ry sK~5'x:x]{|u3m¥ ¾ t:x¤{|s5¡ 0000 w]~Cvw]~5sK~Cx]s 0 ¡ 0001 wK~Cvw]~5sK~5'x]s 1 ¡=1v¨GsKufu3?¡}v¢x]u 1111 t{|zdt w]~Cvw]~CsK~5xKs 15 ¥ ¾ tv~5±+u3}7z"1±ztv~5z]xKt[Ix ϕ (4, 13) = 13 ¡ ϕ (13, 9) = 6 ¡v1v¨ ϕ (2) = 13 ¥ ® ~C+~Cw:q£{|x{sK~Fu_~Rw:x]uw]s7:w] ~4¨~R¶[v~5¨eªuw7x]tv~^ {'x]~5 w1x~5s±{b6o¥ ¾ t~Rw]~a{s £{|x{s.~ ¦·´Ð & ¡J/£{|x{|sK~Ï» | ¡_1v¨F£{|x{sK~ Ï» ^ ¡J1s~51s/£[{8x³{sK~¤·Ï ¾ ~ x]t:x {s }s.}[:|fw]~5ª~RwKw]~5¨¢x]uf1s BC032/Hm&c524 < ¥¦s x]tv~n:w]{|x]tv~CxK{zu_~CwIx]uw]s5¡mx]tv~£{:wKA£{|x{sK~ u_~Cw]:x]uw]sº ~dµz5~Cvx@ªuw ~ ¼=t5+~´zCuwKw]~5s.u3¨v{v o1sKs.{ 3v~5x=u~Cw:x]uw5¥ ¾ tv~vw]~5z5~C¨~CzC~5s:¨ 1sKs.uz5{ªIx]{|{8x³u3x]tv~5sK~ u_~CwIx]uw]s6:w]~ {s.x]~C¨7{ ¾ :£~ ¥ Description £{|x{|sK~z5u3~5~5'x £{|x{|sK~1v¨ £{|x{|sK~µuw £{|x{|sK~uw 1v¨f:sKsK{ 3v~5'x µuw1s.sK{ 3v~5x uw1sKsK{| 3~Cx Table 3: Operator ~ & ^ | &= ^= |= Arity Ë Prec. Assoc. Ë Ì Ñ Ñ Ñ w]{ 3t'x ~5x ~5x ~5x w]{ 3t'x w]{ 3t'x w]{ 3t'x CCBC D < BCf$ <XD $',5,10B5-³$' -ZM-Z *G0]T\"- (- ,:05H_CC$'K03U,:9 · ux]~nxKt[Ix¤x]tv~ª}vzRx]{u31{|xAu3²x]tv~5sK~Lu_~Rw:x]uw]s {s{~5~Cx:xK{u3F¨~R¶[v~5¨?¡=sK{|zC~nx]tv~ ´ £{|x{s.~wK~Cvw]~5sK~5'x:x]{|u3s u3²{'x]~5 w1=x~11}v~5s¤Iw]~nvux s._~5z5{8¶[~C¨^£4x]tv~6 s.x:¨:wK¨m¥ ~At5+~^u3v| ¨v{sKz5}vsKs.~5¨Nx]tv~Au3s.xLw]~5¯}~Cxaº 1v¨Nu3s.x{|+~C|v¼nsK}vztNw]~RwK~5sK~5'x:x]{u3vs{ ® ~5zCxK{u3 ¥ ¥ Ì¥Ó@u3}4sKtvu3}v¨4x]tv~CwK~5ªuw]~ 0 < &* }vsK~xKt~CsK~u~Cw:x]uwKsot~C^+u3} >1< 03( x]tv~wK~Cy w]~5s.~5xIx]{u3?¥ Ê +~5fx]tv~5?¡[~Rµvw]~5s.sK{u3vs{'+u3|{v /x]tv~q£{|x{sK~ou_~Cw]:x]uw]s:w]~¤{~C~5xIx]{u3 ¨v~C¶v~5¨?¥ ¾ tv{s{|su3s.xu£{u3}vs{|x]tfx]tv~¤£{|x{sK~ z5u3~5~5'x"°~C+~54{=~1sKsK}v~qxKt~s`x1v¨:w]¨ £{:wKGw]~RwK~5sK~5'x:x]{u3Ou3 ® ~5zCxK{u3 ¥ ¥½Ì¡x]tv~11}v~u3´x]tv~~Rµvw]~5s.sK{u3 ~0 ¨v~C_~C¨vs/u3x]tv~ }v£_~Cw b u3£{|x]s{^x]tv~w]~Cvw]~5s.~5xIx]{u3?¥ ¾ tv{s:}v~x]tv~Cw]~Cªuw]~nzt1v 3~5stv~5^+u3}Gs.{|x]zt w]u3 32y £{|x6L1ztv{v~x]u 64y £{|x6L1ztv{v~¥ ´Xb @X66 2.3.5 Goals ¦xx]tv{s_u3{'x"¡+u3}±s.tu3}v¨^¥5¥5¥ Dispositional. ËU¼vuU x]tv~q£[1sK{z¤xK~Cw]{vu3u3 :wKu3}v¨4Àuu3|~"1Fª}vzRx]{u3vs1v¨A}v¨v~Cw]s`x1v¨fx]tv~z5u3vz5~Cvx u3Xz5u3~Cx]~C~CsKs É 3¼vuU bool É x]tv~x_~ bool ¡?{|x]s11}v~w1v 3~¡m1v¨Fx]tv~/zCu3+~Cw]s.{u3vsq1v¨4u_~Cw:xK{u3vs{+u38{v ¼}v¨v~CwKs.x1v¨fx]tv~¤~C11}:x]{|u3±u3=~Rµvw]~CsKsK{u3vs{'+u3|{v u3 3{z"1m1v¨fw]~5:x]{u31?u_~Cw]:x]uw]s5¡ {7[:wKx]{|z5}vª:wx]tv~oz5u3vz5~Cvxu3§sKtvuwKxzC{|w]z5}v{|x~C11}:xK{u3?¥ 7[:wKx]{|z5}vª:w"¡'+u3}fsKtvu3}|¨£_~ :£~x]u7¥C¥"¥ Operational. ºÂ/ËU¼vw]uU+~quw´¨v{s.vw]uU+~o£[1s.{zs.x:x]~C~5x]s6:£u3}vxÀuu3|~"1ª}vzCxK{u3vs É ºÂ 3¼vw]uU+~ tv~Cx]tv~Cw6uwvux/ 3{8+~5±sK~Cx´u3§£{:wKÀuu3~"1ª}vzRx]{u3vs{s´zCu3[|~Cx]~ É ºÂ ¼L~R1|}[Ix]~6o 3{|+~C~Rµvw]~CsKsK{u3{|+u3|{v Iw]{|x]tv~Cx]{|z¡1u3 3{|z"1 ¡3:¨w]~5ª:xK{u31u_~Cw]:x]uw]s É ºÂÑ'¼wK~"1¨ 1v¨}vv¨~Rw]s.x1v¨ A 3{|+~5sK{~vw]u3 w: º sK~C~7£_~5uU¼d¡{'+u3|{v Au£ ~5zRx]su3 :wK{|x]tv~Cx]{z´x³_~/º {vz5}v¨v{v bool ¼1v¨f:wK{|x]tv~Cx]{z1¡u3 3{|z"1 ¡1v¨w]~5:x]{u31u~Cw:x]uwKs5¥ ¾ t~/x]~Cw] ,C-Z2/Hm&cH?50 p C$+2 w]~Cª~Cw]s¤x]u7vw]u3 w1x]t:x z5u3vsK{s.xKsqu3L1{^ª}vvzCx]{|u3^tv{zt { 7xK}vwK±z5u3vsK{s.xKsu3=sK~5¯}~CzC~¤u3X¨v~5z5ªIw:x]{u371v¨±~RµwK~5sKsK{u3fs`x:x]~5~Cx]s5¥·:xK}vw]1|+¡u3v| x]tv~oª}v¨1~5'x1x~5s:¨7u_~Cw:xK{u3vs6¨v{s.z5}vsKsK~5¨±{|7x]tv~ovw]~Cz5~5¨v{v nsK~CzCx]{u3vs´:w]~o}s.~5¨?¥ 2.3.6 Exercises : 03 Exercise 18 n Å±Æ S603( 2A$ < * D - 55 < P 00+&QR$ < TC! < B" -.0 < , C03M703 D - ,`H?503Mn#J$'§T:03$'&l& Exercise 19 f:Ä →Ä n x, y, z ÅfÄ dk+- ,5 ºÂ/ËU¼ ºÂ/ËU¼ 3¼ (x y) z = x (y z) ¥ º { ¥ ~1¥|¡ ´ Ïo»e{s´1sKs.uz5{ªIx]{|+~U¼ Zº { ¥ ~¥8¡ (¦·´Ð , Ïo» ) {|s´¨v{s.x.w]{|£}x]{|+~U¼ £J¼ (x ∧ y) ∨ z = (x ∨ z) ∧ (y ∨ z) ¥ z"¼ (x ∨ y) ∧ z = (x ∧ z) ∨ (y ∧ z) ¥ ºZ{ ¥ ~¥8¡ ( Ï» , ¦·´Ð ) {|s´¨v{s.x.w]{|£}x]{|+~U¼ ¨[¼ (x ↑ y) ↑ z = x ↑ (y ↑ z) ¥ º {Z¥ ~¥8¡v·´¦·Ð¸{s61sKsKuz5{ª:xK{|+~U¼ : 03 S K5"27,0]T# S x1 , . . . , xn 9 n Å xi 1 i n Exercise 20 Æ S p -lM^$GMC\C$'& D 5,1B5"-8Hm -`0 < 0]T x 1 x2 . . . -< ºÂ/ËU¼ xn 03( #J$'7#T10+&l&c03(- <p ,15#,Y0]TTR! < B" -`0 < , $+5YBC032/Hm&c5K±T103O#,:"^0]T \"- < $+"* P 00+&cd$ < TC! < B" -.0 < ,:9 ºÂ 3¼ Exercise 21 3¼ {¦·Ð , ·Ï ¾ } £J¼ { Ïo» , ·Ï ¾ } z"¼ { ·´¦·Ð } ¨[¼ { ·Ïo» } ¡tv~Cw]~·Ïo» := ·Ï ¾ ~"¼ {Ï» , ¦ ·Ð } Ï» ¥ Óru3}¤L5o}s.~@x]tv~Q:zCx§x]t:x {¦·Ð , Ï» , ·Ï ¾ } {|s§6z5u3~Cx]~sK~Cx§u3£{:wKqÀuu3|~"1¤ª}vvzCx]{u3vs5¥ !HH_0+,: S S±$ <XD $+5$'&l&M$+"-`$\U&Q",0]T4 *IH 9 : - <XD M$'&!§",/T103 S Exercise 22 a b c int S$ <XD T103F(6-.B5j#Gdk"H?5",5,C-`0 < , $ <XD *'-.5& D D - C5 < a b a < b < c a < b && b < c 5",R!&)#,:9 c ºÂ ¼ $+C < #",C- #T:0+&Z&Q03(- <p dkUH?5",C,C-.0 < ,$vBCBC03 D - <p K0±05H_CC$'K03H?5RBC D < BC", $ <XD $',C,10B5-³$' Z- M-Z -.",:9 º  ¼ Exercise 23 3¼ x != 3 < 2 || y && -3 <= 4 - 2 * 3 £J¼ z > 1 && ! x != 2 - 2 == 1 && y z"¼ 3 * z > z || 1 / x != 0 && 3 + 4 >= 7 M$'&)!m$'K# dkUH?5",C,C-.0 < , p -ZM < - < kv5 5B5-Z,1 Exercise 24 4 4 X < D < D S S$ $+5$'&Z&0]T/ *UH_ (- # S S$ X /,5K.H x y z int x==0 y==1 z==2 J$'/Bd$ < *03! ,:$+*$\503!J #A03!|H?!J/0]TL#T:0+&Z&Q03(6- <p D .H_ <XD - <p 0 < #n- < H?!o$ <XD dkUHm&ª$+- < *[03![n5d$',10 < - <p 9 Exercise 25 K5"- n-Z 9 d\5* `,5K.H?S@$',C,C!J2- <p # J$' ºÂ ¼ H?50 p C$+2 7 J$+C$vB ºÂÑ'¼ # include < iostream > int main () { int a ; std :: cin > > a ; std :: cout < < ( a ++ < 3) < < " .\ n" ; bool b = a * 3 > a + 4 && !( a >= 5); std :: cout < < (! b || ++ a > 4) < < " .\ n"; return 0; } : - <XD #&c0 p -.Bd$'&?H$+C < #",1",- < &- < ", a$ <XD 0]T#T:0+&Z&Q03(6- <p H?50 p C$+249 < J$'^BR$ *03! ,:$+* $\503!7# 03!|H?!J40]TO#7T10+&l&c03(- <p H?50 p C $+2 J$+C$vB5K5"- - 7 D .H_ <XD - <p 0 < #n- < H?!o$ <XD dkUHm&ª$+- < *03!J/5d$',10 < - <p 9 ºÂÑ'¼ Exercise 26 # include < iostream > int main () { ´Xb @X66 Ì unsigned int a; std :: cin > > a; unsigned int b = a ; b /= 2 + b / 2; std :: cout < < b < < "\n" ; bool c = a < 1 || b != 0 && 2 * a / ( a - 1) > 2; std :: cout < < c < < "\n" ; return 0; } 2.3.7 Challenges »6~C+~Cw]s.~ u3{|sKt·6ux:x]{u3 -Z,^$±T:03"24$'L0]Tf(6"-Z - <p dkUH?55,5,C-.0 < , (- #03!J$ < */H$+5 < #5,1",:9 \5RBR$+2^H_05H?!J&Q$+- < #&ª$'K < - < 5KC < ,C-ªk -.5,/(6 < # BC032/H$ < * n5( &Q"# $vB > $+ D ,5.$+UK D K0!J,1- $',¤- < H?!?T1032A$'mT:03LdkUH?5",C,C-.0 < ,L0 < #C-Z D ", > K05HN$ <XD J$ <XD 5& D BR$'&QB5!&ª$'K03U,:9 ]< Sn( U,C(6"-ZK¢#05H_5R$ <XD ,CSf$ <XD # < #05H_5C$'K03 #J$' ,4(6J$'L# X < D ,6T:03 9 : 03dkv$+2/Hm&c5S6#dkUH?5",C,C-.0 < 5 , . $ »´~R+~Cw]sK~ Exercise 27 ¦·´Ð ( Ïo» (0, ·Ï ¾ (¦·´Ð (0, 1))), 1) RB $ < \5n("-Z#K < &)- > #- ,- < 0 0 1 ¦·Ð · Ï ¾ Ï» 1 ¦·´Ð . &ª$'#K5,1 "! < BC40]T±05H_5R$ <XD ,f$ <XD 05H_CC$'K03U, D < ",±$4,`H_CBC- BF5M$'&!$' -`0 < ,1 "! < BCL0]T¤#kUH?5",5,R-.0 < S,1R CB" -`0 < 9 9 [9LX0fCM$'&)!m$'K$ < dkUH?55,5,C-.0 < - < S@( p 0F#503! p G#,1 "!§ < BCTCC032 &Q T5K0f"- p (6 < 5M5( <XD $ < 05H_5C$ <XD S( D 0 < D 0$ < *#- <p S\"!¤(6 < ( <XD $ < 05H5C$'K03 0]TF$+"- * S¤(a5M$'&)!m$'K±- T:03f# n 05H_5R$ <XD , D -Z5RB"#&*GK0F#&Q T5¤0]T- $ <XD 5`Hm&Q$vBRL#- < M0+&M D ,1 "!§ < BRF"&cC2^ < #n, 1 \"*#55,C!&)´0]T#5M$'&)!m$' -.0 < 9L@ < ( p 0K0n# < dk',1 "!§n < +BRn "&Q524 < .9 ]< Bd$',10]T 03!Jdkv$+2/Hm&cL$\503MCS#-Z,H?501BCC D ,$',T10+&Z&Q03(6, B5!J"C < #&)*LH?50BR",5,1 D 05H_5C$'K03n- < \C0+& D ¾ 0 0 AND} ·Ï | 1 {z 0 Ï» 0 0 | NOT {z } 1 ¦·Ð 0 | 1{zOR} 1 1 1 AND} | 1 {z 1 1 Ïo» 1 ¦·Ð 1 ¦·´Ð 3 X0±,:C#J$'´#- ,- ,- <XD R D $7($+*G0]TL5M$'&)!m$' - <p #03"- p - < $'&²dkUH?C",5,C-`0 < ¦·´Ð ( Ïo» (0, ·Ï ¾ (¦·´Ð (0, 1))), 1), *03!ABd$ < T103 dkv$+2Hm&Q2A$ > $n\50+#K032 ³!H D R$+(6- <p 0]T$ < dkUH?C",5,C-`0 < 5C CB" -`0 < 9 9 #J$'qBR03"5",`H_0 <XD ,K0f#5M$'&!$' -.0 < ,1 "! < BCn- < 9¤VX03!a(-Z&Z& <XD #J$'´#- ,/ 5C-Z, $'&),107M$'&- D T103n#703"- p - < $'&²dk"H?5",5,C-`0 < 9 n55%BC0324",F#%$vB5 !$'& k55B5-Z,119 "-ZKH?50 p C$+2±, S SL$ <XD #J$' and.C or.C not.C 5RBC5-lM7$',- < H?!J$7,1 5!§ < BR 0]T\500+&QR$ < M$'&)!",- < $'&l&05H_5C$ <XD ,/K0#n&Q T5o0]T s {0, 1} #F05H_5C$'K03 9f03!J|H?!o,503!& D \5#,1 "! < BC #J$'( p "/\"*^5.Hm&ª$vB5- <p # &ª$',5 05H_5C$ <XD ,- < (-Z#G#5",C!J&8¤0]T5M$'&!$' - <p #s55,`H_CB5 -ZMf05H_CC$'K03T103#52A9 n s ]< Bd$',1^0]T $ <XD So(7!J,1 S$ <XD T103 9 : 03adkv$+2/Hm&cCSn0 < and.C or.C n=2 not.C n = 1 <- H?!J p D < SH?50 C$+2 ,C03!& 03!J|H?!r#o,1 "! BC S§(´-Z&c ,503!J& D *'-.5& D , (1, 1, 0) and (1, 0) not 9 (1, 1, 1) ]< $ DD - -.0 < Sq(6"-ZKH?50 p C$+27, $ <XD #J$'03!|H?!#F,: "! < BC 0\ s : - < $'&l&)*'S("- KL$/H?C0 p C$+2 03 K0#zero.C - < H?! 9 one.C .$+- < D \"*4$"HH_ <XD - <p $ (- # 0 1 s eval.C < 07- < H?! #J$'q03!|H?!J#,#752/Hm *F,1 "! < BC:9 p 01$'&0]T¤$'&Z&#-Z,- ,K0CM$'&)!m$'K/\C00+&QR$ < TR! < B" -`0 < ,- < \"*,C-Z2/Hm&)*±Bd$'&Z&- <p # S´(655L#703!|H?! BC03"C",`H_0 <XD - <p ,1 "! < BCF0]TH?50 p R$+2±, H?CCBC D D \"*%$aBR$'&Z&rK0 eval 0]TG0 < H?C0 p C$+2 - ,F!,1 D $',F- < H?!J´T:03^# < dk70 < A- < #a,1 "!§ < BR19 ]< ;=< -QkN$ <XD - < !vkf#- ,BR$ < 5&c p $ < #&)*%\5 D 0 < M-`$4$ {|_~ 9 : 03±dkv$+2/Hm&cCSK0aCM$'&)!m$'K#±kv$+2Hm&Q dkUH?C",5,C-`0 < TC5032 $\C03Mn- < S(,R-Z2Hm&*F *UH_#BC03272A$ <XD ./ eval |./ zero |./ zero |./ one |./ and |./ not |./ or |./ one |./ and -Z,Bd$'&Z&),$'&l&r&- ,CK D H?50 p C$+2±,- < ![ < S(6557$f,1.H$+C$' - <p RB"#J$'q#403!|H?!0]TL#H?C0 p C$+2 K0a#&cZT5n0]T-Z - ,!J,1 D H?-8H D - < K 0 #oH?50 p R$+2 K0f#"- p o0]T- .9 0 < ,: "! < #&)*'S#(60+&Qo$T:035524 < -.0 < D BC03272A$ <XD ,503!J& D D $+ 7D 03!|H?! S#/5",R!&) 0]T#7CM$'&)!m$' -.0 < 9 8 &8,:0±K",56*[03![oH?C0 p ,1 "! < BC5,CS´- < H$+U -`B5!&ª$+# 0\"M-`03!, 0 < ",L0]T#´T103"2 H?-8H,C*'24\C0+& J$',n# $',#- < H?!J|@T103 -Z, ,C-Z2/Hm&)*q(6"-ZK K0¤,5.$ < C$+27,(- #4,10312^0+#5 ./ eval |./ zero |./ one |./ or #- ,L0 < ,503!& D 03!J|H?! 1 K0±2A$ > ,C!J5n#J$'#5*F(03 > $',dk"H_CB"K D 9 - , < 0+ < CBR",5,:$+"* #J$'7*03!JAH?50 p C$+27,j$vBCBR.Hmf,1"!§ < BR", s 0]T Hint: &Q <p #A$',- < H?!.98 H?!JKH0+,1",:9 2A$1k'-Z2!J2 &Q <p #A0]T ST:03dk$+2Hm&Q5S=- ,,C!:h +$ \5- C$+"* B5-` < T:03$'&Z&'H?R$vB" -.Bd$'& ´Xb @X66
© Copyright 2024 Paperzz