You are on page 1of 89









 !" #$%& '#

( ),+-/.0
1
+2)3-5476
*
8:9<;=),+6?>@9<A76B3CEDGFHAJI7.KFH0&6?FL-/0/MNODP
QJRS3T OU)3>;V9<WLWYXZ),WHW
[ T]\ X"FHW^I7)3+_`PYa79<A.J9
DBb0"P
AKI39<WL9<0/M=OcP d \3\ d T<e%RfT [ Q
gKhij]k$lKmnkJo7pqr3l"stoujvisr7w7o
x

y{zY|z~}EzY

}KZ

'5f:"fft5$f&&t
!f/UEK"ff
f&&'fY"&
]5UfYG&t&'fUff"f&
<&$]&&5$E&Z<&E<f"
/2Yuf"$K&//5]5J
/&U&"Yf"Z5&"5&G^^f

/<:Z5&"55bft
'&
/<"fYU
Y!
2 *f &!b&

"f&f&
5&&"5
f]Zc5]fU^<&f&
"Y~%&Z3f&Z]"fft5f& b
2Y^E&$c5Y<//~/<3=2,5%/
&Y
!^&"/]u5~^Z&H:]5&&$f&
"5f"f Y Yt
cuf5&^bf?Yff&^5U^&
f& /t'b<E&nKfff&^UY="
]5U]& @ft5 &"&]
&="/]HGf&&&!tfcEG]b
tf&

%&Y&"/ &f

'ctfc 3&&&"3f&cZY&
/2YnY&&%Y%3f]5~"fft5
fYH5uG5%L55/<=~5&,%G&&tc5
?&Jt!%b5^&""b^Z5&
5Y]
^~&~]5Y]n<:t]5U
2~5]:5& ' Yf:& G :@5
:t7$?&U:5%]n ]

5L&u3&&f&&n2&&JZ5^&5f&]5/&&
YE

Z"&@<bn'""]@&&f`f
EK&b&f"!"f& <b
f&=],5Ub5GbG 
Y"f&:^]5Z"3&5]5&,^f
7]5&~&/"f&':G
&
']
f&7%5&~]
<f]5Y"U&YU3Ef]]'
2Y]'3Ef
E<c&7'bcY5c3Zbt5&
t&&fff='"~&"c&5K~&

}=E$~EzY

}"|
Gz~}=||

]& ]!E5<
but5U&Z5"f&,~&!~5c^
!U3E
&Z5n]'5"



': 
'f:Y& 5
&
ff&5
GY3"Uf&f=~&5Zf<Y]5
!t]5
:Z<&Y]U&cYY]5
f&

f*

2

%&Y&"/ &f


'UJY<uc~f=57&]5 E
&=Yf
ff3'2&&~ff^ $
f&
u":2<3


]  


f YG
/

<!
#"

'
GY3
"'5n=~'c&&tbGGG:J
fU3f&@]U&&<3
&
"'Y~3&~
"&&t5&c"3&
/&&nu'&^^?YcYf<
&&YLK&"cY&&Z5&%=<%$
< fK^"n3U2Y&ft&Y
t]5ZY &t'
&E]5E2Y2<L5
U<<n(
&

 <
)]!^5
U2
tfUY&
]5L&*
&]5,
+ f<E^uf&3&f&~&^Z5"Gf&<E^


)]
L']~U]f<
,c&f&fb )]
L 3Z%<b"f <Y]&>
]EGG"&
5'n7Y& ~ :]5!,3U5 &
f&
/.

*02143

<


)]

>

32

^ 'Y&t5,bf" E &
^65fZ&bG&ZYUf7081] c'Y&
ZZ5&K9
)]E]b& /&&^
""5 ZY<&EcY&?Yt]3&
&!^/&!3&]Y"E&"33Yt
]~]t
)]Y~5U5=n6
uU"2E&
]YYf2&YfUf"/ ]Zf&&
&]J
)]u]%cK3u&cE/&&K'J$3&&
f3&Kf$^$ 0815Y&$ufK:
)]]
'/Kf"&7&tb< ;]f&]!bfE
&5Y&

f &"J'%<b=,&


uZ]"& 5&&3&&""
GZ&&]&5:u&
 b&3f
fL5Ub&&EU&bnc%: ]5
&7^]5$2f$b&> )]f&n E "Y5&5EJ'^
"
!@%
)&f&"&`&2&' "
t]5&G"?
)]5n:"2c]&"@
)]Y5u&3&f

^!Y7&Y
$

&G%f&$&$5552fJ$&tf/G$5&
7E
LY&f!^~3&fU&
A

z'G

zDC

CFEzGCIHKJzML
N

|POcz~}$z

&c<bn@'&]5:<3&Gf
<3&Y!c3&5&n%'<3~]5"/cf='^2Y
<f'3&U^f&53Q
)]f"K .7R
.S5KZ/]5

T

t]&

&
3
;]

2]
1?,VU

W <


'c&/&&c5ZZ& <3 ]&


cfU3:&f&&"/&X

%^&cft]5 + 
cfU3&&@f:/&Y
3t]8
3&5&Uf, '
:ZZ
322
3'Uf&/fc]
&Y fb&f&ft]&[

'cZbf:
'Uf<<b5&<3&5tnn^f\
^]
_`a"](
&]5
3^]a_V`a"b3UZc
5?dG<]U:5&7<3&tn< 0c
 1%] ;5%3b
;]5EbG/b&'fZ
^/&,":]&b5&u]'f5e
$f]"
:/c3&5u<3 ;]5&
:/c3&%<3UEu<3g
$f]Xh
E

f &"J'%<b=,&
.

Yb3
Y!!&'&
/k

i$]j!

1ImfV n1
1< n1 oc <W
0<a1cVp081 q 2oc
l ba


Y=f&cb&
&!cE]&E&fE^  
9
)bYY&fY"Ztn'KY&
/c3&<br
;]5G:b~]5nf&/]5"Zf&
:Z/b<b ;5f&&c&&]
'!:3&/]<@
"K:]E/&7<b5
~<Jc&K&"&5&3~,&
'
<33
bEY3&5'55Z"fY=5<3
&2&& "&5Ef%<bYYff&ZZ]f
n=]uf5<ZYZs )]^Yt":",f"Yt
f/bY&='Y~Y]5]3&f&
u

mmtm

val f :

int > int = <fun>

'Y<5Z^f
^&&'Z&& /2Y
3&&v
t"':s )]&!&&%'w
;]5Mtu
x

Ummtu

m 

val g :

float > float = <fun>


'<35f&Yt y(zWn &

f^&=<3<3f^f3<f^%5Z3f&""']
f<32~GY&'
"
&5=3&{ )]<b5
#}

 5|mm

val iden :

a > a = <fun>

'Uff!"f<3&f&3&&^c3&
<37ff @&Z3ff:!ZfZ]Y~
<3E&
!"3fY<b&Gu<3&5EZ5
U]&~]55%~"Y&:~f>)]<b&

f &"J'%<b=,&
T

~#s9#sMf(SSfe'6s
wa^8s

B
Typ, (B)
aa-=fe%Ss
?
 s~s#ss%n~
B
~8
B Typ, (B)

s~#

, Typ, (B)
, Typ, (B)
6-s<~ S n
~8
~7~h^nan

&%t<b&]&&&&u<nU&&E5

7/$<3&=5%b&&J^&t5&GL'K$Yf&f<3G&/&
Z<3

Z<3
f&
<&|
dGf&3&2
x

y
6=
"f"^
`25` "t <3^
x
y

t`~5

&
j
b B
^f"fn]5 Mb ]E]c<bMa2
M
b5=

a6=
<3bw
1<,V U3
Yt~
/f~J + / R<t]&,~5$ + / R
t]5&&<3&&"c2t]5&u^
^ /c3&Et]5'&n<&fE~t]&%=/
~:"~ ZY Y]5ct&=f
2*<&='(
3^Gff^
f : {0}
t"]5
b Z5&u:3&Gf7&/
Mchar
f(0)
!='
3sh3"t]&
:'fZ/&
]5YJ/&&]:7!Y5~<3&

<3&
f &^fu<3^J^
R<<
<R <&&%'^Y]3
%&]G2]5

Yc^^

M = {f : f
]'5"]&s]
) ^f

GU' '
f
?

M }

2<"]5

f (x) = 2x + 3

G'

m|[mtj" 
val f :

int > int = <fun>

?t!3&GY5 G&f%'<~]~5
K<c3$<3Z<! <
3&5cZf&&&&
f]5cUc^nY
 &] E *f^&:<3:^ 
s]
) K^n= &!EU<"2Yf~]5&

f &"J'%<b=,&
k

&K
5 &&&E~<3
5
&&&E~<b
&
~^x]Gt5& G
f"/&=yZ]5f
^ x^2&
f^ y ^f&5& "~YGR/^&
^ x =5'<b y 2YE &""
tY "U& &&&f&'j"
& R/^"n'[

":&
"/ u<3 ]`5
f&


*"

 <


&G'Z&]:G5uxu:5!^f:"
'
&]5u5]5&&=uZUtU^<c3&fuf
cfb> )&5&f
2/Y^
E5\
tU5U> )&n
u5  @!Z5<c]5f&U<3!<
 <!
3'/&%@Z^^&& ^^
/&=E&&%&w
|[m%&&3&5
m%&u
"&%5Y
mtj"ZY
&
<3&]
'~G S67Ph,u
5Y 


t~
t!] ~<3
5
J<b
hx, yi

/

M = M M = {hx, yi : x M , y M }

?b Z& /&%<<37c]::Z

3ufE<3&5n
.

oc  X< 
oc ` 
 <i 

'&5Z&Y'fc  Uf3K]'J&&
&&:ffY<b<i
2<
 + &f&'f
E

c
:f'&35GY]5~]7='G]~f&<<
  2 &&&^&&53cs )]
]Hn^f
"f::5G/&cZ |
 <"
& Yf&bf
f <i
<
 <"/<<5U]
U<<b5@
&]5 Y5 ]5u<bc  
&n5G^2Y^s )]n=?&]ZfY5
s )]<3U c5"GE'&U5 &:f&&
&& )]E

f &"J'%<b=,&
u

&&&b&]&,5&^c1?512 
'^b<",c&<<3


s )]5

1?ZZfG&"'U
)]Y&b&=
12  U
&&"3
c&5%G$&=JGfK^^VS'

5&~~&
^%Y':5U]&~f
T

ocW5 
081  W / a


1?<3VU Q 3fUV

<

':s)]&
3 3YYt`]Z&b&
nJ<t
f&f&55UKt51?<,2VU
X
[W / ff&"5t"fb&&& fZ5Z&E
Yt U&5/&'U&5fc]&5
~&3~s )]&&]5"&G]5
no]YU]/:f
k

no,Wf5  43  232 Q 3<UViSa_


_
081   
1

'YKno]:U"/%3,c2&Uff&
no]/W  ]55  :LJ!c55n]53U&
&@@/5&5 Yct5&^U5@/{)]&
fZ&5~ "U3&& )]5f5f&&`J@G^
5"
u

no,Wf5  43  232



*Vf  ,  Wc1*Vp0/  ,c 

3fUVI081 

''YcGf=<]&Y<5#]YY3&f>)]n
x

no, / W5 

W 0/  f ^0 n o,

fE<&^2EY&] Z]$=<3uf&
cfU 7bY&!EUKccc

]
}

M = M M

f &"J'%<b=,&
x

&"]5U >)]f/&U'<b

: <U5<3

&
Y5G
5b^
5bU3&5&&f&/UM
U

&55 L&GY]5"&f 5"<3&:57Z&5 <
 ^E<&&'
&%t3&&Y
f"5~3<&]5
"53 '<c3
' 
L':& <
x

x :
'E5K]3&cYbn/&t5
x M
K&"Z3&'f^&
^ &]LE J /~  }
G5f&J&&uJ&& &<3K
'
c<b?&5<b5(uZ5& 5&/&^
<fcb
&c3& 2&&5 ]
0, 1, . . . , n 1
/&t5U" <E~^=^ &=
K '
M
&UfE,=&b
=?&<=='b
GEfUnf&! &int
G>
uuu<&5Z&=
<3&
1?3%'Gcb )3&5L'f5 &G'5&t
u
&tf&t'

ocI0<a1? 
oc <a 1

'0"E3c%5%&&Y ]bf&
G"]5!& E ]Z/^f" 
"&5p
tr
f=
,]5"Z
" < f
Z/
,Yf9
)]&&L&&%
ecY
fY&& &&& 3
Y "/
Q
a


U

t
ffZt&
>3t 08123>ZG&~Yf&&&/ 081%'&
Zt
',bYftf&f'cf&f
^f]5=&5]5c"/KYU&
" <  </]
K
" f <,%'&&&u n&"Y]3
&G"$"!"/EfZ^ R<
#c/K
u&5
Z&&&uJ^'ff<

 " g3S1?h3 jf



l ba1ImfVn1
1< n1 oc|1?<3VUW
0<a1cVp081 q 2/
oc <


" Z&<bu&7=K&J3&K$bf
Y%]
" ]~/'f'U'5/&u'f<U"

"5tf &5J'f%='~ <%%~L%

f &"J'%<b=,&

#}

^ " "<3
<p <G2]Q1?<3VU & 
/&b:G<:<7dGf<&7bS]E3U
"2]fYf& E &Y3]n
K]5"
"&<3f"]5& <b
&G"  55^]5&
s
t]5


Ms() = (M )

?&$G23cfc %b'c]5
f&&fGbY"f?`&"G5~f&n%]
Y,]5cYG]tc&5~~5:&t^
&&&&cJ
&UY &&K5UG2GUY
 Y$"f&"'2&fE]5EG"]
'
&&
c]cZY5b^f5
{, {}}
:G<&&&5"ufU]Y:U2YY&
ZZcY& fU&!:"G2 E *&c
]'G3&!^5%"]
ft&
<
Z5%^Z5Zf&&&"f5f&
uZ5
&Yf& G! bf:&&& 
f&

cfn'f&&f&5&&c3a:s )]b
<a
an<ubb
n@'
3&"Gf5b
/& &&f&/&f&GU&&
&"'&`3 f &&&':ft/f
&&&ft<f '5"3t3&&

3&5=&"&e
&=Ub5Es )]'c3G
f!f
n"/%Y&&-
/

2&UG~Yf&

Y2

 03 <3VU1I
1?03?
oc 1?<3VUi1<,VU

<]V mjo

?
mIo c 5F]
V1?
1?
m
1?
o
1?m*1?o
5

12  m|12  o/c

f &"J'%<b=,&

V1XV
5 

^'"/5GE^Ef"f3cf E&5 `'E
Y] G
.

 03 <3VU1

sig type t = string * string val compare :


a * b > a * b > int end
]5&cf? :f&& <3VUY f^2Ywc
en^e^3KE<bY"Z^f <V5"&u<3&G'

]Z"n! ]f"G2=U5~^&
Y~<3&&u']5'&!-1<^U
5 

2Y]5^f>)]Zf,Yt
"f~]%]%?Y]J Y]'" <3VU<1
'>) "u&Z&'?1 3
0
5
u&/2Y]~&

Z"fZ&c3&E^:&"" + &nZf>]
) 
^f VEcf]/&5J
$ 5U } %f

&&@< ~f: c&cf&&U:]5&


f* &YJs)]&5 V`Z5f 5
&'
)]G& 3]6
$~f&f&>)&`
`'&&^f &&"%
)]
&&"3
]/"YK&!/nGE
T

 03j <,2VU | Gn <3VU1



Jf& E &cY@&'f3&&"3
<3VU E^]]f&f>)]f"f 3K^
5" G 
 nYt &&&Z Gf<o,nYt
5&Y&fc%2G&~^u'2 & <,2V U bu]
5"f&f'&&\
,V U Gf < o,M
2<b
k

|1? <,nU G<<o


fn1?~f&fJ~5/$'] 081
{(
,
)}
&!
u

I <,VU G 


#3h32[3t 081231

 c]5

]&&

x

I <,VU G 


#3h32[3t 08123 <,nU G<<o


?&3Y]'Y7':Y$
<b
 }

X1?j <,2VU ~ 


#35h323 081b31?

'''3&& <&YY]E"f"/'"3&5
]5&[
1?]5Ub&fu&t
cf
? f<]5"c"&b"/&Y$3c5&
fc&c'^?Y$'Y<bYbu
,V U G3%%
KG:5:&3] 2Z2

n fGGf]5E&
&U'&"
^fZ&&\
f5
1E]~&/&~f'c +  ]
&s )]"G2c3&c5^YtUGYf&3225
25u&"%Yffu52&&Y]5u5</E5
&b5%"&,]5=^YtY~5&"n
''!3U5t5&Y"f
?$!<3,


*|p <,VU Gff51? 

Y]f&f&tZK~"35]5u

{
&
f?Z5&%<u ^
5u5 <5uZYf> )] <b5r
u ]c"&K2
G'27
5~%Gs )]&7&]&5G555']5K
25=5&&&? ,VU G <V]u'J$^
^YYZ5&Y5
>)=&M5]5M <3VU G V
5&KJ'~&K"5&KJ$
fc]52YUn )5n + 6
<3V U G V
U:~M
j
U`:!f"7ft57
dGG 5
D
&|
$E}

]^]5Uf:ffE&55
^f @5&'&`b>)&`Yf: <cbZ&&

 c]5

tG]G&b5&cf"Y5'E G
^f 5
E<&7&

&f&uff<f
x
fx
(f x)

"b5E^fn$Yt3Zf&
f
x fx
5'f&
~&='
dGt5"2:b3&
y
&5(f
x)y
Y
dt5 U<&Z&f&5'c]
&
]' E 
'u"$&"&]$ av72'5s)]&c^?Y


/

Ix = x,
Kxy = x,
Sxyz = xz(yz)

'$b%5"&5^G^2Y&LbY&f
U
Y!&"&' %
a.

mm

val i : a > a = <fun>


mjoIm 
val k : a > b > a = <fun>
X1mjomj<o
val s : (a > b > c) > (a > b) > a > c
a0/c

Y5^f:5'Y]5 <&~K&5Y'<3&

c]5/JGYfb?W5nJ'KJ3&&G
t&!!f&u2& E Y<b
 5 5<&55tU/7uG~Z5/tY
'bZ7
,ZZ3tf]'<3
T

((a > (b > c)) > ((a > b) > (a > c)))

&]5
f<bc&cf]5
5/&

<H

'
& 
'3<3

5
x y
z
(a > (b > c)) a > b
t<3&& Y']U'=&R<f>)]nu"
tt,b2&&,5'Y
<bE"
/fG/&
^ftn
&&<f]Jcs )]G$&
L5fZ"Y&/&'Y f3!

 c]5

&&2^/J%{)&Y/&&=/{)]ucuG
3
/5@f> )]f& )]&cY& f!5&UY
3
n
&f& )]&/!53
&fuf&
G<"
]5fU"&U'&t/f
& )]&&KJ{ )&^^U5&c3"3&Y
2Gc& + f' f> )]c]5]&p
/

Y=bfE<t& + &7]Z/&
f& )]&&%c5G2<<b!]
bG& & f

@<c3]5

@]^55ttf&YfYf
&/&f&cY$b5"fE{ )&&r
&=</7]5&b
]5]& )]&&]ufGf5Y
dGf

&"cf&5'f% :&~&G3Sxyz
&&=xz(yz)
5f
& )]&f&fUYf&ft5U&U&c]5cf& )]&
&Etf/Et=f&YUf"fE&nHY
K
ux^RVx } "n]E&&&%t&%Z]5
"&
&f&& PI
/Yf/&&f5/3&
&t& U /2YuYft=^Yt
&553&5cv
)]/{ )]5 & &
53bn,f
/&J& )]&'
cfE/]5

/&&'f5&'5&
2]]<f"/<&E&]&fZ&!

ak

IzW 


:

char = b

f W
Wb &Y]fn!"2" Z]5
KI = I
I =
I  P zW


'''3&&
u

char = a
u
&5f?>
) 

x

*mjopgmo

val p = a > b > b = <fun>


fs]
) ^
Z&]5 &5
pxy = y

55'^ff'==3&&<&=f%/2]5=Y
U9

mjo~&
mE(
o5%55&J'&'^&5f&> 5

 c]5

+ , 
&]YZ&5& uf&
fE~/f$^f=5 E  GU&Uf?~
&t&tUYG5Z=<]]5"Y&cf]5
6?]f3'f==bfYZ2Gc'fu<3&&
^
''& R<s )]&7 ]'f~23

 }

|1*

This expression has type (a > b) > a > b but
a1[081  cV q 2/
VocFW2 

? "5t&YEs)]!15M)]5&
/ + UZ
)]E"cbU5u<3 FzW  tn
3fE?
  W!t<u^:&'ff&5
<3
|
zW2|
t&f&b<&]c<b
zW t
 zW7%'Y~Y]5 b
)]fn%Y&c5&
~ff I
zW:&5v
zWp
t<&&55&G5
3&]5":5uYG u& fG5&&/&Y5&
2c<b&uU2]<& 2G&'c&55
&u]://Zf&G]c]5<b'
zW t 

zW  t n/f&
]<Gf^~]5
Ef"/Y'3
|
zW2F
 zW7
2/&f <&%u]Y^&'5&&%<&%]'5
f&2U"&{5fr&=&R<&c>)&^n
>)]f&<Y]<&&c U]
s )]/n 3,
1:fGGu'{ )&:
m,
oZ'
"]5~]
&/bf
fEa R<
2 &]'3:
h
3 u<bK
|
zW!'~]5~
~^Z^<&'<3
cU<&'?
zW 'G&"5
"5Z'f<&



I
:

3e32

_a > string = <fun>

'"&7]5$<n&$&2$~EL3&&

&Q3h3 uttf&{)]c

. /&5 !f

^f!!f<


fp

3h3b

val katz : _a > string = <fun>


If  3t 081232

 1?<3VU!3h3

&=b&&ff~f~]5'
>)^f~
56$:Lf
uGZYftZ"s]
) nu2G&fG"YftZ:&
&~"Z3"3~H2&&5!f>]
) &G

&EG2G & ]Z"!tJ


:b:]Y&7

4nzYJ

|'L

z~EL

'%5&f K/=^ <&cf


]t&&u@5&5f5Zf5n2G&~U
"3] ]Jbu&ct<bf=5<&
2 %u&nff?&Z"&57]5u<%
f:2ZZf5Y/&&%&]5G> )]f&'5
/c3&
a

n11
0/Wc
W

f?
ff
0f W, m]
 UVIm

 1#03/p

Imcmt!
1
1<S U  mc 
n
5  

'E^?Y> )]f&c
]5
<3
0 W,:'"<G
<33"5"Z^R< a^ehUVb<YtG
5h
1#03<Yt "f5fbn 1
1<^ UYt2Y

:/c3&G'U&
dGf~~Y3/& $f
Z~5/
\
)]f2 E /2Y]5?
mcbU/&&,Y5E

. /&5 !f

Y7b
/

n11
0/Wc
W

f?
f
0<f W,m

<

method assign int > <unit>


 UV 

5 

method succ :

<unit>

&]5$7J=<b
='7<b]5]5Jf'<&K5&
<unit>
YMu
 "!f!5%<b%&,91#03/:/

"5!/c3& U/c3&

&'2Y>)]f&"Y&/Y]"U<u5b]5u&
'~&<5'^2Ycf

.

Fc q
0/Wc 
val m : number = <obj>
fUV

 <]

')]U"f"/{)] 5<UY
0VWc,
&35&'cf/^c5=7v&Ub
5K"f~'fY<&L 2
]5& + b= ~:&c/c3&]> )&n
f&&!U<bf
Un3u'5!Y/~<~]5YE2f> )]
"<
UV^]5U&> )
&U<&% b/
'5~7?
UVbG!E5fY"<!~f/c3&<&&
Y7
5]5GZ&5Gf> )] /u5~]5
/&~&t5u<&:
mUYt&:3t]f&^Gf&&:cf2
f
Yft!Y } fb
fE&5
K<
'@>)]f&<7f5=^f"f\1#03<
Z^~5
aT

c q
0/Wc 
val q :

number = <obj>

Tf]f

1#03/ 
 0/b?
s
 UV

 <
!
 &Z^2Y'@]:s)]5<cYt=

 UVImY,5'&Z!t:&cY]~&&'5&
 Y$]c:27^f5,  UVp ,VU Gfa5<81m
u
J<Y]&Z'Y5f>]
)  325

LzY

<&]/G<:]5t55c5" 

&5&7&&f&t
c]&& )]&&!?&c"!G/
]5
"=]5"bY&:Y%'YG2E%EE<5
'!Y'^2Y&

k

 03X8~KfK
1?03?





~7# sb(f9  Sn

5 

]~f"ff3E]> )&< 7,u&t5


 s)]c<&^f5 Y]&
G5^f
^f
G"f&%^Zf5n"<
next_speaker
2Y
Y^J5YYb'
5/f~]Seminar.next_speaker
&&L&Y5&
xMR(xa.,f~Z5< + "
]5"cYc2&f R/~'^]&=]^f<%c
]fY5YcYt5'Y!
3&& R<&&%'5&']&
&f"^&3&?J]&f& + n"<c"2
3&=
17],



k& >)]

zY:}=POcz

x
z|$|

&u$^"t<s)]Y^7Kcf5
Y
f:'fK)]cfE@c]5fU5bU ^f 
/&&bUs )] &n LY]5/2Yr
8 
s S]^ f!^7&:^b
5* ~
s )]"
^f&!
^2Yf + 3]

"^f U&'f&2c2!Y]5
7f(x)
&fn
]Z!Y5
YE5 f (0) &
f (n + 1)
(n)
5""'^f
]5
$Y&
$f
bs )]& /
x
y
x+y
&&f~^2Y&
au

0 + y := y; (n + 1) + y := (n + y) + 1

~M)]YY]5
&5Y'Yf&&U>)]f
&n + ]
'Y
 ^~fE&&^b
$f!&
ax

0 + y := y; s(n) + y := s(n + y)

f&&7b"/2 5E
<:f ''f5f
f (0) = 0 + y
y
uf> )]:5
"!fut55
f (n + 1) := (s(n)) + y
5! ^]5f^&&t f (n) = n + y
!&Z&&fUY 3!f&f&&
'
"tf&&5GH]5"7"^ 3cs)]2&
&&fn5]c::f^2YuY]E5
G:"  &@Y]5Z5"
f
f (~xa a)
]5G
fY
'cc5f
c&&=$Y5^
x)
a

'f(~
!
3> )]f&~x
&&fn
 2 :f&GJ<bG]]55/c3&&]5=5]&&

+ 2s)]fJ&&fc5%&Ebt&J>)Y^fE
U]~ ]5U/&ts]
) 5&K]
ff>]
) nK,s]
) c&&fUJ]=^
u5]nc]5"u~
s]
) 3/5

^'/b&!!^2Yf
/. }

VfIm< m
?
m]c5gV1
am<
!
m8V
e 



k& >)]

}

%<bY
%m<jf &&
/.

<!^`

Jf]H?&fJf&&Y3%f&75&Y=%5&J5
2&KE2n$u> )G]fK&^$]5f/c3&&
&
b
df'G]n'ft<b55
3c/&&'!:5]5^ &
YfnU/E5"c5U/c3&
&&fcE^&='KY~32's )]K<n
5
&G&&f&nff&=&"]5L3&&G5uYtc
&&f
~!G^'&2!^]] } '5]5

m
FS"Z&5&&E~Y5]3&
/.

m<F sS"e

ffS c/ q| 0,nU ^0b

$#

t < bVUnf#01 V

~Gc&tf&tcY%Y&"&&
f:cff=~~2&Y<:<
c
]5= )]ff=Y' &=f'J
~!> )]fS R<5&f'Y'f5~^?Y
/.

exception Input_is_negative;;

&&fY~<~f&&&n,5::&&&! <c]
+ ffGE?'s]
) 5Y^2Y

/./

VfIm< m
if x < 0 then raise Input_is_negative else
?m]c5gV1
!am<m8V

?<"5'^2Yfc5

/..

m<F

sS"

Exception:

Input_is_negative

uf ]5 + YfY&f:&&f

'/ /%&f5"&%ff&f]Z]
s )] U5c5Z/&ft G"
s )]:
Y&&fs )]f^f:"5
f&c:]c&^c5 U"
&f&n3&&"!"&~
t

dG 52G&&Z&Z3""7&u~<&u]
f^'ffY<&'Yf&&!3t]5Y/:t]5&
u
5
s )]
^f]52G t]&"5c
?&E&"]5
&&fY
f&Y!Y7f

iE
}=E$z~}'&(}K|
|'L

z')
}+*-,\J}KzYJ|

G5%2@&fu]&E"/5f&
%]5 )]KYfJY9
)tfZ5fe
dG^%G
&
3f&3"G5E&&t& ]&

Y ^ 3&&'GYft ^&f*


.a
c"]3E5b"/Jf]%&&t5f
]3cU~< )f&7 ^U5"c]&@t]5&
u + J L:^&&
+ uua.x? & 
&]
^U<g
u"!t]&^"
@f&t]&53&n@2G&Gf&
5&5
"&5"Y 'f&5c/c3&'Jt]5&~]'
2&nG5::fn &Utf&
"&!Lt"/5& Z"^" ]5""
&
]5"U&&&u'!&!!59
x } R'x JfE"/]H
U&Y5&&& + Gt]5&Y]5"
J
Y ^2&'
]5/\& "<c
]5]:^^
^f'^  ^f& @t]&
@
^R/&<
&:f"^2,%<bw
  0/

&~*
kTf + ff
^'ct]&1
/,V u&
\076
f~]5^::&5~~]5f~fb~f^bt]5&
YJ + $5 =f'~J&f'&:f&~Uff'
]5t]5&]'EU2=&Y^c<

uf ]5 + YfY&f:&&f

":/&&<G>)]f&
" + $5
<3&
<
>2
'!<
YZY
f& u&
tG
<

 cG^R<
<
>
c^Ut]5&" ^"cuG
Y5
5J<b  ^ U/f5/8
1 E"f  S U &"Z5<Z5
'~f&
!t]"]3E&!Y&f&&'
,
,Y3&"%t5]nfb&G5]5bcG3Y&cf&
&&] f+ /<R b& ]"f"f~<&&

&c5 /0 3:
^c
<c3 @ULUf!fU
&c&/&t]5[
d f5"U52

43

!Ut]5&!ffEf
Y@]55G5]Z&f:ff )]Uf S R<&&
576a
/
' &~f'fcff'&"Yft
t]&'/&Gcb
&:<c3H &%YYn%f:5&{ &&U5&U
!tf]f]3Y"5]&> )&5]5b
'
8&2 <^Z
)]Ut5fZ5fb^f52> )]f
t]5<f&ZZnc']5]:5
Z^ WZ&/& W3  b"5U Y&5 u
^2&*
W^?&<5:55& W^2& <
^n/]5~ctK
2t5Y@ ]U^/^f&
f"<5 <3V,
U Yt&t5^^f
>) &@5
!"5c:5Z&!G&5
n
^f^%/c3& }

Zc5]5b'f
... n 1
 53 h53 =^f5f^f
ft]5
<

f (0) =
f (1) =
f
3 U5&fn
f (2) =
/.T
j0|!3 h32

f 0 ?1 <3VU!3 h3
p~
0 P 

2 
+ f&]5 E *tUY } %&f 
%')]&~0'&& 0~
],f&0~
P#,3
!n(
&c]5&t
&7E'f
:]5]5
n=0
Et]&~&%r
9 ePY>#S/e$=&Y]
&3&"U^'&f &b/[
335

uf ]5 + YfY&f:&&f

f:/c@@U&
/ E @
f&&=> )E^2Yb5f'

9<

;:

9<

>=
@?

-~s a*6vs f


-sbSf
wa^8 Fs
#a##
~u
~u

|~u|
n~
~8
[6s a K~%s/ f @s 

|~u| = m
|~v | = n
~u ~v
m+n

 b~S S 



9<

A?

(
~u(j)
(~ua~v )(j) =
~v (j m)

/.k

BDC

9<

j<m
s#

EGF

~@^ f
-s
~
sn~
~8Q~@#s
7s
~u
~v
w
~
~v = ~uaw
~

-~
s=n~

-~'Saf
s7~
9
~8
s*n~

w
~
~v = w
~ a~u ~u

w
~
~x

~v = w
~ a~v a~x

IH

]^f <,2VUVU]Uc&5@
]f"f <3VUa5VU3h3Y$-fr5]5
& &&
bY/c3&'f$< 5
^2Yfc5
/.u

3h3n


 2
3 hn
3
<,n
U 5nU3h3

m <3 '  f
]
f 
U
0 < 3 ,VUUVh3n

LK

'"E<c35GfZ]5EZ/c3& KfE"]E
f&&&&&c]5cfcU& &E

f&f

Invalid_argument "String.get"
E  =nf) Ub5^&5n + /,G'Y
^ 3 7h53 &"^f<5n n
"tom"^"cat"
~x
&!ft&&3f
/R &&'"& 3
>]
) f&
~x n

&&f
'^2Y&
/.x

~x0 =

T }
+ fn a0nm

~xn+1 = ~xna ~x
3

a0Vm
a0Vma a0nmb

uf ]5 + YfY&f:&&f

e8c2

ZZ2& *5^
A
3&5~]5&A

^

T
/T ]
/T 

L M := {~x~y : ~x L, ~y M }

L/M := {~x :
~y M ~x~y L}

M \L := {~x :
~y M ~y~x L}
')]cs]
) &cZ]5&/fcu&5]5'&&&
^f?) &3!&"'^ &fn~'f!Y
Yt/3 &u,'f5>) 

M

T

< no*c^UW 0
L={ ,
,...}

Kff&&3f
T

M ={

&

1<VU1 V
n1/^0c 
,

c0c

,...}

&YZf&Y~^2Yf

L {2} M 2
T/
/!1<VU1 /Vn1<#0c  c0c5
{
,
,
n`
o ^
U
W 0!
1<nU1 no*c^U
W 0Vc1/#0c  j0
5
,
,...}
J&2'fU ]
) ffYUK2YY&
+ &&&
]5'f&'b
5'&fn,
3&EL
^uM
n3
o %'/b5f

ZY]5</E&f&&EE/f
&3&n
f
'
f&&G~5$5GY]3
L/M
"
R<~fb&7%,5"<
2]?1 1
L={
,
f M 1 %'

<R fG
L
81
,
,...}

M ={ }

Ta.

L/M = {

&5Y

&

M
TT

2?
,

,...}

&/fYU5Y<&YY=1&!fU
^

7S ]5c1
,

}/M = {

c

<f&Gfp
)!&5]&
f&*&<
^&
f]&g&=5U]U&<Z^f!

uf ]5 + YfY&f:&&f

]5&5&&f%%<^&5'&]5&Y]
3f!f&5
&ff&f^ &E
^2Y
f]5

b& } =f } 5
"t=UZ&
]3&  ]:3&5& ']5'fE]5'f
b& :' &!'^2Y&
/Tak
/Tu
/Tx
/k }
k

L(0) =
L() = {}
L(s t) = L(s) L(t)
L(s t) = L(s) L(t)
L(s ) = {xn : x L(s), n N}

E]$<fcb&&^ }
N

& "n&f&
Ycc
&5
b
st
st
=
&&:]5ZG&E~E5]5&f&
&
tf@
)]fKfYYU&
5~]Y&

%&

]5Y]5~3

s
Kcf]L(s)
5GGKn
s

]5JLf&&
7JuYG3E^%f&nYG
%,'f5
{ }

k
k

W f
L( ( )) = { , }
#W
#W #Wb#W
L(( ) ) = { ,
,
,...}

E5=f5Yn
k
/ k.
kT

s? := s
s+ := s s
sn := s s s

(n

R&

Z]5

''G'<c]5
s t L(s) L(t)
5&Uf&:&5&,L(s
ft)
n=
L(t)
&t^]$  5
5cU&
"2]!fb&G
b&  5
5 D
On5]
<3n
@"t!^G !&/&5= ZL"L]5
fb&b&&Ef&&U'f"&5U&]5

uf ]5 + YfY&f:&&f

/c3&"/fY5n`Z5:

<&&K]5!Yb~YY]5
"5tf&5/
5=&&f&&'(
, !&"Q
aU/V 5?Y'
t^Uc]5"5tc!'
]5&
"UYb&&]ffYf&<&&f
55f&5c&Yt5c7/f
u2GE&fu^2Yf'Y&GLu55fn
'YJuJf&bG&c&"> $fu&J%J'&
'&&U]~]5Y&&"Y5

kk5
kk5,
kk52
kk5,
kk5
kk
kk5<
/kk5,
kk5
/ kkt

s (t u) = (s t) u
s=s
s0=0
s (t u) = (s t) u
st=ts
ss=s
s0=s
s (t t) = (s t) (s u)
(s t) u = (s u) (t u)
s = s s

s = s
0s = 0

0s=s

Uc3:]5c&Ufb&UUffY
/]5G]'5"'E^2Yc&/]!3E&n 

&']

/ku

X=

W
X

&5JU5
&!]5n]5E$!G,
Y]=
5<)]KX~&/]c32#
=
ft]5=t&
X
X
%"

3MW a + f7&&7&
Wn
W
W]n W
W
W]3f~vnuX&f&3~~v":&Z&
/kx

X=

%Z5ufUE&/]nYL'f&Z5/&^
5"Z
W W %'!'Zf2G&

uf ]5 + YfY&f:&&f

L Q

R<

^
Fes ~8
~ ss(@6sQ s~s#SV SYf
s
t


n~ S
X =tsX s t



?
fb&!Lf/2
$

fs t

9,:Y=
nt,X
U&=
s5tst2
^2Yf X = Y Z Y = s Z = t


u }

Xi i < n

]35f&='&/]5
]5Y^

Xi = s0 X0 s1 X1 . . . sn1 Xn1

} f&
"U3f3&7 '&/]" b^u
si

&& si X%i E~&'<&YY]=u&
i < n si
0
& 3"&5/
&f'ff&/&/]5
Y""3f~]5'&!'&/&]:5c5

L T

R<



^
ies
7~\#sZfv V~@ c~ Sn
E

sn~
?
~s/7SbfvrPfr~= c~
Xi
sP(

s'n~ ?~Ss#SV S

si i < n
E

UF



7S~ ~

X i<n
S8@6swsZ~iZ ~

Xi = L(si ) i < n

R<

& 5f&&

 <&
5&/ f<5
b
5u'f5
! u35Y'^
K&/]Y
 + 3En2
)]&/]5
]'^
n1

u

X0 = s0 X0 s1 X1 . . . sn1 Xn1

$G&5 5"
'
&/]]G~Y]
G:~$f
s0 = 0 =YJ&"E&/]
X0
i<n
<b&YX!i f0 t<
5
&ff
^
'& 
ti
Xi
&!
u

X0 = s1 t1 s1 t1 . . . sn1 tn1

'Z&fY^


'&Z'&&"
s0 6= 0
&<5 X0
u

X0 = s0 (s1 X1 . . . sn1 Xn1 )


= s0 s1 X1 s0 s2 X2 . . . s0 sn1 Xn1

xff/&5u5M&=&

f!f<&& ' Z
<&GJb=&5fJ5'5Kf 
'
2Y''&/]5f&<Z5&


L'GL
X 0 X1
X2
GG9
)ZY]f"ff&Yf&&
<5^
Y

K'&&

c^]'{ )]&5
X1
"5
"2 > )]f&&"Z
f'f &`]:3&
X0
5X
n1
<U
&Uf

]^
&/]5
X1
^
'&L
<&=G:&ffUfK
)]U&/] 
X2
f^
'
L 
2 ? 2 ]
&f:ff!/]5'@^fX0
X
,f'&& 2 5GU" 6

)]]"&&!fE/]52 '^
X0
<&
X1

X2

Wb|U$z~}KX'LzYz')&}Z*[,KJ}zY$|

@]5ZfE&
52YY:]55ff&&
&xak ]& "" 3@
cfZ5
@
"<:f!'&3

/&Z/
u/

* 

3S1?<G]23b

'U<E?<&Z<3UnUVm 5f^]53&
@ff&&&&@
 2G&uZ &~fc&&@ E U&
ff&6
$
&**]f^
VUVam^E]5&<:cf<3 <n UVm]G%GY
@<5:f ~&f:! > )&n' t]&
5!3&&:
&& &<c3YU&Z
$^.*+?\[]
^
t]&
]5!& ^] f&*5"<c3
2
32%'bYY"t]&ffc
&G
YE<&5! @
2Ec^
{ }
> )]f

Zt5/
t&&Y

L3)fG5Y

xff/&5u5M&=&

K + <U5<5
L

X0 =
X1 =
X2 =

X0 =
X1 =
X2 =

 X2

X 0  X1

X1

 W X
0

 X2
X1
 X2

X0 =
 W
X1 =
 W X0
X2 =
X0
X0 =
X1 =
X2 =

 W
X
W 0


 W X0
X0

W
X0 =  
 W X
X1 =
 W 0
X2 =
X0
X0 =
X1 =
X2 =

  W
W
   W
 W   W

xff/&5u5M&=&

t L3)fG5Y

#L3<)fG55

 }

Zt5'bfU5Kf
Zt5'&!K

\(
\)
\|

 E^3&/Gt
E^&/Gt
f&'

/ W +  55G
'
&]5G E &
( ) ?
\(a\|b\)+d?
~/5't=ff ^?&/Ef^R<fKff
"<&b &Y\&fL']&!]5ft
u"Ut&tU]5f<t?"?Yf%> )]f&=]5'2&
&5t]5&&,f&f'GE]E5f
u&> )G'Zf]5$tt<Kf''$'&7n
f3&=] !>)Y5:
]
]5t<n]&5~]/$G5K5f 'G5&JJ2&
c&Y&5n='GGf^b^f3~
G&Y&5]5K> )]f&Ytc<c3G5& R/&f&&
/ua.

let special u =
u = . || u = * || u = ?

0|
X
0 se


]\

^\

|| u = ^

'EYU3&7& ]52YG^Y&&>)n
uT

i12cf50
],2
0 q ? 
<
0
K *V
1

_#

[X 

a`

aX[PeX 

?$5/ 3&Kt]5ff&&E'U&
ff&]
3>) &n@'f
<GZ5&"55uf>]
) @U

xff/&5u5M&=&

&&f7 &E!&5$G&& <


!2&fcY&!!]!]5&&3n
&Yfc
)]n "H
/uak

let bracket u =
let i = ref 0 in
for k = 0 to String.length u1 do
if u.[k] = ( then i := !i+1 else if
u.[k] = ) then i := !i 1 else i := !i
done;
!i;;
let splitpos u =
let i = ref 1 in
while (!i = String.length u) &&
((bracket (String.sub u 0 !i) > 0)
|| postfx u.[!i]) do
i := !i + 1
done;
!i;;

let special u =
match u with .
| ^ > true
| _ > false;;

| * | + | ?

| [ | ]

let postfx c =
c = ? || c = * || c = +;;
let rec is_regexp u =
if (String.length u) = 1 then not (special u.[0])

xff/&5u5M&=&

else if postfx u.[String.length u1] then


is_regexp (String.sub u 0 ((String.length u)1))
else if u.[String.length u1] = ) && u.[0] = (
&& splitpos u = String.length u then
is_regexp (String.sub u 1 ((String.length u)2))
else if splitpos u = String.length u &&
(u.[splitpos u] = | || u.[splitpos u] = ^)
then is_regexp (String.sub u 0 (splitpos u))
&& is_regexp (String.sub u (splitpos u+1)
((String.length u) 1 splitpos u))
else false;;
'!5 ]&f&>
$ &fZ3f
) 3&5&

Ufc]5b5cKUf!U&&@t&&
tEc"2n Yn]5:^U"<c3H'
 fb f&5U<5Ut
]5c<cb<&&fY t](
&7"nZ
&
]5U&ct<(
)]tb!&f c b
HL'fU=
)f2
$~
&:]5U&/&Utf&t^U
5'Y3n @
2Y~Ef"/UE]]5&&&
3
fE]5^2YYf t&t/ZYf
&"5ff&&

5Z5:^
5U&s)]nf&@
!'&&is_regexp
ZG &Z=5&
''s )]&nf
55&3]'&"Y
b&&"&ff&n2&&'&f5
Z&5@^Zb/bZf<&&fc/]!&&
U]KJ^:> )]f&
Z&&fn<]c! V f<
a 3 Y E Y7"fn
5"]5E5b2Z /()]f3&5c2Y
Yff/fn) !b5&&f5&]57G']5"
Yf:LU]5c
c3c&"&@3:f\]
) b
Y:t& } 
 2f<&~'&5~fb5

^&&5]5,c"]&` &:"f&&5
Y2t&t)!
@^nEft5=)

#} ]f + t5f"5t



^fU3&5=YtG]5 } 5%Yb$n5fM)
&5Y tc]"t&7~Z2Z3&
Y
5t] } 'f3&
xcb

d|
$z (J$ze^$

J

#Q>#n#*h# n#8YU//
uu

A = hA, Q, i0 , F, i
Y 5e a)]& >#n V5=M)]G
A
7^>#V#,

Qfe%Zcae^ys#n#
i0 Q
F Q
fn]
) ]
Yv Sc ^8^Vn^8u
u EY

a
QAQ
xy
<!55~&f'^2Y&
hx, a, yi

.

/ux
/ux5,
ux
ux,
ux

x y :

x y : x = y
st
st

x y :
x y :

x y : x y

x y
s

z x z

5

z y

sn

n x y

~~,!:]5
x }

&

~
x

L(A) := {~x A :
q F i0 q}
f!&3Gf?e8n8Qa
# 2

 2]!"5c#^
A
J^' 
&Y 0 ft5

a
q
a
q
q q0
'JK ]
) ^f "H

;

/x

class automaton
object
val mutable
val mutable
val mutable

=
i = 0
x = StateSet.empty
y = StateSet.empty

#} ]f + t5f"5t



val mutable z = CharSet.empty


val mutable t = Transitions.empty
method get_initial = i
method get_states = x
method get_astates = y
method get_alph = z
method get_transitions = t
method initialize_alph = z < CharSet.empty
method initialize_states = x < StateSet.empty
method initialize_astates = y < StateSet.empty
method initialize_transitions =
t < Transitions.empty
method state_change s = i < s
method add_alph d = z < CharSet.add d z
method add_state d = x < StateSet.add d x
method add_astate d = y < StateSet.add d y
method add_transition d =
t < Transitions.add d t
method remove_alph d = z < CharSet.remove d z
method remove_state d = x < StateSet.remove d x
method remove_astate d = y < StateSet.remove d y
method remove_transition d =
t < Transitions.remove d t
method make_initial d = i < d
method make_alph d = z < d
method make_states d = x < d
method make_astates d = y < d
method make_transitions d = t < d
method list_alph = CharSet.elements z
method list_states = StateSet.elements x
method list_astates = StateSet.elements y

#} ]f + t5f"5t

a.

method list_transitions = Transitions.elements t


end;;
'YU'Kb&!:'f>]
) nY'&5

Ec5u]%7&Y]5u=%s]
) nY
ts]
) u%5&nYtc
%&&'
<3c& n 3 + "<37  s]
) &7Zf&
=Y<b35nYtZ]/&&/,?1 381o W '1f 
'cs]
) ~'5~fK5f~<cb~<c3Hc~5

5 &'fUfE<cb&3&&%' c<bKKff~
s)]n'f&E2&:fEf>)]J/&Y<30< , b
'ff&&Z3^"Z/<&nY'5ff 0f W,
2Y
]5&5&3ct]f&n &/]5 5E]5
EL5&9
u
2U
Ec5ff
&&
Y"w
u&f5"5~fZ<
/&n/5"<ct'=5G&!'f'&b
Z<&~<b]5<&'5:bt]n]fZ&t]ff&
/&%,~f5]5 &'!]E&:
)]^f "7<a 081
3
1uL3
3ZZ
x

# let a = new automaton;;


' ]c&5/&{) &!,Yt)]
t5fZ5nE'$tU } nUt5&n]3&7fU
J5&&fct5&~G&fU%~&u
 :5t]

5K5'E5"<n%]'5"f<3
x

f 
LK f?/f

fU2Ycf ~]3& + "YUG&


"3&dU~7u"Yf? "2 "5n
x/

f 
LK 581<?3 81,?1?|] Y1f   Y1SoW jf

+ fb&&:
s)]!"< "<&
&7


U]5GU&& # #5"5&c"!
A
"5t5g!UY5

Yf&
q]
hq, a, q] i
G~E

]/5,ff

0 ^G5/
q0
hq] , a, q] i q]
'&&f hq, a, q i

#} ]f + t5f"5t

L hFes

T

c

R<

(~  f s~f(~S~fS86s
? ~>
L(A)

''%Y5f"5cU&/]57=K&n^
t5 
'f&

]
L
x
q
Tq := {x : i0 q}
hr, a, qi
T q a Tr

]
i 6= i0
xa.

Tq =

a Tr

hr,a,qi

q = i0

xT

E2

Ti 0 =

a Tr

hr,a,qi

'G~~5$&u&/]&f:G]5'f
^u& ]5
ti
q
2


Tq = L(tq )
[
xak
L(A) =
Tq

Yt'5&

qF

!EY]n^!5~&f&Ef"5
]5
&f5'5]G]]5=&!K~]'c&&fA
Kft fZn
&

!KZ@f"5Y55ff

s= 0
F =
&&ft5n:&&f&nv<
5cG

t5&&
s=
3n 5&&f3

}  '
]
 0
}  5&&f= {h0, a, 1i, h1, a, 1i : a A}
s=a
Q = {0, 1, 2}
= {h0, a, 1i} {h1, b, 1i :
Q
 <
K5
b A} {h0, b, 2i : b A {a}} {h2, b, 2i : b A}
st
"5
&&f f

5f"5
&&f ' 5
B
u5A sut&
L&&
f7Ytut5

"2&nA
] fB

5
=&2"]5En
B
hi0 , a, ji
B
f f
^&&ft5!5 '5&&ft&"
a, ji
&&fhq,

t5& ZLufU5Jt5cA~5&&fn2
&&f 5U B
 ?^ 5
&&f'f
s

^A
t]F5 {i0 } E'f"5
a, ji
, a, ji
&& & hu,
%hi
0
&fY^?YuUF"5n
u
s
st
xu
A
B A
B
A B = hA, QA QB , hiA0 , iB
0 i, F F , i
xx
a
A B = {hx0 , x1 i hy0 , y1 i : hx0 , a, y0 i A , hx1 , a, y1 i B }

#} ]f + t5f"5t

i9 j lknmS9sss7s 9<


#}}

u
~

ak

~u

hx0 , x1 i AB hy0 , y1 i

~
u

x 0 A y0

~8

u
~

y0 B y1

'!f!&f Zf?&!]5
~u
=]
]UE A B ~u

L(AB) = L(A)L(B)
~u L(AB)
hi0 , i0 i hx0 , x1 i
Yt<f5" A u~
 B u~
'5&f
i0 x 0
i0 x 1


~u L(A)
~u L(B)
2K]5

UtH >)]f"f"
A
B
G := F A QB
Z

"

&

&

'

&

&&f&/
QA F B
G
"5
%]%fb utZ]5 A B ~u
L(A) L(B) = s t
u
'&
Y
hi0 , i0 i q
A  &
G
F
~u L(A)
q = hx, q1 i
Y
u'qf&= hq0 , yi
'q0f
&YU
5
q1 F B
~u L(B)
5f&"<n b5&c>) sf)
s

o

'^2Y&
#}f
# }
# }f
# }f
# }f
# }f


,
2
,


0 :=
a := {, a}
:= {}
(s t) := s t
(st) := {su : u t } s
(s ) := s {s u : u s }

&f^2Y

i9 j jp


~x

GF

9<

v~98 %f#SKs rPS

b
!@]

ff

~x L(t)

SZ#SK

t s

L'f!5&Uf

s
t u
ta u
U'ftt,
Yu<c3s 
'^2Y
c&
b2Yn
L(ta) L(u)

#}
u
t t0 tu t0
?ff
! "%EKe2vh# n 2
F := {t s : t s}

' 
]5fU&&/f&
s"5
s

$r

ff!Zbf"5t

u

557 + f&
c]5f<&
@&&t&f ":LZ&^&
3&ZZ
8e8SaP 
^cS8
t5&]&
&&<Zc
G
<f&&~L@'
/&fEtG&@^Yt
5]
b
?&tu'f]'~&&
8aE:fLE]~f
S2I ,
'
&tf&Z
)]tU"5^?Y
~
GY&
"/c3&"&c] # } `'
"]"t&
ho, ii
hr, ii
i
5G^
]E&

a
a
q0 ho, ii a
i q0 hr, ii a
]5~f&

&


a
a
i ho, ii ho, ji a
j i ho, ii hr, ji a
&

Y
]5&

5
a
j > i hr, ii hr, ji
^
5&&fY^'&aG^YLj]
5Gi<Yc
]hr,
ii
"2t:<2G& s )]"/G7&t
&Z3"&&Z5u&='55]b& )]&/^
5"3]5Uf]5bfYt
svuLw==
&%fnc]
&& b25"&=&f'Yt5tE
&n'/&$7 ]f2bc&?&E
2t~&7~!<E&
xEx

',

J!z ZH

E|%L

&|

Exe^$

J

E&"]%! G&{ &



Zn&=f&f&Ef?G]<&!L5,YY7b
:&tUY%f&&'& b^f/"/
YtZ2Z"f&5n
)]f"5tE&Z5
)]K"5"f""ELEb!&t5
f!&/&5n
f"5
:
n2 :f
~x = x x . . . x
'&YY&%f A
%&<&01f5n1
&%bub
~x L(A)
 
5]5
$"7&
t:]

#} 

~x

~x L(A)

qi , i < n + 1

xn1

i0 = q0 0 q1 1 q2 2 q2 . . . xn F

$n
%&7n&/5&n
x
qi i qi+1
'5&!"5&5G/ </t5&"Uhqi ,xi,qi+1
i

" { &:Yff


dGfU:fUc3/:Y

ff!Zbf"5t

x

"5n + 'Zb"5
&&5" 5G3f&^

5tf&tY&f5 } t'f<ftf&t/
n
qi
"5&'fcU]5cZ""<fcf35|A
G |
&5bf="LL%'"/ut<f&~f&]5uG
"Y^2YftY
' + & G&t5&
t
i0
q1

+
]5

&

&

&

]5

x
i0 0 q1
H1
q2
&

Y + &
G&
$
t
x
q1 H1
q1 1 q2
H3
q3
]5&c
t5
fn:
x
q2 H2
q2 3 q3
]5
#} /

x0 x1 ...xj

i0 qj+1

qj+1 Hj+1

&

u]u
&Y
5&&f5
~x L(A) Hn F 6=
c&t& "E/]5/c3&=t&^
Hn
G"ff

":<f~^'&
%?&
Hj
Hj+1
Q
q Hj
<fcbU]3@^
+ Z""<f"U
A
2Yt"&3&f
"c
 'Ut
A
3&
2&&&"
fEf<~xn'
dG&&
U&ft5/&fU:&Z'3&&

Z`~
&f f
Hj
Hj+1
fY]5Y&&"5"2!2&~&n]GE5
&"ffY~&Kf]5Ys )]fZ

~G]'G5:&
A

;yFs A = hA, Q, i , F, i
1|Z8s
Q : U F 6= }
wa^8

#} .

= {hH, a, Ji :

Sv~

qH

6s

{z

w~~VS~fS8 V
s

F := {U

a
q0 J q q0}

#} T

A = hA, (Q), {i0 }, F , i


-~7 ahc

AC

;|

wa^8
Zy~VS~S 6 Yf S~
~8

q Q
aA
s v~K#s:Sb 0
s%n~

q Q
q q0

ff!Zbf"5t

 }

E&&]5E^c!&"f fZ5nK:]" 
:!fUt5c # } t7Yt/]&
"5tf& c]'G

L m
c

UF



SwssP=~VS~fS
' >Sbs ~ fS~ ~8
A
A

sP s SSs

L(A ) = L(A)



+ fnU&&bc
5tU
&Z)]"ff

~x L(A)
fctt
+ uG5&JJ&"5%&A&
5 5~xL(A)?
fJ " "5

(Q)

5

u&5]"'5'U

E&!U&"K'&&

9^6$r_

L A

R<

9 ~#

#}

|Q|

A L

3&K'&f&'EbffZ

L
ft5
2

A = hA, Q, i0 , F, i
L = L(A)
B = hA, Q, i0 , Q F, i
':%fu]
f:U
2
$5
~
x
~
x
i0 B q
i0 A q
~x L(B)
f"f&Y
t
5
J
f"$~
~
x
q QF
i0 q
qF
t]5
K!:
%''2&!
~
x
i0 q
~x 6 L(A) = L
2
 2E]&f&&f&&

"&"

c"5n3U"2Jf]Ufcfcb3"

]5"5]5'5f"5c]G5=]5Y]5f&&
']'"K'&"7f"5c]5&{ &&
!&]5JG:&""5&ZG 5'f&=
~<&]~"~

L:
?

9< < )

9<
AC

s
wa^8 Fes
v~K~ c~ 
s~s/
L
~x
[~x]L = {~y : ~xa ~y

@~# 

67 6 gf
(-V sf
L}
L
~x L ~y [~x]L = [~y]L

s bs#s

[~x]L

& f'fcf]

L={

W f Wb
,

f^2Y

ff!Zbf"5t



#} k

[]L

[ ]L
W
[ ]L

[ ]L
W
[ ]L

=
=
=
=
=

W f Wb
{ , , }
W
{ , }

{ }

{}

'EUZfb&

M ={

W f Wb W
W
,

W 
W W W3
{ , , , }
W
#} u
{ , }

{}
Y't&t:]5 W
=E]n]5Yf'7&f&"&
[ ]M = [ ] M
]5&Zc@5f"5 tt/
&]&@ &c5@
"5t&t/fZ&c3& M
L

 Kff
~5 f
:'
a
I
J
I J
J = I/a
G<R >) &n ]
'&fb:5
U >f) 55
~xa
&f U' I = [~x]L
U'
[~xa]L = {~y : ~xa~y L} = {~y : a~y I} = I/a
s]
) Y&"f"5Y:]&&& '&&fUY
Ytt = ,u/ ce# VL#8
f:&f~

I(L)
[]M

[ ]M

[ ]M
W
[ ]M

=
=
=
=

L 9 Q

L(I(L)) = L

9^6$r_d 

2]5

~
x

u

~x
[~x]L = I
U& &
fL
I
@dGf
$f
~x =
L=L
[]L = L
[]L = L
&<n
rd!f!/<3f&&
5 
y
~
~x = ~y a
LJ

2
+ f
,5'&n
a
~
x
[~y]L = I
J J/a = [~y a]L
L J/a = [~x]L
 2 &&f&

:JEft
^
"U ~x &t5 I(L)
d :f32f''/5&Y

YtL
[~y]L

[~x]L
f

~x L
2
55f"5
U5 ff
A
q

#} x

[q] := {~x :

E

~
x

q0 F q q0}

ff!Zbf"5t

U&@&
5^U&
&

t]5

q
~x
[q] [~x]L
3!t]5
@'&^

G
"u
~
x
~x
i0 q
~y [q] ~x~y L(A)
s )]
&
&n^&
&ccb
[q]
[q] [~x]L
[~x]L
U5 t]5
un ~^t5t]5

~
x
q
[q] [~x]L
q
i0 q
+ fb2]5
~f5:'&
^~&t

&
~x
5Zt5 A t:]5
'f&<f
%]u
[q]
[q] [~x]L
[q] = [~x]L
+
f&
Y&
^

&

~YfZ
~
xy
~
~y [~x]L
~x~y L
i0 q 0 F
q0
'&f5

y
~
~
x
0 Y&
i0 q q

~y [q]

%^2Y=2 ]5ff"5U=YZ'
t3"5"5~&&&G]5K'~<f&&=f?*
"5~]5"5
:'&'GE<&& $Yu^
"5n5cGt^~&fJ& U"5n
"/2f?!Z5!ft=fZ5n"]
~U^&75Yft!]5"fb%'E'&3
n&Z@
k<%%
#}
}
# }
#}
#}
#}


,
2
,


0 :=
a := {, a}
:= {}
(s t) := s t
(st) := {ut : u s } t
(s ) := s {us : u s }

&
cGff&

G&
b&&"&"
'
f&
f^ s ^
'f Z<c3 [~xY]Lf 
t s
&f05c5u^t
2G&K3sGc]5
7Yf&
ts
f5"n^
GZ
&& tY

t u
L(t) = L(u)
+
Z&/22b&&f&&Ef&!Z&"
&&b5 "fZ
t"]5
5Z5f"5
A
L(A) = L(t)


&

"

"

J'
L(B) = A L(u)
AB
&& &
J'&ffYf&


]5

L(u))
L(t) L(u)
:5&fL(t)(A
5@
fZ]c& &


ft
L(u) (A L(t))
E"fY
+ fK&/E^2Y
L(u) L(t)
/nJU'&~^=cfZ5
Y

&fn 'f&"~A
=
hA,
f&&Q,
]i0,F,
Ji:&U2
L(A)

?
&n' 

a

:&bf&]5
& 
t5
L(A) 6=
~x
!&]&"
nK&EG
~
x
i0 q F
Y

?*'Y]Utf5bYK

|Q|
&5

P
t

L T6 SA? 9<-8 s(~ a~ S>< sR<V~7sP(

~8
L(t) = L(u)
u } L(t) = L(t) L(u)
2

2^2Y]5Ef"tf&73Z&&7'
G@f:^?Y + Y &f!fZtf
]5&
<G&f^s 0 Y&c<f5&
9
s
t

^
'Gft:5 00 v
&=&
L(t) = L(t0 )
t 6= t0
t
/ 00 ~
5'<&~ G 0 $f
5< 00 '5
]5
t
t
&5 f 0 t
t 0 
t

L 9 h

R<

'

UF

Z V~ Z
~8\S n~S?S  s-~ 8 (#s

{}zY$|{Y!C
z

',

J
z ZH

'Z ]5&f&Yff&5f"5t
&&fZ5"
]5Y&Y]G&&f&ZcfZ5U&f
f353,u&/&Guc<"
t&t@YU!&fn
]5
]5&5
n
A

":&&f&E n f5& ,

1 + + 2 + . . . + n = (n+1 1)/( 1)

" f"

]U&"]5

@'&

n
&nb !:=E2f + 
n+1
n+1
(2
]5u
1)/(2
/c3
&G1)
5n=
&2G
1&: n %u2`Lu/c3&n&f
2

?
&n' 



2Y&

n
2n
1
2
2
4
3
8
4
16
5
32
6
64
7 128
8 256
9 512
10 1024

n
2n
11
2048
12
4096
13
8192
14
16384
15
32768
16
65536
17 131072
18 262144
19 524288
20 1048576

+ fb]5f""ff Z&f&n
/c3&'5K' }  3Z5]&5='ft5&
'^
n = 10
& <#}}} 5&, ]
 } fu .kTn
$ "
= 20
f&& &n 2G&~^5t #n
} & 5/b5
&fUcE ""] #}}}
5 '/&%^
:""&&
n = 30
/f&&G& #}  !!~Y^Y"5&f 
18

]5Y&]G!5n]5/E&5J/f5
t5&&

Z]5GY"ff'"~Y3&"

Y!!&Y^"5

/&'Y"U]5& <&"@5@f
'
GU?&=&&
]E3&G"
"ff3&^ &
&&n3&c"L&~!:
U7&nUff& &bU&ctL&
] 2Y@GZ 3& &:&
f&J"t5
R^ce.& =&5
t
qn
n
]5
$&u(
^ce.Yc R<t]5Z^"

~
x
i0 q
n
n L(A)
Ef&fG"
&t]K
2"
5 R
q F
Rn
t]55&
Z  ""ff
//n
n
t/ 
%&&'3R
0:=
{i0 }
G:"5R n+1
Rn
Rn+1 = Rn

&:]5&G"&&cf"5E
|Q|
&
dG&&Yt!
55
?YY
|Q| 1
Rn
5& <E&:]5bZf
"&^%
~5u
|Q| 1
Rn
"&&& f&Y]5n]Y5 ,Y&f2|Q|

U"/& E2"2tcGQ&nw
&%t

?
&n' 


.

& + f&
7G&5
&
Rn |A| |Q| |A|
n |Q|
|Q| 1
+ ffGE&

&

'

c |A||Q|2
c
Y2G&!]'t5&

n n2
1
1
2
4
3
9
4 16
5 25
6 36
7 49
8 64
9 81
10 100

n
11
12
13
14
15
16
17
18
19
20
~t5& }}

n2
121
144
169
196
225
256
289
324
361
400

n2

&

&]'&
Kc&&n^

t5&

n = 10
 } } ]!^
'x }} f&n Jn=
20
n = 30
&Y3ff&Y/c3&%b&u/] &/3"G%Y/c3&
&f2 L #}  2cff!&5Y
f'\ 
5
f'5K!&&5YU&!5K"

&ff
U&&!'"t

'Yf&&bb2'=5f"'']5
 L&E<&^2Y&U"tEY


R1 :=
S0 = {q0 }
<
GfYJ&&Y
"<f
5
!&t
&n
S0
R0 := S0
]S1 &
f

GR
Y05
R<&t]f3&]f
i1
~JbSi~]5R
Yi1
5!3Ri1
&t^ '
'n]f'Yft
Si
5'
:f<Y&G
bY$f&&
Yt
~R i1
K'Yf5Sti+1
5~]5K]5=KSi
&&"cRif:=
R
&i1
&S
iG&b2&Ef2&5n$
&&Kb~5']&&:b&55&f5&n=Y~5
&&"]5ufu&f&%&'n3uU'/&
5'cf
&/]5ff&Y
fr
]5Ecft 3&"']n|Q|
fEE]5E
&E"5&&]~E"tfEf&&f:5Yff
f
'&G5&&
'G'G&]5'u&3"L~GfG

?
&n' 

aT

'Uf&{u5< )]
:f3]$^3&&
b&Y*!f';  ""2@
3<"Z"&Y&&uY'Z'
7f~GuY":<fcbGnG]5~~5
&'="'b&&~Y&fY]=&
^%f& &n5~3&%$~&v
fY]5Y )]
%&E'5' + fb!&!U
,/b&
uEJ'KU5&f&KL==3
&5 ]5YGZ5&"^&
/c3&5f5U3& $n&&"f&
^u5~/b'~]~3&:<fcbG
f],
cn=Z
:]:]] <&
/
&&&5
n
L
n1
E 0 &t5
&&&Kv
)]ZZ&&&~
f
L
n1
L
^2Yf$&GU&&& 

5&/ff
)]E&&&Euf
2 CPC&f &&&E

Y'"&~]
P
E&:=
/1& $]Y 3!
b<fcb~&/ $fn<C

f
5~
uC&:Uf
P
C
P
&"]55Z]Ef"/&KZ
|L| 1

Yft&&&f/
? tn'f
9
M
/c3&PYK&"]5~Y?&
/

(|L| 1) + (|L| 2) + . . . + 2 + 1 = |L| (|L| 1)/2

''/c3&Y2Y'/]f55Y]n]ff'<&Z'&
f
f:3&En

&"!x<!t/^'&

b
Z5"/&%fU5U<&U]5! &
&Zt/&!'E"&]3&@G&"5
'<t,Uf'<u&UGY&Gt/,f'<t,^f&
f&"<t/'$^~U<tZJf
7%2*Z&"]5Gf&&f&c&U&&


M
N
%&5
 73&&:
5&5
'G
m
&
%'nE^2YKt5Lr
)G&m
&+&n


'm + n Y1f"&'5=EGf3Yt Yf& &?&^M


Y0''N0
<&L0"5f &"]5f"f )]&"%U
f"7G]Yf]
5
 E&]
M = [1, 3, 5]
N = [2, 4, 5]
)]Y"&&&%'"&~YfY
%~2
.

M = [3, 5], N = [2, 4, 5], L = [1]

?
&n' 


k

?]]?)]"/Y

f!'f
T

u'E"&Y"/Y

M = [3, 5], N = [4, 5], L = [1, 2]

?''2E'n

k
u
x
? }

M = [5], N = [4, 5], L = [1, 2, 3]


M = [5], N = [5], L = [1, 2, 3, 4]
M = [], N = [5], L = [1, 2, 3, 4, 5]
M = [], N = [], L = [1, 2, 3, 4, 5, 5]

&%tfc&&

:&c"&]n&&

^&"Yt&@bff Yfc^Ut&t/f G
GU@bf@G
&tt@t&&&
&c3&!b^!ff" &&<fcb"5
tt/

n+m1

)] Z]
Z5/t/=
Z5/]f
n/2
n/4
Ub"
f&f&!'E&
]f&7
:&
<"Enuf<f3n/4
cbuY5=&t
cG"& &7n/8
]5
&]&Z2 & f!Z]"
n
'U/c3&
t5 x
+
&# '/c3&
log2 n
"f&&t
"&"2 x/c3&2"=n
n log2 n

f 2
n

20 24
28
212
216
?
n
1 16
256
4096
65536
n log2 n
0 64 2048
59152
1048576
2
n /2
1/2 128 32768 8388608 2147483648
ff&''f& f~$\Ta..:
T



f&&f&"&&3&n~Yf]5
!&/Y^
&]Yt!']!]5&
2159

216

=fZ<&Gc3&fc ]f^%tuf?"
&f5&&'^5 <5 n 
Y]5 %
3Yu&t
ft"5%^
O(n)
C
^5 ffE'&
f: t5&
&Ef
n0
n
f7 <:]Z
f &"5^C
 nZ5 f:

]f + t5K&

au

f ^ &*3
G '
5`"&
<5fL"]5"&2cft "
f<
&&$5fc"fb"&&
&&Z^YtY]5EG&&E^t2 &f&
&&f Y&5:L&&<f&:X
& ]5
EY&
O(bn + a) = O(bn) = O(n)
]5
'&
'fu"&%]5u^u"
na
(b + 1)n bn + n bn + a

<

/&
b&&
n (b + 1)n bn + a
O((b + 1)n) = O(n)
O((b + 1)n)
f5f&Zt
t5^ &
C

2f
r
'c&nft5/L]&
C(b + 1)n
D := C(b + 1)
%t
5~^G~ &""
=&f&f&
D
n
Dn

O(n)

En=&Hff%f3
O(cn2 + bn + a) = O(n2 )
Yc"2&~&&=J<"&E$f&^
@U
& 3/&'"&
cft&

d|
$z (J$z

xMA



C}|
eL !z~}=

U55f&&UZ"*
)"t5Z"5tK
u5
&:)]ft5"5t]5&Jf&YfE^
b=2G&<'~3fGUK53&=5
<&Yw
)]&=
#=> n#* Sc YU
?

T = hA, B, Q, i0 , F, i

Y

Yf]3 Z)]'^'%>#V#2 fM/#
A
i0
> n#,
fEB
e>#V#Qf
F

? 

(A Q B Q)

L &
5
 Y a:b 0

A := A {}
q q (a, q, b, q 0 )
:= B {}
2"fu5
"~5^

Zf f
T
q q0
]5~Gf n<bY>)]fG5^Ga + 
b

x:~
y
u
~~
x:~vy
~ 00
u
~ :~v
0 5
0 ~
00 !Y
q q

q q

q q

]f + t5K&

ax

!52 ]5! )]5&!^

B
<f5'@)tEfZ2
&f A
AB

? /
Y
? .

A := hA B, Q, i0 , F, i
q 0 (q, ha, bi)

ha, q, b, q 0 i

2f>)]

h~u, ~v i h~x, ~yi := h~u~x, ~x~yi

5 f?]5
'

~f  h~x,~yi 0
'/&
x
~ :~
y
q q 0
T
q q
A
&Z5h)]t5fZt3&
J5f&&']3&
/<&
'<&~]~5]&]57&":5"&
3&?&G5@5 + 3]5ff

W

]
U~5/E
5cGE?&

A := { , , ,  }
f?&
c^B
:=
2Y{f", G}2Uf&
]]b
W
]:Ay
^]
f  p

B&ZE2fEf
'Z't5&c
'
{0, 1, 2}
35 5E&&f"t5&
'5'
0

{0}

? T

]
W
]

h0, , 1, i, h0, , 2, i, h0, , 1, i, h0,  , 2, i,


]
h1, , 0, i, h2, , 0, i
'cZ^2Y
, b@fU%:"t:&&Ut5 %
fu] =%""&&f55u]5uEn'&
EG3~Y"]"t5 } ffYf&
]
 2'']tZYf&~~%Y]Y&&YZ5
Zfb!~
G=]
] + UY" :
W ]n*^]Z  =

'Y
? k

RT

^~f^2Yc57
~
x:~
y

RT := {h~x, ~yi : i0 q F }

'n]^'&G
? u

]f

RT (~x) := {~y : ~x RT ~y}

!^Y
? x

~x

S A

RT [S] := {~y :

~x S : ~x RT ~y}

'~5?&
]EcUu55<
Gf cU&&B5K5c]
2&
ET
S

]f + t5K&

. }

57b:2
c5u:'
~5
:']Y&&fBn
c5&f3c<f&cK)]c5Ztf]5
'
5&"-W3
 }

W
A := { }, B := { , }, Q := {0, 1}, i0 := 0, F := {1},

:= {h0, , 1, i, h1, , 1, i}

'fZ5t5&ZffY ]G2&3Yf5/
5

WbbW3<hW3/
f
n'/JU5 &f&bU
f&&f&n
 &YfY^2YJ]%]
GY]
S A

^?Y


RT [S] =

(W3


S
5Y

'3&5Uf
:
"57]
:
~x 6=
]

RT (~x) =

'f&53&!&Y~3&!Y5&'
2
u2  "tG2c5%f
B
A
&


RT` (~y) := {~x : ~x RT ~y}

^''~&/&5K&5
 


RT

+ 5GE>)

RT` (~y) := {~x : ~x RT ~y}


RT` [S] := {~x :

~y S : ~x RT ~y}

&5'YU&

t]5

E/5^2Yf

L 9 k; P

^
~8s

9 x

RU = RT`

^


8^
e
es
M~?/<~ns2PS
f

T
A B
v

K
~


V


~
?


~


n

~






~
9

S
~

L A
RT [L]

R<

9< <

R<

>?

&c2&]5cf&&bU&:5f]5

L7U"EZ<^c5]f&
3c2Y:b
RT
<^'G

f]f + t5E

%%f&Y]Y&"5b2Y&bY&{&&7=

bb5
b
^ f"&t &
G 2A
B
f
A
B
<
Uf
2
'^?Y
f

a.

f (~x a) := ~x f (a)

U5 ^f
'
37& \)]5"tUf
f
^2Yf~%'5 :f "tGt5
f 'f&'Y i0 Ya$&f&,ff

qa

i0
f (a)
' ft5<Eff2&&J"UU&
^f~]5
3&5
Y&
x

d|
$z (J$z

E}J%E
E?H

YbY%^/&G=3f&G%"
5=f5)]U55'f"&f^2Y'f&
)]fu5uf&]K5&G  &Uf&<t
/L&UE]f"fbU:"tfc]5f
&fE
f"5E]Gt& K5 $

0
1 0
1
)]'5U^2Yc^cU2&&c&^&
K3,
T

W
W

1
h0, , 0, i, h0, , 0, i, . . . , h0, , 0, i, h0, , 1, i.

'E"tft5&f5&35Y')]]t5t& 1<u]5
5&2&Z&]Y^fnff^"%f&f&&<
]5f&J Y5ZYZ5t']5t5&&Z/5n
t`
"fYfff
%
)
&U5
1"!&n,Ztf53cffb
f]5bb&]2
5
]
G/5~^?Y
r

ak

W
W

1
h0, , 0, i, h0, , 0, i, . . . , h0, , 0, i, h0, r, 1, i, h0, s, 1, i.

~"tf&&Y
'

5~!:^G~ Zf
r s

&
f"/71f&Y5=ub2&YZ
tf
r
7'U " ^ L5&:^"E&@^&UY
5!
52
1/!
2
1 '5&Z
r

f]f + t5E

33fZtfE]fZf:3ffcf&&7
&']5?
1U53&&~E!55n'Y&'JfE5
dG5&"5]Uf"f!y
W
081]U5&Uf&
1<'<f&7f&"t</& &fL^"7f!
&'f
']&'f&!
2f"5

Z5tf&5n@'!&
"^"`/yn1<f=1<Y` `
1?bW0812cn1
12,c
12c n1<=G &f
1U&E$Yff&f'
1c1<
W
081
1n1<,^ 0811n1< 5&&~^%~u^?Y'ZtfYY,
"ff &f f&"b&&E5&&f!!Y
Y
1<6
12
'"&

u

W
W
h0, , 0, i, h0, , 0, i,

h0, , 4, i,
...,

...,
h0, , 4, i,
U
U
...,
h2, , 4, i,

...,
h2, , 4, i,
1
h4, r, 1, i, h4, s, 1, i.

. . . ,
h0, , 4,
1
1
h0, , 2,

h2, , 3,
1
h2, , 3,

i,
i,
i,
i,

h0, , 0,

h0, , 4,

h2, , 4,

h2, , 4,
h3, , 4,

i,
i,
i,
i,
i,

'"fZ]"5Y3&U^&%fnff
f&(
5fUZtf5bYf&n7YK] &v
W
081
1n1
& v
W
081 %5v
W
081
1c1 
nf:""cf
s
"L]5ZZtf"cr
/2 ]5v
W
081
1c1]"
(
&7 + 3G"/Z]5!/f*5c/2Y
UZ5t5U'&Y]5UGf]

Y
"t]55
f 
& ^ /n + ft :"tc]
/&&"t5&&!
5&5]5
/f&f:5"Y'3/&n*'"&t5@ G
/c&f/']5G&&t:fG^5b7/3"&
V 0,
^^ V 0,7  / n1"^^  mf W, /0Vm^^f W, <0
5bn?b  n 5b mV5b6
12

5bfn 
G5f&,55n&fU&'""b&&G^&

]'5"]5'^"
/!5fU
~cbu'^&3&f
^?YL5&%J~&t5U]tZ2GGH n 0&

fUc$ 8$YG$c 3='&5%fUK&K3&<
Yf&nb&&G/&]'~  t&5
?&f&3& U"cG]5 &
f'&f]5/

f]f + t5E

.

( '5c&f@?&/$~&YZUfc:&&f
f +   W 0 f ] W/0 ^f  W
W] Y P$61VU
 ]5 1SVUc 0 ^] I1SnU
UV` Y] 
&
]5nf&EE]5f^JY5Y&'
/ a  3  ] Y&
K
)]]5 &:^2Yf] 5/c  f &&
fZ&"t5UYG:2'

nl Y JYZ%
)]f5
&&=Zf&&&&f:5Gf&Yff&cE
~&t5U]t:2G,
Y]5]Y<Y&n
 &"cf5&:5Z G<cYt
5'3
^&nfU1<~fUp57'fU,M,"fuYt
t]5^5&f3^
3^ >
E^
0c
u5J2G $
+
f&cf]5ff& &n&~fc~:f&f~
YtUGY<t5~YtfH&GY]b'&uY
&'~f5&:/ )]t5Z5t5<]5~&f!f:Y

"tK&$<f5t5&&
f5Y"
&E^%Y&&&Z

&n8)]o!tY"2&=f&n'5<VoG/b3o
 c1< `fnG ]55'f
s ? wY&[
Uo,*&
f&b&&
U
U
o ff$cG3&e
U
oU
o,c'
:c U
o:
3E323&"
U
o
U
on,f'
5c U
U
on^'nf"bEf<]5n
Yc aU
o Y UoV '/&n^2Y&U&
U> ):<
Z5t>
]5& &U U
&:5:f?Y7'Z"tf!5&Uc aU
U
oV@c Uo
U
oVf
']7f&& ]5
U
o!&5Z5nc5> )]f
 bUYt U
o Y&@@ Z<cb
<G:
cff&f"tZYt@<&c:&"
&&t5
U&cYf^&<f555U " &

]5&]<&f5=&&Y%<&f!]E&
]n^f"fv
/a Wj :Y  
1 f EJ:5c"
!f""557^c^s )ff5,Z&75 Lf
,$~"55c3&^n ),&2&//&~<&

.<, + tJ&

.

]5b~ ~K? K% :5'^?Y

 Y s ]5Uw
 f&
 
s ] w
 &
 uY s ]\Uw  f
 f
s ] \w  G&/
 Y5
s Uw
 25
 c5
s \w
 &85
 Y&
s ]Uw  f&
 <&
s ] w  &&
s Zw Y s Zf\ w] f&
s Z Pcw  
s Z5 \fw  &&

 x

s 5tw
s "w
s P]w
s ] Pw
s w
s Pw
s 55w
s Pw

?GG &!@55=ffW*@&/&/
W*f
n%fUf5cfc] + " Yf!5U<U]5
5-]
W /
3
W /%/
a
W f KEf&&!f n

''&%Yt5Y'^ 5f'% '' =


"5&
nff:& ~:
&Y3&nfYf^ '' M5n]Y
x@
N

$|

d|$z (J$z



C}E|!eL
Gz~}

Jf&Z53
%ff&f G
&
~<55 f^2Yf"t]5&
f
}  } 53 &fc]5c
a:b
0 1
'Ztf&&f!f&7&Yfff
:a
1 1
W n
E]5<&"tU] &=E
&
nN
n )&""f&
 }

a:b

0 1
a:b

:b

a:b

:b

:b

a:b

:b

:b

0 1 1
0 1 1 1
:b

0 1 1 1 1
"nZ3&{]
) Yff&<"=Y,u]5
:]&&f5=GUt5&& }  ff:^?Y

.<, + tJ&

..




a:b
:b
a: @2^]</
0 1
1 1
1 1
fw
W
W
W
W
EE&5J


a:b

a:

a:

:b

:b

:b

a:b

a:

:b

a:

:b

:b

a:b

:b

a:

a:

:b

:b

a:b

:b

a:

:b

a:

:b

0 1 1 1 1 1 1
0 1 1 1 1 1 1
0 1 1 1 1 1 1
0 1 1 1 1 1 1

^ '&"5UU]2Yn fU5Ztf2Yn
<fcbG?YY{&uf ff]&U'
&^Effb
)ff/c3&YKH

5f&/GG5"=cf&^2Y<f&



&!&

!]
~KE&Z!
T
]5&fY']T
^ ']5~~x: 3~y
?

h~x, ~yi RT
& ~E
t!]5

~x
~y
h~x, ~yi RT
&
7Yf&c"~!:/"5
b]5:2n t

~x
RT (~x)
~y
]5

h~x, ~yi RT

:f&/nE'&~<&Y 
&f!GZ^2Z@ ]tt &*Lf)
<tP $Z"]t<&<5t
Jb^&f'
)]&t,u$Y<:5'&n
":&@"tf""]5"<f

3&&n

a
/

W
t(0) = h0, , 1, i

t(1) = h1, , 1, i
W
t(2) = h1, , 1, i

'Y<fcb'&&'fff&=EtYY5
t5 } ~ff/<:5f:
W
W
W
W!bE&n]=f
Kff%K&nY f==/f=57&Jbf'=

.<, + tJ&

.T

 %
?G"<:^
]5f5
Z7"5t&ctc':f@ff&'&
Z3f3 !5
'f:&fZ^2Yf
t(0)
Z525 Jt]&^ bE]3& &n
'E&!5KLLG'!t5 $L ]5!t]5&Y^
%^~]fct]&^{fGU&K\
8h8eSV^8%
/ W WW
WbE']5&& &
<] &E&n )]5
t]5Y]Y]Eb&!&1,
|&: !|
~a
<GGL5&'tf&JG~
5U&fGf~ff%ff
t(1)
f~&ft5
&
fff WZfY'&
,&Yt&3Gt(2)
t5E!Y/b&7:G
^2
K'~n )]f5c2f& < W W
W
Wn
2L&G~"
t&t(1)
5nf"fZ&

u E&|f:!| G3t<
t(1)
%<
//
W W
W
W7
2t(2)
f"t&G5@G
5
t(1)
&Y 1, n| :<|
//
WW
W Wb fU"U
$f
t(2)
1,
|:
|
t(2)
f'fGf
)]~7
2t5t<U5:b
^5n 5~GcG
)]g
~bSs(P]K
]5&c]5t~3GYf&&G'
]5bt&5'
Gn )]5
< W W
WWb5b&cZt<bG&
|
f
5 Gt1,
 | : E
cG&c7&32G
t(1)
t(2)
t(1)

b<
/ W
W W
W7]"&G]UZt&5
t(2)
1, | : |
2L=tE<&3tf
Y&c3
'&f32"'"]5t/t(1)
t,=f"t&
3%YU"Y&&&ff&]5%c5f&G
t
E2t<
,5GE'Yn

t(1)


.

t(2)

a:b

a:

:b

:b

a:

:b

0 1 1 1 1 1 1

&'2]tt/fZ&//Y&/&&
aT

a:b

a:

:b

:b

a:

:b

a:b

a:

:b

:b

:b

a:

a:b

:b

a:

a:

:b

:b

a:b

:b

a:

:b

a:

:b

a:b

:b

a:

:b

:b

a:

0 1 1 1 1 1 1
0 1 1 1 1 1 1
0 1 1 1 1 1 1
0 1 1 1 1 1 1
0 1 1 1 1 1 1

.<, + tJ&

.k

a:b

:b

:b

a:

:b

a:

a:b

:b

:b

:b

a:

a:

0 1 1 1 1 1 1
0 1 1 1 1 1 1

&f&5]tt/f!/^2Y&7&=&L!tfG
tf25ff YfZ5/b&UG]ttG
]5tccYUYb=Y&&'~ut&5/Yt]
<ft&
<~"<'7%,]~3:G
&t<:&/b5n']&/&&
&""]f5&!&EG& :&]5
 GcE^?Y]]&~Zf&57&
&
&"5Y&YfEt&
bt]5t/t/]5cfcU":
2='''Y"5 f&&
U&&"~n,
&]5t/t/:&f=&ccL&c57Y
&uY
dG$f&:Y]tG&v
)]bU5
Yt&Gt&ZL3&5E ft<2&Y/c3&]
tf,
2YfZ5'f&'5&%Y&Y
"c3&U]

&E<KcY]$ffK
c&/&f&E$5]5'&^f:ZfGZtfU"t5
f"]JffY!]5fEf!
"f&/]]5n']5f&&^n]&Y
Z//2`Y]5uG3fu9
)]ZfYff&~5/b
]5ub&"&nJ uY"E'nJ&f

f5 t5&7"f@
)E&Gff]<
Y!En~':
+ ]Ef
G
t(0)
t(0)
Y"]5
< W W
W
Wb]&5 ZZf
: |
t(1)

= b5n]51,
|f
&&
t(2)


k

+ &

/ W WW
W
t(0), t(1) : 1, | : |
/ W
W W
W
t(0), t(2) : 1, | : |
c<f!:<&f&n t5

.<, + tJ&
GE
3&^f&
au

t(1)

.u

t(2)

+ &*

</ W W
W
W
t(0), t(1), t(1) : 1,
|: |
< W
W W
W
t(0), t(1), t(2) : 1, | : |
< W
W W
W
t(0), t(2), t(1) : 1, | : |
/ W
WW W
t(0), t(2), t(2) : 1, | :
|
Z^fZnf]ct&"Z)]'5K]":
f&]2G&t<
~E&]3!f
t(2)

a x

+ &%

// W
W W
W
t(0), t(1), t(1), t(2) : 1,
|: |
// W
W W
W
t(0), t(1), t(2), t(1) : 1,
|: |
// W
W
W W
t(0), t(1), t(2), t(2) : 1,
|:
|
// W
W
W W
t(0), t(2), t(1), t(1) : 1,
|:
|
/ W
W
W W
t(0), t(2), t(1), t(2) : 1, | :
|
/ W
W
W W
t(0), t(2), t(2), t(1) : 1, | :
|
/ W
W
W
W
t(0), t(2), t(2), t(2) : 1, | :
|
"n
 b5"c3&Z&t ]
<
&UuG!f&"]5fUU&V)]5Lt5U5
c&c3G<&UE~uG
d~5&?/c3&5
f?Yb&J2'73YE/c3&&n )]5
c/]5ZYZ55& + fu&2
f&&bc<t$^"fft5K&E + Y
ZU]
E
U7&Y]5f + &%
UG](
kc&]ffY\
b&&Y&f
n )]f5
'/"!2! &!!U^2Y& !
5&& !&ufnKG&V)]5nYt&
%U5f35fUE fUffff&t
u5&f5~Y3'<u&V )]5=^=Y]5=]5%]

.<, + tJ&

.x

&&3&:f&n
&%t:ZY]f53%55u5
cUZ5U&c2 <&t5cV
 '%'n )]f5~f&
fY
'U5$
hx, j, ki
x
"t ='3c3Yt]5&Y3''f
 i35t]5"/]5f
 k
f&E
Z5/Zt!&&7E
|Q| |~x| |~y|
<&GGh~
xf,~yi Ytf&Y
&&f^
K~'&nf</
h0, 0, 0i
YU!cf!5^
Y
&&f/
hq, |~x |~y|i
q F q
'/u t5&
f3]fbZ&&
L'&!f|Q|
|~x+ |&|~y| ]5G"ffU
t]5!5 UEu&n )]]&E'&bUfU&

'Kb'&fE]5=)]%L&bY
<&'%E&<ft/=2&&b=25J/%f
f5&
tn"b&KE:&tf&&
+ fG&&tf"f&f&?/ f&
""~Y'3ct
L&~]5Y'
)]5
2

Ut:7&f&!ff3Y]5E
G
3fff"2:&f& ]5f&"bV)]&
"G&U&G
U=Y'Y
]5u&%uu<5"/~<G2
)]5u5%ffu
5 )]&75"='f"5]'^2Yf&
. }

0 1

a:c

0 2

a:c

2 2

1 1

a:d
a:d

b:

2 3
} 'H/ %E&&f'Y"t]YfYY
'Jf^ + W %2&,&'s]
) ~
?
.

W
{h n , n i : n > 0} {h n ,  i : n > 0}
'555,tUcfK/$ 2G&/K&3&fG
t]5&'5Kff 5 + ffG&Y"$"t~/

&tt^ 
"&fUfE&bf
f~t]5&]Ufb&~f&f'b]5

GE</U'Y7]:&&n

T ] ""

T }

%%&f&! + fb~G'f&f&=^=
$f5nfL&^jffWfb=f&~f&E^

/aWnt"<,=fEf^W/3 W'/
Wnt8<3 nEwW]/3 W7
V )]52 } W /b W7
!fff&"'f@
)t]&Z
Wb
LUt&&&f|f&G~]G5J<L2fJ^!
W  "b
5&
W  c t
"<
&7
)]&5Gff> )
W]
+ cL5f&~f]GE&cc&]5&fnc&
&33&7'"Y&!GE]E&t&^!&f3Y
]5Y5&uJYG
3&^&^Gf!&cG'/&
Gb'
)]
]5E"5tf&f
&
<"5~fffYfU's )]&u'7
)]f
 ^Uff3cf3?f&f
)&f
)]Z5tn f& 57fZ& 3f /]f5
 d~
c3f5bc]
&&& &
fY
xc

|$z',"d}z'z

.p
 )?

~
~
AC
H
l
UF

}

}

wa^8 es
w~S
sn~:~~ n~ szYes
w~=#s(f@sS S

A
N



^n 8#^ /Ss


~SQQ#sf

N
A N
N
c  S ?~8
#sf  S M~Mn~

hX,
A
~i
s
~8
@~s QSs
 f
S9(PV
XN

~
N A
~

X
^c 8#S n ~ c~aP#8
s
~  f
hA, N, , Ri
R

#s:f(S 8P?P6#s
7~ #s:f (S 

|
9<


~
~
?
c?

&]5"<^&"']t<cb
5"!n-&E]5&<^&
c2f:ZY]5 &E5'Z&
&"fZEE^2Y"5G]5& !"
&Y 
2Y " & tf 3 &"]"
/&"]'f&& &&
&'Y &2EL'E&
& f&:& *':7&"fc"3$G
]7EYZ5!&&
^?Y
"5"&'^"&:'"&&]5
'
fE~5'J^2Y& + <cbJcu&"]/<c3$G

T ] ""

5&<3Y%^/&&"]<c3%'<&U&
!:t

< >


]
<
>

<
>
/c3&

<
><
>
/c3&
<fcb

<
><
><
>

'G/f]fGKc"
^J'~&&f  "uGYc~~ =]f
|
bH + f7Y&
f
c&b Y

X
~
X ~
X
~ | ~
&Y]5G3/~$Z5&ufG&tf5U]
"Y2u'fY2Y''UY'^2Y&
.

<

>

| ... |

"%u^Zf& &5]5"%%Y&n=%f&<<

]5$<c3n]5^25t&$5%&f5&]5&G%Y&
2Yn
&<^&5"":& 3&t&&3f!&
ffc<& &5Z&f&&Z3&YZ&&
<YbJ 'Y
fU]5 
e
8^
/8K>#

~ ~
~

~
&E'U
,c&&f&

ft!]5 ~ff&
X ~
X

~
~
&&c]<&&5

./

~ = ~ a X a~ ,

~ = ~ a ~ a~

]'5"$f
/c3&
/c3&
f
&!5
><
:<&&5
/<c3&

 ><
 > /b
]
<
>
<
><
>
Y$w

/c3&
f
] 2 Y
=&
<
><
><
>

~ n+1 ~
Y
t]5
5
%E]5 MeSc.rz^

~
~ n ~
~ ~

~
>#
5
,
UE32
5""G] ~

n+1

..

<

/c3&

>4 <

><

><

><

/b

>

]
/yeSc.rz^
 :
t`5

~ ~ ~

~
n


?

'

>

r


U'
n

~ ~

X ~

T ] ""

e2ec&f&&
&G5JhsP 8~5G2&
G


& <f5
S

.T

L(G) := {~x A :

&

S : S ~x}

uZ !]5"b2c&f&&%'^

<cb
/c3& 'E5tbH]]
<
Y<&%>
=5bf&J2&/U'f'<c3 
<c3K&c]5%fc5u$<5>
f'bc& <c3
/c3&
f&&f
<
>
/&"]5"&$!~&f&
&&^
f ~Z&E]fn
t3
<
>

b=Z7uYG7f&/E%<fcb&
^^3f
]Yt!5]'"f
=

EYctZ&f&t<c3~f5u<&
'
U<c3 'Y&
S

.k

S S

^&
'f~~7/G5""uf~~&f&
S
&c5E]ffb&55]c]<
YtU<c3c&^H'
:']5"3&U5&&
L&f&/3Zf&f
,'&&&7/Y
7f&KG]Z +c +c /^uf"f2<&uu
^f<c3nf~5&G^b&&'<c3&f^~&t
&~5
55 f'^G5
^&E&f&EE&]5
f&!<f&fc"E&/5^
&
fUJ5&&E^]$cf&&
/&cu/
32E^Yt &&M
dGf"
Yt!c&
Z53&&&&%]Y&& 5&E]
]<fEYu&f&]fn&&f&5
5&:ff&@t& + %@&&t&&&cY]5
 '~fEKt5Y<c3&f2&"G&t&
e
Snn^2 G^,b&{ )5"nfGZ"YtG3&

&5nE'"3c&^?Y:&/&u&bY&
&t/&Yff&
!"E<&&5
&<c3HKf&&E3& Ut&"Yft&&f&n

T ] ""

T

/&"]'n~ E5"Z!f&&']Yf53f&
YZ5&
.u

| ,

&Yf&55n
.x

| ,

, , , ,

^W

W3#W

W3

#W

W3^W
W3

&:5Yff 
b~Yft

Ub5&&"
f^"5&Z& Z&@& :
5nK<5":'/f
]:fo

^2YfUUY&55n
T }

, , , 9 , 9

#W

W3^W

W3#W
Wb

^:\
)]fUf2U&f& Uc]]3&
f&n '<3Uuf^Z&/H2G&cJc&n
!3fU&&t &7]5/f&
J5]f&55n2G&JYu&&f?&
&7
)ftn

Ly
9<
RH

9< o|

wa^8 Fes
~8
-s/ S Z[
^h^^f

~@n~
~x
~y
~y ~x

f-s S7s n~


w~
 /w^c 8*

h~u, ~v i
~x = ~u~y~v
~u
~y
~x

~8
? b@^ n 8<
~v

o~

AC

]nf"f/]n%&&f&&$E<f//]
// /
f /f
~rsP"3t%cf:h,
c^iGh <&, i
, i
&&hc@
 &G:f&]5&&&:5ff

f&U&Y
f&Y"&]Y'
3~"
/c3& :3EbG& 5 :&&
&=@&E]
&~3ff::&bffc&f&&Z]5
3
Y&
^
G]"&&f&Z5""
hi, ji
ij
i=j
 U&Y
f

T
0

o


'u]
&u<&&f& J  o 5ff&  K'fG]
h2, 3i
&&'&&f& J  o ='f]h , i &&'cLf/2h1,
u2i

h , i
h1, 4i
&JE 
 o,G"75]E5&<
5&YKE&3f!
&&&f"!<fE5

T ] ""

T

L]5&"]&7'G2=/f"&&
&fGnY&ufc
)f&
:ft/3f~
 Ytu&Z]5/]f&&Yb&u2
&Yff&
%"E%nK'f55U"U%Y"

Jf^f 5&55]<!&Y

~
bH
2K )]]53 LnK&U=3~&"]
~
f^fu! ]5EZ
Z 5&55 .xZ'Z
 W3# W
WbG'fY&~&f&& w
Wb# W ZK
W3u
Y5&&&]5]5Yf<&&f& W3# W K Ef@
W3
h
, i
U&f&&5
T

W3#WVW3

'&!3^]5'G'fE&&"YK )] KWb%'<f&f?)
<&&"
WE&f&5G&5=
Wb' &G
&&"/=c&f
^ Wbb2Yf:]5<&& W W3
h ,

!&fG5& $'&&&&1

 + i
]f:^?Y*
)&~&
W W W3 W3# W 5
h
W3# W
W3
2"&&" h,
:
/ i b
h , 23i
<&,i&
h
, i

 ZW3# W !& W3<%'3&YE&&5Z]&5/


&:# 5W
~W3<b"5&<&&&f hW , W3&E i
u#W!
h
, i
W
h , i

T

W3#W
Wb

cfU]t 5)]]nc2-)]
&/Y]5YG
T/

&&

W3#W
Wb

YtU5& =fU&G!U]5c
&U5
n`'/&Y5t&f&55 5:
&5
f&"
&]< )]]5=f'ffU]G
Y^2Y&~'f&"
5 
<&&&=
~
~
&Y:"
5
fu&t
:&c3&% Ef&"]J ]5

&5&"'  &,&b~ 2>^^e2^f



N

f (C)
n #

C C

T ] ""

Ta.

dE&"]5n?G&55Z T } $"3b&&=&
EY'b&&Y]5Y5 T/G]&/
5f&

aT .

W3#W
Wb

Y~2GGf]5~&fY f&55/&
]5"f^2Y
&55 ]5E&f""&
.xt
TT

, , , ,

W3

W3

W3^W
W3

'!7&f&
bG& .xUf TTc
&&/Hf?&
d~5&ZE&fY&:3f3&&Y"
~~7&%fYGfb&%&55]5=<&c'5"
ffYb"f
 &Z2&`"&:@#^
Y&&Y
'
s)]:J&5'Gc]
Yf&
 ]~f
hT, <i
x<y
f
&

]c<
<]5:
t@
]
y < z
x < z
x
^

 ^ff&n
&&

y 6= x y < x
y<z y=z

]5
e /en#
x < y,$z5 ]
S j
YVn#

y>z
e /en#
~"x]5
fy&Zx> y t]5
]5&
y
y
z
x
z
f
]&
z
y
2c
&/ff

, ~2 i
b
<&&f&"5&!] C =@eh~ 1
/en#
D = h~1 , ~2 i
C
b
%@b
%

Usf) 
5
D
C D
~1
~1

!fU

L"2 ]C36=&D]
]5
$fE
~2
~ = ~1
2 = ~
37 ]5<~Y25Ys]
) 
"1~~
]5YJ~
f&2~

2 U'f
f&U'5&=f&&<f
C
D
]5~^&&u,~f5f
W3  m  m '&
C=h
i
$Ub&& 5 U5,<)&ni h]5,!
f
C D
2
Y]&
Tak

W3   m
?c&U3U>)&^2Y&'u<&U '

&
'> )]f&

<

'&@f]E" &n'fZ&!
&U&&
f%
3!&&
C = h~1 , ~2 i

k<]&f

TT

5
b&&f&5 ~Y

]
<D
 &&D = h~
1 , ~2 i"f>)!
^f>)f&Cb
EbtG=
C
f&f& D ~1~ fu>)]f"~1"<]'5
&f
C
D
C
3^
&
~

Tu
&
x

W3 
 m
  m 
W3/ m
C=h ,

i
D=h
, i
*}=|

&!U"

E|'L

zYGE|$|

]Uf

HY&&7

~x L(G)

~x

Z^2Yc/

H5 ]5Y55LtGf

~x

]

<f&55uf^"53f"&fc<&&
Y5&7" 5'&fE&fc~&
+ ,&f^fK
)fc&f,5  
]5t3%]%bE%5]u%&5
^&']f& ^^"]5&5
5~GE&&!nY5'G~5/Y~"U/2Yt
&u&<&&YE'=5c&f&
cbf&"" "3&&b
&2
23
&J"&!"&2c
/c3&&55]
n)]&Z" &Y~55"Z

Tx

'&32Y5'Zu]GU]Z'f~f&G
^

&Z
~bf&b/b~$55f&
X
~x
]2]5EE3fc!&]&ZZ &f
5&":<&/ 5 &

5f]t

X
"<

)]Yc7
s $<^&"
9b<G"]5~Z

k<]&f

Tak


cff&@ && <fcbc<&&f&c
"E&f"'<f&:f"
9bg

fj

 E5f<5
b + &&f&"]o

U&f3<&&f&5
^ f^'bt&'
&f ZE&5c"Z5=Y"Z5
&&fE<&&f&Gb&f
2f
Y]@f&^Uf5uf


b
f]<

f" Zf"t&&f
 l
,$]
9b
5"
L3EU%'&!G
fE

^Y57Y K
5""&K'&!G&?

 &&? f&5: :]& E


'
'5 &^"5^2Y&'
Z53
~
&
:
^h^hP
/Uf&' = X


|~
| 1

p()
p() 1

f&
5
f&]:
fG^
p() = 1
~ =
p() = 0
n5
'&&

E& ^h^83

XY
 2<

p() > 0

%fZ"f&"^

/

<&

~
&

]5E&J ~Ef< + $|~
u|=
|~|5+"p()
"
|~ | > |~ | p() > 0

f&<&<t
&:c55f&&Gf
Kf,&"&]HG^2YY]5
f5=
]Y55f'=&
&Y2
&"fn&5!
)]ffY2n
"1Z!
%"ULw
)]&55 ut
3U&n
&/&5En&55G=&

fZ5~x'fEY&b'
n
n' ^f b<
2n
] $b&Y&Y
~x
5]5&]5EfE{3&HZ %Z5]5
&cLb&5"Yt b<n5f&
Z
dG^EG
Zbf572&5&ccfYt ]Ubf&
"7&&f&3]5'EZ/"5fEf&55
3/H2&&$c&]5c&&f&
&
G3fY5:t5&:f35n

'cfGf" + t~Y:
~x
+ &f^ff
Yft&uEY/u7
'& Y2Y$<&~y&&
^Ytc2 &f&=
&X
~y
]5J]3b
&G3?2$ C=
&h~u,~vi&&f&K]&
~y

k<]&f

Tu

'f&EY55&55:]5Ys)]&Yf'&f&5

k }

~uX~v , ~u~y~v = ~x

Z:^t@"~f:5""&
@ :]

3&f^U&55U5
? G!5&
]KfK5YEft&

Gn:f3?]V 
ZfG:GZY
~uX~v

~x

]~f%L5c~@5~
/2 Y]5ZZ< Z&Z"'f &
E%Uf]5Ybu/] )]&uuE&/75&
^%"
S
'cf<&&fU=&fc&5&^2Y&$
3
S
~x
nK&5 &&&&@]5
Y& 
f
n
[i, ]
)]b!
&EH&

f> )]c""5i
i+
0<n
&f
G'E&
'E5=&&']M

& (n +]51)nE""m(i,
j)L&'5f:&
G
Q
)]%f&[i,j]
&
Y&
'f&" s )]&
m(i, j)
i+j > n
"$YtE55 '"5
)]&&
tfY
~ff
<cb
ft ]5

j=1
m(i, 1)
X
X x
c$5""&
GfUbG& 5
2

i+1
]5U] )
^x5
2G?
)i
^2Y]
m(i, k)
& 
t&t"Yk<jfZ3m(i,
&j)"bf
~
f
]X%&
bU5&U '3''Uf i
~
i+k]5ftt/ZYff&Y

]Eb& ff
&5&%,'f5]]5'2UJf^
k

W
0


'
=&5
&<fcb
t
~x = [i, j]
X
k, m, n, p
]5
G5&M,
W
0 ^

k]
k + m, n]
&5[i,
)
E [i+k +m+n,[ip]+k,5,m]5=&)3mn=)]2[i k++m+n+p

=k
'%tf&Y/c3&  /t]5

k n
f t&t/:Y&&
&/fpD,bY k + 2 + n + p = j
m(i, k)
t
 Y
t
37'm(i
U5+&k+
2,
n)
&
m(i + k + 2 + n + p)
]3&&Z&f&n/E7~E"5&%7</f&n
2
 :
)f&
'f&
G

<t<
k
n p
p =j k2n
O(k 2 )
&"/c3&&Zf&Z2
)5&uf""5bG

k<]&f

Tx

c~/
K3=t
~']5
n)
S
7 U&Yn ?m(0,

GcK5fb<HnJGYf&%]5K
'
&tUGY&Uf%U/c3&3]bf
f&"]:

&
f/c3&

O(n1 )
'

2 Z5/&'<f&u t%]
+1 Z5/&f
&"O(n
'&t)`Yft`&&"
b]O(n
~ ){ &5
Z'!b&fb^UU]
@Yt5

= 2
f{&
3 : L$ Gb"t&n!
2uY&&
O(n
)W
0L
bf^2Yc&
k

W
0 ,

&5 &:fG<&&fG'/&"]K&"cY

Y <$]'Z&f&&'5]=
&]
Jf^
'&!
X Y 1 Y2 . . . Y n

k

X Y1 Z1 , Z1 Y2 Z2 , . . . , Zn2 Yn1 Yn

+ f&
~GE5&&]5

5
O(n3 )
2u&@f!&G!]]
) &55
&E^
/&
'535EtY
!c&/fc
t"~&!=
 ?tf
t@]
m(0, n)
i
5Z
SE&

u=

t
0<i<n
m(0, i)
n i)
f
&bK5
7m(i,
&
b U55 A
B
S AB
^2Y&
k/

S, AB

?*f&ff


5:&//YZ&G'
B
~2YG!&t
""5b&u5t!&/'f%"5<G
f]: t< 3/Ecf:&&':55
&GZ&5$ff%&f&2&5b~/]5 5'/&
<E&f&&YY5f3 &]5'
]5'&
A

5c]E5""f^Z5 &f&
&f32%G]~5&c]5 c5&E&

k<]&f

k }

k t2G&%E "]5=5""&'"2
]&f~n5& /Gub]f:fY/Zf
&&"] '!5U"f ]5f
@5
& <&<&2G5?&u5nJ''L]5u/&
&f']Gb&
{ )&G<f?Y&]'"5&
Y&:]v
)]:t
&/&f&
dGfG]55""=f&
!~'&&c3&
5Zf 2Z5nfZ"
2&Y'Y!&Y]5<f&

L|Zm1 8X
c 7~7PV9n~( SP
? 
\S
j~aa S
S
X Y Y Y
~ePV@f9'
 s2 SP(X,Y<<~N7~ X ?~ w~x ce. ntn Y=n2
~
c

wa^8
1 2


5&G@&/&:""]5^!!"
'
^t&
f&Ycf&
<&: /&"]
<5&&t Ya]5 ]5&<a&AYZ&$

Ya a
] Eu
'a "'&f&&"
Ya
&&/&'&=]5u5'<&UYUf&"]=
^c&Y$&G2Y
:fZ5& + t!~&&
'
seV#
8^9 n^%<&]f&7<&Z5'<&
&&cY&cZtU5c5:"^"5Y&!
ff&'^2Yf]55K" . t
k.

<

/c3&
&
t 

> <
>| <
> <
>

&

| <
> <
>

&53&<cb&tcf5&&"5
'&fE"]5Y3<&^2Y"&
kT

<

0VWc
&

> <
>| Y( <
> Y+ <
&

| Y( <
> Y+ <
> Y)

Y(

Y)
t
Y+

> Y)

k<]&f

?&n  ]5^b&2G&


'Z/&&U^~&b&
2Z]3&]5"""c&]f&

5]f5,c5b25""'
^
bff
'Y&&
^2Yfc5""Y<fY+'&HY
kk

<

/c3&

> <

Y(

Y)
t
Yo |

>| Y( <

&

> Yo <

> Y)

'Z&f@'Z/bcY&E]:""{):
U5
)UtfZtf3&f&n$f5
3{ )]&b5:E<fcbY=t5&Y& fU
/c3&YKf&
f"&5""Uf/c3&]5"Zt

Zu]"fn&&57f&<f&&"c5" u]f
bn^'t!J

;:$|m

~8
wa^8
\  / r S'~\n~ *f\P
X
~

n~

Y
~
X =Y

'c~!:& Z'Z&^!Y'c5
/&"]u
3?&YY&uf
(N )
Z'5
ku
Y

S T0 T1 . . . Tn1

EZc

t@]55

t@]5

S
='X
u""5cYi Ti5Ki ^<
un
&"
X Y0 Y1 . . . Yn1 R
/&
7f&"]= %]
%/&U>)&n
T0 T1 Tn1
S

]&3U2Y5&5&fUc5]
L L&
&5cZ:&f&&&%fY7/3&^
&/t

u &]t%Z5]
xc%

y}Kz'>!EE

E}

Ed"E}

]!3&U3f7/U>)f!!
&Yff
d~5&<J
U!c]&$&&
u/&"]7&t< 5& ]f&
)ff
5='ubfff&5c&u]5tuf
fb&Y]~&"c
kx

X Y

~ Y
X ~

~ ~

YbE&!
Z5/G<&,^Yf!G<t<"
'
&f&55n,~f5
&G<']
f "
/&"]<~<'~]H
&5%]5c55s)]&c'&f&U<&&f&&Yt
Y
f@&":<c'f"&5"5c&t@&&
/&"]]%&&Zu]fZEfc&55
]5cf &"]% c]c3&@&n
&f & )!&55n &&5~
/
cS6an^8 
&Z%U<Yt&f^{Z5&55 ^?Y
]'&% =]"3^G'&f
G~Y
& 5x
!
ty fZY]x5Y''^'t
f&~3E
y&{ 5n75& + &&
&5
^?Y
x>y
xy
]5'fE5Y~f?
)<
 &5n
&{5fYE&Yt 5&&&5~

]f&Gf&'f)]uu]&=5bSR<&&@e
^
S>&t
5: &5]b3&&\
r 8>(/e
cS76an#8%K

HY&&5]5
f&& $K&
$n^2Y&
xy x > y x < y
x<y x
5G2<& f&n ]Y&&&5
y "
&{ 5n]&5L]& Y!5
^

! :&&{ &"]5 ^2Y&


~

~
X
X ``G
3cZ&Yf&Zf^"s )]&&=<$ff&&']5J
K
5
U<J&&Z^]5&%&bf
B
C
!
 
&
&
& @!:G2

&cZ&U J Lf!:f/B
f 5 f:f
&
E Y&{ C
5Zf&'f
?

<

u &]t%Z5]

k

/f > ;] &]5&5 &5


=&$f&u
&f&!&5 &U&"fE&&& Z
&uYt:cf~&:uG]uG]53&
X `J
~
&cf:Lc]5c &55 5
^
@
/ G

~
?
{ 5"^

f> )]Xf :J

<7
^Y& G = h+ ,N,
&A,
Ri
<Y~<
)]"/

ZEf Hn
U&
:RE&u]/&Gn5f5<]5
&bU&&&:3  cY

^f
J
X `G
~ X `J

~
G
&{ 5
> )&/

9^88 ^8;:hes

v~98 S ~ S86s
X `G ~x

q X ` ~x
fb&~5&Zu ~aL
 s#~<'~t
GfZ
&:&cf&fnu$
3YJb< Y
%,
S
x
d(x) = n
&t
]3U&

'
 ^ce^2 S>*
cSS
n S
<

&{5n
Yt >)]f&5^2Y!H
f&

n
^,

E'Ud(x)
7=
&d(y)
U3&x&y
y
xt<
!y5&ff&fd(x)
R
)]<Yd(y)
f&fx

R
)]&3Z5&Z&uY
&Z&

;::|

.
GF


9<

wa^8
f^^ b r~?#s
f s Sf8~V<~c ss

n~

~8 f
sy~#

~8
% ~x
~y T
~x T % ~xj T
i<j
sY~#
- b

-~v8s:8 Qf
~8
~xi T
~x > ~y ~x
~y
~x < ~y
~8
S#SK# sb
~8 s

~x = ~ui~v
~y = ~uj w
~
~u ~v w
~
i<j



GF

''f&f R
)]u&tU&u~&'"c'&f&/&
f5fRa)]tcu/&/&Ku^2Y~&u"
3&n

@
@

}}

#}

B
B

}

u &]t%Z5]

k

'f
R
)]&{5"
u }

, 0, 00, 1, 10, 11, 2, 20


'R
) 5& 5n/2&3

, 0, 1, 2, 00, 10, 11, 20


&]Y
f EZ
&53/"

5&n&ffEf&fR
]
) f Z3&Y'^2Y&

, 0, 00, 000, 0000, . . .

+ Uft 'EfR
)]5&5Z5&

u

, 0, 1, 2, 3, . . .
+ fG&t }} !5]5n '&f/,GE]c
&{ 5n/''&5&:]
&
f&&

@)]&fGZ5" 5E&"]5G3&
'
;]fZ<cb:5 &
b

G = h , A, N, Ri
X N
^
S.
5 ~
E
 a#
a a ~ ^E
X
`

~
&EY
G
t
~]5X
~x

u/

X R ~x

!&5"",@O!&"5u ", @


t]55 + & ,fc<c33&tf,Z<c 3K3
t]5E
"f='ZG&5&Y]bf&


3E<c3'Yt E3t]5E!&"5

N0


@@U
!f


6 N 0
L(G) =
N 0 := { }
R0 :=
f&Y57 0 3c&5
Zc<c3^
'
R
R
A N0
s]
) 
Z

"

"

G0 = h , N 0 , A, R0 i

"
/&"]&t]f!&"5'&^GU&
cf3~b&5 0
YtU'U"/==35t]
G =G
f"f Gf!&"" s "U&c]5
G
~

'f]5U32Y]5
55 G `

~
G
G
`
s 
&&&
G

u &]t%Z5]

k.

;:Q|Zm1
UF

A~

wa^8
@~' / b @ s
~8
n~S-b
L(G) =
G


bSsP 8~Q V8 S'ws~P?sS SM~8bP wS
~8
L(G) 6=

ssPbSfsP 8~ S'~n~ v~8'SZ8s~

$GZ%]&5]~7&55%&Y~
&H

9^88 ^8;:.Ties

~8

ss8s>-6s

G=H

der(G) = der(H)

9^88 ^8;:$hnmS?ssPm G s ?~ q s s@Sns/Ps  ss



sm1
s=n~
c? 'n~S7v~K9#sZf

G = h , N , A, R i
N N

s S~ Snv~S
1s = 7~S# ~#: SA??n~

G
L (G ) = L (G)
2

;:k

om

S $~

wa^8
Fes
~
M
-#^b
Yn

G = h , N, A, Ri
G
c
-ssPPV 7f ? SP
S-f? SP
~

X xa Y

9^88 ^8;:pes

~ vSP~ SP 
s
n~S
G
X `G
~

~

~-PK#ss S ~ SPS


~
8

~
~ N
X G
~ = ~y a Y
~y A
Y

~8
S ~

Y =X
~y =

'7%]n=u]]5u%3&t]&
{&& ]t"^<f&%]GGc^
a
& &: f&555 a ^
=cX
"
&Y~
^=&G]5'&5Y~&YJX
^

X X

^L $
: y;aw^7SmSQssPm1Sb~ q s s
<<~7~ G t  ~ vSP~mSP? L(G ) = L(G)

Snsss(~

dG^GtY ]<~u2::5t5
&&
R^h^8

^Y + t 5

X
=X
~

~
fEJ&9 SaeS 8
fJ]$%^
a ~ =
=X
3$
$ >
) 
^2Yc]&LX{
5X

5 ~
R

~ =
~ 1a Y a
~2

~
ff
fU

]
) ]"2
a ~a
~
Y
X
~1
~2
R
U 7
 ?
c U&

c'
:= h , N, A, R i
L(G ) = L(G)
&5 G
h
 'fc&&Z!&<f&c"&

X5

u &]t%Z5]

kT

]5'f^ 
3ft5!
c&
"G2Z^&'^
&2<G
E<& YftZf"]5'<f&bfG
 ]5~]Ytx"
u'Y&tf/G/

H
f G' R<<n=:~&&5G^2Y&Y&&

!n
YE^
Y& ~ &^
!f<

+ /f<&&&<"Z5&J'uc7f&
&YJ^
^]5&~5

X Y

i9 j l:$Fs

X X

m1

~
g~8s

~

G = h , N, A, Ri
X X a
~i i < m
Ps 
>8s Sn ~S sb~S

~2bS*Ps 
X

X ~j j < n
>8s Sn 9 gs 1

s
~8 1

X
G := h , N {Z}, A, R1 i
Z 6 N A
R
Sn s-f9~ >8s SnPS

~S se~S?8s Sn

Y
R Y 6= X

au .
6s

' A?

g?

X ~j
X ~ja Z
L(G1 ) = L(G)

j < n,
j < n,

Z
~i
Z
~ ia Z

i < m,
i < m.

9^6$r_*Z]2:fE&"!5c<&&Z:

&&tc U&c^2Y:f&5
cK&
G1
^
5
Gcc5J^]5&3
X ~j
Z
~i
 G&:b
uGn5
f
X ~j Z
Z
~ iZ
 %ff&fG]5
&&f&']&&&%^
 ~
Z

~j
&3&&'> )]f&&{ 5
27
Z
bEci
(X)
t:]5~E "u&55J^
MZ
ft
~]
~
X G
v
)]&"5=^
)]
Z3
a~ Y5bs
~
'575 Yt&b'f&^X  &c
1 P(X)
t5
~
=:
)]%&&~&%Yt<&%5%&t5 X Y&5]J5 G

Z
P (X) = M (X)
Y&3&]5
uT

M (X) =

~j (

j<n

~ i ) = P (X)

i<m

f:&&@&& ^2YE/&
]
'&
f~ G
~xLL(G)
,]5

= hAi : i < n + 1i ~x
Ai
&5& "'f&55
&f"&&

35=
i i <
ft!]5

ki

uak

i = hAj :

X
p<i

kp j < 1 +

p<i+1

ki i

u &]t%Z5]

kk

']"t@~5Et
E
Z?fZ53

R<f<f""ub R<ifUY

Y
Y 6=

' X R/&"/U3&@
R< b
1 %/
X
<~&X&5&'f&"/~Yt
JUf'&/
i R<G
f
5&f 1 R<&']'&f b
2X b 3&
M
KfG
Y b %'YY& R<f> )]ni ]:=
&if?
) b
<?
)]Z5 ibZ b &/]5Z5i
b 1 R<f&55nffi &
G& i
%'
i
G
J
~x L(G1 )
Zf2n,/:bfcY!f&55: &
/

J
2
2`f7' ufK""5uf]5

G
(
 Z]!$ ~tf'U<f"5c5

N N = {Xi : i <
JG]
) ]5K/Et5<f&~G$]
p}
=5"" 1 tc]5
Yft
<R f<fK]
G
L(G1 ) = L(G)
Xi
E^
~ Xi X a Y
~ Y j > i 'ff2c!f
Xi x a Y
j
3"& ftZ]u&uf
%
~ Y j i
i
i0
i
Xi Xja Y

3f5 t 5
~ "5f

X 0 Xja Y
&&j0'%)  j
g
d fi!
f<""G
&"]5
i0
f/<j0&=!
Z]<cb
'Z&&
&c
&EG5c<b& Zi0& /
j0
 j0 < i0 a ~ 5/<K^ H
Y
Xi 0 X j 0 Y
Xi0 Xka Y~ 0
: G&&"&"]5&

k > j0
)]&

bc%Yf&]&

P := {Zi : i < p}
Z!]3&]5^
<&<&f""3ff
<&Y5Y!<jMZ
)]j
%~YfE!K
Pi := {Zj : j < i}
&GE]E&'Jf^
2

uu
uu]
uu

~
Xi Xja Y
Xi xa Y~
~
Zi W

(j > i)
(x A)
~ (N Pi )
(W

+a

( Zi ))

E5]5E&
R/<5&f^
~
Xp1
Xp1 xa Y
$"
R/<Z]^{ uu%&:5:/:
Xp2
E&GU^
"& "&"]5=&u
Xp2 ~xY~ 0
^"b&]&L5&un^ uu,t
2
)]c
5=<bZ uu2~YbE/fbn75&!G&

u &]t%Z5]
Jf^

Z xa Y~

ku

^'

xA

,'&7

]'f'f^2Yc""bn

OL




|
V

ux

'f<
O9 & :&&U& f

32""
x }

9 ,




O9 ,

O9L

5YG&&fEf<O
x


,

~GY""


 9
O9 || LO L
|
 
|

OVZ

<YGE/ aR/<&

x

9
| | | L
|
 
|





<
O3&"]5&@^&tG5&&
/~]!K<~f?)/&"]G/&"]

x/
?

9
| |

|


Z' ]5t*"]

x]f?Yf"5t
xcV


eE'L
4|

kx

eZ:$

J

Y&f5]&b"&f& b&5u"t$f)]f5
"5nu&f
&5]5Yf"t5E R
S R<%YZY&f Z5t'Yf&"Yft
&<
  f]5x
  &Y^'
':&^'&"Z5t $]
]5Y5&
'@^&@5]&Yt 5@ &^f
nW n
'/<&&5t&t&c3&
^
: n N}
{
L(G)
c"&^3!"
b2&^f'<&&]Z& f"
&&% 9Kjh# n#n'9)]f5ZtfYt ]U
&"^Jf2Ynuff?Y
&G35cn)]f5
u&Et 52&&J3&5]5
&3&^{
ff?Y 5"&79
u5&
& :n5 &&f" ]&
&G

"2]5~&"Y:&f&"~]~~5Y
3^'3&&'<5=''b]'YU&
i"1 Lf R<
R
)] R
Y~&{ &:^~fY&
U5&
u
5G2<
5n7 &2^n3:]53"5&
f& Yf& &"!5~3&:&!"]5 
Y&Y:c]u^ n W n &:],2Y

&Z&Z^  %Kuf:~
ff2Yn f&
W!t53fc
^Yf2Yn~^5t@
WU]5
)n=b'f2Y"&f&
3^~'&5U]Y
W"]3Y2Y
Ef"ffZ!&"$]"""E]5
W&
+ fJ &&=Yff& 2:
f/&^ u 5
&Y]5 &f5
Z"5"
L7<
Y]5c<&\
)]$b^UY
b&5<c3K3n h$r/s#Sn8 Yc58
/'Uc&&
=f?&5b
]5=t=,f:
>#^c@e.a'
E:!f&&!J^D2Yfc3&Y
&5&&

,~t

,&t

]E!3&5

dD
dD

25!b5
G]E&5

pushd : ~x 7 ~xa d

topd

pop : ~xa d 7 ~x

Yt:7f

~x

~x = ~y a d

x]f?Yf"5t

u }

^G~2&f$tZ"5&c&
&5 &f
Yt~=Utt

~x

~x =

2'5!]5"&Y ")]f5fZ5n`

t&f&f"5
ftt E!U'f^?Y
U]U]3& n]3u&^f3$
tbYA
t:&b&,<c3/,=5ftt
I
t=G<c3,=5f//

hs, c, t, s0 , pi
Y  0 5& 'ct~~"f^t]&':^
s/3s "t]5c&L!^=ftt5*
)]
t:&3 ^ct:t]5L7/
p
^%& "
Y &Gn&]Z5uuf> )]
3 //
GYf&
ff:5]5b
f
tt!]3&
hA,
EI,Q,i0,F,
5i
&
A
ftt5
I
F Q
&fU5&Q
,
cYJfi0 Qf&
~&f
cff

A
<&'^?YJ%%f{ &YUtU
&UfY5
t5 
&%t
ZGf^"tU<&&n%?&
i0
G&]5'fZf$G~:t5 fn~tZ<cb7
f
f<t]5&c"5st
L~f&",G' t
c 6=
c
<U5: 0 ttf ^

3n=&
G<c3sbG33&n$GG <
Gfp
p=
ctt,u"
Y
a
a
&
b&"5=]'U]5ZZZ]&ff&
% c&tt,nfc&/t5Ucf<t]&&c
5YY3&:]5&3t&n,E&bE"
'i
ea#
//s^/

5~f&fb5:]5'f~$tt
&?&cf"bH'Ut 
%:&f<E
&':5'EY<cbnGZf&&!3Y t5t3
?&7KGf]t,3f]5)
 b&5& E
7t5t3 ]5,ft5%5fub'b&
/:/c3&5b&'c&]5 3&
2Y
K/c3&YKt&
]5Z"'a
e^

b >#V#""`)]]t5
~x
U& EJ&/c5b2Uf"fbGUU5f"5 5
&f~xt55 bf"<c33]5&
2
]5
'!
cae^
bps#5KEt" & ~x ]5
~x
3&&n ""<{ )5@Ztf!ZZtf
]5G&&ff5]t,
d~5u&GGfu]

x]f?Yf"5t

&c'ttUf&U5&]c~25=5Ub~2Y]5
&'J]5&'5&&f
"'Y:t5G~&'5
]5&&&f&Z
''/"t,"^~:"tff
]5&EZ3Z7&&Zu&t5:&']5&
&f!:
''/Zt:fZf '&'~
]c
'E/]!3cfc&U5
)]fYt5"5t&GEGU"f"tY&/5&
Ztf533fE&'U5&YYt
fffb
&& &f:"
'%5"
:5]"Y"&


EZ&~5
{~x~xT : ~x A }
~xT
Y]Y5"b W  T 
 W,G'<&tY&5f
~x
ft5f=Eff/"tt
5E]K
ff:!t'&"]5fttY:c!2 
u&&E=5'&!tt, + f&tt'bfb
!&&]!&f &Ef:E]f&'EfY]5
&"!G^"tfc!<f? Y&! Ef
YY']KE%E~&Zf=$
W3u'f&
~x =
W3/^ WZY"5 W3<# W/ Wb/# W!5 W3/# W< W3/# W]/ W3/^ Wn
&H W3<# W n !]"5~@"&!&
&~cGJ/2YUY!
:!3
<c3&f3&&
'3&~]
!]f
:"^fZ ]5Z & < fZ&ftf&
7]5E\SU"tfc&&G5t5&&

Zf&Z]5&3&{)]EY]""tt<
&t~L&t&5YL']5&%'7/%
7/f<f&5& Z5t@^& f
&':fn=:]5~Ztf5&&fYf
c&&fUc]5=f&
&u]5> )]fc3UK5
f&%J]&<&&&E&f~'"5
'
c&"5'
']U5"U&!t<
]5&Yf]5:/2Y&=Y]5f]c3&
]5Zut&
Eb&&n'/ttY'ZGZf
&&5fE"t,5
&/&bb
t&t
f]5&5& U&JfE!]tt,
2]t!:fU& J2&& Gc
]t=ZJ] c^2YfY' &]t] G

} +  RY&f&PR<f

!]5=<c3%^EY
&E'&"f>)]
^2YfZtf5!]EZt55 Et5t ]3E
f
N
3& t ft5UbG Y
2
G
X aY0 Y1 Yn1
3Y'G55f/"E^2Y
~&f
5&<c3 K5Yf&&f<cbUt
&3 5<c3a^Utt


X
Zt5t3%'/G<c37ff~"Yn1
tt Yn2
Yt:uYn3

Y0
<Jub'2Y"]5%Y"t'&f%Y&fUttUf

f&55 ]5E&3n'/
~x
Z]Zf?Y]5E<^&5~x]&Eb&f & "
'c
"f:t5t3%'E&/&YUt/&fYbYb~f&
b

(EzML!z*}&|

f&%&Z3<"7]f^2Yf 5Z
:bc :tt,
&=:Uc@Z5
Z53UfZ'f5]5
&&^= "/c3&5
/&"]
&& + "]5~
#^c^2n^G&:

~
JG&"5<&&ZY
ff 
f
X
~ = ~1~~2
&c~Z
bf&
Z&~<&
&U%&
1 , ~2i
'"Y&
G~]5GZh~U
&/3f&uG
Y

~
^E &Z5/:f~
f]&c
cf"&Y& t:&n K
5@
Y&Kp
55bf "5& &Z&5Z5
]5&YY&f5!f&&^=&
 + R/]&
Z]'fv
 + R<3&:JY&&'
S ~1~~2
f
&
Z

5 ]5

Y&
~ZS
&~1fY~2&] $<]5c&Q
)]f
3&!]f&Gff"GE3Z

]]5EE
Y
7/c] c2 &&f7&'&
U Z^
/c3&']5Y~^2Y&
xa.


]

> | | |
/c3&
 ^ U,2
<

0 Wc

/0 Wc
> <
>|<
><
>
'Z$]5Kf: + R/ 3&=J]&5
<

 f
E<fcb~5:b&f?YZc/c3&'5GZ3/&<'t5>]

} +  RY&f&PR<f

u

s)]Y'^2Y&
xT


]

> | | |
/c3&
 ^ U,2
<

<

/c3&

> <
>|<
><
>
''5""~'* + R/"&<bfEff&

xak

<

5

><

><

>

<&&
^U,2


f
&3
h< 
>, i
<
><
>
&&&E]u]/fEK']
']&J" 5'3&&%M
_
"3&&K&&
Ef%
_
"f
" 'f&&&cf!b<&&&f&
f@f::]5'Z5/&
dfcf2&n
n
2$&53?&"5c& &U5
fE"fcU]]5Z>)&

"tU]f5 =ZE!"tcY" ]:


<c3
tt,=5 b5&"2& /!t5t3'f"
k
<f^Y:"
'G
=
b&
f
Y]f=Uf k=&1&m
YfEm
&kbf
 ']55L''<K]~&&f  R/&f&] 5
2]"
'&c5E  R<&f&E]& Z't
5&
b&n&&"c%ct5 &

2m'1f&Z:"2f&u&]5G:
'fUYt G&&"/" ]^&f&=
G&'f'"Gb,GULf U&5Y"
'&
Y]]f

'%bt%u5n5]&&S R<&&$ R<5""


'!:f]Yf:/&Yff&U  ck&f&5
3 <&! <c3'']5Y,f]
/2 &
&Zkf :&5nf<f?^c=
&&c:<
<c3LY]5&U c'Z/ :5@2
k
]5'^YU5]Yt
f&Y!J z R<Z5Y

Y"$ R<5""& + 3U<&
,kf<c3Yk>
0
"
^&:H5E&EY&bZ5&nYt 2
&Y&5&Y,%JE<&
'5:&
} U/&&&&&t/ t5t3$f&"

+ E5f&&

u

YUf3()]ff&n(dG&&U&f:c&
!/2]5Yf'~Y'bfE'Y7E<c35
u&
,f&fY"
'uYt:"U]&5
]^2b:&f"
YY<&cf"
) &&ccf/2 ]5'

"3&U$f]^{]Uc^2YZ3&3
3&U> )f5:U5f]5 '
W
]5&  J } Yf^
]5
B = { n n : n N}
5" + 5
LY&E W Wb=Yt@]5U bcs )f
B
Wb
x

(
z

z~JEz'E}KzY

J$ &^<f?@Yff&K5]bu&f&&U
"G=c3]~5"=f?UG&Y&c5]
&
'^?YU&
^&&7

R<

L
Q =
?

9< <

UF

~[ ~=~ c~  6
sjs s~

^

#a##=n~
L

 s
s gn~7ssP
f's [~9~Ss
nS~ *~ SZ# S

k
~x L
k

 %bSbsZ8
s%n~ Sv~
~x = ~u~v w
~
~v
nN

xu

9<

~u~v n w
~ L

dG^G &: 5'Z&/&f&&!Z&&!

EZ:tf

n=0

]:Yft!E

~uw
~ L

'
5^2Y + &
U&=! ^
t]5
L
A
$
3c/c3&%5 
3cZ:5%&f
L = L(A)
k
A
~x
5Y %
!&Y!&&f

x x

~x L

~x

xn1

q0 0 q1 1 q2 2 q3 qn1 qn

Y<
'
t& df
]5Y
t5&]EYU55
n+1
A
n
YtYb&
&Y&%' 
t]5


i
j
i<j
q i = qj
'@f

5

~u := x0 x1 xi1 ~v := xi xi+1 xj1


w
~ := xj xj+1 xn1
G]5K~=c&&f^J&fG^
q
~u~v w
~

+ E5f&&

ua.

]'5"
}}

~
u

w
~

q0 q i = q j q n

}f

~
u

~v

w
~

~
u

~v

~v

~
u

~v

~v

q0 q i q j = q i x n

}

w
~

q0 q i q j = q i q j x n

} 

~v

w
~

q0 q i q j = q i q j = q i q j = q i x n

'
fcYfc/f@@]55G5]&&5c 5
"E^ + 5&&
Z2<~f:"5&ZZf&
f7a 1
1 n1Efc5<37a 1
1 `7a 1
1 3f&Z%&> $
ff&U5<3`5<37
1
1< `7
1
1< `7
1
1< c1Y5tt/""
&E
5tf5U&5<3`5<b`<37a 1
1< `7a 1
1<
7a 1
1 `7a 1
1 n1<n'fU&K&3^&
'^2Y&
} /

<3

2)n (

7a1
1<

2)n

7a1
1

]'25"f:]5 + fb&
' &
5 f325 2 @G
k
<3 a k 7a 1
1 a k a 7
1
1</a ,='c3Zn&f
(
(
&2)
]5
b"2)
&!&35&Yff&
"t 
f&
U]::> )f 5<3 a k 5&5
2)
(
5k
fZfU 7a 1
1< a k a 7a 11< cn&
K'/
]5& (
G'2)
Et5fcf8(k
Y+1)
^1E]&f

13k + 7
13n
Uc^&]5
$7fU&"&
n=1
&
&5t~5<b@7
1
1< ] + fb$G
&3fE]3~^2Y&
} .

~u = (

5<3

2)k1 , ~v =

<37a1
1

2,

7
1
1<

w
~ =(

'
} T

~uw
~

2)k1

7a11<

'J/&
^!,^]5&
~u~v 2 w
~ =(

5<3

2)kn

<37a1
1<5<37a11<
(

7a11<

+ "c^Yf&5&f'<f

2)

2a
1 a
k2 a na1
<

6 L

+ E5f&&

uT

'c<Y&@bZ{)] fc ff&U "


Ytc&t&
L3f&ff:
A B
a A
&~^
= <&
f'^?Y
B

} k

(x0 x1 x2 xn1 ) = (x0 )(x1 )(x2 ) (xn1 )

f5b
]

b

<3 a f
7a11< a
B = { , }
( ) :=
( ) :=
2
2
'
} u
 } x
#}

7a1<1  a
( ) =
2


5 <b@7
1
1<`7
1
1< a
(
)=
2
/ 


5 <b53@na1
1<a7a1
1<`7a1
1<
(
)=

2
5]c32 R<Z

M
: k N}

{ k  k+1
^"<M=

Z5Y&f,

L Q

R<

9< <

hes
~8
-~K V~9~ n~ '6s
: A B
L A
#s
~# 9 ~>
{(~v ) : ~v L} B

R<

?&3U^2Yf

bZ

7 , 7 , 7 , 7 , 7  ,
7 , 7 , 7 , 2 7

'
?

5<b

7
1
1<

) =  , (2) =
+ f

""
 %
 2?"]5
&f
M
L

L
&f 2]
&&'U=& <U
M
/c3& c f?]&fU5"^ Uf
k
k
(

) = , (

55]f^!<fcb&'EE
k  k+1 !" f&&"3"
t]5
^
~u~v w
~
~u~v j w
~ M
j
'&&~3Y&ff&nYL
p ^ ^YtZcf%3

~v =

>0



 

'

~uw
~ =
+ "G^2
/

YYt*:f

Y

~v = p  q
p, q > 0


 


kp  k+1

^,

~v = 

^

p > 0

+ E5f&&

uak

'
&  <!
5
2
~
M
&&~u~v&fw
& <&Y5Y5 Z&f&
k

 f
`
Y&&
%'^?Y
L
M
LM
^{'f&& ]

U&fn

J

L
M
A L
A M
'"

'

&

&

(A L) (A M )

A ((A L) (A M )) = L M
'%"b:U^2Yf5=n]
) fu5 "t

t!&~^2Y&
T
k
u
x

,1aUn  n11 f81  I3  X1?b f ~


,1 a
U n  n11 f81nn  I3  i12bf5n1
15
'
,1 a
U n  n11 f81nnnc  I3  X1?b
n1
15n1
1 ~
,1 a
U n  n11 f81nnncnn  I3 
21 bf5n1
15n1
1 n1
15 ~

7fEK

Y~^&
3Y
H
]5"E^2Y]5u/&&'7/"Y"5Eb&&5
G]/fuf=&&K]JGG]f&~] &"
YuK $]&2G&*]5
fu&5 &"
H
Y^2Yfcf]
}

,1aUn  n11 f81


a

(2a

n1
15

)k 2 a

(2a

nn

)k 2 a 
a

I3  F1?b

&E "'&&

dGf
'5Y&='E&Y
H
H
5uYE]E&b2
 2,E"G3&!&<^&E]&]/2YY

v Y  @8  nK]5YcfY5&G^

K&

i L {

'

" i L {

^L Q$:;(
G /e{i9 j l=#a##=n~ ~SfUFPQ~

<n~<w6ss (~w s k 0 s*n~MsssL@s / 9< ~x L f?s9<

+ E5f&&

uu

~r~Ss
###K~SZ# S
k
~x = ~u~v w~
~ y~z

n~8 S-ssP
 =~ s
jN

~v 6=

~y 6=

~u~v j w~
~ y j ~z L

&f
'

c3n,Y&5Y
~v 6=
~y 6=
&!]]Yf3&^
+ Zf

~ = ~y =
&2]5 f k ="02Zb"f ~u = ~x ~v = w


~z =

~u w
~

~z

%>;f5YE&&  + 3]5



E&
~x
^^f5
" @5':]Z5

f
f"/c3&EG] $J f

= |N |
k > +1
'G^ &/f=tcf^Gb f
~x
]5
"5t Y6
)]f ]5f&"]
+1
b >b
&YY''5]5Yf"Y&f!
A
Gb

x0 x1 xi1 xi xi+1 xj1 xj x`1 x` xm1 xm xk1

YY] &GfE73& f &f&&5

f + 


xj x`1
]E]5Y5"/&"]nb
 2Ef>)]f^2Ycff&

/

xi xi+1 xm1

~u := x0 x1 xi1 , ~v := xi xj1 , w
~ := xj x`1 ,
~y := x` xm1 , ~z := xm xk1

 f"&&25
'
^&  &
~u~v j w~
~ y j ~z L
j
^?Y&&&

^L Q$QFes
v~wSUFcP?~9<n~<vSs
~8
~R<~~

<n~<@6s L ML SUFP'|Z##s : A AB Z~MPVbs S8@6s
~
< -f L 8s 7SfUFPv~S>? s

Ec
<^&@f&
]5~&!2f
&&3
2 5!&&t]5
&<^& 3:5"
nW n n
+ 3ZE&<c^!'&ZbZ

: n N}

+ E5f&&

ux

]5"
t5^~3 $&:5G& &b
/kf
N
32"&K2$Gt5~x
W  k]%)]f
~x = k b k
ff
5 &7&c]5
&t5 fc
~v
~y
~v ~y
/c3&5~b
W@^&UYn c'f"f!5
"]e
Wc<&& f? ]5
+ 35
~u~v 2 w~
~ y 2~z 6 L
tuf@
Wb'f& 2 &/f%
Wcb^" nK5Y~v
f&/@~v< +  &] 2
&Z
W@<
~v
~v
~y
dG' 2 tY:U3^(
Wb n& 2 2

~y

~u~v w~
~ y ~z 6 L

2f
%f"&"cf@5t]&n&U
]55Y5)]&Y&'Y<^

C := {~x~x : ~x A }

'/2YU5] KU55&
2]5
^f{ )]YU& %Uf:""fc&f&&5
C
*f?Y]5!

!&/<!^&5'&!!f
&n
d~5&Euf&Zf
)f"E&"3
E]5
^ ='Yf2]5%EZ=Y]5u
~u~v j w~
~ y j ~z C
Gn]JYj&t5Y&f

y0 y1 yp1

y0 g1 yp1 yp yq1 yj yq1

&
GE5!YfE
k

~v ~y



y0 y1 yp1 xp xj1 yi yj1 x` xm1 yp yq1

?

25'&"&"/c3&~J/&"]uG
3:-)]
cYt!t~t!c&/GY&E
''55
7]5&~fU&t5c&
5"f/~J&<f%,Gf

5"LJ&,^$/,cE&5 f&

]53&5!&2:<&Z/

You might also like