<%BANNER%>

On the Control of Asynchronous Machines with Infinite Cycles

xml version 1.0 encoding UTF-8
REPORT xmlns http:www.fcla.edudlsmddaitss xmlns:xsi http:www.w3.org2001XMLSchema-instance xsi:schemaLocation http:www.fcla.edudlsmddaitssdaitssReport.xsd
INGEST IEID E20110114_AAAABW INGEST_TIME 2011-01-14T11:32:20Z PACKAGE UFE0006553_00001
AGREEMENT_INFO ACCOUNT UF PROJECT UFDC
FILES
FILE SIZE 563575 DFID F20110114_AABDRB ORIGIN DEPOSITOR PATH venkatraman_n_Page_70f.jp2 GLOBAL false PRESERVATION BIT MESSAGE_DIGEST ALGORITHM MD5
c1fc20b2c9293e0edfdcdc3c5bb86c39
SHA-1
82cecb1c21e924ccdf10521ccd51847f8a6ac00c
86882 F20110114_AABDME venkatraman_n_Page_25.QC.jpg
3388dfdb275e4245a6158c6b5fa24f58
562dec65dabf7d2c328fb2ebff98c24ecf1474fb
1892 F20110114_AABDHH venkatraman_n_Page_22.txt
8f3877a4f3ed47b00c357e00ce56fd95
e5b00a320a401d9fff99687f32a6b8cc28b7a213
8423998 F20110114_AABDCJ venkatraman_n_Page_50.tif
4d8dcabcb4de2120be7f8a943a95a584
0a547806c0941d82f234c0d284e1fd3a4d7dd666
22861 F20110114_AABDRC venkatraman_n_Page_71thm.jpg
024e60c0f5c6a4440fa7de3ecc63cf21
f4714093ea9015b32577ffe47ef9ee8389b83452
1051976 F20110114_AABDMF venkatraman_n_Page_25f.jp2
c0fc2f6dc5454bbf82cf21d77c7a5488
742615d2d815f20ccf8f4b35c00ded6df24015dc
1914 F20110114_AABDHI venkatraman_n_Page_23.txt
5566c16d27a457bc3576e92cc89908b4
848ab4d1d9d7307f16c4eef6fc1759055c6833ab
F20110114_AABDCK venkatraman_n_Page_51.tif
7a739148e866dd2e4383ed51c45bddc8
8be8577ce5a7961d35bf33e14a4d54ef7eee3853
56290 F20110114_AABDRD venkatraman_n_Page_71.QC.jpg
078e2858f5f14985af4478f093a6a0a3
adb0abf747fc633bafc5327501080f660cf2e0bb
30794 F20110114_AABDMG venkatraman_n_Page_26thm.jpg
63da6b66f422cf1ffb7cd56aa3052ff1
b28c548a6ce35b262557d89b6590a6b90ec5f199
1744 F20110114_AABDHJ venkatraman_n_Page_24.txt
ad4402d6d7d6a0969d450569f7a24ec0
b445576e72a1c755588ecefbfeaa03bce46c4b6a
F20110114_AABDCL venkatraman_n_Page_52.tif
41369f2bc488587cc201d82d0e555808
3830b4dc0d4f76a343d000b9fbb43d0ee5e3fd6d
661095 F20110114_AABDRE venkatraman_n_Page_71f.jp2
9c9a07321ad8addd42e935744aa8a30e
9c3404e73678c2e8fd777e6b69c6339ae45443ed
80628 F20110114_AABDMH venkatraman_n_Page_26.QC.jpg
ae0603e511c35d6c960222a5603b9707
925ce58f09b0f175b454d69cb3946ade2f951491
1954 F20110114_AABDHK venkatraman_n_Page_25.txt
bc99b107ea9dc8d33892fef0a46095c3
528b80931fcd13f26cd38756d2f237b06634204a
F20110114_AABDCM venkatraman_n_Page_53.tif
351e4496b1d35ea322c40abf58c23463
7d3eb7c1716ae72d173e05980ec7f55cc51a5592
24281 F20110114_AABDRF venkatraman_n_Page_72thm.jpg
588c9b80aef40e06242a70b67c45d7da
74fc07be30728d94760a75bf45974b9d04f382c4
1031462 F20110114_AABDMI venkatraman_n_Page_26f.jp2
a9bc6190b883f3e9b141c90734899570
c2e6f16e2c7b88ac147854423a4769ab2ea82054
1920 F20110114_AABDHL venkatraman_n_Page_26.txt
64e39552d9313d08682298452fd1b04b
49e7ebdb570b7382b5e94a14ca7d456a435171c7
F20110114_AABDCN venkatraman_n_Page_54.tif
d13a6f6d5c141d0c2b71839b959ae676
21c99d1ab701a0d8a3d315771d16ab0714bf32f6
209877 F20110114_AABCVQ venkatraman_n_Page_20.jpg
de39e4878cd0ed773e02a7a3eee25b28
522ca740307a96f95037bf5be59824341e915062
59575 F20110114_AABDRG venkatraman_n_Page_72.QC.jpg
d3b436a01e0e0eb55c0c944afb6d014f
8ad95fd0b9fe0fe2206ddf5102fed1b3e97d1b4a
32430 F20110114_AABDMJ venkatraman_n_Page_27thm.jpg
bd96d34c54680fa4684349555080de0d
0f4ee3bc05fc32bb1f8ea4002492b560e08c0d39
F20110114_AABDHM venkatraman_n_Page_27.txt
8263608b95ad17675e55de369245dc10
0bc1ec8ac074ce58f20a090e4f76573ed1dfd26e
F20110114_AABDCO venkatraman_n_Page_55.tif
947abe7f5c488353a6b13105bad6388e
877b245122ff65fdb7c7dcac22f9e15b8e401e7d
F20110114_AABCVR venkatraman_n_Page_33.tif
50dc1fe8ebafb6ec6e7965586dc750b2
123d7ab96eab672a42e360e747597060da56efdb
810735 F20110114_AABDRH venkatraman_n_Page_72f.jp2
8285cf4c51ae5724252fa70cca03f895
f2c544d315755b7dc6f6a8ef7043232571931e3b
80649 F20110114_AABDMK venkatraman_n_Page_27.QC.jpg
3230efac6befd50f333601d17b976edb
442c8420e6f95c449a637cbb8a2929f16b057d4c
522 F20110114_AABDHN venkatraman_n_Page_28.txt
8d97f37faa756c03c520715f53fb8e74
fdff0e28e957336e81d71778bd5b501f5a8ac179
F20110114_AABDCP venkatraman_n_Page_57.tif
a083627080487ef1a61165cde0c468a5
f870e42415fb2cfddbeb1835fc53363fd8dd91f5
F20110114_AABCVS venkatraman_n_Page_27.tif
067864ba5c90769f257f9073607a431f
20765fadfdf18d704c8df1cabe97d29e596a3eda
21176 F20110114_AABDRI venkatraman_n_Page_73.QC.jpg
d642b36380c898c312b6d0e8b637d726
7434ea4cfc49f571c4d1da12b4ff5972bafd0030
1039119 F20110114_AABDML venkatraman_n_Page_27f.jp2
644bacd62bfbdec2c17952fa90887a70
253bb594ef64c984d26e4bab4001ba2712202e63
F20110114_AABDCQ venkatraman_n_Page_58.tif
2dade9ed48402255c3fe1abbfd838161
ce0233e934f82f2da7bdda47e2973f1b66c7f82a
1808 F20110114_AABCVT venkatraman_n_Page_31.txt
f93d93e6976058c9808f718fd7c28d29
869c98fbfcb8c46d068820bf1ff60d489626865c
159802 F20110114_AABDRJ venkatraman_n_Page_73f.jp2
6f46cd81069cae1dfd0417ad243f561f
73234a913a24a2f5015e9e800d6caa9ee667c513
16065 F20110114_AABDMM venkatraman_n_Page_28thm.jpg
2ab7b5eedb47846d281802dc13f46d9b
79912936901b3a7df526f81596556ad018e400b9
1679 F20110114_AABDHO venkatraman_n_Page_29.txt
89e0a59007a76cac10e34649a16d1bb8
d7d5945fca693651a3df035d68ea753dde81ba16
F20110114_AABDCR venkatraman_n_Page_59.tif
0e9b151c4602dd46117cd4391a7abc28
1d5f6ea7fe5714a1779cee58b4b614b2893f648b
428130 F20110114_AABCVU venkatraman_n_Page_69f.jp2
670bc09b2208b5d8ee75aedee2c18131
d5d58b7f3fd9907b2d7e431a6eed895da78d79fb
30141 F20110114_AABDRK venkatraman_n_Page_74thm.jpg
5153061a39b2900acad9490686b61b13
8397fc7583a7ee57438a21fc759f1465d275f74c
30239 F20110114_AABDMN venkatraman_n_Page_28.QC.jpg
4dd2ad4e4d8846c63ed8d10d1836e80e
14490aa5026c8fe3c538e9e5f9cd683cd33d57b7
1692 F20110114_AABDHP venkatraman_n_Page_30.txt
d4c25a88383472a524f72ea14af7f191
805a4d12590d89f0dccc8c999814873b3559ca0e
F20110114_AABDCS venkatraman_n_Page_60.tif
2a62e54e47a2fb88e621108f77bce449
8af5b65396d912b4a762ff679ed96f2236e66297
1728 F20110114_AABCVV venkatraman_n_Page_37.txt
a7761493d260a762e57845bece7bfe4b
d6736fbca1ae65b4e72ba30ea04f2ae4b328a132
73273 F20110114_AABDRL venkatraman_n_Page_74.QC.jpg
8866217f27019e9a3bedaf60ecf0c03a
daf01d9b53f36ed528954f3b3adf8f0de9143bc6
271824 F20110114_AABDMO venkatraman_n_Page_28f.jp2
994eff5f440ae4ab2a8ef64ac2bb0678
7516bf6964e70328c2871b48be91a91db7d8f129
1414 F20110114_AABDHQ venkatraman_n_Page_32.txt
3b1207d04c6667e65d674505af066985
fc0bb33b8664c053285fc7fa7ec6d67dcac1a2a1
F20110114_AABDCT venkatraman_n_Page_61.tif
b7de8da26f76359cdb2ba06f5ba18bc1
38f49e90cc4dd95835869e4de7f9fb28b05b72f9
F20110114_AABCVW venkatraman_n_Page_16.tif
2e54cc1e413526e9c8eab8795dff5817
09627659290771833652db81de99c6e6a871c99a
930211 F20110114_AABDRM venkatraman_n_Page_74f.jp2
aefe1e847677e667fbd0930832d567f3
acbbc92b8e056af5175cdc1f29454a3716cab533
27265 F20110114_AABDMP venkatraman_n_Page_29thm.jpg
f5c3a7a22df9945b0397ca4d71a00842
7233a24546f42c63ecbb0e9dae44a3e976baa366
1534 F20110114_AABDHR venkatraman_n_Page_33.txt
746611aae536facc1aaa124d04b96700
16777901aade2f3b63c2a71d4061670c6ec2c9cb
F20110114_AABDCU venkatraman_n_Page_63.tif
dc4c308c139938e7d1b062604d4074b1
7de6a8165e0099d3611fd40279b51596de04fae9
1661 F20110114_AABCVX venkatraman_n_Page_55.txt
3abadb3f233e6fcf12f5d63dd40b6f1b
0683919324af81031a05b5fda04ab54be6038d12
32057 F20110114_AABDRN venkatraman_n_Page_75thm.jpg
3b16d81d38a5c3d9a28983e64c20b46a
74fa3f8ea9fbfda849906ea05658b156ca0f7fca
61065 F20110114_AABDMQ venkatraman_n_Page_29.QC.jpg
ea8a1c45b609331741c2ee296ac0f437
dd8747206c043a0c44d39ca4510b321304ea5efd
F20110114_AABDCV venkatraman_n_Page_64.tif
765cc8c506d9849313c412917505e7f2
beb20f0c83c1d2660812f83712a9321049062ba4
F20110114_AABCVY venkatraman_n_Page_38.tif
439456a90cdb2c08d0722279ef274b95
6b1069fadd0804a39c030c176959e2506a8c7395
1741 F20110114_AABDHS venkatraman_n_Page_34.txt
e2c1356651aa40db0b711b2157cfd8fa
ce680a4cc7d102c12628e01e15752fb7bd1dc0a6
82327 F20110114_AABDRO venkatraman_n_Page_75.QC.jpg
8bbf57cce60ea1304a1225fda08fce5c
9fe774028191c7ac9e3dcd0faf1ae1356d138f1c
783518 F20110114_AABDMR venkatraman_n_Page_29f.jp2
98af0aacfffeba30f71b09cf068ee6d1
9233308b4d0b785779c234b702432b79010f9ec5
F20110114_AABDCW venkatraman_n_Page_65.tif
b84442265299a3f12e3ba1557f9d9ad6
5d144871b7d80a3a74d3ae253ee515c543b66118
30071 F20110114_AABCVZ venkatraman_n_Page_31thm.jpg
c948f3878a02b49807efb10df5c3e971
8753e705b09f970120c37cd7147d83696f641b5e
1972 F20110114_AABDHT venkatraman_n_Page_35.txt
f87f45e5bf9ffaec763e9b217d0bb5b0
2b5d2e271c8016fee92ecf715afd36fbc2f18108
1051952 F20110114_AABDRP venkatraman_n_Page_75f.jp2
fc037c3b8b381cfd08ccd36cd141a763
7ea13ea98d67573ab7696522069fdfa5d654754a
70155 F20110114_AABDMS venkatraman_n_Page_30.QC.jpg
983db9f80ad003bafb98e5e34e2b1189
eab77a18a30c18b6cc6585cf5112c19f4b7acc30
F20110114_AABDCX venkatraman_n_Page_66.tif
d506e74ca532a7908e8fd8b7d6e5b250
da1e91accc4f2ed3cdf9ab37a54dbdf0696dfc93
1574 F20110114_AABDHU venkatraman_n_Page_36.txt
b373eb1e3363dfce976fa4c1f0ff9842
ca3a89753bb8dd7ad9d6907f8a4bbda9d991eb3f
12363 F20110114_AABDRQ venkatraman_n_Page_76thm.jpg
384bb0de8bda7d72b63654f2a2094b66
c0d611368021e5d4be8668ab7a3e6d20be12e124
191751 F20110114_AABDAA venkatraman_n_Page_62.jpg
35e84711034a04edde42bfcf6f84dda8
ab13d9fd6d92ef95bdd35f01f6aaa075364f4a64
F20110114_AABDCY venkatraman_n_Page_67.tif
99bbdc037fc1c80a05adad7bc3f52e8b
b1e605381e3cb9b224b53d71df97413cf2672c22
1911 F20110114_AABDHV venkatraman_n_Page_38.txt
b655f69ed98b74652920822d9dec2f4d
425bb0e749f9d73004c806ad5af8f326b99b3adb
101799 F20110114_AABDRR venkatraman_n_Page_76f.jp2
47979c623803150e915d35776fe1d3d1
0a586396fe2491a1a4c6771ce18a133d3de32cf4
897402 F20110114_AABDMT venkatraman_n_Page_30f.jp2
79684a33d82b4165e7d9bcd67020ce59
456fd11c67d641f9fe2e118b848ae1edd3e41e4e
184187 F20110114_AABDAB venkatraman_n_Page_63.jpg
adc2ceaafbd1d34b676e3f4072c81601
f22d4784f63d32029848176a413bca6dd52db088
F20110114_AABDCZ venkatraman_n_Page_68.tif
b9b974bb7dcdf188ed9092b9ac57c5e9
15727e783ad1cf449e913f436947071856edd325
1832 F20110114_AABDHW venkatraman_n_Page_39.txt
4f45cf2a62ebe6815718614823c205d3
d90f079a0dcd82c2143bfdd27a1ca4fefe5efa7a
29153 F20110114_AABCYA venkatraman_n_Page_07.jpg
ce39899ad9ee4959dd13585c45337dea
ae64cbbc57f40fbb528174c6a97ebcbaa6583b34
29624 F20110114_AABDRS venkatraman_n_Page_77thm.jpg
443c01b13eca7c5cc227c60fe14787b6
7eee480b528926a04460e28595a87be4a87b7f7c
70566 F20110114_AABDMU venkatraman_n_Page_31.QC.jpg
7b5dff247d50f18cdee55be2bdf7948e
7d0049d60756e90fe3485c38a9d53135b542b4ed
189907 F20110114_AABDAC venkatraman_n_Page_64.jpg
404e805f5738a872209638cf806cff64
5ef73fab3b6fdb0d2414eefedfd497bf4c838a3a
1716 F20110114_AABDHX venkatraman_n_Page_40.txt
3f95b093dd1557abbb33281a75ad78ea
a22948185c4d722eda6dd8dfe383b99a5b2e079e
163609 F20110114_AABCYB venkatraman_n_Page_08.jpg
25b3379bf00405254eed10c7e8612fa3
3a9adab67203e67ab1ebf7ee50337591fa856511
80353 F20110114_AABDRT venkatraman_n_Page_77.QC.jpg
8e150b95b14072b23b771602fc95b4ee
d812678e36628a91aa9f0261bbc24ecd4f980f47
24530 F20110114_AABDMV venkatraman_n_Page_32thm.jpg
dc7f76796bbdc4f302a4bf71ba69fbd9
dc3c998103f6cec170b9fd0e43a32b96357fede5
161066 F20110114_AABDAD venkatraman_n_Page_65.jpg
fed1ccb71cc370414ba4d5ea74ec6f0e
347795ec85d1a3fc388a33ceab431e483d7937bd
38747 F20110114_AABDFA venkatraman_n_Page_40.pro
e4fadb79d367a0e7d709515c2d3ccf16
47af9257ffc4c82adfa62c9400f5d0ece07b5d19
1871 F20110114_AABDHY venkatraman_n_Page_42.txt
18e6e4b74c349ffd946520cc71d4e71d
18912c897d71bc7941e194aec424e33fc57030a6
97855 F20110114_AABCYC venkatraman_n_Page_09.jpg
84a6d6e2573651a41d28585c2e6088b0
c52c25a4806875388ed98018393e2c3deb5d56ef
1051971 F20110114_AABDRU venkatraman_n_Page_77f.jp2
c08581241b9d9ff69bdb006512270d02
a5d3900f2348f423b8367f401f4f73c455a2b7ff
58639 F20110114_AABDMW venkatraman_n_Page_32.QC.jpg
edd13204bf71c3d0b56f3da7ea8570bd
ee6e6c051d8a8e7bea685b89b71e9bd092972330
134830 F20110114_AABDAE venkatraman_n_Page_67.jpg
86ab762ad40dbe059a69cd70d0646055
1953c7368fd3c8043a198673c80f0e20a541b693
46937 F20110114_AABDFB venkatraman_n_Page_41.pro
1bc429e45cd89257d880b38932de3e3e
9fd6beca3a225758a31df4e96077e5ed8fe206ac
1638 F20110114_AABDHZ venkatraman_n_Page_43.txt
6702fdeacde1242101c901c29c28259a
9997e328a522b1937ddcdcdfd44ce4980a1a36bb
201667 F20110114_AABCYD venkatraman_n_Page_10.jpg
77f32c87f2880b2466e193c12dcb9acd
3ed837c2acc299f7eadff15104c861909d54a4d3
33441 F20110114_AABDRV venkatraman_n_Page_78thm.jpg
28711d68cea996cfec79840e96c94490
4682b66f85a47f2711435d7f402dbef0f0dad86a
638058 F20110114_AABDMX venkatraman_n_Page_32f.jp2
49bc92ca989fb4c73b0845c4e0e0333b
96949069106aa452b83e47fb405f01ff8e93b23d
148143 F20110114_AABDAF venkatraman_n_Page_68.jpg
b4c9ff74303587c07fbff461618f773a
97af202f824db96d0673b8725d07aad113a0caee
47010 F20110114_AABDFC venkatraman_n_Page_42.pro
21483e307dfb1b1e7ae03b096cf7f838
ac03802677360b6b22c1be15e703dece1db33248
219655 F20110114_AABCYE venkatraman_n_Page_11.jpg
9ccaf948d3227996709a587de8b98e81
21cd31d7cb01523c8929c235ef0013d671aaf9a5
94697 F20110114_AABDRW venkatraman_n_Page_78.QC.jpg
0433357955a1f7372334d5e96d94370d
521764793683ddea0a70f9060aa0d7d47ea9bd2a
27901 F20110114_AABDMY venkatraman_n_Page_33thm.jpg
4f3f97292ca5c1534d248fd2e36d6e76
8c5ed6a31f12993e7237584ed3d094af6ab030c4
21111 F20110114_AABDKA venkatraman_n_Page_05thm.jpg
c86a60ec07aa52d3da604638690f3ddb
7f597f0cef8b0e0299b965e8b66ee464edc5beca
39022 F20110114_AABDFD venkatraman_n_Page_43.pro
40460c7ab9e4c10394818c10775e1cd0
580fad8690a7ee60534de733cac0c590a1bee41f
183145 F20110114_AABCYF venkatraman_n_Page_12.jpg
d60a20d2ebf355759b65e9bf83a56ae4
017ea8166c8a092a7a5468c17a2071c7a3e2642b
99747 F20110114_AABDAG venkatraman_n_Page_69.jpg
aa2f3131fda1894e45414667e83d631b
a987cbb60e27d069028e2e138c6695d159e1cd07
32179 F20110114_AABDRX venkatraman_n_Page_79thm.jpg
8584b3a136717eb5dd2261c2b3c86320
5bb481568f946b6d28e5ca09f43eafe0f2d0ad5f
66865 F20110114_AABDMZ venkatraman_n_Page_33.QC.jpg
7c1086277f18394921a7641f907e8355
de8fec942a845113dea811756f3c3cce07ded421
49690 F20110114_AABDKB venkatraman_n_Page_05.QC.jpg
ddbdea3640c2193a2bf6c2288e65ac45
d7e8ac38435f48ef9c4c0007cf98b402cc9a73e7
35059 F20110114_AABDFE venkatraman_n_Page_44.pro
9903237b8faa8b95e8ba77db7ce6bff9
3de47fd74efed442d9d65e1d268bf9c71b009a9f
219252 F20110114_AABCYG venkatraman_n_Page_13.jpg
08c02b7025bc330bf80d25f17aa48d4d
1e440a82018317cc384fd36420f4d41f78ab2478
611978 F20110114_AABDKC venkatraman_n_Page_05f.jp2
476f3382c48de64eb91de62062d017cf
a1beaba0c7e9cf2609daac10279ae368732ee78b
38160 F20110114_AABDFF venkatraman_n_Page_45.pro
0a0b984459872741fea57c85f9237cda
e196dbf8bad644e23a3f5e68455561d6696cf30f
214959 F20110114_AABCYH venkatraman_n_Page_14.jpg
7bdc8957fc48ab6af4ca871d4ba3293b
169d4a4a086c12283aa7d66b8765ab0db0232132
122742 F20110114_AABDAH venkatraman_n_Page_70.jpg
4c39563806b08eb59d394f814aa004ad
f3b931359d683e9826099d6dac28c54f720d15c7
88953 F20110114_AABDRY venkatraman_n_Page_79.QC.jpg
2460fea01f1319db818aa69e473595fa
b2b948232203cc0d077977c54bcab2b7c53283e6
67015 F20110114_AABDPA venkatraman_n_Page_52.QC.jpg
57053a7776ef2b100a2aa6949819829a
b2f1c0beeb2487330f650b12ce25268a6c3e98f4
14892 F20110114_AABDKD venkatraman_n_Page_06thm.jpg
f56053dd7150fc7630546c0d06e64c81
ec14040c4c1f75d17ea82ac80ca5a76f6c5c69e5
48352 F20110114_AABDFG venkatraman_n_Page_46.pro
c675368817c9f8296f4f1451c5f8c7f0
cd18afa8db3b85aeeee113bdc9c579f5b0f66040
229156 F20110114_AABCYI venkatraman_n_Page_15.jpg
32f8e4ab65d8e6dc0e23a224018effda
9dfa569edbbc193247a9f85abc59bf0e5be7cac5
141722 F20110114_AABDAI venkatraman_n_Page_71.jpg
1396afe7e852866a23356c1ffe738cb0
c0cfd750a666aa974871bd4a16beeb39ab0fbccf
32453 F20110114_AABDRZ venkatraman_n_Page_80thm.jpg
08bc5193c685c43f657204e32a112b3f
3acc664a74bb9c39ecdcd97df1643900af001d3d
784020 F20110114_AABDPB venkatraman_n_Page_52f.jp2
65d324514b3899fe94e236ad04f45a08
4e92d89e46020d03a2c56d64ec8404a97c2b3968
23337 F20110114_AABDKE venkatraman_n_Page_06.QC.jpg
147940de27f1066f3fa5a46fb0da742c
85fb6dc26e7847b3f81289e6fe64019cc88583a0
37628 F20110114_AABDFH venkatraman_n_Page_47.pro
d9d2cf9fa1925d8335833c646ad7dfda
bd83f8355adb18e7014defd6d58b2ff91787714b
225342 F20110114_AABCYJ venkatraman_n_Page_16.jpg
ccacef1a0da537de4b42fd90a80b5f0c
9799c3a6bf1a7fcc00109894c467c17f6bc4eac4
171209 F20110114_AABDAJ venkatraman_n_Page_72.jpg
e4a02df389124e43f9a522c4ceaef206
e8851f12e51e789fbe5a5faf95905b1f093a413a
27861 F20110114_AABDPC venkatraman_n_Page_53thm.jpg
7287df422a982cfe115443397eb85325
9ead010cef0ac5ef96c3c80e11374917eafd82b2
185559 F20110114_AABDKF venkatraman_n_Page_06f.jp2
c9e5e9378c29439828cedb1851b7ff16
7189d30a66bf64807e8c5017b74fbf28e836965f
46223 F20110114_AABDFI venkatraman_n_Page_48.pro
01c1c085eb99960948c8d892167294e1
a585c199586890d3d65421a4d3f54b6ed8e6b110
204706 F20110114_AABCYK venkatraman_n_Page_17.jpg
85b6eefc8155df0ecd0e8f64556dace2
9f7a267d623f13620f7d3874fb205796df81c55b
183798 F20110114_AABDAK venkatraman_n_Page_74.jpg
888a0d0161e74e92c2b7ffb79ca6b853
0448b957057c54445439c1f40aea9ad989621a04
57835 F20110114_AABDPD venkatraman_n_Page_53.QC.jpg
0377635db5700680ccbdb374d1bed425
f65b2762c9ea03d27689d13a0a19e65316ed9ade
11680 F20110114_AABDKG venkatraman_n_Page_07thm.jpg
7fd21bfa4adbd2b6128e06f116fa076f
99796da52f58e4774d4e9f0f23e685d8b7342f81
42205 F20110114_AABDFJ venkatraman_n_Page_49.pro
27cd425e50b5d4d93b00fb08878184f8
d3cdf880684a1c2e591952b17e0bcd8ae3c27a1b
109248 F20110114_AABCYL venkatraman_n_Page_18.jpg
056ef790ce591bb2bb243a3400551823
0d3cd4c10452716961864a370e753a777e5d42e8
210037 F20110114_AABDAL venkatraman_n_Page_75.jpg
48e099c369504ce1969189b0bb31ca09
d28d98c628c1777fb7978d7c6b8c3f988e0d2997
769041 F20110114_AABDPE venkatraman_n_Page_53f.jp2
8db7a965bc000804eb9fc6b371b97f23
9a1eaafaaade88e34a475cd5e4d1030c9b0ef7d5
16105 F20110114_AABDKH venkatraman_n_Page_07.QC.jpg
afede888807f0ed5a590b6e5f5cb1ae7
eea48afd58daee08ff1aa8f0bc689612ef325b36
42909 F20110114_AABDFK venkatraman_n_Page_50.pro
928e71c78b99390dbc3ac16f1425028d
b5bfc4f14ec11c3697e5e17a02da40ba4bbaf9de
172121 F20110114_AABCYM venkatraman_n_Page_19.jpg
7f20aa39f87f5d2f656a9978efb35eaf
70cd4d36a4212d52c84f9fac4cac2c3f38d6db69
34733 F20110114_AABDAM venkatraman_n_Page_76.jpg
a1c2f15a6e126b71e29812f4bd4f0508
dc2ff98d4a0fcd045dd74195dbb2e20e77e2919e
27732 F20110114_AABDPF venkatraman_n_Page_54thm.jpg
f5924898f21205938a27bfe68b89e285
3e45459e55bd0e249b56f64c7ed6376e8de1dd49
74241 F20110114_AABDKI venkatraman_n_Page_07f.jp2
95e7e557f67d98453d9ea88d6efc1768
975be82d891e283d5ca4eae9cce1a3cf325e0180
33589 F20110114_AABDFL venkatraman_n_Page_51.pro
a2f5a1178bed21943c3faf1921a143ab
8551d2284c2a8e01ba6e9d3c7dacea23f5027f78
194416 F20110114_AABCYN venkatraman_n_Page_21.jpg
cf1a124827b37f725d813c721b81e744
9c48e9557026634cf775dca59e0f5dd9591dec03
223957 F20110114_AABDAN venkatraman_n_Page_77.jpg
637afa1a779f06a0abf59e6046957788
70c49c8aba8ef8a45dbd81486bf69361a8ae7dda
62202 F20110114_AABDPG venkatraman_n_Page_54.QC.jpg
228cd3d74ea0cfc4239e56473b9e19d0
f334fcf0b247188b7af8d410acf9ea4302270c6f
62981 F20110114_AABDKJ venkatraman_n_Page_08.QC.jpg
4552b74231772257f181a11acab164cd
c2b6d514ff4f79fa07c5a994a8fab2f1dc794534
192809 F20110114_AABCYO venkatraman_n_Page_22.jpg
f48c0e554bfaa9eb8c371cf1eaddb2a1
ac42b643fc7e5315147a1d4dd585e17a3d257578
285595 F20110114_AABDAO venkatraman_n_Page_78.jpg
bd45b226640772497e1fceda48b3034b
65ad6fafbdbafdc3b58eee45a5be1826f62cb376
811199 F20110114_AABDPH venkatraman_n_Page_54f.jp2
354d8b3a709c433859971aa480fc8154
06bc78dfb682370c9398bb2fa1ff47c4131032cc
796508 F20110114_AABDKK venkatraman_n_Page_08f.jp2
b84acca132674f70def6d341ae9b27da
54518e25e83f809202ad6f812e16de033fa0bd81
39962 F20110114_AABDFM venkatraman_n_Page_52.pro
5d4e66c10955df8c39c27f2e57788bf8
81ea7ce43163ea5fb9ca6d3e88031a772235c188
205609 F20110114_AABCYP venkatraman_n_Page_23.jpg
583a338560c39c9c11690b6d985d9fef
d345853cc1c206eb0cd765193ff57f72806521cb
254135 F20110114_AABDAP venkatraman_n_Page_79.jpg
9f7711ce0ea139db89a0e2bcb694a684
810632f93a54323bdfabf1a31504715b3dd9826e
29025 F20110114_AABDPI venkatraman_n_Page_55thm.jpg
13a0a01849c25f19ccfe1ba7cdfc99fe
7ba751dda873f593a0df80d5433ae929a78761bc
19519 F20110114_AABDKL venkatraman_n_Page_09thm.jpg
254febec1fa4d38954bd2d2e082858e4
552b2d74eac902c4e2e742f4f434ae50c5614133
38842 F20110114_AABDFN venkatraman_n_Page_53.pro
a8dbcca14df41612002f2d0fddfd2434
a9e3cfef5afbfc98b7b2214438395c8795a8ee01
184728 F20110114_AABCYQ venkatraman_n_Page_24.jpg
fe3bb49cdb86277d6542e7dc8d3f4cc7
9ec873ebc90c0c32b6af81a4add2058a65ff4e7d
257291 F20110114_AABDAQ venkatraman_n_Page_80.jpg
280c124dcfe982672e01cbd5bfbb7a6a
93e22339892e6cb11d4acf7e5daa7c132176cd8e
69662 F20110114_AABDPJ venkatraman_n_Page_55.QC.jpg
3778fe4e11ad4adc2fb9a540f3ef2a1e
ee39e20c1a827bd0c668de2492f43d80b6e0df60
41423 F20110114_AABDKM venkatraman_n_Page_09.QC.jpg
ea078ee404df6350121793933fc79479
ef1ea96edfc71db66e2070b6cdf79ebb10c1c05b
40079 F20110114_AABDFO venkatraman_n_Page_54.pro
be5fd59997c44fd63b280ecc0540b1e5
2f80aa9770cdf99d9ec5ad98cfe9dfcb113a6d2b
203045 F20110114_AABCYR venkatraman_n_Page_25.jpg
19f934b4b5f5e97896b114e816c20c77
77f318d7844276f75f9ad608bd0876b848b764dd
262767 F20110114_AABDAR venkatraman_n_Page_81.jpg
288e3507340a9d0ee2086e2389b998b2
42e033d7e6405b76b279798f8f389771ca5dacca
854656 F20110114_AABDPK venkatraman_n_Page_55f.jp2
a11131c7fb8a2506881ad37b7a4908ff
6f0045bfb20244370f051350d80998bffa23d4ef
459380 F20110114_AABDKN venkatraman_n_Page_09f.jp2
d609f49e401ed3f719ae03fda2f429f7
e3a07657b54ca4ef0f458df013d047289fef5bdf
39303 F20110114_AABDFP venkatraman_n_Page_55.pro
a439b7dfec5d79168411d2e2e61c3de1
de0f462b6c4ad22b2b4d649b2b26666095d9e51e
204922 F20110114_AABCYS venkatraman_n_Page_26.jpg
8ce1a9e9af65841d563a21dd4e2ed116
426ece7e6891ba272a44d10fe8e0569fdb810029
260604 F20110114_AABDAS venkatraman_n_Page_83.jpg
255f48f743174883820872c2d713f7fa
36c51cec3b812ed3c14408bd1f505d438c38a205
31044 F20110114_AABDPL venkatraman_n_Page_56thm.jpg
9eb32b838fc263305ac5abd4db5ff494
c346f12b3fa76ec5b915c57e38be1e00c50be696
30737 F20110114_AABDKO venkatraman_n_Page_10thm.jpg
d82b206416aa6e85e32464f0674f548f
654ac49d90f9d0255607d849f9b60d0b46910b38
44841 F20110114_AABDFQ venkatraman_n_Page_56.pro
e098edb04461445be92500bc7c83933a
da8e5d1f51c887b22a5ab45799a7cf5ac2047e46
208242 F20110114_AABCYT venkatraman_n_Page_27.jpg
5bffb13a1427ebd68e1d84bb88bc2482
36e0d05550baee103ff94d61ac40709387fe4437
187540 F20110114_AABDAT venkatraman_n_Page_84.jpg
5f869ac4d152b97d5b6fd5fd9b2d8697
5519510a67e1d47c6ed45d7894413849289f3780
76851 F20110114_AABDPM venkatraman_n_Page_56.QC.jpg
f89a4864e6a2d1a77a51b13d980cf40a
0d3d68c1f643d74b0c44ca51de49e4c5747c323d
41683 F20110114_AABDFR venkatraman_n_Page_59.pro
a516c9043bdd6f552c5b5a73d18263b1
08e9acd3007e16d953564b50d349c4dba2bb4e84
67793 F20110114_AABCYU venkatraman_n_Page_28.jpg
1c9b9c5261f6edb6ccfeeccf9059c636
1cc6a9806b67afe8c8d1b87691f85924c3ff0623
97075 F20110114_AABDAU venkatraman_n_Page_85.jpg
34979582c612a4966c35f9cbc1f49928
cbd45ced9354249d2b63d69dd7a5767035cc45a8
80844 F20110114_AABDKP venkatraman_n_Page_10.QC.jpg
fcea19ecbd8c0e8ffc331206b13c0401
c38e40e0662a7e209606d5eed66e9647cae3a4ba
978877 F20110114_AABDPN venkatraman_n_Page_56f.jp2
db3b874a85063ea0b7fb7ac98236dc90
0d48607604c03691821f6bb972d2f0b2cc74dac3
42669 F20110114_AABDFS venkatraman_n_Page_60.pro
a42e1b32387bdaf305b6f4a566cba33f
7effdc4f448b3cc7a261e75349770ec1beb90c35
165278 F20110114_AABCYV venkatraman_n_Page_29.jpg
ff809ff8e11c49e565dfa56b517832b0
f397cbb53efc2a4f88275103377e2340833a3937
F20110114_AABDAV venkatraman_n_Page_01.tif
5e22415d9643035aea86b1f5a29406a0
2c6b3bef165b824e8c47b091eaf3df3c98ba4a87
1030550 F20110114_AABDKQ venkatraman_n_Page_10f.jp2
ae6ae739542c54d38aaac450ed2b15b1
84ddde053476f3432dd6d54728c88d207ab864c2
26819 F20110114_AABDPO venkatraman_n_Page_57thm.jpg
7dc5981fcd3ad01c123eecdbde992670
a5ba4876434d66cf2d1fee5226fa6342a76ada19
49173 F20110114_AABDFT venkatraman_n_Page_61.pro
14caeee541101a5cb0686fddf6e0fd66
7e2fce16794f0b50d8916ac74a0171b4be21147f
187061 F20110114_AABCYW venkatraman_n_Page_30.jpg
5435e29cdfe93f5ed61f6af9f23148aa
cd715e3905411e44c939b368d1b937350569b424
F20110114_AABDAW venkatraman_n_Page_02.tif
44071471edb72989268b82c17385b504
8f181021d030a9adccc7343ecd055c6a8a5f2d3f
65603 F20110114_AABDPP venkatraman_n_Page_57.QC.jpg
d67e71d8c0f021bda7915b2e6afa45ac
ebca88cf43dd47cb3648404e5d2667a0978fd04e
43809 F20110114_AABDFU venkatraman_n_Page_63.pro
a700415b418c5848c23f42c5d42bcb54
7179757386c935ea464ae73dd06e0db95c6fa26a
182523 F20110114_AABCYX venkatraman_n_Page_31.jpg
c4ac949d2dc86aa0a6351be0bb9fa795
f23e098dfea282e887d4e0165d97fae3c1b4cc20
F20110114_AABDAX venkatraman_n_Page_03.tif
cabe050023116ebea9555ebe024d1d83
3f5a4d6183958215e0342cafcd4127db3a77e935
33497 F20110114_AABDKR venkatraman_n_Page_11thm.jpg
e566da5c351cf865fc619f3ff9963610
4e1e27111eccc4e117849bd05973acfdc679c0af
784089 F20110114_AABDPQ venkatraman_n_Page_57f.jp2
7dbc12347ef1b94bc8bbe3ccd9455ad2
ed693e8734476cb4c8e32a9296070c128fd6811f
45675 F20110114_AABDFV venkatraman_n_Page_64.pro
af62feecdb31a267db1acaf440c747c1
a4cd8d5688a0245d155a9647a4cf355ce9db8036
158875 F20110114_AABCYY venkatraman_n_Page_33.jpg
144783d86179d38a4b9ea6f1939891cc
cfdb33f1002f7469b91bd8047305214710ddb82e
F20110114_AABDAY venkatraman_n_Page_05.tif
a00c529eeb7d2cdf9c18c876ff5a3126
053bce24e42656863aa6fb1eab4910b36192c4da
87251 F20110114_AABDKS venkatraman_n_Page_11.QC.jpg
5fb320f93a3d05d22e6d2f1ffd1f0dd1
411c7c5d8addb2f212a4e6c3fc7fa67a9408d393
29115 F20110114_AABDPR venkatraman_n_Page_58thm.jpg
1276423a352c6c4aa2287b36b28170e3
10340ead7f3cd5e037c80b353ea5cf134ac7602b
40150 F20110114_AABDFW venkatraman_n_Page_65.pro
d5cad110054eda89a1e5e0ffeda8218c
67d2c966d77d46ceb8498be414f22b2977a0f6d7
2615 F20110114_AABCWA venkatraman_n_Page_78.txt
67b04a809569efbcc141bc24d066d025
8fc4a0119aee99389a9de16b5c0534b247921c0b
184009 F20110114_AABCYZ venkatraman_n_Page_34.jpg
caec63239b01029c5ab4f259509be29a
3a852ea89d4c2824006f62e81beb1a82469eecbc
F20110114_AABDAZ venkatraman_n_Page_06.tif
4e77083285c07344a8eaca343158585f
74924a09a5c0439730b5703ce5acee0d6c6fed0c
1051939 F20110114_AABDKT venkatraman_n_Page_11f.jp2
3d56c4c77bc9ff58d9ec0308b6bb3a05
cf09e397d0bcd171e4aea577f619981bf5b78527
74586 F20110114_AABDPS venkatraman_n_Page_58.QC.jpg
4193c794a1012ca4f4b7da1ef4499ef1
3511e681d2c07abd2a2b4d3e033b1170f51cabeb
43163 F20110114_AABDFX venkatraman_n_Page_66.pro
a9dec0b55d7c2069bc452903129c6e02
234108d0dd24c450f7d986df7d003486d7b37553
41509 F20110114_AABCWB venkatraman_n_Page_72.pro
59018faa1e2e4b6c0ac4c7693cf40cb7
52d38c48687f1af359f4f5e53fd2ccafb8d2391e
30266 F20110114_AABDKU venkatraman_n_Page_12thm.jpg
8919913a16403f41e8f323458de0ec03
7b9bd656086233c5b736e36082cbb6aeeaa58a78
908147 F20110114_AABDPT venkatraman_n_Page_58f.jp2
b7217db566f26f99b5448d2b37f5ae3d
9f25e5ad38d601246d7bfb3294da878b4adff8fa
F20110114_AABDDA venkatraman_n_Page_69.tif
18b6b970f98f39d3f284acbf31902e98
f8a8039b1c8b71f05ef1f762ea280cc68c1a013b
29132 F20110114_AABDFY venkatraman_n_Page_67.pro
46d71802300b3bcbd0fa140839f0376e
a6e8c7143b8bc2e899e6a556cd4469acfcd35480
679413 F20110114_AABCWC venkatraman_n_Page_51f.jp2
e45e5c723f608f40fe6fb4aa8c9803e3
d71ae34d4c183671f3aa3c4c3b59482a792491af
75883 F20110114_AABDKV venkatraman_n_Page_12.QC.jpg
88b88148b28831e9c6a34d91c6149567
d89fdc7417d531757b4e68dc59042a95aa8183c1
29532 F20110114_AABDPU venkatraman_n_Page_59thm.jpg
46e01ddf4ddd6b557bcfbc88e13acfe3
970e4af2fdf62570bba52552fdf329c8b9dce434
F20110114_AABDDB venkatraman_n_Page_71.tif
bfddc7bcc8cb1621844cb75230ee5a4d
8d758c8b212d2b4f188c3ffebf8c1e5b3e97ef07
35630 F20110114_AABDFZ venkatraman_n_Page_68.pro
f3259d91dbf0c79d6cf14e9a7af7dcd8
dd4186567a40963764ecc7e2845b9fa747fc3938
2050 F20110114_AABCWD venkatraman_n_Page_13.txt
c6ca162ee292b3975bf35d3bc8778ec3
dd3cefeb7a027b79f1d4101c569dcf0a3b2c7870
908556 F20110114_AABDKW venkatraman_n_Page_12f.jp2
0dc94069fc5898b48f57e0ff93072028
a0ff1091e5b2f3ec806e7964fd880d61c06c08a8
78979 F20110114_AABDPV venkatraman_n_Page_59.QC.jpg
425d6a0d3cb23ce348b276f2cc43c71c
30b1bdc469a0e46bf6c387eba9bf8ea985a1c1ae
901731 F20110114_AABCWE venkatraman_n_Page_31f.jp2
178cbffd89460daa59dfbcff95570fb3
25492a3afa4b7be002a5ef230b9b18bf7a0ff02a
33244 F20110114_AABDKX venkatraman_n_Page_13thm.jpg
92a50e042bc47dd662a8c580ce754f2e
f6f09af9a39622c20f021c990aa5a88da2518464
F20110114_AABDDC venkatraman_n_Page_72.tif
5f169c07e2efe0e3f6c1adb2c3a156b7
d95be74b48d7c3747b11d08602898ee777fb9f4a
31903 F20110114_AABCWF venkatraman_n_Page_20thm.jpg
38b08589710d243ce1d8b2dbeb0ea0ea
e3d4d6f8e4c668c3a1552b52f638b07a6ae0b247
1637 F20110114_AABDIA venkatraman_n_Page_44.txt
792ab15acbd37c2e4c3ecf7f83cf0571
0845c1d437dad3be4c9da485ff34397f466db485
84634 F20110114_AABDKY venkatraman_n_Page_13.QC.jpg
708c18e9627f71d2ecafc8718e36082c
fc51735a3f665da721b74f7b264da9fcc631d750
F20110114_AABDDD venkatraman_n_Page_73.tif
4701eac8e5a7349f6b2ab94c81d15b9b
17ff55ea4d8800090b20cc81fa9b070ca442b4ab
855456 F20110114_AABDPW venkatraman_n_Page_59f.jp2
0658728abc5473c535c8ce2f54b7f3c7
c817b89fcf739a81b907e6ea9d9015aa1d45cea9
46505 F20110114_AABCWG venkatraman_n_Page_73.jpg
f7559e48b78de5719bc6b61dfb99f5e2
3abbe3fc3d6434f1ecaa23d04f3692251c36881f
1621 F20110114_AABDIB venkatraman_n_Page_45.txt
d4517d7237cbb3609d4bdf615b7b90f6
4ea9f43dc6f7579001c9dc46f07e6deb5b824e65
1051951 F20110114_AABDKZ venkatraman_n_Page_13f.jp2
737d0844a9f5b63d41deff965c5d4e27
270455c1207cd82eff281f0882265548d2591750
F20110114_AABDDE venkatraman_n_Page_74.tif
e9b682a8b733b7b4d66d6c358e06f491
aad879e897a607300d1df09ebc8529ab4f828d5f
28483 F20110114_AABDPX venkatraman_n_Page_60thm.jpg
fa8bdef67ebbd17a84263fb44f95598f
d942356ddaa173a881749f3c02ac9f1bec5280cb
43241 F20110114_AABCWH venkatraman_n_Page_58.pro
0dcb046a56463f4d524f26311c8dd853
156573798de7f6469178b9a36d0f96bca30c9138
F20110114_AABDIC venkatraman_n_Page_46.txt
ea92ab44322aaf3f43929a837bc1614b
06b6562fa25187e81ac290fb7420185bcf9201de
F20110114_AABDDF venkatraman_n_Page_75.tif
ea87234968da2290d8628356d89fb161
42429acfbccc5f1c1b8dc17516eac6d6f15046fb
66824 F20110114_AABDPY venkatraman_n_Page_60.QC.jpg
cd6e98c21ac2ebdcf6110b5d24065c91
dceae709686a6a9d38b7c5e7eafb82692b8b231d
790738 F20110114_AABDNA venkatraman_n_Page_33f.jp2
db49af4aaddf076df451acf56b4b8a2a
71ac1d71ecd1a6c077947a59f5bf14946ffa27b5
F20110114_AABCWI venkatraman_n_Page_56.tif
b12a8a927a3a9478d1cba624ca3b49e9
a72d2b0093d65f9f5de004794c50c2102c019f05
1591 F20110114_AABDID venkatraman_n_Page_47.txt
a90b14641ead1fd469009b4606115282
086cc162fa2ff5b6e0a478dfb969c5b261c30847
F20110114_AABDDG venkatraman_n_Page_76.tif
ef5d5b8b44d8102946d8ae99c4976fe0
59d4e7671e07ee87495a5c3ca9fa95b76e70c184
860199 F20110114_AABDPZ venkatraman_n_Page_60f.jp2
109a1190cdb102238008449ef68f5018
10c0f5bfbde494fda3d71a9ae3dd67dbc633434a
29651 F20110114_AABDNB venkatraman_n_Page_34thm.jpg
8f20a4a10152336a375b10e7dbfd0b56
049fffffaba570693fa7658ab4e3c74d97cf8f6e
F20110114_AABCWJ venkatraman_n_Page_70.tif
03129b47c754bca4da25added7fb660f
c956d8e26666b78e1a2b936d5c3f3624d46df909
1864 F20110114_AABDIE venkatraman_n_Page_48.txt
9ab833f301213948f1e1f1ff83cf8de7
87dae8183b8bbd830262953c237b0101de881a47
F20110114_AABDDH venkatraman_n_Page_77.tif
7c08d418577c331fc7dd51f2ee724a9d
5cbd8a4554d7d3d040cc389183fd9a8164ff569c
75550 F20110114_AABDNC venkatraman_n_Page_34.QC.jpg
84a7ebe96058648537259911e9a44b4e
e2b65f544b82793667ca43811176b901aabae807
60347 F20110114_AABCWK venkatraman_n_Page_80.pro
dda3cb941d84519e040fc62e8bd64949
59d9cbb5b9b4949c5df8a6f3dd5db1599c995707
1708 F20110114_AABDIF venkatraman_n_Page_49.txt
58b682bdd529ea93911a56984e00b71d
4e40e795497ee6e1c0919318d2401988fc5b091d
F20110114_AABDDI venkatraman_n_Page_78.tif
3b4b4c4f5eea11236a7249c91d22d40e
62b7e5b6708168c5a780ebbb6b24d183bc54dbbd
89729 F20110114_AABDSA venkatraman_n_Page_80.QC.jpg
937f3a6d339c6751fddc30314b18dbb6
6e12a9b1c25918003d5b6ca75d704a066923d883
916182 F20110114_AABDND venkatraman_n_Page_34f.jp2
d023bfe06640b6eac13a3cdb0fe3dc71
1da08f46eed4f9afe1ad62aea1bdf15240b25d62
82703 F20110114_AABCWL venkatraman_n_Page_35.QC.jpg
dd28bede567c38b76a4078e9dca1b6ab
d09b6c10099bc7fe8cacfce104bfd59d59270b1b
1790 F20110114_AABDIG venkatraman_n_Page_50.txt
ec468b6f9bff5e68b1f2ae86e59a7f29
9e99309bae61b8282b8f468db9c7ab7be45bd975
F20110114_AABDDJ venkatraman_n_Page_79.tif
2a4f34bea60535f23fbfed8898833217
0ed661762c261fa20d99577c63b9901d66a7cd2f
1051944 F20110114_AABDSB venkatraman_n_Page_80f.jp2
4ec60114f911bc155afb1381499fd95b
a3915d0cc5d0193a77db03204741a66c07bd5574
31864 F20110114_AABDNE venkatraman_n_Page_35thm.jpg
359c43c8e24af47e093a081f417e8699
ffdc9e70fe20503d32495248fca7b2e990dd9146
29763 F20110114_AABCWM venkatraman_n_Page_30thm.jpg
531f2405836c89721e4234be73aa3ad1
77abddf04b4c2b9cc2826ef64434e5c5c5d2d883
1429 F20110114_AABDIH venkatraman_n_Page_51.txt
7f470940a86864750d59bf98eccfc59a
d6db2052124d5352eaa68353426b07924a1868e8
31147 F20110114_AABDSC venkatraman_n_Page_81thm.jpg
e3bcb7ff8dc4bed233e5f116a330a66b
3e6aefb9f353537fe9c220442fadbe3d0a8feb13
1025388 F20110114_AABDNF venkatraman_n_Page_35f.jp2
ebd00d13764cd1e1f5b3e7c8badf1513
9cefaec01c4b125f832a4e61ba8fae1ca51dee06
F20110114_AABCWN venkatraman_n_Page_04.tif
d44a49c59b4b3f1f6b022ee3c592a27f
6650b0cd5d9fc8ba62dac22ab52e8fada97192f1
1734 F20110114_AABDII venkatraman_n_Page_52.txt
d335c22b3ac2811f23e3338a320c8914
cd5cbd4ebfc5bff510b8ca8ea9b9f6bea93655ce
F20110114_AABDDK venkatraman_n_Page_81.tif
c831eb112cf5d568f5e51ea60d69aa80
98801a6a9d0f9c41d0b0704368b2634ee848ac94
87710 F20110114_AABDSD venkatraman_n_Page_81.QC.jpg
edec7c25bce91ecb3ac6f1bd4662bc03
a9144327f1ff2b10e8f5d3ea66652144ace772e7
28283 F20110114_AABDNG venkatraman_n_Page_36thm.jpg
9e3e7ebc504f849fb53016ef8fc915b6
37c520f72a5ebf5f4e513bf7950dd7ebdad43248
4604 F20110114_AABCWO venkatraman_n_Page_76.pro
0837f084b85a2dba5e36eb77518a2203
6e00011e8328bf22b16b82e87fe1ab81975b20f0
1634 F20110114_AABDIJ venkatraman_n_Page_53.txt
efc5af920eacdbc5f489462aa67ab0d4
7730bb700607dd5b01bd0de6982aa84212873d90
F20110114_AABDDL venkatraman_n_Page_82.tif
23899a030738960390e59f042777e26b
aef5d632003b6955e92f8f50743483c9a7cf9bdd
1051968 F20110114_AABDSE venkatraman_n_Page_81f.jp2
7c18ce413e86551d89f83577e4a67bf1
bfe69426f28df445ceb6792a4169b26a39368409
66525 F20110114_AABDNH venkatraman_n_Page_36.QC.jpg
642e1ebcc4eaefcc4659bf4fa561b54b
1978c71b770de563e1c5482cfd39e8e10b94b67b
F20110114_AABCWP venkatraman_n_Page_47.tif
41f8e28b7d2302556618ac9d9082849e
f76e03446949e493be844744a32bf9bc95cb1a41
1746 F20110114_AABDIK venkatraman_n_Page_54.txt
9b4bdcc1af82d409f71dab353d897357
2224556a61f97f0c3883b1db12000ea7359c17d6
F20110114_AABDDM venkatraman_n_Page_83.tif
58477716784385ee3d6440befcf67401
82101f19d8a6da16441cf108bb50e16705f0c398
32782 F20110114_AABDSF venkatraman_n_Page_82thm.jpg
236a45c63703e7b68de7b7bbad64bac1
4be7d5503a60460a599f3eec8643b072f392c00c
812239 F20110114_AABDNI venkatraman_n_Page_36f.jp2
0c91aa81275294f145d7bac26214ce75
1b0be892e029d037a6a6c065a26406abc2548ffe
976280 F20110114_AABCWQ venkatraman_n_Page_22f.jp2
5ea9f4d08993290e4fecdc6fb2c57615
79592bf0f7802652a43298906603dcb0eb972a7f
F20110114_AABDIL venkatraman_n_Page_56.txt
d9ad10b7cc3503dd93e38813c24b1345
584e192ab52540accd6a140992905a6d19bcbcea
F20110114_AABDDN venkatraman_n_Page_84.tif
69b77f9982458a6552a23046fef3e554
ee4827cc3f1195b7a89b9f946410a5aeeb71e8a9
90722 F20110114_AABDSG venkatraman_n_Page_82.QC.jpg
e6928c4fe54d14f6e0ee4f01d94a9882
41edaab980ed1a2cf1df6a0046947f129e4bf6ed
29419 F20110114_AABDNJ venkatraman_n_Page_37thm.jpg
1e4226e5e5f8b58f2d5f91a3f11decd8
b38836d29436f3f757f027ac20ac8984f650a112
1887 F20110114_AABCWR venkatraman_n_Page_41.txt
7f29da630b9960005c082b66eea61b53
8a4e15f505aa4ece1f8ce007bc5fea54d15ef6e6
1682 F20110114_AABDIM venkatraman_n_Page_57.txt
880f786747800b703ffe61df6735425c
84ea5e8ca7bd074fbc372d6ba7a7984d8ba21fcb
F20110114_AABDDO venkatraman_n_Page_85.tif
17c19a475df2b898a745ba616d448ab5
61cf104a327af123ec433a850b83e1d43657a22f
1051943 F20110114_AABDSH venkatraman_n_Page_82f.jp2
44180f693bc25d9b6240befd7d182607
4e7c38c9fd453d73de050ebf4957ab703aa481c0
72443 F20110114_AABDNK venkatraman_n_Page_37.QC.jpg
b51fecd0a016ab86aefba2a58df4a8bb
f5e1487c9b474770ab0b9df07a3834441af805e2
13882 F20110114_AABCWS venkatraman_n_Page_73thm.jpg
137be69f813ba5b76300d9f2a88051b6
af36d3c93cf9e057987c0daac0f6275a65004a7c
1742 F20110114_AABDIN venkatraman_n_Page_58.txt
2428ef1696bdd6ab099b16571da2f23a
bc935d3dbfb6325c4246fbc8d99bf28cbdf0d751
7940 F20110114_AABDDP venkatraman_n_Page_01.pro
9e450506d3e1e3f7f714c67e403390ff
3a86e252ea7f3d8f45161bc83c1a0061560c1f30
32165 F20110114_AABDSI venkatraman_n_Page_83thm.jpg
5b35bc0b16f5c4fa1833e88cf5ae17a5
07a8a152b4a6d6345caf18c9052c69c0dd9f0cd1
916871 F20110114_AABDNL venkatraman_n_Page_37f.jp2
9696f96810874a7d5d93e3264d3721b2
8dadcba5cfdcda726c0d5d251cdb14fd22080194
37979 F20110114_AABCWT venkatraman_n_Page_57.pro
76494d006ecb12829cb4952d703d955b
387bf74424893d9db124868627e32fe873081f01
1798 F20110114_AABDIO venkatraman_n_Page_59.txt
bae220103177deda41a614294093970e
0a9932ef00746eabdcd3cccd53738874aea7fccb
1335 F20110114_AABDDQ venkatraman_n_Page_02.pro
81a143487a268b90120b5a9e5cd4e8a8
aa97e695ffcfee62a4844ada712a92ea725b39d0
89870 F20110114_AABDSJ venkatraman_n_Page_83.QC.jpg
a0be7e0ccb2cb7f371230a1f49c4f50b
41c791be784dab831fbb2e064888eb5d9cbe48bc
F20110114_AABDNM venkatraman_n_Page_38thm.jpg
92de693a02e91947f88f689aac775ff2
a99f1fc45715d4885ecfbc388043df5657c56604
179949 F20110114_AABCWU venkatraman_n_Page_66.jpg
71b9e9d8036d2418d5a5c036981c5298
65fe721165df8a1bd9f098279cebae586d1de003
1279 F20110114_AABDDR venkatraman_n_Page_03.pro
e1f447499c2535b0d5555bc98628968d
e46d988c1a0e49beb09d6de92fbc0bf9d6e18503
1051921 F20110114_AABDSK venkatraman_n_Page_83f.jp2
eb2013963e52b79ab06cc60f71757854
e0daeee13bb36b20b13d4cf31409d1ce9fa6d104
80387 F20110114_AABDNN venkatraman_n_Page_38.QC.jpg
f226143922f778ef8e3aab4f8bffef07
a2244ca32e6e57b2d32e07fff7102908940fdf01
F20110114_AABCWV venkatraman_n_Page_80.tif
6b00a7e94ba0a84556c8b9f58cee79e3
a54dc8254420cb9cd61937b23ca0496e4f8553a6
1813 F20110114_AABDIP venkatraman_n_Page_60.txt
43f54437909bbc5996dd508190ad83a7
b87d0180f92dc9e2151d938090d405c76c14aa6d
28114 F20110114_AABDDS venkatraman_n_Page_04.pro
71ea5bbdb3f8aff222820522dc97f726
7deee5de402c39f91ef8816133f57e6a01516589
27571 F20110114_AABDSL venkatraman_n_Page_84thm.jpg
d9505dfbcb940764a973b710c1ccf2f3
daba5dd9373b266afcc1cfafc0738091cc4f6dca
1044958 F20110114_AABDNO venkatraman_n_Page_38f.jp2
03bbe1aa0f573a2b62cb8d4b57be1bb9
6ec69fb5f0a744d7db770ef7f62a31094dcd9013
29972 F20110114_AABCWW venkatraman_n_Page_49thm.jpg
125055c02714eb3d6121e8cc55cc43f8
776bf679861e1373c52dcd5d5e2a894c209ac9b8
2032 F20110114_AABDIQ venkatraman_n_Page_61.txt
f67141399089a8cca03fe06006576b06
fd17db40b307313b87c6e681cd80878e4fe504c9
61431 F20110114_AABDDT venkatraman_n_Page_05.pro
873aba266b5a488b0544cb12aaf84885
608c29d06cd139304e91e367511d9a682f0aa2af
67312 F20110114_AABDSM venkatraman_n_Page_84.QC.jpg
db5fe93738246471b39e7c015c8d06c4
596309235288ada79c8207bccc35f1f5d6155e89
29918 F20110114_AABDNP venkatraman_n_Page_39thm.jpg
f619c779e79a5d5b12e00c93e84ecfd8
326f82bafcb0194a57093e66d26d67bfa224de51
1991 F20110114_AABDIR venkatraman_n_Page_62.txt
cd47a3b445c11f0ea845d0f92e41d4ff
4ce67f3f825987ab4658d0eaefb2efad19611341
13140 F20110114_AABDDU venkatraman_n_Page_06.pro
45705da12d8b0383904d10c178f0c744
dbcede14069e201eb2ec030cf2e89b3e1f1e4e04
390 F20110114_AABCWX venkatraman_n_Page_73.txt
5ea53b294adb57f46d18aa1599d19060
950fe2c9c80df3bed87b6f08d9da9f782368b3a0
945739 F20110114_AABDSN venkatraman_n_Page_84f.jp2
54a0570ec171de419aea78f2b085c49d
bb471f165db312ab90abc5f4b003ab2210e4e262
72595 F20110114_AABDNQ venkatraman_n_Page_39.QC.jpg
e0bce452941879e0e635419ae857c8ff
be7e599817ac475206e6d3d0b14b70bcd431791f
1870 F20110114_AABDIS venkatraman_n_Page_63.txt
cf92e6ffd1e918fb20e597f9f508643c
207217f3808eeea74e9eff593a38b53e935111ee
3737 F20110114_AABDDV venkatraman_n_Page_07.pro
2f814bba699c01201aa5a89ef2f16dcd
264c9d2fa026e831047821f1690e88ea846c3f21
46414 F20110114_AABCWY venkatraman_n_Page_62.pro
b98d2973c659ffe6696f86eb9988b7dc
93202095b2fc370a0ce3eb68eb30a126aaab7796
19232 F20110114_AABDSO venkatraman_n_Page_85thm.jpg
6ee10eefea2c134577ef53391b25d279
ca6bce8846047948b57a90d543cfc1e265d55e39
947343 F20110114_AABDNR venkatraman_n_Page_39f.jp2
154e13d0921a3a0f1ee39c7090463307
0d180c54af2393f71a291e1b330dffdefcc9af35
1897 F20110114_AABDIT venkatraman_n_Page_64.txt
17544c2fdb403fa79f2cff50f4cbd8f3
e5d55b81eb171561ebfb292c2bda53eaed1d35bf
34985 F20110114_AABDDW venkatraman_n_Page_08.pro
76b486299e15425a24e2cb885947338c
dfea68ee5951356601bc3b66b739b2525651d9c7
1027393 F20110114_AABCWZ venkatraman_n_Page_23f.jp2
3107ff7cc4f0adc505125f0edb2c2057
6aa074add11fbdbca97348d919183e44acf85bc9
41976 F20110114_AABDSP venkatraman_n_Page_85.QC.jpg
f329782a2bbdb954356bbbe2a3657bd2
4643d89654c70e8285709946c1ad28bec46b23be
27113 F20110114_AABDNS venkatraman_n_Page_40thm.jpg
54bf827acb83142b1a6a62c255d430f3
ea58acd1bbc0be3e36eb5d24495e59897dd9ac23
1757 F20110114_AABDIU venkatraman_n_Page_65.txt
ae1342b14ea73e529b80ca2c9979d9a8
c6123c915e9f10a9996dbfb4e080a32d4235d241
20436 F20110114_AABDDX venkatraman_n_Page_09.pro
fd9c3e6a46583bf3282b2380ec2bdd57
f27f3f66b000ad8218c478fc15f97daf6dcbcf0f
443270 F20110114_AABDSQ venkatraman_n_Page_85f.jp2
3d14351a51fe62eb06cd210ab945d9ff
6454134b67e6cff064bb8d6f10b5360d7944ac95
71226 F20110114_AABDNT venkatraman_n_Page_40.QC.jpg
de482c45f38a66ab111b105a5f8e7371
900044c253330cd67fcb7d560612070aed98ca50
1925 F20110114_AABDIV venkatraman_n_Page_66.txt
dbfa33725bf362e69ecc6bdad62a0722
d8bffc9c53fc6d9a63bed6027b58f843b708a4c0
209382 F20110114_AABCZA venkatraman_n_Page_35.jpg
fb52d0e9fab8cd033ea843132c4cb595
91e531d5663d92b4a4fed14070e4daaa15b26e98
F20110114_AABDBA venkatraman_n_Page_07.tif
a6eb41df1f6c01cd4d6a7c590eee1dae
5d24a38586355a0f600a3c24edf6e15684cea1a2
45806 F20110114_AABDDY venkatraman_n_Page_10.pro
c035a17cda7c14cf84195d3757ca147d
09f4a32ec526024226041c1270dc8460e2fc4c25
83485 F20110114_AABDSR UFE0006553_00001.mets FULL
c73592d2b35913f98bae25dc8041299f
16b6f5c1bd6f55c94c8f7bce18f7df88736bd4bd
1327 F20110114_AABDIW venkatraman_n_Page_67.txt
61028ca9b1dead5f6d27ad7363207fd1
4f4ac7555489f24f975c49e351d01771bc99485a
F20110114_AABDBB venkatraman_n_Page_08.tif
c7d3a698c19140f25d82875ffe777561
86f69047d0ec66c6611b2af45b2e144b42dc7dbc
51438 F20110114_AABDDZ venkatraman_n_Page_11.pro
881ce2c8aae81b9e0632b25811b16252
158db14a930b4109846085c68db9edd91fab97d8
788669 F20110114_AABDNU venkatraman_n_Page_40f.jp2
fa2bbd88f9c5239a6ae8dfa0a16666c3
52efbe4c3ed755b90efd8a18e48509a32c93604f
1698 F20110114_AABDIX venkatraman_n_Page_68.txt
d5e81916b59fc81ae5d69b94980a94e8
e3e9302fb9cb0d08b9f28bafccfa7d1cee4548fc
167378 F20110114_AABCZB venkatraman_n_Page_36.jpg
e0a038033d8e519ee08800d555fe60e1
bf39275eb7e3d7fc9f8119a73878fb46ec6b59d0
F20110114_AABDBC venkatraman_n_Page_09.tif
d128c62a277ae3fbc293336a5cdbaa5d
5669f0ceb827def1894e766420e7f8c15ca41fc1
31866 F20110114_AABDNV venkatraman_n_Page_41thm.jpg
e18d491f82c62f1f475d38d544d7a48a
2b179053819dfb55330eaed7370020f55cb5c874
845 F20110114_AABDIY venkatraman_n_Page_69.txt
a53441e7784daebebe32a07ddd4ba145
e2bdc5676d1e2a6d150d48fb30b050372cf81cfd
181804 F20110114_AABCZC venkatraman_n_Page_37.jpg
09a313ca2c5f00557219be0168e731bd
d10f01b5dbddb5a108c001c10570266db4066c5d
F20110114_AABDBD venkatraman_n_Page_10.tif
250059f6f52112de6015b0a4e9a24f61
31688ca9bb6ee59cc4fa2e15c8fa3dd162128115
16591 F20110114_AABDGA venkatraman_n_Page_69.pro
f1ed268fd11889d352fc3426f6e8e0e3
47f43e39158596d391044dabc29acddff0f0d36e
77062 F20110114_AABDNW venkatraman_n_Page_41.QC.jpg
0e53a5e0036c906d2d4a078594679291
dc4c783d9aa96e925804294084e9c454bc2d047e
1193 F20110114_AABDIZ venkatraman_n_Page_70.txt
3061853cfc35adb65f67a4c9af1c2bc8
4069d4020a90df315e693d9314e330d502fd3533
204498 F20110114_AABCZD venkatraman_n_Page_38.jpg
652329121cc18b0de1e918ff14ea010d
13f573a53f343a73db299d089cecb49809a0f25b
F20110114_AABDBE venkatraman_n_Page_11.tif
27659ba5061cdd15bb67a60d6d8189cc
788414fa97c75fcdc5d8a67a0a0090c25e770371
23534 F20110114_AABDGB venkatraman_n_Page_70.pro
b9f76672081296b5034ee24657b93297
658dbf981c27105b60aca91326587fb314e0679b
1029603 F20110114_AABDNX venkatraman_n_Page_41f.jp2
c53474574ac9447eaa0948d2dcf10980
d63059b6135c7e09f1a2c1580f084a0a3840404b
187986 F20110114_AABCZE venkatraman_n_Page_39.jpg
4128eba40305580148f2a4bb139fa70c
3a0b2900befa84a420a3549226c8be7c84714b91
F20110114_AABDBF venkatraman_n_Page_12.tif
f0ecbc5582eb240ba101632a1f9243fe
fb6ca94aa87b286a94a123245c1b97023c0ea907
32429 F20110114_AABDGC venkatraman_n_Page_71.pro
6385f44857069a0ae6a2e332dff98569
17a72ce2d538bb2ffa29ef19d3b5da49b0432fe1
31028 F20110114_AABDNY venkatraman_n_Page_42thm.jpg
f915db9855f2ce2e8332ea21b5252c75
82ef607c26c49d49bf1a5550f67550e77b6b8f5f
167564 F20110114_AABCZF venkatraman_n_Page_40.jpg
c6f9c669b50a76a4c71809f0d2009301
13a6b71114d4590cc4dab9db6e0ce8735d98a76e
F20110114_AABDBG venkatraman_n_Page_13.tif
50e2329efbf2e7b93b819f42a61c77dd
17f3ddd9bea02980a681304775152a37d0f797df
31789 F20110114_AABDLA venkatraman_n_Page_14thm.jpg
d4ce98fa2a40d4f76e79a76b4be970cc
754903908845aac9969653e0c6df156094261e2d
7850 F20110114_AABDGD venkatraman_n_Page_73.pro
efaf0c5d92c8a91f3bb37fe15080a7ca
a46dcfd19c8ced7ecba657e2a87395dd1f6b28bd
84595 F20110114_AABDNZ venkatraman_n_Page_42.QC.jpg
b86249fe986cd4e3f85a04b62cee4019
c7a160782617c22a85b899310060bfa587c32f60
205538 F20110114_AABCZG venkatraman_n_Page_41.jpg
5448af5702f2dce285085dd5fd67fc7f
16c595815dbb79e73fd12585f855539d1f1f2179
F20110114_AABDBH venkatraman_n_Page_14.tif
008441037924cf13234c373ce9bad1fa
4f0f00ea37bfccef680e3764169962ee143c7eca
83312 F20110114_AABDLB venkatraman_n_Page_14.QC.jpg
b4b5bb730302db0cc956be4bf82cfd35
b9f407e166920d7319c31e331dcbeb116c6b6610
41726 F20110114_AABDGE venkatraman_n_Page_74.pro
7e998018e0faf81394c956788896a654
843a6be6f34d17f69b845dcf40933aaf319c6873
1051970 F20110114_AABDLC venkatraman_n_Page_14f.jp2
dcc127a917cce40797f02cf3f02fa226
83851b5913a025ae2e0ea2c23ebd65d95e88ab6a
199934 F20110114_AABCZH venkatraman_n_Page_42.jpg
8d2d6f0e6f2f5a5778ff894fdbf6f549
2a2e4172705b77a749834228490dab6709fd4df6
48286 F20110114_AABDGF venkatraman_n_Page_75.pro
416db7de1b0cfb8bcc84332c470d2fc4
57e3bce3dd63c60022671027e35f635dee8011ea
32673 F20110114_AABDQA venkatraman_n_Page_61thm.jpg
5995fbdff9fd92a91b93211479435b41
bca4441d0ccb4af802812db562590f65d67c4cfd
33465 F20110114_AABDLD venkatraman_n_Page_15thm.jpg
f77bcb96b32dc418a13f15dddee423d4
714ef8619ff01513e66f2d68353d4c4bfcf2e44f
170127 F20110114_AABCZI venkatraman_n_Page_43.jpg
bc85fd5ee6472569d6765ab9459adba1
60a34fd44bb1230649f20d46ff83b35e3c4afb94
F20110114_AABDBI venkatraman_n_Page_15.tif
53b9e491e59b26e9aef4ed89714f7adc
731ba78fbc334ec69d8180ccbc248cebd3b86944
52160 F20110114_AABDGG venkatraman_n_Page_77.pro
30ce8a13ad612fd91e0de3be41d984a4
83290b1e2cd74216dc86e24844a43ede1f1e6ce8
76956 F20110114_AABDQB venkatraman_n_Page_61.QC.jpg
90be3cbcfac16478cc114fdb443e289e
b710249e7971065746258a5732b76249922881dd
90033 F20110114_AABDLE venkatraman_n_Page_15.QC.jpg
183654d4b99f3976ae98f5430b9d7dad
abdb3ac153f66c311d2c788807b4cdfe91b2c395
147879 F20110114_AABCZJ venkatraman_n_Page_44.jpg
9550bb7c09668fa5409d01472a2dab78
932dc053af2572aba17c8699fa1752a718dc8546
F20110114_AABDBJ venkatraman_n_Page_17.tif
6df4558af9a32db7385ae0e4a23c2c5c
5da3fd922cfbc2fe2d5b915ba8213eccd485c284
55678 F20110114_AABDGH venkatraman_n_Page_79.pro
43bbd95275fe198f75453a7a12a6c87b
8b9c19a2ab8d790d9c048f3fda12631957c46f17
1051977 F20110114_AABDQC venkatraman_n_Page_61f.jp2
a23b8c1479f60177007a36826f46b521
850c52730d8837ab9c229f2ab6236597b241eb78
1051984 F20110114_AABDLF venkatraman_n_Page_15f.jp2
8ee7d1c19e9937c82226f9512b808935
fbc7df2a45cb619aec8de93392871e28484a323d
157072 F20110114_AABCZK venkatraman_n_Page_45.jpg
161e25a59c7b511cfbc15eccb6e0d2d3
1d6fb29bfe7f160b812800ee617a380fcf4aea45
F20110114_AABDBK venkatraman_n_Page_18.tif
3a9d2d3571e9d89964ccc8044421462c
6d0760057301914c4395a9559f9fed9ba5f83a3f
58734 F20110114_AABDGI venkatraman_n_Page_81.pro
8f61a993471dc7c24ec6298a8e4f1495
4126619ae0fb93f5dc9cfa9f7a5cbcea2e738525
30410 F20110114_AABDQD venkatraman_n_Page_62thm.jpg
49b53d0e0b11ca8183c391fdd31faeae
ab7e8a3e26bd7ed33a3ab261bdf9208390b8280c
32824 F20110114_AABDLG venkatraman_n_Page_16thm.jpg
657140290e6e35ce355fb4c69525965b
44ee5250c5450dc8bff1aa63908bb62d3cec34b5
207443 F20110114_AABCZL venkatraman_n_Page_46.jpg
9ca26065de681134541bdf496d1061e7
3682235f77ebdff4b5451c503ea5cb4c9d16e869
F20110114_AABDBL venkatraman_n_Page_19.tif
bbab51cc76ad083b0a30f012ce5de4a2
912876fbf0c131b1bf98153d38e71538b0fece3d
61335 F20110114_AABDGJ venkatraman_n_Page_82.pro
73cd02252ae51291fadff43b5abf880f
4ac49013794aae8da4dfee3cc0a3624daef50d33
75840 F20110114_AABDQE venkatraman_n_Page_62.QC.jpg
ef143f493dfd034d2b8bbe02f424ae09
9240485072d171df3f47bbecc8349e1bd14e5403
87824 F20110114_AABDLH venkatraman_n_Page_16.QC.jpg
445d8665f19a95cffdbea97ad9a8d17e
42e669d9124c8800d793312f6e718df6f0a16e5c
159491 F20110114_AABCZM venkatraman_n_Page_47.jpg
b4408882e593f76bd3929afe0d41a3ea
fdcadfb30a597eda8ff5483ddfc121ec2a8f60a1
F20110114_AABDBM venkatraman_n_Page_20.tif
2181aa33d356d82f2a7c0b4dba45259c
d0134c34c2cd21b7c25dfc0a213426e2c53d36a0
59331 F20110114_AABDGK venkatraman_n_Page_83.pro
9d35ecfe11a3bcbf249909960bb63dba
0e8bf542435b48f5e31bfa0718ccdf53d21639c9
972009 F20110114_AABDQF venkatraman_n_Page_62f.jp2
bfc3abc1c2af8f151937d24ad9620cbe
8e7c69fd8adcbb5960434749a6b7fe48a4d14342
1051986 F20110114_AABDLI venkatraman_n_Page_16f.jp2
925b69a3c693db6955a1a8b3c121af2d
16ece9691163b0e9bfa6a914da20856b83493e7e
206753 F20110114_AABCZN venkatraman_n_Page_48.jpg
1fd7769cc8b7d48dc7488ee63f4fa1df
0e91e9a6024c3462ae378a88b712a9ee5c7dea0e
F20110114_AABDBN venkatraman_n_Page_21.tif
b34258244568243cd2727de5b9e1a3a6
9ae20e99b330f96a5b3a5bbaae3feec2ba762094
42186 F20110114_AABDGL venkatraman_n_Page_84.pro
e5911483e03ad69808c5a1019e31e204
6b4a344ecaf9792096aba73b506b0187674498c9
30318 F20110114_AABDQG venkatraman_n_Page_63thm.jpg
997911b823f3019e6609f33150b44d63
03510ebc224d387c13f1998675d5b874e1ab07d0
30661 F20110114_AABDLJ venkatraman_n_Page_17thm.jpg
ab18eca549c3e17c839654dd573178b1
e53aad5a70d7b7bf381e96d8a6b5386b06e4d3e6
186873 F20110114_AABCZO venkatraman_n_Page_49.jpg
ce21e52bd1cb4bd7b68669a8d248c159
554a95f260e4bce3e5d3be637c099c8a60c0806a
F20110114_AABDBO venkatraman_n_Page_22.tif
6d9eb2b53e1316e10b16fb0723747283
7f4eff05d552c736792387405b33319f638e1b99
19121 F20110114_AABDGM venkatraman_n_Page_85.pro
e6651e878b83dd83801cd907a77450f7
6110458340863e8159e3d9da23af27aa7c67789e
76070 F20110114_AABDQH venkatraman_n_Page_63.QC.jpg
b67facc29b74767e707a0237070289ae
9c6405fd309bd7e5d8b5a746178efdcacce03459
81448 F20110114_AABDLK venkatraman_n_Page_17.QC.jpg
a0802e47ee7948c9d186bfb41c4050eb
f1d3df455ee8ffa084ec35327991fa33225d59ef
178995 F20110114_AABCZP venkatraman_n_Page_50.jpg
d2472d1522c359c44da0090d998b0504
ae94cc4939b9cf963fe3ed9fe2c625777abc6775
F20110114_AABDBP venkatraman_n_Page_23.tif
dbd8f7f67f8abd2b44fc9646e83a5b3d
2b54829d6377b3d5d5618bd3bf35cdb0231ff4c0
899679 F20110114_AABDQI venkatraman_n_Page_63f.jp2
b562eec4a9800aa2264e40736405716e
bc19cb057a8490f31f1c05a4ab6018e10549eb40
1044348 F20110114_AABDLL venkatraman_n_Page_17f.jp2
f112f6ecc3260ab77e48935d7b4c81c6
b53a153441442dda50bcd54f4a0bec66ecb271b8
147173 F20110114_AABCZQ venkatraman_n_Page_51.jpg
57ff9e8162b0d76646542f97b100bc5f
8fdd372fd1f49fc11416a20055ae0891bb35b389
F20110114_AABDBQ venkatraman_n_Page_24.tif
8e85141c6e2055c95d311e50a35d8902
ee4ae7462049ad51de116be968836c57dcc8b9a2
424 F20110114_AABDGN venkatraman_n_Page_01.txt
e183b792b8144cb395d141a4bdc3982b
9d551876bb72184270c2d247a3e2ff5c8c4bb16a
29967 F20110114_AABDQJ venkatraman_n_Page_64thm.jpg
abfb612ac0d451a99685dcf0f95936da
a32d65efb961fdeee660fa777c335d79ca2dfa50
20648 F20110114_AABDLM venkatraman_n_Page_18thm.jpg
99f01de0360b2025d532673473383ca3
f284f6ebaf502f5730448fd71d2cf90921599342
166286 F20110114_AABCZR venkatraman_n_Page_52.jpg
10b4f7243ea37e5f76bc72e9e979dc26
7b88ab0f3a50e366501aff8a882ad6a9072d064f
F20110114_AABDBR venkatraman_n_Page_25.tif
a28e872fb3f53ead6393dec87ecba230
4bed9f344504db955049de69d82ffe1db0eb7f6d
122 F20110114_AABDGO venkatraman_n_Page_02.txt
7fa7cdd89696d63e69bc4b17a8c4d03f
d93b1484314b0851b3681f94f5f082b5857b7de2
75937 F20110114_AABDQK venkatraman_n_Page_64.QC.jpg
e26b25d39e8cc6efe5465ddb1bb810bc
136cd681a463f9861bd9ff5b2bbe557bc93d7bb3
45747 F20110114_AABDLN venkatraman_n_Page_18.QC.jpg
309dcdc5725a2ce06930175121a0d061
2f8921ade8f52b2fbed5691fef65d68e48840bd8
158342 F20110114_AABCZS venkatraman_n_Page_53.jpg
0bf1784813cf209b4d5397f793a6c92d
3b2e4c8e3c099afb78120fb4d629c68909821323
F20110114_AABDBS venkatraman_n_Page_26.tif
1ae622db63053dba2c8799505299fa03
ad0e1921fd529ae7ed97bfc146184f28010a4355
103 F20110114_AABDGP venkatraman_n_Page_03.txt
c19ac2573d51cd5b69916609faac5626
82c960c4980082e9c2df773d91cda7d10f89d86a
942540 F20110114_AABDQL venkatraman_n_Page_64f.jp2
cd2aa89514c7234c82f82d6b41a7962c
f5de7b90c39c570c62abf7b2aefaf59ca56b25fa
515301 F20110114_AABDLO venkatraman_n_Page_18f.jp2
b4d17d24e548a2c13e9ff66e3135e923
5827254adc9f78ce362ca08c0709b222c6c41bcf
F20110114_AABDBT venkatraman_n_Page_28.tif
a1c42b536e600ec185a14f4932bb80c7
72ee19741e46de2586f7aa9967e826f97d1bbee7
1177 F20110114_AABDGQ venkatraman_n_Page_04.txt
35f3f70d080246cff8b0ee9ffadd3a22
36a7af74edaab64bea3a1e7446a6c310931f098a
171386 F20110114_AABCZT venkatraman_n_Page_54.jpg
20006141ab18e9ffe68db63d5e6b6ab0
c783ee36cacdad37608c6a2f2dc6fe1494213863
27244 F20110114_AABDQM venkatraman_n_Page_65thm.jpg
0c32b55339bba89f04f1cca93571a0c1
cf53f298321868bfe02f0f2d8fbf8de9b0670180
28330 F20110114_AABDLP venkatraman_n_Page_19thm.jpg
4ab3c7c657eac035fe0069da1cdba6b3
be7081f1814805a89c022a076a84cd80e06f2faa
F20110114_AABDBU venkatraman_n_Page_29.tif
57e15f13a5724daeecd11b2059c9e916
ae481fe0b533cd63c52b9013d421e9f564fc0ba1
2508 F20110114_AABDGR venkatraman_n_Page_05.txt
463c9082d79e8ff682e672d62ebb6c1c
8b01c245aae12c7a625ebff6bae4f149ace0ce40
171837 F20110114_AABCZU venkatraman_n_Page_55.jpg
fde02b5e849b27d1250f13a08f7ff572
6ba4d7a34ac834200b6737db0d4d47e4e952dd05
63996 F20110114_AABDQN venkatraman_n_Page_65.QC.jpg
a10f27b5786592b593e7a3c2de7283a9
b5aed3baab2be9b0730c1b55c6b6fc9a479a3ff4
69395 F20110114_AABDLQ venkatraman_n_Page_19.QC.jpg
d0aa72e740e8e160b6059b79d6e9cba4
0e022fd70ef89eaf7daf151c57d9d1f35b36e0ad
F20110114_AABDBV venkatraman_n_Page_31.tif
2f3aaac6232abca92a3250928d0b8a42
a6e0a5bc3def8954be88e3814eb5865c0de4c6c6
602 F20110114_AABDGS venkatraman_n_Page_06.txt
344d649f78c1a6412e3e70f72955bcf8
263fba4dd3b0be4d322732746ebfd1ce24608500
198529 F20110114_AABCZV venkatraman_n_Page_56.jpg
343d3b36831d15c08cbe903cce10ced5
50cb48ee9d4f1c1796f41160419d10a6a55540fc
786885 F20110114_AABDQO venkatraman_n_Page_65f.jp2
9735d0e857ed5a499ae1e0ddca43a0fa
fe4f3c5d1aeb10ac2cda0328240d1b1db039625e
850310 F20110114_AABDLR venkatraman_n_Page_19f.jp2
d5b473155f0a8d3d1cdbc2d6a76063cd
5f2b623d75fe81e272fee1448e3f9d14345fdabd
F20110114_AABDBW venkatraman_n_Page_32.tif
210b3009275283e268419d3e190168b5
7fae9f2506becc68723bea951b4ca2ea1d28d44b
172 F20110114_AABDGT venkatraman_n_Page_07.txt
66b6dd59e7ffd5d9743fb1dd996d55af
45c8201df8f2a3284a104a424574432ab15d035b
161355 F20110114_AABCZW venkatraman_n_Page_57.jpg
44cb1b2ca554f450f7d8f5814fcb4c79
914cffa6acea415df1324e9fbbf32520da9a252f
29197 F20110114_AABDQP venkatraman_n_Page_66thm.jpg
17ef18ecfb947043ae699adeaff32c3c
46bf5b4c9f0fbb4273ae243af1e258ddf29db9f7
F20110114_AABDBX venkatraman_n_Page_34.tif
fec919d87a5b41d1352bc307ad29cce3
1944033d64627923e42954740655abc02dc50169
1558 F20110114_AABDGU venkatraman_n_Page_08.txt
e5ae10bc297a2ed32c8f6828a5408baf
01e29126f08b64e8205d9f696128929c42329e73
183923 F20110114_AABCZX venkatraman_n_Page_58.jpg
0eda6f7aa756a743f5b0da45090dc764
93f598fcb30af061013040ef07c0ee25c7ae90fa
67372 F20110114_AABDQQ venkatraman_n_Page_66.QC.jpg
4c206090aed583d10b8257c097648122
2548bb05c9cb6ba230f0aa4248aeda703e3f4694
80038 F20110114_AABDLS venkatraman_n_Page_20.QC.jpg
ae757cb9074bb7a0746245705a0eb5b3
41bc5333dc70592009a4b45851ef8503cc556d30
F20110114_AABDBY venkatraman_n_Page_35.tif
f5c15272a0339f056ac91baab3c32cd9
142673d47567044f62777334c775ccf467d597f2
828 F20110114_AABDGV venkatraman_n_Page_09.txt
30e26c967b933f2703ac59031d31264d
e3c351c9b6009915373ff6d4f4129b687ac1ebc2
182039 F20110114_AABCZY venkatraman_n_Page_59.jpg
50f7702ba2828d28993aae35b59f87fa
e298058f9ced326c277ea52f78df5289ae4447a7
884434 F20110114_AABDQR venkatraman_n_Page_66f.jp2
acfc8167b905cda51ceb105d4b1437ba
a968d72c0a65ca63f268f2e6f976e67d7904481c
1051978 F20110114_AABDLT venkatraman_n_Page_20f.jp2
743e1883201bff1ab5387fd1e0462739
563ef4e59241684e267a9492b90cbf4944b14ce9
F20110114_AABDBZ venkatraman_n_Page_36.tif
6c8407e77fd497eda813d6b8ec3eb3d7
ce2553033af8399bee058c819cca325bd7cdaa5e
F20110114_AABDGW venkatraman_n_Page_10.txt
2307ccd46ca5bc0166fe01fe77fcf2d0
7d8d26f2fe9cd432b902fb4029fbe551be4693fd
F20110114_AABCXA venkatraman_n_Page_40.tif
9f3016442dadd94445838f3f60ce8876
7327f99a19fbf0d67a8673235c841584ae074f79
179211 F20110114_AABCZZ venkatraman_n_Page_60.jpg
fb03cd133e88e24de6c0d499cc642089
50b68a6f5d7c8225497d694190fa72a525ab9a6a
24106 F20110114_AABDQS venkatraman_n_Page_67thm.jpg
aa3ae922763097dd942fafd1e5d3d324
fd880d7cbd9bc8e4eb2a6ca8a376a059b44c35a1
31045 F20110114_AABDLU venkatraman_n_Page_21thm.jpg
e869c084acf88bf176b12b4a45343ad0
ebcb0924c3f8e33e68004706cf298f83bad8ce6c
2023 F20110114_AABDGX venkatraman_n_Page_11.txt
314aa06e3c68cbf0494140aca3435ff7
b1cf83664999676c26af271c637df36313dd2e98
F20110114_AABCXB venkatraman_n_Page_30.tif
69ea99f25e72695bd887ccbdedc34108
b3f6b6aed3310d09d6d11c5a0fddc0db51e3c3ea
54698 F20110114_AABDQT venkatraman_n_Page_67.QC.jpg
4e7723f383fdeec8d25d8c3122b50c54
c28ba8be2877381f401b1d51734a5cd93af307db
77116 F20110114_AABDLV venkatraman_n_Page_21.QC.jpg
b5334cd939e6faed81ca79acbd28e1fb
511fa23a4f7fd6a0b086f228f1d12819ca471ddd
41192 F20110114_AABDEA venkatraman_n_Page_12.pro
232d29e45b4962f05aad9320985d0a10
d5ef2949d5bc194f7d2b71fe7397d7739ac7b343
1701 F20110114_AABDGY venkatraman_n_Page_12.txt
c0099829f94a0d74eb001727494fef0f
f97d40de4da1c1c97a237ca5d5a92619267a4e14
261081 F20110114_AABCXC venkatraman_n_Page_82.jpg
bab902a5adbaf3da5a428e296763b6db
b20500e717cb1e431c44407dbfbe2bfe10a9c250
626974 F20110114_AABDQU venkatraman_n_Page_67f.jp2
8d27c3082627fdc343d3a60dbd21176f
be9f3b8785323d0d931cd6fd7afd96ed14c7a3c1
982312 F20110114_AABDLW venkatraman_n_Page_21f.jp2
5f03e91c8d5501a30728a99fb627c01e
430904e80c16a3d80e87925bd7e586efe9bba1f1
51995 F20110114_AABDEB venkatraman_n_Page_13.pro
978a3f0243401439a567a33d15bc4d14
bfabf353170c0224818f77f65a2b406b1b6924f6
1928 F20110114_AABDGZ venkatraman_n_Page_14.txt
b68b5ca1fc63f422e2b088fe323eb789
0665b0648938185aefa6e33fccafc669d8635a5e
55489 F20110114_AABCXD venkatraman_n_Page_70.QC.jpg
3265f2207a60754e1ea90bc5a91bb59a
59aeb4735b0c7a3d7b6deb7cfbb9f9add81b5813
25798 F20110114_AABDQV venkatraman_n_Page_68thm.jpg
097a5e0a3faada09d0d22b311acbeff8
8e2cf4265ed686aa9deeaf38628dd19850824831
30662 F20110114_AABDLX venkatraman_n_Page_22thm.jpg
f5f9072aa114088b310ba1aa05512e43
7cae9517d491c5ed2d23ecb97348bcbc19b4af91
48883 F20110114_AABDEC venkatraman_n_Page_14.pro
ebc4e22636938b0f87c4063ef0bfe263
3b99dc046d86b2cd97fa054f78a6ff58e81b2fdc
140810 F20110114_AABCXE venkatraman_n_Page_32.jpg
618c3ea91cb741fb5837b14a950ee210
98d52739df62a915dc6bd383b7ccfb303552b9d6
60685 F20110114_AABDQW venkatraman_n_Page_68.QC.jpg
06600a010c0f24bcc5a189778a290cda
33a32fb9514a36aca3678dac94dedd3260833fb5
30999 F20110114_AABDLY venkatraman_n_Page_23thm.jpg
6fc24eb37fac52306761b5b32c4b166c
0576ebd433a6b7101a797a66b9b2decdda84c144
51150 F20110114_AABDED venkatraman_n_Page_15.pro
80ca6a65b9a4cc65e9d025bf31d81a05
0f07dad14af50746c3c78b1a5c4cba408bd35f80
F20110114_AABCXF venkatraman_n_Page_44.tif
e7f38aa8901c72b41a3067c1df6f17de
2f4a01d9e5ccf78395da7da39135f776a770d816
1448 F20110114_AABDJA venkatraman_n_Page_71.txt
7aa36d7995f7fb78e9637e2d6629b890
1893a1f5c718f153049513eefeb6f2edaa209840
80974 F20110114_AABDLZ venkatraman_n_Page_23.QC.jpg
a8f86d8b79d1342343acbbe4fe1b486a
af6b83329f663634dca12132e221c23f3974110e
49647 F20110114_AABDEE venkatraman_n_Page_16.pro
eec9c54c0fbbe6901b650e59fd860e10
ee6deda64be41fe7c868df596fb808caf0dfe2b8
F20110114_AABCXG venkatraman_n_Page_79f.jp2
34aec6ccbb9477b2d86c3a8e1a4378e6
abe600f134e3bd80749e4374fc5f97f97c305e61
1861 F20110114_AABDJB venkatraman_n_Page_72.txt
b7bffdd9fb0fc288589b1bb4116057e6
6782ff866ad8e8a55af5afc65f8394848ec76b16
710706 F20110114_AABDQX venkatraman_n_Page_68f.jp2
35d2928846a99b0a771e3f236035c389
56ae812106b5cc676fab980b68a32f8a7db3e62b
23270 F20110114_AABDEF venkatraman_n_Page_18.pro
22435b2f23731f2403f4f1115980ab56
90ae9f134340fe15ad5af036b12cc340fb29087c
43206 F20110114_AABCXH venkatraman_n_Page_37.pro
60af66507dd9fe5196028687e034d9ec
bc0ef8be32594842952418286b761e53de4a1c93
1729 F20110114_AABDJC venkatraman_n_Page_74.txt
6bfa3ed0b19b24730f26cc351460b302
2745706b261f5f58fad27e650a1220ec92e60171
20346 F20110114_AABDQY venkatraman_n_Page_69thm.jpg
ba0ef4a86f63fa7fbe088edbb3c49828
90dd57646e94352d32f5ffda9fb495569fe11950
1018542 F20110114_AABDOA venkatraman_n_Page_42f.jp2
2127e91240d230bc39ccd4649941bd06
87b16f325ad22bb09f9b98c6a0b353c0daa5d0de
37909 F20110114_AABDEG venkatraman_n_Page_19.pro
daa27cdf85e38e1915b820e75d3f3cc9
05cff1eca05d9fb2dc0e69e1c5ee3f1fad416f1e
19443 F20110114_AABCXI venkatraman_n_Page_76.QC.jpg
c9c262cee87c8a9852cef3d4b7c72d7a
2c4eb04525fbe48df0c61353ee67fe91d382be4b
1908 F20110114_AABDJD venkatraman_n_Page_75.txt
752f7b6bba810a4a7582c2061088f48c
e2fb81640a1f0fb7f963dda3557ed5e828f38a1d
44789 F20110114_AABDQZ venkatraman_n_Page_69.QC.jpg
75c7a32f6f1f6152b0506a119a4ba149
c80d336e3d1de39cda20b78d964501a4ff491715
28020 F20110114_AABDOB venkatraman_n_Page_43thm.jpg
5c0a70c95533af7f9929008cd69d8f73
7424352e2550a0f5f40da2687d032bece43ab596
50453 F20110114_AABDEH venkatraman_n_Page_20.pro
4d193f1b9a3f77aabc7a994ba60af23b
04e9109bf0e2065ada77a67533e9d390dde24b53
64820 F20110114_AABCXJ venkatraman_n_Page_47.QC.jpg
f4b06e70424a924b35971804fe6ca673
db103ad9bf1bd8f1444b374738c9a7f0fa33eecb
226 F20110114_AABDJE venkatraman_n_Page_76.txt
cfe0894a128b67e95d1234632ca66594
032058bc95489dc8be954a53bc68083988db9016
66821 F20110114_AABDOC venkatraman_n_Page_43.QC.jpg
de3aa53761021ef28453229d4fbc2586
8efc10e275da7c14688f65f2c8ec9e6e6b0bab23
45570 F20110114_AABDEI venkatraman_n_Page_21.pro
b5c993b45dc3192d12b88e6a539b5c2a
c993521bd62bb32fc90b88d458476ae6b8e3e4e3
75821 F20110114_AABCXK venkatraman_n_Page_22.QC.jpg
4113f6713a7a3cceaaafb77fe764064e
31d6fc048d347253ae443c1b377e59f7561f21f1
2152 F20110114_AABDJF venkatraman_n_Page_77.txt
39cb7777f67b2ef7fd654056b910e415
1a47f864246cfbb2f89a2ff61a6ffdbbd3bb2b3a
819957 F20110114_AABDOD venkatraman_n_Page_43f.jp2
08fc20126e04fa7863930b5d756eb591
9510d31ecb54b83641e54e418d0de88046f09d4b
47037 F20110114_AABDEJ venkatraman_n_Page_22.pro
d2542a6b4067a4481d043f41bab0a1ab
01c278100a8abafa5d11ec1eea82a17a59309457
64744 F20110114_AABCXL venkatraman_n_Page_78.pro
7debc6ec2ee3d4f58411cfac300d0812
346c367ea327470ab41ccc9adca2de6e3afa9cb9
2300 F20110114_AABDJG venkatraman_n_Page_79.txt
537dabdffbf5946fde4e8c5b3e351138
dfd1b6dbfe0ea2d64253b9fafb22bea03a9c4308
25452 F20110114_AABDOE venkatraman_n_Page_44thm.jpg
a0d34747c300deb6a98a8ba891fc50d0
a74adc37b3dd98f0b6dedd7ede5d3c1186814923
47727 F20110114_AABDEK venkatraman_n_Page_23.pro
751b29a921bdb6f590fce405d25b4d77
647bb998819c4aa73086b4b8952e93fd793b88a2
211994 F20110114_AABCXM venkatraman_n_Page_61.jpg
a6401358d7650cc3c0fadac5eb3b9814
b9f1adb7db11c4efd866de5e4a4d7794c15c455c
2437 F20110114_AABDJH venkatraman_n_Page_80.txt
69e070e838e1221f4765c678c121865d
ddea04a203adec77c5372e3c4d4837ae6afeeeff
62042 F20110114_AABDOF venkatraman_n_Page_44.QC.jpg
83a9ca874ef5af70934aaa06d4637cf1
ade061281d81e73c829a87badad1605add056901
1051957 F20110114_AABCXN venkatraman_n_Page_78f.jp2
6efc363575eecfb4002cdc580418880c
35a54788c71c4e79ed0d9a0504eb8a4c18a72008
2378 F20110114_AABDJI venkatraman_n_Page_81.txt
8332bf03acfede22f75c9f1740440ace
2e71ab5f1141451ce3ab7763ec32bc6db0cfd66e
687271 F20110114_AABDOG venkatraman_n_Page_44f.jp2
93db7694eb63edc98139fb70487d4927
ee9b4822728890289d02e68fc766bae1bd0385a8
43408 F20110114_AABDEL venkatraman_n_Page_24.pro
7d0acca56ed6b83fa2eef38110c794d4
efb7643dc737d119125c9880f6219deee787409c
46489 F20110114_AABCXO venkatraman_n_Page_17.pro
d46a0f0971f450208652eb16eb636602
64a6904ea5f0fec76642efc9b9905b05dd3f1263
2482 F20110114_AABDJJ venkatraman_n_Page_82.txt
4a2a7ac415915e3be372f06db90ddbf8
4c78ac1c75a6225f95f0d4548f448a8efd3b80ff
26734 F20110114_AABDOH venkatraman_n_Page_45thm.jpg
bdf75cd0f173eae42b153f81529da2d9
fdc734b84908394faf8a9c419522db9e2fcde5fd
49287 F20110114_AABDEM venkatraman_n_Page_25.pro
1e9d30837fd9bf13dab42b46df73d02a
53e7be97dfa3675be91d1a76c704efeff2a14c73
25706 F20110114_AABCXP venkatraman_n_Page_08thm.jpg
2d1356b1f78798ba3e9bc348c874b6db
68049d389f664cdffbfe84fe233279dfd2a16634
2393 F20110114_AABDJK venkatraman_n_Page_83.txt
a7bb156fd3f8f0add81c1ab078481fc9
107173f555fc9f25ca896fa51586aaf7fdb21095
67645 F20110114_AABDOI venkatraman_n_Page_45.QC.jpg
cba345ca869ed74844c9fded32b70274
d9929e37dd8a149984a5dd05dc7f7c072e90cf9a
48494 F20110114_AABDEN venkatraman_n_Page_26.pro
4a28c6f91e34e1eee0ae11b9fae77612
9fe35606f6f03ce76100f00227ee004f613fd6a3
F20110114_AABCXQ venkatraman_n_Page_62.tif
eef9c51f278fcc0050be3bd66f036677
31f6f8f375e24a070fa3ea08b526e9387fa20fcf
1781 F20110114_AABDJL venkatraman_n_Page_84.txt
1f56fac417e091d61a77402549ac5ac5
359782d98e6fbc6536a0cf8c58adcceec586c785
797642 F20110114_AABDOJ venkatraman_n_Page_45f.jp2
68131e81cc97c152e935aef31112b108
0924627e92b5f367d0e3e874a52aa31bb41ab837
48428 F20110114_AABDEO venkatraman_n_Page_27.pro
e7471f0dea86e7b92100b035023eeb6d
9b8bf0176674f5a82d95dbfdb89529cc7179d9b9
127981 F20110114_AABCXR UFE0006553_00001.xml
6bc840eaed0de6032bdb3b5a37ec1cb9
c51f3042384a8ab5fa33bb5b239c86b17e989783
807 F20110114_AABDJM venkatraman_n_Page_85.txt
855cfc012259a69dbb2c9c55bd68f1a9
6356a3f5eaf7c504648456a8e5287c07730276e0
32233 F20110114_AABDOK venkatraman_n_Page_46thm.jpg
e6bf5b8a699c087b6900c0af4b976099
095fa16cd6c78c87290dff49b70b235bde25e6df
12074 F20110114_AABDEP venkatraman_n_Page_28.pro
948fccfa4254b88ff7c346c748550465
226c19a06a2e480621e15a5b2d69933b4586ef09
14568 F20110114_AABDJN venkatraman_n_Page_01thm.jpg
9cddf7c2fb224f2743c37e787e8f7219
2f30428f0679695f8a5bc60b3b40afe094b7d5c5
76807 F20110114_AABDOL venkatraman_n_Page_46.QC.jpg
69844cf2176c7eac5ce18ad1975d033a
bd167cbe1bc66cefbf4d6215d76dc147c6433cff
38276 F20110114_AABDEQ venkatraman_n_Page_29.pro
118d7a05532d3bef01449c357b036367
b9856905635199e58a3d867ee74f5c5cb3b4390b
455688 F20110114_AABDJO venkatraman_n.pdf
6e27a09801086c8b931df7be0b642fd9
14e6a90ada005546d400e1f8111e005ae28e7e59
1025150 F20110114_AABDOM venkatraman_n_Page_46f.jp2
3ac5c47ce36e7cfbd39e87a4c76f199c
e8e165a12c7f9b1f8af5c2a047828228935c67a3
42212 F20110114_AABDER venkatraman_n_Page_30.pro
d76b8b7f49b840feeb9d3f3846f75235
6c577a48df7c1a1d68c4b35e06c9058c1fcb0a5b
60861 F20110114_AABCXU venkatraman_n_Page_01.jpg
1a9c8a0fbb4e2ccdd355a85583e039da
cb682740c6d71db564519a8609349a119857a14c
25977 F20110114_AABDJP venkatraman_n_Page_01.QC.jpg
f24e8cc39644faca7fea36a94ee9fc38
6c2af4d1219858f83feb57f056d50a5b7b4a765f
28077 F20110114_AABDON venkatraman_n_Page_47thm.jpg
b40e4b4c3717fa953a0f0e87eb50c6ee
e29c65fc5a4aeb32bcf18370fd4cad0ef62b4e62
42888 F20110114_AABDES venkatraman_n_Page_31.pro
3354b74d90e5e2aee3cfb304073f361a
470eda48d7a990ac2169ca1a6a9b89cb07b9c7d5
23092 F20110114_AABCXV venkatraman_n_Page_02.jpg
1b1f69171d219218727c3e6958f7c2e0
66d5571b6a8cbb25f4b4dec59ec8f6d951e75461
775372 F20110114_AABDOO venkatraman_n_Page_47f.jp2
56e3661fb02fc6d0cb96f2708c2fccc9
fa902c66dd52caa6c0e3adac0e538b911e12f8cb
32065 F20110114_AABDET venkatraman_n_Page_32.pro
c26dd7f2c1dfabbabc5e592c6f0a072b
24e94d2478b91efafd6f7842541a4faf95ec9e04
22705 F20110114_AABCXW venkatraman_n_Page_03.jpg
a03e0dcd8032f5db1141f9868c8c9545
58eeb7c0ba4d4416a9696ccbc9b13f68c27edb60
233892 F20110114_AABDJQ venkatraman_n_Page_01f.jp2
4f34cd489ca0f47a32e509ffb46db2da
faec3526565d5a56842750eb1d2929dd4b652983
31943 F20110114_AABDOP venkatraman_n_Page_48thm.jpg
3b18d90e85c757e79c8ff6a8249a11ee
feb44c50e96f020c7c89a189b3c403dfe948b579
37303 F20110114_AABDEU venkatraman_n_Page_33.pro
e704c945e49e9a6bf9bd30d8e53370b6
f4000a46f23dabdac56dc122b14c72f258f9173e
131211 F20110114_AABCXX venkatraman_n_Page_04.jpg
2193155e2ab8b154de7b7cc94d4739f2
61fb8865ced23942bf1edeaabd8ef773c479d11a
10936 F20110114_AABDJR venkatraman_n_Page_02thm.jpg
09e6600cb2ad8e61b2ecc4e903f0ff68
e93d6bce7feac4b6ce57261112b8b2f47acb7972
81780 F20110114_AABDOQ venkatraman_n_Page_48.QC.jpg
6bbb6b5de377315c4ef6a8037bd2bf6a
e2c28cdb40a063660db68e022523b50e72fdb8fc
43113 F20110114_AABDEV venkatraman_n_Page_34.pro
aa3ba6640b3646eebeb04ee09e3cf156
1e95efd4514473dcb5e6f54804dfdb3f9c8651b7
135744 F20110114_AABCXY venkatraman_n_Page_05.jpg
c831beb7523457d4cb664635ca804999
55ae73688aae7e5fba6daebcc159f5918e0f9c63
13925 F20110114_AABDJS venkatraman_n_Page_02.QC.jpg
d1fccf240679bf84576ddf8d3d8b2360
df4539e2226e8fa39a8860a748f3f5d633991b15
1002282 F20110114_AABDOR venkatraman_n_Page_48f.jp2
bd52db6bbdebf7c94cabc2ae4da352a6
cbe146c8c068cdfcfbf926caada4084c3faeba14
51302 F20110114_AABCXZ venkatraman_n_Page_06.jpg
8bcf240c2eaf4dcc4a654f2f3bbb00a1
54f7bf4cdd633b6549fab42076b5323186b06dc6
31021 F20110114_AABDJT venkatraman_n_Page_02f.jp2
a14e6fb97375f002fa8676f87098788b
15f0e4e3c90e74e78b92abebea16d2c7922c0aa2
49655 F20110114_AABDEW venkatraman_n_Page_35.pro
816b0012b9ee4a9523112190c6cdce31
0a1986ffe489ef0f2c7caa1f78a81f7288507482
72187 F20110114_AABDOS venkatraman_n_Page_49.QC.jpg
926abfbd6e7c85b136939d5fc2574814
a167fcd3274984f3076de440cabe2efa8b7e49c9
10691 F20110114_AABDJU venkatraman_n_Page_03thm.jpg
b4209821d3bebc18c5054d9650669379
1097e65d440e2f924cd3bdd1cfeea2e6b9332943
37866 F20110114_AABDEX venkatraman_n_Page_36.pro
d5ae18896d1850e7b859955f925afa60
c624d380536f2e600a5be6ca2bab9e12cb80c2b6
871128 F20110114_AABDOT venkatraman_n_Page_49f.jp2
8398279d65e10616d5e1c66e4d2e0ef8
2f2652be7892324fd9a2cf62ad608883f41f49f1
12997 F20110114_AABDJV venkatraman_n_Page_03.QC.jpg
a485e5b61dd075db150fca9a455e0b91
7eb58e858b856690243533c8ae5c2dbff7389ba5
F20110114_AABDCA venkatraman_n_Page_37.tif
8cf48fa0959948ee748c52fe6858ff92
c9e0b4f2dd36e2abed9e1b462edffc7fff4c3923
47955 F20110114_AABDEY venkatraman_n_Page_38.pro
d0da629174eab4f93d94a8f16af382ae
1324df84692508997ab32f50c2e05ae6d277ceae
29305 F20110114_AABDOU venkatraman_n_Page_50thm.jpg
de721557f38624a57943c43000d39dce
e1312d4ccf65887c7d8c2be3cd2c1e009ba933a3
28239 F20110114_AABDJW venkatraman_n_Page_03f.jp2
eea839acabe6a6f4533eded1bc9597d5
7f328ed549f998e3c6d74ea2aa854480415b434d
F20110114_AABDCB venkatraman_n_Page_39.tif
9412fe319ead9ea6eb367f2436d52f86
fe9b5dc713b449d558f81427867919524d8b5acd
45379 F20110114_AABDEZ venkatraman_n_Page_39.pro
471edc1f000a1653590544ee8b5444e2
9a826c4889c936190cd9fb4eb6f7d7b643ad69f9
23591 F20110114_AABDJX venkatraman_n_Page_04thm.jpg
a973aa36fcf4f041393b0bb3f07ff954
4963c8aa537a704f0cf2f5ae34948d9f50b03430
F20110114_AABDCC venkatraman_n_Page_41.tif
4e456c50262f4a564b8909bd2af1b51a
b972a21ad915249090010f4493fc09a18aa693e1
81098 F20110114_AABDOV venkatraman_n_Page_50.QC.jpg
c899d6edbe2c8f527a05b30944f744a3
620862c30251d0e109d2bdf1b75d671c62c7518d
2011 F20110114_AABDHA venkatraman_n_Page_15.txt
cc5d4942b4762f9c6cc4f1e722908bd9
e68e2e3898da8d74743f732840d186fdc3f7751d
54681 F20110114_AABDJY venkatraman_n_Page_04.QC.jpg
69aca7fb76d8e18d11e97bcd12c15791
a09a8aae0338b2da84a9ed27ad3eac4bbd3af0f6
F20110114_AABDCD venkatraman_n_Page_42.tif
3e72574acb8e635b19fee6d0eae54598
7495bcf164f6a7617e1f9ac3ca60bca92cb1fabf
872309 F20110114_AABDOW venkatraman_n_Page_50f.jp2
0065dc05e0b62d14edecc8086a848ca6
88fe35933d046a1d7d678e9b361c61458a270430
1956 F20110114_AABDHB venkatraman_n_Page_16.txt
e662a7777f9ce33b6253735bfa15089d
fd3260cb6897fa689a6d04956467fc4c06da9747
633309 F20110114_AABDJZ venkatraman_n_Page_04f.jp2
b02be0249cf985146564e0c1a924390a
5570d6021a346b0d8292b21595ea12e2c102a80f
F20110114_AABDCE venkatraman_n_Page_43.tif
ee8f30facff189b5db78b699a1633812
ac190515492a1d6967a91ef136968e0d9cc2675a
25012 F20110114_AABDOX venkatraman_n_Page_51thm.jpg
78da05038ffff711056a8ef46438c743
ec433333dbf73ed7e3cbbe3b4ab52cff9918cba3
1840 F20110114_AABDHC venkatraman_n_Page_17.txt
b6cc160ee8b1f60e16a629ed86cfac99
3b56a1f4a2b8298a341793be1c6d5096a6d97063
F20110114_AABDCF venkatraman_n_Page_45.tif
7fb5f2e501d2c1bad877fe6fb4d4424c
fe895502bb293b0659fd955fce8bcb2b6561afd1
61376 F20110114_AABDOY venkatraman_n_Page_51.QC.jpg
dc15d1e23d54d6da5466e34df2230f79
eb7cb8b836348483448cc8975750000363517683
28874 F20110114_AABDMA venkatraman_n_Page_24thm.jpg
e14cf9447a1c0f583c36fa62695f928c
7e9f56fdf179ed0871392be7bc2d393b45f6077d
931 F20110114_AABDHD venkatraman_n_Page_18.txt
763316eb9c2a11e3466db3f977a00d40
1a640c3ec0362c0561a6e82c229510546cee3657
F20110114_AABDCG venkatraman_n_Page_46.tif
6afe777354a6eeb3afb8a58d9763db8a
df767e9c21e4cf36a7d815e2d680660c79a4b76b
27721 F20110114_AABDOZ venkatraman_n_Page_52thm.jpg
5978859c980bc688ae4f382e2a401593
fb6480e42239f65dd15c777c697f78bc870993d8
79455 F20110114_AABDMB venkatraman_n_Page_24.QC.jpg
ce1958d6a090766b146c62845d065a39
1059edeb0d1a43923b7aeee97af91cbefd97e863
1599 F20110114_AABDHE venkatraman_n_Page_19.txt
65e9cd7e7715e1f20ea1815e57a32faf
02b6a812178aba0b41c5aa15248ac6eec7393c3a
F20110114_AABDCH venkatraman_n_Page_48.tif
e37d6926c5eeee49bf8f1eca879319fa
ab9db27416fab1fcf47580288ddfd519a971a5c0
931331 F20110114_AABDMC venkatraman_n_Page_24f.jp2
02f017683ad279eb4a3a0775302527b3
1226ec3928ed715f7991f7e1b235bcf342be8c40
2053 F20110114_AABDHF venkatraman_n_Page_20.txt
467137a92cd9abd78013733bc7ce0cef
e74a8dc0306c437c09142e7ced42cd0ec43c6af8
F20110114_AABDCI venkatraman_n_Page_49.tif
3123423735d65809e53683566f1b1717
6d7a58a64885714caff5a0810ffb83ee96ed070d
23346 F20110114_AABDRA venkatraman_n_Page_70thm.jpg
67e088ca2f0801de5829acfc3107915d
7f779320b7c8d9b8312500b0c0c7cf6bc53bdeed
31805 F20110114_AABDMD venkatraman_n_Page_25thm.jpg
655cab73eb2bb55a415649e1c0876d96
04dabefc4c9f78ceeea10c899a64c38584a56865
1844 F20110114_AABDHG venkatraman_n_Page_21.txt
bf10335179cb9ebefce78a3d0fd288ab
f7f755948131865c6132b17885c5c1cbc80e6757



PAGE 1

ON THE CONTROL OF ASYNCHRONOUS MACHINES WITH INFINITE CYCLES By NIRANJAN VENKATRAMAN A DISSERTATION PRESENTED TO THE GRADUATE SCHOOL OF THE UNIVERSITY OF FLOR IDA IN PARTIAL FULFILLMENT OF THE REQUIREMENTS FOR THE DEGREE OF DOCTOR OF PHILOSOPHY UNIVERSITY OF FLORIDA 2004

PAGE 2

Copyright 2004 by Niranjan Venkatraman

PAGE 3

To my parents, who always stood by me.

PAGE 4

ACKNOWLEDGMENTS First and foremost, I would like to acknowledge the unflagging support and excellent supervision of my advisor, Dr. Jacob Hammer, during my four years at the University of Florida. I thank Dr. Haniph Latchman, Dr. Tan Wong, and Dr. John Schueller for all their efforts and their advice, and for serving on my Ph.D. supervisory committee. I would like to especially thank Xiaojun Geng (my officemate for three years) for our animated and interesting discussions. I also extend special thanks to my current officemates (Jun Peng and Debraj Chakraborty) for making the last year interesting and full of fun. Special thanks are also due to my roommates (Raj, Nand and Arun) for putting up with my eccentric behavior for four years. I would also like to thank all my friends; their unceasing friendship and care has made this work possible. Last but not the least, I would like to thank my parents, my grandmother, my sister, her husband and my other relatives for their unfailing love and support during all the years that I have been away from them. iv

PAGE 5

TABLE OF CONTENTS page ACKNOWLEDGMENTS.................................................................................................iv LIST OF TABLES.............................................................................................................vi LIST OF FIGURES..........................................................................................................vii ABSTRACT.....................................................................................................................viii CHAPTER 1 INTRODUCTION........................................................................................................1 2 TERMINOLOGY AND BACKGROUND................................................................10 2.1 Asynchronous Machines and States.................................................................10 2.2 Modes of Operation..........................................................................................14 3 INFINITE CYCLES...................................................................................................20 3.1 Introduction.......................................................................................................20 3.2 Detection of Cycles...........................................................................................22 3.3 Stable State Representations for Machines with Cycles...................................29 3.4 Stable Reachability...........................................................................................32 3.5 Matrix of Stable Transitions and the Skeleton Matrix......................................34 3.6 Corrective Controllers......................................................................................39 4 THE MODEL MATCHING PROBLEM...................................................................46 5 EXAMPLE.................................................................................................................59 6 SUM MARY AND FUTURE WORK........................................................................65 LIST OF REFERENCES...................................................................................................68 BIOGRAPHICAL SKETCH.............................................................................................76 v

PAGE 6

LIST OF TABLES Table page 5-1. Transition table for the machine ...........................................................................59 5-2. Stable transition table for the generalized stable state machine |s..........................60 5-3. Matrix of one-step generalized stable transitions R(|s)...........................................60 5-4. Stable transition function of the given model .......................................................61 vi

PAGE 7

LIST OF FIGURES Figure page 1-1. Control configuration for the asynchronous sequential machine .............................3 vii

PAGE 8

Abstract of Dissertation Presented to the Graduate School of the University of Florida in Partial Fulfillment of the Requirements for the Degree of Doctor of Philosophy ON THE CONTROL OF ASYNCHRONOUS MACHINES WITH INFINITE CYCLES By Niranjan Venkatraman August 2004 Chair: Jacob Hammer Major Department: Electrical and Computer Engineering My study deals with the problem of eliminating the effects of infinite cycles on asynchronous sequential machines by using state feedback controllers. In addition to eliminating the effects of infinite cycles, the controllers also transform the machine to match the behavior of a prescribed model. My study addresses machines in which the state is provided as the output of the machine (input/state machines). Algorithms are provided for detecting infinite cycles in a given machine, for verifying the existence of controllers that eliminate the effects of infinite cycles, and for constructing the controllers whenever they exist. The feedback controllers developed in my study resolve the model matching problem for machines that are afflicted by infinite cycles. They transform the given machine into a machine whose input/output behavior is deterministic and conforms with the behavior of a prescribed model. Thus, the feedback control strategy overcomes the viii

PAGE 9

effects of infinite cycles as well as any other undesirable aspects of the machines behavior. Results include necessary and sufficient conditions for the existence of controllers, as well as algorithms for their construction whenever they exist. These conditions are presented in terms of a matrix inequality. The occurrence of infinite cycles produces undesirable behavior of afflicted asynchronous sequential machines. The occurrence of hazards has been a major problem since the early development of asynchronous sequential machines. There are many methods to design cycle-free machines; but the literature does not seem to contain any technique for eliminating the negative effects of infinite cycles in case it occurs in existing asynchronous sequential machines. ix

PAGE 10

CHAPTER 1 INTRODUCTION Asynchronous sequential machines are digital logic circuits that function without a governing clock. They are also described variously as clockless logic circuits, self-timing logic circuits, and asynchronous finite state machines (AFSMs). Asynchronous operation has long been an active area of research (e.g., Huffman 1954a, 1954b, 1957), because of its inherent advantages over commonly used synchronous machines. One of the more obvious advantages is the complete elimination of clock skew problems, because of the absence of clocks. This implies that skew in synchronization signals can be tolerated. The various components of the machine can also be constructed in a modular fashion, and reused, as there are no difficulties that are associated with synchronizing clocks. Further, the speed of the circuit is allowed to change dynamically to the maximal respond speed of the components. This leads to improved performance of the machine. Asynchronous machines are by nature adaptive to all variations, and only speed up or slow down as necessary (Cole and Zajicek (1990), Lavagno et al. (1991), Moon et al. (1991), Yu and Subrahmanyam (1992), Fisher and Wu (1993), Furber (1993), Nowick (1993), Nowick and Coates (1994), Hauck (1995)). Asynchronous machines also require lower power, because of the absence of clock buffers and clock drivers that are normally required to reduce clock skew. The switching activity within the machine is uncorrelated, leading to a distributed electromagnetic noise spectrum and a lower average peak value. Moreover, asynchronous operation is inherent in parallel computation systems (Nishimura (1990), Plateau and Atif (1991), Bruschi et al. (1994)). 1

PAGE 11

2 Asynchronous design is essential to ensure maximum efficiency in parallel computation (Cole and Zajicek (1990), Higham and Schenk (1992), Nishimura (1995)). Asynchronous machines are driven by changes of the input character, and are self-timed. In this context, it is vital to address design issues, especially those that can lead to potential inconsistencies in the pulses that propagate through the machine. These difficulties are referred to as hazards (Kohavi (1970), Unger (1995)). A cycle is one such potential hazard in the operation of asynchronous machines. It causes the machine to hang, as is demonstrated in software applications with coding defects that can cause the program to hang in an infinite loop. A critical race is another hazard that causes the machine to exhibit unpredictable behavior. These hazards can occur because of malfunctions, design flaws, or implementation flaws. The common procedure followed when a hazard occurs is to replace the machine with a new one, built with no defects. In our study, we propose to employ control techniques to devise methods that take a machine out of an infinite cycle and endow it with desirable behavior. Thus, we concentrate on the design of controllers that resolve infinite cycles and control the machine so as to achieve specified performance. To explain the mode of action of our controllers, a basic description of the structure of an asynchronous machine needs to be reviewed. An asynchronous machine has two types of states: stable states and unstable states. A stable state is one in which the machine may linger indefinitely, while an unstable state is just transitory, and the machine cannot linger at it. A cycle is a situation where the machine moves indefinitely from one unstable state to another, without encountering a stable state. Cycles can occur often in applications, brought about by errors in design, by errors in implementation, or

PAGE 12

3 by malfunctions of components, for example, errors in programming that lead to infinite cycles. The solution currently recommended in the literature for correcting an infinite cycle is to replace the affected machine by a new machine. The solution proposed in our study is, in many cases, more efficient. Moreover, it is the only practical solution in cases where the affected system is out of reach. The controllers we design are feedback controllers connected to the afflicted machine, as depicted in Figure 1-1. The controller is activated during a cycle. Whenever possible, the controller drives the machine out of the cycle, and leads it to a desirable state. We characterize all cycles from which there is an escape, and present an algorithm for the design of a controller that takes the machine out of any escapable cycle. uvyC c Figure 1-1. Control configuration for the asynchronous sequential machine Here, is the asynchronous machine being controlled, and C is another asynchronous machine that serves as a controller. We denote by c the closed loop system represented by Figure 1-1. The controller C eliminates the effects of the cycles of so that the closed loop system c matches a prescribed model (i.e., c = ). The goal is to provide necessary and sufficient conditions for the existence of such a controller C as well as an algorithm for its design. An important property of the controller C is that the closed loop system will function properly whether or not the

PAGE 13

4 cycle actually occurs. As a result, the controller C can be used to prevent the effects of cycles before they occur, improving the reliability of the system. It is important to note that during a cycle, the machine moves among unstable states in quick succession, without lingering in any of the cycle states. Consequently, it cannot be arranged for an input change to occur at a specific state of the cycle. Thus, the input changes enforced by the controller occur at random during the cycle, and it is not possible to predetermine the state of the cycle at which the controller acts. As a result, the outcome of the controller action is unpredictable in most cases. This could lead to a critical race condition being generated by the controller, which can then be rectified by known procedures (Murphy (1996); Murphy, Geng and Hammer (2002, 2003); Geng 2003; Geng and Hammer (2003, 2004a, 2004b)). When machine is an input state machine, i.e., the output of is the state of the controller C is called a state feedback controller. The existence of such a controller C that takes the system out of a cycle depends on certain reachability properties of the system. These reachability properties can be characterized in terms of a numerical matrix called the skeleton matrix of the system. The skeleton matrix is calculated from the various transitions of the machine. This skeleton matrix gives a methodology to derive the necessary and sufficient conditions for the existence of a corrective controller C. The function of the controller is two-fold: it eliminates the effects of the cycle on the machine and assigns to the closed loop a specified behavior. The controller C functions by forcing an input character change while the machine is in a cycle; this may induce a critical race. The outcome of this unpredictable behavior is then used by the controller to assign a proper transition, as required to match the operation of the model.

PAGE 14

5 In this way, the cycles of the machine are stopped, and the machine exhibits the desired external behavior. The model-matching problem described here is basically a continuation of the work of Hammer (1994, 1995, 1996a, 1996b); Murphy (1996); Murphy, Geng and Hammer (2002, 2003); Geng (2003); and Geng and Hammer (2003, 2004a, 2004b). There are a number of papers that relate to the model-matching problem for synchronous sequential machines (Dibinedetto et al. (1994, 1995a, 1995b, 2001), Barrett and Lafortune (1998)). The studies relating to synchronous machines do not take into consideration the differences between stable and unstable states, fundamental and semi-fundamental mode of operation (Chapter 2), and other issues that are vital to the operation of asynchronous machines. Our study seems to be the first one to explore control theoretic tools to eliminate the effects of infinite cycles on asynchronous machines. Eliminating the effects of infinite cycles is not the only situation in which model matching is beneficial (Dibenedetto et al. (2001)). For example, most large digital system are designed in a modular fashion, with a number of subsystems. An error in the behavior of the machine detected late in the design phase may make it more economical to use a controller instead of redesigning, or rebuilding, the entire machine. In other words, model matching offers a low-cost option to remedy design and construction errors (Fujita (1993)). Moreover, the controller can also be used to improve the reliability and performance of the system, by deploying it before a fault develops in the system. In this way, the controller can guard against potential malfunctions, while being "transparent" before a malfunction occurs. Thus, in machines where high reliability is vital, our study provides a new design option.

PAGE 15

6 The early work on automata theory was carried out by Turing (1936). Huffman (1954a, 1954b, 1957) investigated various aspects of the synthesis of asynchronous relay circuits. There is a well established technical literature relating to the subject of design of hazard-free machines (e.g., Liu (1963), Tracey (1966), Kohavi (1970), Maki and Tracey (1971)). This is achieved by appropriate state assignment techniques. Classical methods for hazard free state assignments (Huffman (1954a, 1954b)) are reviewed in most textbooks on digital circuit design (e.g., Kohavi (1970)). More recently, studies on the subject were done by Masuyama and Yoshida (1977), Sen (1985), Datta et al. (1988), Nowick and Dill (1991), Fisher and Wu (1993), Chu (1994), Lavagno et al. (1994), Nowick and Coates (1994), and Lin and Devadas (1995). Evading hazards using a locally generated clock pulse was introduced by Unger (1977), Nowick and Dill (1991), and Moore et al. (2000). A graph theoretic approach for state assignment of asynchronous machines was introduced by Datta, Bandopadhyay and Choudhury (1988). Of course, all the above studies discuss the hazard free design of asynchronous machines, and can be applied only before the machine is constructed; only Murphy (1986); Murphy, Geng and Hammer (2002, 2003); Geng 2003; and Geng and Hammer (2003, 2004a, 2004b) detail methods to overcome hazards in an existing asynchronous machine. Other early works on the synthesis of asynchronous machines were by Mealy (1955) and Moore (1956). These works investigated state and circuit equivalence, and provided methods for synthesizing asynchronous and synchronous sequential machines. Their models of sequential machines are most commonly used today. In the work done by Liu (1963), all internal transitions of a machine go directly from unstable states to terminal states; with no sequencing permitted though stable states. This method of

PAGE 16

7 hazard free assignment (called single transition time state variable assignment) uses assignments similar to an equidistant error-correcting code. This kind of assignment, which can be accomplished by mapping the rows of a flow table onto the vertices of a unit n-dimensional cube, is not guaranteed minimal, but it works effectively with incompletely specified flow tables. Tracey (1966) extended this work to techniques that maximize the speed of the machine. A method for sequencing (though unstable states are allowed before a stable state is reached when an input character is applied) was presented by Maki and Tracey (1971), using a technique called the shared row state assignment method. This method generally required fewer state variables than single transition time assignments. Other work on hazard-free state assignment techniques can be found in Hazeltine (1965); McCluskey (1965); Armstrong, Friedman and Menon (1968); Hlavicka (1970); Mago (1971); Chiang and Radhakrishnan (1990); Lavagno, Keutzer and Sangiovanni-Vincentelli (1991); Piguet (1991); Oikonomou (1992); Chu, Mani and Leung (1993); and Fisher and Wu (1993). Some other techniques for avoiding hazards were proposed by Yoeli and Rinon (1964) and Eichelberger (1965). They proposed ternary logic models to analyze certain aspects of the machines. Ternary algebra seems to provide an efficient method for detection and analysis of hazards in sequential circuits. These models were further worked on by Brzozowski and Seger (1987, 1989) and Brzozowski and Yoeli (1987). Another method of avoiding hazards was by generating a clock pulse from other signals in the machine (Bredeson and Hulina (1971), Whitaker and Maki (1992)). Most applications of asynchronous machines assume that the environment of operation is the fundamental mode (Unger (1969)); that is, an input change is applied

PAGE 17

8 only after the machine has reached stability. No input change is allowed when the machine transits through unstable states. Our study specifies conditions where fundamental mode is not applicable, leading to what is called semi-fundamental mode of operation (Chapter 2). Recent work in asynchronous sequential machines allows the simultaneous change of several input variables. This mode of operation is referred to as burst-mode (Davis et al. (1993a), Nowick (1993), Yun (1994), and Oliviera et al. (2000)). Deterministic behavior of the machine in this approach needs special restrictions to be imposed on the machine. Plenty of literature is available on the application of control theory to automata and asynchronous machines under discrete event systems. One such example that can be readily quoted is supervisory control (Ramadge and Wonham (1987, 1989)). This is based on formal language theory, and assumes that certain events in the system can be enabled or disabled. The control of the system is achieved by choosing control inputs such that the events are enabled or disabled. Literature on discrete event systems is extensive (Ozveren et al. (1991), Lin (1993), Koutsoukos et al. (2000), Alpan and Jafari (2002), Hubbard and Caines (2002), Park and Lim (2002)). Our study employs finite state machines models, which are more suitable to the investigation of engineering implementations than formal language theory (Dibenedetto et al. (2001)). Asynchronous machines are widely used in industry, as they result in economical digital systems. Some examples of industrial applications are the adaptive routing chip (Davis et al. (1993b)), a cache controller (Nowick et al. (1993)) and the infrared communications chip (Marshall et al. 1994).

PAGE 18

9 The organization of this dissertation is as follows. Terminology and background is provided in Chapter 2. A detailed analysis of infinite cycles, detection algorithms, and the existence conditions are detailed in Chapter 3. This chapter also introduced the concepts of generalized state machines, and the use of transition matrices and skeleton matrices in determining the existence of the controller. Chapter 4 gives a detailed solution to the model matching problem for asynchronous sequential machines with cycles, and an algorithm for the construction of the controller. Chapters 3 and 4 contain the necessary and sufficient conditions for the existence of a controller. An example is solved in Chapter 5, detailing the transition and output functions of the controller states, and finally, a conclusion and possible directions of further research are provided in Chapter 6.

PAGE 19

CHAPTER 2 TERMINOLOGY AND BACKGROUND 2.1 Asynchronous Machines and States Here, the background and notation is introduced and the basic theory of asynchronous sequential machines is described. An asynchronous machine is activated by a change of its input character; it generates a sequence of characters in response. To explain the mathematical theory, we introduce the notation and terminology involved in describing sequence of characters. An alphabet is a finite non-empty set A; the elements of this set are called characters. A word w over an alphabet A is a finite and ordered (possibly empty) string of characters from A. Let A be a finite non-empty alphabet, let A* denote the set of all strings of characters of A, including the empty string, and let A+ be the set of all non-empty strings in A*. The length |w| of a string w A* is the number of characters of w. For two strings w1, w2 A*, the concatenation is the string w := w1w2, obtained by appending w2 to the end of w1. A non empty word w1 in A* is a prefix of the word w2 if w2 = w1w; and w1 is a suffix of the word w2 if w2 = ww1, where w, w A*. A partial function f : S1S2 is a function whose domain is a subset of S1 (Eilenberg (1974)). We now introduce the concept of a sequential machine. A sequential machine provides a working mathematical model for a computing device with finite memory. It has the following characteristic properties: 10

PAGE 20

11 A finite set of inputs can be applied to the machine in a sequential order. There is a finite set of internal configuration that the machine can be in. These configuration are called states, and physically, these states correspond to the setting on the flip flop or the bit combinations in memory devices. The current internal configuration or state and the applied input character determine the next internal configuration or state that the machine achieves. For deterministic systems, the next state is unique. There is a finite set of input characters. There are two broad classes of sequential machines: asynchronous machines and synchronous machines. An asynchronous sequential machine responds to input changes instantaneously as they occur. On the other hand, a synchronous sequential machine is driven by a clock, and the values of input variables affect the machine only at clock "ticks". The current work concentrates on asynchronous sequential machines. These machine describe the structure of the fastest computing systems. An asynchronous machine is defined by the sextuple := (A,Y,X,x0,f,h), where A, Y, and X are nonempty sets, x0 is the initial state, and f : XA X and h : XA Y are partial functions. The set A is the set of input values, Y is the set of output values, and X is the set of states. The partial function f is the recursion function and h is the output function. The operation of the machine is described by the recursion xk+1 = f(xk, uk), yk = h(xk, uk), k = 0, 1, 2, (2-1) A valid pair (x,u) XA is a point at which the partial functions f and h are defined. We assume that the initial state x0 is provided with An input sequence is permissible when all pairs (xk, uk), k = 0, 1, 2, ... are valid pairs. The integer k acts as the step counter. An increment in the step counter takes place with every change of

PAGE 21

12 the input value or with a state transition. For consistency, we assume that the functions f and h have the same domain. It is clear from the above description that the recursion (2-1) represents a causal system. When the output function h only depends on the state and does not depend on the input, the machine induces a strictly causal system. If the functions f and h are functions rather than partial functions, the machine is said to be complete. A deterministic finite state machine is often referred to as the Mealy machine (Mealy (1955)). If the output function does not depend on the input variable, then the machine is referred to as the Moore machine (Moore (1956)). An asynchronous Mealy machine can be transformed into an equivalent Moore machine, and vice versa. A non-deterministic finite state machine = (A,Y,X,x0,f,h) has the following objects: A finite, non-empty set A of permissible input characters, termed as the input alphabet; A finite, non-empty set Y of permissible output characters, termed as the output alphabet; A finite, non-empty set X of states of the machine. Any number of the states can be designates as initial or terminal states; A non-deterministic partial transition function f : (X)A (X), where (X) denotes the set of all the subsets of X (i.e., the power set of X); A partial function h : XA Y, called the output function; and The initial state of the machine x0 X. The transition function f can generate sets of states as its values, i.e., f(x,a) = {x1, xk}, rather than just single values; here x1, xk X and a A. In contrast, the output function h takes only single values, i.e., there can be only one output character

PAGE 22

13 associated with each state. The class of deterministic finite state machines is a subclass of non-deterministic finite state machines. The operation of the machine can be described as follows. The machine starts from the initial state x0 and accepts input sequences of the form u := u0 u1 ... where u0, u1, A. In response to this set of applied input characters, it generates a sequence of states x0, x1, x2, X and a sequence of output values y0, y1, y2, ... Y, according to the recursion in Equation 2-1. Finally, the machine is an input/state machine when Y = X and the output is equal to the state at each step, that is, yk = xk, k = 0, 1, 2, (2-2) An input/state machine can be represented by the quadruple (A,X,x0,f), since the output is the state. Using the notion of the transition function f, we can define the partial function f*: XA+ X by setting f*(x,u) := f(f(f(f(x,u0),u1),u2),uk) for some state x X and an input string u = u0u1u2uk A+. Thus, f* provides the value of the last state in the path generated by the input string u. For simplicity of notation, we will use f for f*. Some basic terminology important to the study of asynchronous machines is now described. A valid pair (x,u) XA of the machine is called a stable combination if f(x,u) = x, i.e., if the state x is a fixed point of the function f. An asynchronous machine will linger at a stable combination until an input change occurs. A pair (x,v) that is not a stable combination is called a transient combination. A potentially stable state x is one for which there is a stable combination. Of course, states that are not potentially stable serve only as transition states; the machine cannot stop or linger in

PAGE 23

14 them, and they are not usable in applications. Due to this, it is common practice to ignore states that are not potentially stable; will adhere to this practice and not include such state in our state set. Consider the sequential machine of Equation 2-2. Let x be the state of the machine and u the input value. When a state-input pair (x,u) is not a stable combination, the machine will go through a chain of input/state transitions, starting from (x,u), which may or may not terminate. If the machine reaches a stable combination (x,u) with the same input value, then the chain of transitions terminates. It must be noted that the input value must remain constant throughout the entire transition; and the transition will end if and only if such a stable combination as (x,u) exists. In such a case, x is called the next stable state of x with input value u. When the next stable state is not uniquely determined, that is, the transition at some point has more than one value, we have a critical race. In case there is no next stable state for x with input value u, we obtain an infinite cycle. Critical races and infinite cycles are the types of hazards that can occur in an asynchronous machine. 2.2 Modes of Operation When the value of an input variable is changed while the asynchronous machine undergoes a chain of transitions, the response of the machine may become unpredictable, since the state of the machine at which the input change occurs in unpredictable. To avoid this potential uncertainty, asynchronous machines are usually operated in fundamental mode, where only one variable of the machine is allowed to change each time. In particular, in fundamental mode operation, a change in the input variable is allowed only while the machine is in a stable combination.

PAGE 24

15 One of the main topics of our present discussion relates to the control of an asynchronous machine in an infinite cycle. When a machine is in an infinite cycle, fundamental mode operation becomes impossible, since the machine will not reach a stable combination without a change of the input variable. Nevertheless, we will show later that, when taking the machine out of its infinite cycle, it is not necessary to forego fundamental mode operation for more than one step. When an asynchronous machine operates in fundamental mode in all but a finite number of steps, we say that it operates in semi-fundamental mode. The conditions and procedures for operation in semi-fundamental mode is described in Chapter 3. Consider a defect-free asynchronous machine = (A,X,x0,Y,f,h) operating in fundamental mode. Let the machine start at the state x0, and be driven by the input string w = v0v1vm. The machine now has transitions through the states x0,, xm, where xi+1 = f(xi,vi); i = 0,1,2,,m1, where the last pair (xm,vm) is a stable combination. Fundamental mode operation implies that vi = vi+1 whenever (xi,vi) is not a stable pair, i = 0,,m. The path is defined as the set of pairs P(,x0,w) = {(x0,v0), (x1,v1),,(xm,vm), (xm,vm)}. (2-3) When a cycle occurs, there is no final stable pair, and the path becomes infinite P(,x0,w) = {,(xi,vj), (xi+1,vj),,(xi+,vj), (xi,vj),}. As mentioned earlier, the step counter k advances one step during each state transition or input change. Of course, for fundamental mode operation, the input character remains constant during all transition chains.

PAGE 25

16 Consider the case where the input value of the machine is kept constant at the character v, while the machine goes through a string of state transitions. At each state transition, the step counter of the system advances by one. This results in the input value being represented as a repetitive string vvv... v, where each repetition corresponds to an advance of the step counter. It is convenient to represent all such repetitions of the input character by a single character, so that, for example, a string of the form w = v0v0v1v1v1v2v2 is represented by w = v0v1v2. Here, it is understood that each input value is repeated as many times as necessary. In the case of an infinite cycle, the input value is repeated indefinitely. Next, let be an asynchronous machine without hazards. Then, the notion of the next stable state leads to the notion of the stable transition function, which plays an important role in our discussion. As the machine has no hazards, every valid pair (x,u) of has a next stable state x. Define a partial function s : XA X by setting s(x,u) := x for every valid pair (x,u), where x is the next stable state of x with the input character u. The function s is called the stable transition function of the machine Note that the stable transition function describes the operation of the machine in the fundamental mode, i.e., under the requirement that the input value be changed only after the machine reaches a stable combination. This is a standard restriction in the operation of asynchronous machines, and it guarantees that the machine produces a deterministic response. The stable transition function can be used to describe the operation of an asynchronous machine in the following way. We know that the machine always starts from a stable combination (x0,u-1), at which the machine has been lingering for

PAGE 26

17 some time. Suppose now that an input string u := u0u1uk A+ is applied to the machine. Then, the machine moves through the a list of states x1, xk+1 of next stable states, where xi+1 = s(xi,ui), which implies that (xi+1,ui) is a stable combination for i = 0, 1, k. The input list u is permissible if (xi,ui) is a valid combination for i = 0, 1, k. Since the machine operates in the fundamental mode, the input character changes from ui to ui+1 only after the stable combination (xi+1,ui) has been reached. This guarantees that the state of the machine is well determined at the time when the input value changes. In general, when a machine does not have infinite cycles, the intermediate transitory states are ignored, as they occur very speedily and are not noticeable by a user. Thus, the operation of an asynchronous machine without infinite cycles, as observed by a user, is best described by the stable transition function s. However, when the machine has infinite cycles, it is not possible to ignore the transitory states involved in the cycle, as the machine lingers among these transitions indefinitely. In Chapter 3, we will introduce a generalized notion of the stable transition function which accommodates infinite cycles by considering them as another form of persistent states. Using the stable transition function s, we define the asynchronous sequential machine |s := (A,X,Y,x0,s,h), which is called the stable state machine induced by For an input/state machine, the stable state machine is given by the quadruple (A,X,x0,s). To deal with input strings, we can define a partial function s* : XA+ X by setting s*(x,u) = s(s(s(s(x,u0),u1),u2),uk), for some state x X and a permissible input string u = u0u1uk A+. The partial function s* provides the last state in the

PAGE 27

18 path generated by the input string u. As before, we shall abuse the notation somewhat by using s for s*. In the case where we do not have a Moore machine, we can define the partial function h* : XA+ Y in a similar fashion by setting h*(x,u) := h(s(s(s(x,u0),u1),u2),uk) for a state x X and a permissible input string u = u0u1uk A+, as was done for the stable transition function s defined earlier. The partial function h* gives the last output value generated by the input list u. It is necessary in some cases to compare different states of a sequential machine. Two states x and x of a machine are distinguishable if the following condition is valid: there is at least one finite input string which yields different output sequences when applied to starting from the initial states x or x. Two states x and x of the machine are equivalent when, for every possible input sequence, the same output sequence is produced regardless of whether the initial state is x or x. Qualitatively, two states are equivalent if we cannot distinguish them by the input/output behavior of the machine. If two states are equivalent, then so are all corresponding states included in any paths started from x and x. If a machine contains two equivalent distinct states, then one of the states is redundant, and it can be omitted from the mathematical model of the machine. A machine is minimal or reduced if it has no distinct states that are equivalent to each other. Consider two machines = (A,Y,X,f,h) and = (A,Y,X,f,h). Let x be a state of and let x be a state of The states x and x are equivalent if both have the same permissible input sequences, and if, for every permissible input sequence, the output sequence generated by from the initial state x is the same as the output

PAGE 28

19 sequence generated by from the initial state x. The two machines and are equivalent whenever there exists an equivalent state in for everystate in, and similarly, an equivalent state in for every state in A number of texts dwell on the various aspects of the theory of sequential machines and automata, including McCluskey (1965); Arbib (1969); Kalman, Falb and Arbib (1969); Kohavi (1970); Eilenberg (1974); and Evans (1988).

PAGE 29

CHAPTER 3 INFINITE CYCLES 3.1 Introduction An infinite cycle is caused when there is no next stable state for a valid pair (x,u) of a finite state asynchronous machine = (A,X,x0,Y,f,h). In such case, the machine will keep moving indefinitely from one transient combination to another. Only a finite number of states can be involved in these transitions, since is a finite state machine. An infinite cycle can then be characterized by listing these states and the corresponding input which causes the infinite cycle. Specifically, let the state set of be X = {x1, x2, ..., xn}. Consider a infinite cycle of that involves p states, say the states x k1 x k2 ..., x k X, and let a A be the input character causing the infinite cycle. The infinite cycle then functions according to the recursion x kj+1 = f(x kj a), j = 1, ..., and x k1 = f(x k a). (3-1) As a shorthand notation, we will use = {a;x k1 x k2 ..., x k }, where a is the input character of the infinite cycle, and x k1 x k2 ..., x k are its states. A state-input pair (x kj ,a), for some j = 1, is then said to be a pair of the cycle The length of the infinite cycle is defined as the number of distinct states it contains. It follows that a cycle of length has distinct input-state pairs. A brief examination of Equation 3-1 leads to the following conclusion: Let (x,a) be any pair of the infinite cycle Then, x 20

PAGE 30

21 is a state of if and only if there is an integer j such that x = fj(x,a). Then, the recursion can be followed for the entire length of the cycle. It is convenient to denote by {fj(x,a)}j=0 the set of all distinct states included in the set {x, f(x,a), f2(x,a), ...}. This leads us to the following lemma. Lemma 3-1 Let (x,a) be any pair of the infinite cycle Then, the state set of is {fj(x,a)}j=0. Lemma 3-1 gives a way of finding the states of a cycle. A machine can have several infinite cycles, and we demonstrate below an algorithm that finds all infinite cycles of a given machine. It is relevant to see that an infinite cycle of length 1 is nothing but a stable combination. To distinguish between infinite cycles and stable combinations, the length of an infinite cycle must at least be 2. According to the next statement, infinite cycles associated with the same input character must have disjoint state sets. Lemma 3-2 A valid input/state pair (x,a) of an asynchronous machine can be a member of at most one infinite cycle. Proof 3-2. Let 1 and 2 be two infinite cycles of the machine associated with the same input character a. If 1 and 2 contain the same pair (x,a), then, using Lemma 3-1, we conclude that 1 and 2 have the same state set. In other words, 1 = 2, and our proof concludes. The above Lemma 3-1 gives us an insight into the structure of the cycle. Since no state can be a member of more than one cycle, we can say that a pair of a cycle is unique to that cycle. We can now find a bound on the maximal number of infinite cycles a

PAGE 31

22 machine can have. Indeed, consider the set of all infinite cycles involving the input character a. In view of Lemma 3-2, all such infinite cycles have disjoint state sets. But then, the fact that a infinite cycle must contain at least 2 states, implies that there cannot be more than n/2 such infinite cycles, where n is the number of states of the machine. Finally, recalling that the machine has m input characters, we obtain the following. (Denote by [a] the largest integer not exceeding a.) Proposition 3-3 Let be a sequential machine with n states and an alphabet A consisting of m characters. Then, cannot have more than m[n/2] infinite cycles. For the sake of brevity, infinite cycles will be referred to as just cycles in the rest of the document. 3.2 Detection of Cycles In this section, a procedure to detect the cycles associated with a machine will be outlined. Consider an asynchronous machine = (A,X,x0,Y,f,h) with n states and an alphabet A of m input characters. Next all the cycles of the machine will be determined. To this end, an nn matrix M(f) is recursively constructed as follows. The (i,j) entry of M(f) is the set of all characters u A for which xi = f(xj,u). If there is no input character u A for which xi = f(xj,u), then the (i,j) entry of M is denoted where is a character not included in the alphabet set A. Thus, the matrix becomes Mi,j(f) := (3-2) i, j = 1, ..., n. Multiple entries in a cell are separated using a comma. We refer to M(f) as the one-step transition matrix of the machine iju A : x f(x,u), otherwise,

PAGE 32

23 We now define two matrix operations for one-step transition matrices. First, the sum of two nn one-step transition matrices A and B is defined element wise by (A B)ij := Aij Bij, i, j = 1, ..., n. (3-3) The sum operation is reminiscent of the numerical addition of matrices. The following operations on members of the set A is now defined. := u1 := u1 := u1u1 := u1u1u2 := := u1 := u1u1 u1 := u1 u2 := (3-4) Also, for any two sets, the operation of multiplication is defined by {a1, a2, ..., aq}.{b1, b2, ..., br} = {aibj}i=1, ...,q, j=1, ...,r This is similar to the classical definition of the scalar product of two vectors. Using these operations of multiplication, the definition of matrix combination is defined as follows. (AB)ij := k=1, ..., nAikBkj for all i, j = 1, ..., n. (3-5) Consider two functions g, h : XA X. The composition of g and h is defined by gh(x,u) := g(h(x,u),u). The composition of function is closely related to the combination of the corresponding one-step transition matrices, as indicated by the following. The next statement shows that the multiplication of two one-step transition

PAGE 33

24 matrices on two recursion functions is the transition matrix on the composition of the two functions. Lemma 3-4 Let g, h : XA X be two recursion functions with one step transition matrices M(g) and M(h), respectively. Then, M(g)M(h) = M(gh). Proof 3-4. Using Definition 3-4, we have M(g)M(h) = k=1..n Mi,k(g)Mk,j(h). (3-6) Now, each entry of M(g)M(h) is either a character of A or ; the definition of matrix composition implies that the following two statements are equivalent: (i) The (i,j) element of M(g)M(h) is u. (ii) There is a k {1, ..., n} for which Mi,k(g) = u and Mk,j(h) = u. When (ii) holds, we have xi = g(xk,u) and xk = h(xj,u), so that xi = g(h(xj,u),u) = gh(xj,u). Then, the (i,j) entry of M(gh) is u. Conversely, if the (i,j) entry of M(gh) is u, then xi = gh(xj,u), so that xi = g(h(xj,u),u). Now, the value h(xj,u) is, by definition, an element of X, say the element xk, k {1, ..., n}. Then, xk = h(xj,u) and xi = g(xk,u), which implies that (ii) is valid for this k. Thus, we have shown that (ii) is equivalent to (iii) Mi,j(gh) = u. Using the fact that (ii) is equivalent to (i), the Lemma follows. Thus, the product of two transition matrices with two different transition functions is the transition matrix of the composition of the two functions in the order of multiplication. Consider now the a machine with recursion function f. Let M(f) be

PAGE 34

25 its one-step transition matrix. Then, by Lemma 3-4, M(f)M(f) = M(f2), M(f2)M(f) = M(f3), and so on. This leads to the following corollary. Corollary 3-5 Let = (A,X,x0,Y,f,h) be an asynchronous machine. Then, for every integer p > 0, the one-step transition matrix satisfies Mp(f) = M(fp). Consider a machine = (A,X,x0,Y,f,h). As mentioned earlier, a stable combination (x,u) of can be considered as a cycle of length 1. This observation helps simplify the following statement, which forms an important tool in our process of finding all cycles of the machine Lemma 3-6 Let be an asynchronous machine with the recursion function f and the state set X = {x1, ..., xn}. Let xi X be a state and let u be an input character of Then, the following three statements are equivalent. (i) There is an integer 1 such that xi = f(xi,u) (ii) u appears on the (i,i) diagonal entry of the matrix M(f). (iii) (xi,u) is a pair of a cycle whose length is an integer divisor of Proof 3-6. First, we show that (i) implies (ii). Assume that (i) is valid, so that xi = f(xi,u) for some integer 1. Then, by Equation 3-2, the character u appears on the diagonal entry (i,i) of the matrix M(f). By Corollary 3-5, M(f) = M(f); this implies that u appears on the diagonal entry (i,i) of the transition matrix M(f). Next, we show that (ii) implies (iii). Let 1 be the smallest integer satisfying xi = f(xi,u). Then, Now, if = 1, then (xi,u) is a stable combination of and hence forms a cycle of length 1. Otherwise, (xi,u) is a pair of the cycle {xi, f(xi,u), ..., f(xi,u); u} of length

PAGE 35

26 Now, using the integer division algorithm, we can write = q + where q and are integers and 0 < If > 0, then, using the equality xi = f(xi,u), we can write xi = f(xi,u) = f(fq(xi,u),u) = f(xi,u), so that xi = f(xi,u). The latter contradicts the fact that was the smallest integer satisfying xi = f(xi,u), since 0 < < Thus, we must have = 0, and must be an integer divisor of Finally, we show that (iii) implies (i). Assume that (iii) is valid, i.e., that (xi,u) is a pair of a cycle whose length is a divisor of Then, there is an integer q such that = q. But then, f(xi,u) = fq(xi,u) = xi, and (i) is valid. This concludes the proof. Thus, by taking the powers of the one-step transition matrix M(f) and observing the diagonal matrix at each step, the states of the machine involved in cycles can be isolated. The next lemma indicates a method of identifying the elements of each cycle. Lemma 3-7 Let be an asynchronous machine with state set X = {x1, ..., xn} and recursion function f. Assume that has a cycle of length > 1 that includes the pair (xj0,u). Then, the other states xj 1 ..., xj of the cycle can be found from the matrix M(f) in the following way: for every integer i = 0, ..., the index ji+1 is given by the position of the entry u in the column ji of the matrix M(f). Proof 3-7. Consider a cycle of length > 1. Let {xj0, xj1, ..., xj} be the states involved in the cycle, and let u be the input character. We know f(xj0,u) = xj1. This implies that the input character u appears exactly in the position (j0, j1) of the matrix M(f). Thus, the value of j1 is given by the position of the character u in the row j0. Continuing recursively, assume that, for some 0 k < the indices j0, j1, ..., jk of the states xj0, xj1, ..., xjk of the cycle have been found. Then, since xjk+1 = f(xjk,u), the

PAGE 36

27 character u will appear exactly in position jk+1 of the row jk of the matrix M(f). This concludes our proof. Thus, the knowledge of the states involved in cycles of a particular length can be used to find the cycles specifically by applying Lemma 3-7. An algorithm that finds all the cycles of an asynchronous machine whose recursion function is f will now be outlined. Let #A denote the number of elements in the set A. Algorithm 3-8 Let = (A,X,x0,Y,f,h) be an asynchronous machine, and let M(f) be its transition matrix. Step 1: All entries on the main diagonal of M(f) represent stable combinations (i.e., cycles of length 1). For each input character u A, let 1(u) be the set of all states for which u is included in a diagonal entry of the matrix M(f); set 1(u) := 1(u). Step 2: For i 2, let i(u) be the set of all states for which u is included in a diagonal entry of the matrix Mi(f). Define the difference set i(u) := i(u) \ 1 j i1 j(u). (3-7) Stop the algorithm for the character u when i+1 > n ij=1 #j(u). The significance of Algorithm 3-8 is pointed out by the following statement. Proposition 3-9 Let i 1 be an integer. Then, in the notation of Algorithm 3-8, the following are true. (i) The set i(u) consists of all states of the machine that are members of cycles of length i with the input character u. (ii) The machine has exactly #i(u)/i cycles of length i.

PAGE 37

28 Suppose there are 2 states in (u). This means there are 2 cycles of length in the machine. Pick one state from (u); use Lemma 3-7 to find the other members of that cycle. Now, pick another state from the remaining states in (u), and using Lemma 3-7, the second cycle can be determined. This procedure is extended to any number of cycles of a certain length. Proof 3-9. Let X = {x1, ..., xn} be the state set of and let u A be a character of the input set. By Lemma 3-6, the following two statements are equivalent: (a) The matrix Mi(f) has an entry including u on its main diagonal, in a column that corresponds to the state xr of (b) The state xr is a member of a cycle whose length is i or an integer divisor of i. The case i = 1 is simple, since the elements on the main diagonal of M(f) represent the stable combinations of the system, and whence the cycles of length 1. For i > 1, assume that the algorithm has not stopped before i, i.e., that i n ij=1 #j(u). Then, a slight reflection shows that the construction Equation 3-7 of i(u) removes all states that are included in cycles of length less than i. Combining this with the equivalence of (a) and (b), it follows that xr i(u) if and only if xr is a member of a cycle of length i. Finally, consider the case where i+1 > n ij=1 #j(u), and (u) be the number of states of that are members of cycles of length i with the character u. From the definition of j(u), it follows that (u) = ij=1 #j(u). Thus, when i + 1 > n (u), there are not enough states left to form a cycle of length i + 1 with the character u; whence

PAGE 38

29 the machine has no cycles of length greater than i with the character u. This completes the proof of part (i) of the Proposition. Regarding part (ii) of the Proposition, note that the set i(u) consists of all states that form cycles of length i with the input character u. By Lemma 3-2, no two cycles can have common states. Consequently, the number of elements of i(u) is a multiple of i, and the number of cycles in i(u) is given by #i(u)/i. This concludes our proof. 3.3 Stable State Representations for Machines with Cycles In this section, a form of representation of only the next stable states and the extension of the definitions to the case of a machine with cycles will be explained. For an asynchronous machine = (A,X,Y,x0,f,h)without cycles, a valid pair (x,u) always has a next stable state x. Consequently, for such a machine, one can define a partial function s : XA X by setting s(x,u) = x for every valid pair (x,u). The function s is then called the stable recursion function of the machine When s is used as a recursion function, it induces the stable-state machine |s = (A,X,Y,x0,s,h). The stable state machine describes only persistent states of the machine, and ignores unstable transitions. This function describes the behavior of as experienced by a user, i.e., the transition of the machine to its next stable state is described. A reformulation of the finite state machine with cycles will now be explained, so that an equivalent stable state machine can be described from this reformulated machine. As mentioned earlier in Chapter 2, asynchronous machines are normally operated in fundamental mode. In specific terms, fundamental mode operation is as follows. Let be an asynchronous machine without cycles, resting in a stable combination (x,u0).

PAGE 39

30 Consider a string of input values u = u1uk A+ applied to the machine. When the input of switches to u1, the machine may engage in a string of transitions culminating in the next stable state s(x,u1). In fundamental mode operation, the input character u1 is kept fixed until the machine has reached its next stable state, to guaranty deterministic behavior. Then, once the machine reaches the stable combination (s(x,u1),u1), the input character is switched to u2, and the machine eventually settles on its next stable state s(s(x,u1),u2). This process continues until we reach the final input value uk. The last stable state reached in this process is given by x" := s((s(s(s(x,u0),u1),u2),uk). To simplify our notation, we shall write in brief x" := s(x,u). As mentioned earlier, the stable state machine describes persistent states of an asynchronous machine. For machines with cycles, a cycle describes a persistent state of the machine (i.e., the "state" of being in a cycle). Hence, when cycles are present, they must be represented in the stable state machine. Our next objective is to generalize the definition of the stable state machine, so it gives due representation to cycles, whenever they are present. Consider an asynchronous machine = (A,Y,X,x0,f,h) having t > 0 cycles 1, ..., t. To define a stable state machine |s that represents the persistent behavior of we first augment the state set X of by t new elements xn+1, ..., xn+t to obtain the augmented state set X := X {xn+1, ..., xn+t}. (3-8) Each one of the new states, called the cycle states, corresponds to one of the cycles of i.e., xn+i corresponds to the cycle i, i = 1, ..., t.

PAGE 40

31 Define the function s : XA X by setting s1(x,u) = (3-9) n+1is(x,u) if x X and (x,u) is a stable combination,x if (x,u) For a cycle = {x k1 x k2 ..., x kp ;a}, ki [1,,n], denote s1[,u] := {s1(x k1 ,u), s1(x k2 ,u), ..., s1(x kp ,u)}. (3-10) Now, the function s2 : XA X is defined by setting s2(x,u) := (3-11) 11is(x,u) if x X,s[,u] if x = x. n+i The generalized stable state machine |s of is then the input/state machine defined by quintuple (A,X,x0,s2). For the sake of notational convenience, we will omit the primes from s2 in the future, and write |s = (A,X,x0,s). The function s is called the generalized stable recursion function of A cycle associated with a cycle state x is said to be stoppable if there exists an input character u A such that at least one of the outcomes of s(x,u) X. In the present work, we assume that all the cycles are stoppable. It is necessary to make this assumption; if not, there will be no controller that can stop the cycle. Note that when there are no cycles, the generalized stable recursion function of is identical to the stable recursion function of Let c|s be the generalized stable state machine induced by the closed loop system c shown in Figure 1-1. The present work concentrates on finding the solution to the next statement; consequently, this statement is the main topic of our discussion.

PAGE 41

32 The Model Matching Problem 3-10 Let be a machine and let be a stable state machine with the same input and output alphabets as Find necessary and sufficient conditions for the existence of a controller C such that the generalized stable state machine c|s = When C exists, provide a method for its design. The controller C of Problem 3-10 assigns to closed loop system the stable state behavior of the specified machine Of particular interest to us here is the case where the machine has infinite cycles. In such case, the controller C of 3-10 eliminates the effect of infinite cycles on the closed loop system. The model matching problem for asynchronous machines with critical races, but not infinite cycles, was discussed in Murphy 1996, Murphy, Geng and Hammer 2002, 2003, Geng 2003In the following section, a solution for the model matching problem for the case where the controlled system has infinite cycles is derived, and in Chapter 5 the design of an appropriate controller is demonstrated by means of an example. 3.4 Stable Reachability The extension of the stable state machine to machines with cycles will now be described. This requires a reformulation of the machine. Consider an asynchronous machine represented by the sextuple (A,Y,X,x0,f,h), and assume that has t > 0 cycles 1, ..., t. Let |s = (A,X,x0,s), where X = X {xn+1, ..., xn+t}, and xn+i is the generalized state corresponding to the cycle i. We aim to define the notion of stable reachability for the machine so as to characterize the "stable" states can reach from a given initial condition, in response to various input strings. To this end, we need to define several notions. A generalized stable combination of the machine is either a

PAGE 42

33 stable combination of or a pair of the form (xn+i,u), where u is the input character of the cycle i. A state of |s is potentially stable if it is part of a generalized stable combination of When applying a control input to a machine that is in an cycle, it is not possible to operate in the fundamental mode. The input character must be changed while the cycle is in progress in order to attempt to interrupt the cycle. In other words, the input character is changed while the machine is not in a stable combination. Of course, if this change in input leads the machine to a stable combination, then fundamental mode operation can be resumed from there on. We arrive at the following notion, which describes the mode of operation that is closest to fundamental mode operation. Definition 3-11 A machine is said to operate in semi-fundamental mode if the machine operates in fundamental mode when it is not in an cycle. Recall that the states of the generalize stable-state machine |s are either potentially stable states of or cycle state that represent cycles. Thus, semi-fundamental mode operation of becomes fundamental mode operation of |s. Definition 3-12 Let be an asynchronous machine with generalized state set X and generalized stable recursion function s. A state x X is stably reachable from a state x X if there is a input string u = u0u1uk of for which x = s(x,u). The following assumption is essential in determining the controller operation. If an input character forms a valid combination with one outcome of a critical race, then it forms a valid combination with all other outcomes of the same race. This assumption can always be satisfied by extending the definition of the recursion function of the machine.

PAGE 43

34 It is necessary to assume this statement because we need the controller to be operational will all outcomes of the critical race that follows the cycle. 3.5 Matrix of Stable Transitions and the Skeleton Matrix Consider an asynchronous machine = (A,Y,X,x0,f,h) with the state set { x1, ..., xn}, and assume that has t > 0 cycles 1, ..., t. Let |s = (A,X,x0,s), where X = X {xn+1, ..., xn+t} and xn+i is the generalized state corresponding to the cycle i. Let sx(xj,xi) be the set of all characters u A such that xi s(xj,u). The matrix of one-step generalized stable transitions gives all the possible stable one-step transitions of the machine |s; it is an (n+t)(n+t) matrix R(|s), whose (i,j) entry is given by Rij(|s) = xjixjis(x,x) if s(x,x) ,N otherwise, (3-12) i, j = 1, ..., n+t. Recall that, if xj is a generalized state, then a critical race may occur when an input character u is applied at xj. This race is represented in the matrix R(|s) by the appearance of the character u in more than one row of column j. Note that Equation 3-12 is similar to Equation 3-2, except for the fact that R(|s) has some augmented states instead of cycles. We turn now to a description of some operations on the matrix R(|s). Let A* be the set of all words over the alphabet A. The operation of unison / is defined over the set A* N as follows. Let w1, w2 be either subsets of the set A* or the character N; then, set

PAGE 44

35 w1 / w2 := (3-13) 121211221212w w if w A* and w A*,w if w A* and w = N,w if w = N and w A*,N if w = w = N. Extending this definition to matrices, the unison C := A / B of two nn matrices A and B is defined by Cij := Aij / Bij, i, j = 1, ..., n, i.e., an element-wise operation as defined in Equation 3-13As usual, the concatenation of two words w1, w2 A* is given by w1w2, i.e., w1 followed by w2. For elements w1, w2 are elements of A* or the character N, the concatenation is defined as follows. conc(w1,w2) := (3-14) 121212ww if w, w A*,N if w = N or w = N. More generally, let W = {w1, w2, wq} and V = {v1, v2, vr} be two subsets, whose elements are either words of A* or the character N. Define conc(W,V):= / conc(wi,vj). (3-15) i=1,...,qj=1,...,r Note that the concatenation is either a subset of A*, or it is the character N. The concatenation is non-commutative, and N takes the place of a "zero". Let C and D to be two nn matrices whose entries are subsets of A* or the character N. Let Cij and Dij be the (i,j) entries of the corresponding matrices. Then, the product Z := CD is an nn matrix, whose (i,j) entry Zij is given by Zij := /nk=1conc(Cik,Dkj), i,j = 1, n. (3-16)

PAGE 45

36 Using this notation, we can define powers of the one-step transition matrix recursively, by setting R(|s) := R(|s)R(|s), = 2, 3, (3-17) The matrix R(|s) has the following physical significance. The (i,j) element of R(|s) is the set of all input strings that take xj to xi in exactly steps. Thus, R(|s) is called the matrix of -step stable transitions. This follows from Corollary 3-5, which states that the powers of the one-step transition matrix is equal to the transition matrix of the powers of the recursion function, i.e., the steps of the transition matrix. Define the matrix R()(|s) := / k=1... Rk(|s), v=2,3,...,(n+t). (3-18) By construction, the (i,j) entry of R()(|s) consists of all strings that can take the machine |s from the state xj to the state xi in or fewer steps. The following statement is important to our discussion; the proof is similar to that of Murphy, Geng and Hammer, 2003, Lemma 3-9. Lemma 3-13 The following two statements are equivalent: (i) There is an input string that can take the machine |s from the state xj to the state xi. (ii) The i,j entry R(n+t)ij(|s) N. Now, R(n+t)(|s) contains not only the stable transitions, but also the critical races that are cause when an input character is applied to a cycle state. To satisfy the model matching problem, we need a matrix for which the same input string does not lead to

PAGE 46

37 multiple outcomes. This is achieved by modifying the above matrix. This modified matrix is at the center of our discussion. Definition 3-14 Let be an asynchronous machine. The matrix of stable transitions T(|s) is constructed by performing the following operation on each column of the matrix R(n+t)(|s): remove all occurrences of strings that appear in more than one entry of the column; if empty entries result, replace them by the character N. To understand the significance of the matrix T(|s), it is instructive to compare it to the matrix R(n+t)(|s). A string u in the (i,j) entry of the matrix R(n+t)(|s) indicates, of course, that u takes |s from xj to xi. However, if the string u appears in another entry in column j of R(n+t)(|s), say in entry k, then the same string may also take |s from xj to xk; this indicates a critical race. The construction of the matrix T(|s) removes then all transitions that involve critical races. As a result, an input string u that is included in the (i,j) entry of T(|s) takes the machine |s from the state xj to the state xi, and to no other state. Definition 3-15 Let be an asynchronous machine with the generalized state set {x1, ... xn+t}. A generalized stable transition from a generalized state xj to a generalized state xi is a uniform transition when one of the following is true: (i) xi can be reached from xj without passing through a critical race, or (ii) there is a succession of critical races through which xi can be reached from xj for all possible race outcomes. Note that in case (ii) of Definition 3-15, the input string applied to the machine may depend on the outcomes of the critical races encountered by the machine along its way from the state xj to the state xi. Specifically, let x(k,p) be outcome k of race p along

PAGE 47

38 the way from xj to xi. The input string applied to the machine will then be a function of the outcomes u(x(k1,1,1), ..., x(k1,p1,p1)) The set a = 1,,ru(x(kr,1,1), ..., x(kr,pr,pr)) is (i,j) transition set, where r is the number of possible input strings taking into account all the critical races encountered in the path from xj to xi. This means that pr races are encountered in the path followed by the rth string, and x(kr,pr,pr) is the outcome kr,pr of the race pr. Further, By construction, the elements of T(|s) will contain sets of strings that satisfy the following proposition. Proposition 3-16 The (i,j) entry of T(|s) is different from N if and only if there is a uniform transition from xj to xi. Furthermore, if the (i,j) entry of T(|s) is not N, then it includes an (i,j) transition set. Thus, depending on the sequence of critical races that occur, the entries of T(|s) gives a set of strings that can be used for the control process. The skeleton matrix is now defined as follows matrix: Definition 3-17 Let T(|s) be the matrix of stable transitions of the generalized stable state machine |s. The skeleton matrix K() of is a matrix of zeros and ones, whose (i,j) entry is given by Kij() = (3-19) ij|s1 if T() N,0 otherwise i = 1,,n, j = 1,,n+t. The skeleton matrix K() has a simple interpretation. In view of Lemma 3-13, the following is true

PAGE 48

39 Proposition 3-18 Let K() be the skeleton matrix of a given machine Then, the (i,j) entry of K() is 1 if and only if there exists a string that takes the machine |s from the generalized state xj to the state xi and to no other state. The skeleton matrix plays a critical role in our discussion, reminiscent of the role it played in Murphy, Geng and Hammer 2002, 20033.6 Corrective Controllers The basic considerations in the construction of a corrective controller and its limitations for asynchronous input/state machines will now be outlined. Let be an asynchronous machine, being controlled in the configuration Figure 1-1 with the controller C. Recall that c denotes the closed loop machine of Figure 1-1; let c|s be the stable state machine induced by c. Now, let = (A,X,x0,s) be a stable state input/state machine, with the same input set and the same state set as the machine Referring to the configuration Figure 1-1 and the Model Matching Problem 3-10, we are investigating the existence of a controller C for which c|s = Consider the input/state machine = (A,X,X,f,h) and the controller C = (AX,A,,,). Let the generalized stable state machine associated with be |s. As shown below, the controller C will operate in the semi-fundamental mode: when the controlled machine moves toward a stable combination, the controller C will operate in fundamental mode it will keep its output value constant until has reached its next stable combination; however, if moves into an infinite cycle, the controller has no choice but to change its output value while is cycling otherwise, will remain in the cycle forever. In this case, the controller operates in the semi-fundamental mode.

PAGE 49

40 Recalling that has the state set X and that C has the state set it follows that the composite machine c of Figure 1-1 has the state set X. We can then represent c by the quintuple (A,X,X,fc,hc), where fc is the recursion function of c and hc is its output function. Being an input/state system, the machine has the output function h(x,u) = x. As the output of c is the same as the output of it follows that hc(x,,v) = x. Formally, let x : XX : x(x,) x be the standard projection. Then, we have hc = x. Now, let be the recursion function of c|s. We know that the output of c|s is the state of So, if c|s = then, for every valid pair (x,v) of there is a state for which (x,,v) is a valid pair of c|s. This leads to the conclusion hc(x,,v) = s(x,v), (3-20) and, using the equality hc = x, we obtain x(x,,v) = s(x,v). Note that, if s is not constant over one of the cycles, then the response of the closed loop machine will depend on the state of the cycle at which the input character is applied, creating a critical race. In other words, in order for the response of the closed loop system to be deterministic, the stable recursion function of the model must be constant over each cycle of the controlled machine To state this fact formally, consider a cycle = {x k1 x k2 ..., x kp ;a}, ki [1,,n], of the machine Let s{} := {s(x k1 ,a), ..., s(x kp ,a)}, i.e., the set of values of s over the cycle. We say that s is constant over the cycle if all members of the set s{} are identical.

PAGE 50

41 Proposition 3-19 Let and be two machines, where is a stable state machine. Assume that there is a controller C such that c|s = If the closed loop machine c|s has a race free response, then the recursion function s of the model is constant over every cycle of We are now ready to state one of the main results of our discussion. The following theorem deals with the fundamental conditions for the existence of a model matching controller (compare to Murphy, Geng and Hammer 2002, 2003, Theorem 4.3). Before stating the theorem, we need some notation. For a cycle state z X, let (z) = {a; x k1 x k2 ..., x kp }, ki [1,,n], be the corresponding cycle, and let x(z) := {x k1 x k2 ..., x kp } be the states of the cycle. Define (z) = (3-21) xz if z is a regular state,(z) if z is a cycle state. Note that (z) is always a set of regular states, not cycle states. Theorem 3-20 (Existence of Controller) Let |s = (A,X,x0,s) be the generalized stable state machine induced by an input/state machine = (A,X,x0,f). Let z1, ..., zk be generalized states of |s and let U1, ..., Uk be sets of input characters such that z1U1, z2U2, zkUk are distinct sets of valid pairs of |s. For each i = 1, ..., k,let zi be a state of that is stably reachable from the generalized state zi. Then, there exists a controller C for which c|s is equivalent to a stable state machine = (A,X,x0,s), whose recursion function s satisfies (i) s[zi),Ui] = zi for all i = 1,,k, and (ii) s(x,t) = s(x,t) for all (x,t) XA / i=1,,k ziUi.

PAGE 51

42 Moreover, the closed loop system c is well posed, and it operates in the semi-fundamental mode. Proof 3-20. By Proposition 3-19, the recursion function of the model is constant over all cycles of the machine Thus, since zi is stably reachable from the generalized state zi, there exists a string wi A+ such that s(zi,wi) = zi, where s is the stable recursion function of Let m(i) be the length of wi; write wi = v0iv1ivm(i)i, where v0i, v1i, vm(i)i are individual characters of the input alphabet A and i = 1, k. With this input string wi, the recursion function s generates a string of generalized states, which we denote by xi,1 := s(zi,v0i), xi,2 := s(xi,1,v1i), xi,m(i) := s(xi,m(i),vm(i)i), zi := s(xi,m(i),vm(i)i), i = 1, k. (3-22) Let U(zi) A be the set of all input characters that form stable combinations with the generalized state zi, i = 1, k. Define the following sets: S := i=1, k ziU(zi), V := i=1, k ziUi, (3-23) where Ui are the input character sets given in the statement of the Theorem. Then, a controller C = (AX,A,,,) that satisfies the requirements of Theorem 3-20 can be constructed as follows. (i) The state set of C has 2 + ki=1m(i) states given by

PAGE 52

43 = {0, 1, 11,, m(1)1, 12,, m(2)2,, 1k, m(k)k}. (3-24) The significance of these states is explained below. (ii) The initial state of the controller C is 0. The controller moves to the state 1 upon the detection of a stable combination with one of the generalized states z1,, zk X. Note that, for cycle states, this transition occurs during the cycle, and is therefore a semi-fundamental mode transition. For states that are not cycle states, this transition is in fundamental mode. To implement these transitions, the recursion function of C is defined by (0,(z,t)) := 0 for all (z,t) XA \ S, (0,(x,u)) := 1 for all (x,u) S. (3-25) The state 0 indicates that the machine is not in a state in which its response must be changed, and hence, when in the state 0, the controller does not interfere with the operation of ; it simply applies to its own external input. To this end, the output function of C at the state 0 is defined by (0,(z,t)) := t for all (z,t) XA. (3-26) The output function at the state 1 is defined as follows. Choose a character ui U(zi); set (1,(zi,t)) := ui for all t A, i = 1, k. (3-27) Then, the machine continues to rest at the generalized state zi. (iii) Next, assume that is in a stable combination with the generalized state zi, i = 1, k, and an input value u Ui is applied. Then, the controller C will begin to

PAGE 53

44 apply the string wi to to take to the state zi. To this end, the recursion function of C is defined as follows. (1,(zi,u)) := 1i for all u Ui, i = 1, k; (1,(z,t)) := 0 for all pairs (z,t) XA\V. (3-28) Upon reaching the state 1i, the controller generates the first character of the input string wi of to start taking to the desired state zi. Accordingly, the controllers output function value at this point is (1i,(z,t)) = v0i for all (z,t) XA, i = 1, k. (3-29) Upon application of this input character, the machine will move to its next generalized stable state xi,1, where (xi,1, v0i) is the next generalized stable combination. (iv) In order for the controller to continue to generate the string wi as input for we define its recursion function as follows. (ji,(xi,j,u)) := j+1i for all u Ui, (3-30) j = 1,,m(i), i = 1, k. Now, the controller feeds to the next character in the string wi, i.e., the character vji. So the output function must satisfy (j+1i,(z,u)) := vji for all (z,u) XA, (3-31) i = 1,,k, j = 1, 2, m(i). (v) At the step j = m(i)1, the controller completes generating the string wi. It assumes then a stable combination, and continues to feed the input character vm(i)i until its external input character is changed. To implement these requirements, the transition and output functions of the controller are defined by

PAGE 54

45 (m(i)i,(zi,u)) := m(i)i for all u Ui (m(i)i,(z,t)) := 0 for all (z,t) XA\ ziUi, (m(i)i,(z,u)) := vm(i)i. (3-32) i = 1,,k. Note that, since the state-input sets {ziUi}ki=1 are all disjoint, there is no ambiguity in the definition of the recursion function From the above construction, the stable recursion function of the closed loop system c can be deduced. On analysis, this recursion function satisfies, for all i = 1,,k: (zi,0,u) = (s(zi,u),1) for all u U(zi), (z,0,t) = (s(z,t),0) for all (z,t) XA\(SV), (zi,1,ui) = (zi,m(i)i) for all ui Ui, (zi,1,u) = (zi,1) for all u U(zi), (zi,1,t) = (zi,0) for all t A\(U(zi) Ui), (zi,m(i)i,u) = (zi,m(i)i) for all u Ui, (z,m(i)i,t) = (s(z,t),0) for all (z,t) XA\ziUi, (3-33) i = 1,,k. Thus, the equivalence of x and s as defined in the beginning of this section holds true. Also, the closed loop system operates in the semi-fundamental mode as the definitions of and specify. We know is an input-state system, hence it is strictly causal; consequently the closed loop system c is well posed (Hammer 1996). This concludes the proof. Chapter 4 deals with the specific solution to the model matching problem for this problem. The necessary and sufficient conditions for the existence of the controller, using the skeleton matrices are put forward, and if the controller exists, an algorithm to construct the states is also given.

PAGE 55

46 CHAPTER 4 THE MODEL MATCHING PROBLEM In this section we present a solution to the model matching problems for machines with infinite cycles. The solution to the model matching problem for deterministic systems and for machines with races was presented in Murphy, Geng and Hammer, (2002, 2003). Let be an asynchronous machine with all cycles stoppable, and let be the stable-state model to be matched. The skeleton matrix K0() of the model is given as in Definition 3-17. For the solution to the model matching problem, a form of the skeleton matrix with columns augmented to include the solution to cycles is introduced; this is the augmented skeleton matrix K(). The matrix K() is an n(n+t) matrix of zeros and ones. It is obtained by augmenting the matrix K0() with t columns corresponding to the cycle states, as follows. Let z be a cycle state, and let x(z) be the states of the cycle. Then, Kij() = (4-1) 0ij0kjijxK(), i,j = 1,...,n,1 if K() = 1 for all x (x), i = 1,...,n, j = n+1,...,n+t,0 otherwise. In view of Proposition 3-19, the model can be matched only if its stable transition function is constant over the states of each cycle of Assume then that satisfies this requirement. In such case, it follows by Equation 4-1 that the entries of the column corresponding to xk, k = n+1,,n+t in K() are all 1. The solution to the model matching problem for a machine with infinite cycles can now be stated as follows.

PAGE 56

47 Theorem 4-1 Let be an asynchronous machine all of whose cycles are stoppable, and let |s = (A,X,x0,s) be the generalized stable state machine induced by Let = (A,X,x0,s) be a stable-state input/state machine with the same state set X and the same input set A as those of Let K() be the skeleton matrix of and let K() be the skeleton matrix of Then, the two following statements are equivalent. (i) There is a controller C for which the closed loop system c|s is equivalent to where c|s operates in the semi-fundamental mode and is well posed. (ii) The skeleton matrices satisfy K() K(). Theorem 4-1 provides a simple necessary and sufficient condition for the existence of a solution to the model matching problem for systems with infinite cycles. The proof of the Theorem, which is provided later in this section, includes an algorithm for the construction of an appropriate controller C. When the model matching problem is solvable, the controller C operates by transforming into unstable combinations all generalized stable combinations of that do not correspond to stable combinations of the model In this way, the stable state machine c|s induced by the closed loop system becomes stably equivalent to The skeleton matrix of the given machine K() is never fully zeros, since each state is potentially stable. Thus, there always exists a stable state machine with skeleton matrix equal to K(). When considered as a model, the machine satisfies condition (ii) of Theorem 4-1. Consequently, there is a controller C for which c|s = and this controller eliminates the effects of the infinite cycles of Thus, feedback

PAGE 57

48 controller can turn every machine with stoppable cycles into a deterministic stable state machine. We turn now to a preliminary technical discussion that will lead us to the proof of Theorem 4-1. Let s be the stable recursion function of the generalized stable state machine |s of and let s be the stable recursion function of the model with the co-domain of s extended to X. Build the discrepancy set of as D(,) := {(x,u) XA : (x,u) is a valid pair of and s(x,u) s(x,u)}. (4-2) In intuitive terms, D(,) is the set of all valid pairs of for which the next stable state of is different from the next generalized state of |s. Now, since K() K(), for each (x,u) D(,), there exists an input string w A+ for which s(x,w) = s(x,u); let S(x,u) A+ (4-3) be the set of all input strings w satisfying s(x,w) = s(x,u). Next, consider a pair (x,u) D(,) and an input string w S(x,u). Let P(,x,w) be the corresponding path of and let () := {(z,r) : (z,r) XA, (z,r) i, i = 1,,t} (4-4) be the set of all state-input pairs involved in cycles. Define the set DN(,) := {(x,u) D(,) : there is a string w S(x,u) such that P(,x,w) () = }. (4-5) For elements (x,u) DN(,), the machine can reach the value s(x,u) without passing through a cycle. Here, the controller will simply feed to the string w,

PAGE 58

49 so that the next stable state of the combination c will match the next stable state of the model Finally, on the difference set DC(,) := D(,)\DN(,), (4-6) the machine cannot match the response of without passing through a cycle. In this case, the controller will have to generate an input string for that will initially drive the machine into a cycle, and then take it out of the cycle. When comes out of the cycle, its next state may be one of several possible states, as exit from a cycle may give rise to a critical race. The controller will then have to resolve the indeterminancy of the race and drive the machine to the next stable state determined by the model The exact process by which this is accomplished is described in the following proof. Proof 4-1. Assume first that condition (i) of Theorem 4-1 is valid, i.e., that there exists a controller C such that c|s = Let sc be the stable recursion function of c, and recall that s is the stable recursion function of the model The last equality implies that sc(x,u) = s(x,u) for all pairs (x,u) XA. Now, since the controller C accesses only through its input, there is a string w(x,u) A+ such that sc(x,u) = s(x,w(x,u)) where s is the stable recursion function of Consequently, s(x,w(x,u)) = s(x,u), and the state s(x,u) is stably reachable from the state x in the machine Thus, any state that is stably reachable from the state x in the machine must also be stably reachable from the state x in the machine In other words, K() K(), and we conclude that part (i) implies part (ii).

PAGE 59

50 Conversely, assume that (ii) is true, i.e., that K() K(). We construct below a controller C that satisfies statement (i) of Theorem 4-1. Recalling the set D(,) of Equation 4-2, note that if D(,) = then the stable transition function of matches that of and no controller is needed. Next, consider the case D(,) Define the set D by replacing in D(,) all the pairs included in cycles by the corresponding generalized pairs, that is, DC := {DC(,) \ ()} {(xn+i,u) : i D(,) } (4-7) The set of all input characters that pair with a state x in D is given by D(x) := {u A: (x,u) D}. (4-8) Let x : XA X : (x,u) x be the standard projection. Then, xD is the set of all generalized states x X for which there is an input character u A such that (x,u) D. Also, let U(x) be the set of all input characters that form a stable combination with the generalized state x X. The set V := {x U(x): x xD} (4-9) is then the set of all generalized stable combinations with states in xD. Suppose that DN(,) Then, for each (x,u) DN(,), there exists an input string w0(x,u) such that s(x,w0(x,u)) = s(x,u) and the path P(,x,w) does not contain any cycle states. Let m(0;x,u) = |w0(x,u)| be the length of this string, write it in terms of its characters as w0(x,u) = w00(x,u)w01(x,u) w0m(x,u)(x,u). Then, w0(x,u) takes the machine through a succession of stable states, which we denote as follows. x0,1(x,u) := s(x,w00(x,u)),

PAGE 60

51 x0,2(x,u) := s(x0,1(x,u),w01(x,u)), x0,m(x,u)(x,u) := s(x0,m(x,u)(x,u),w0m(x,u)(x,u)), and, by selection of the string w0(x,u), s(x0,m(x,u)(x,u),w0m(x,u)(x,u)) = s(x,u). (4-10) Thus, to guarantee fundamental mode operation, we see that the controller must have m(0;x,u) states associated with the pair (x,u). Now, let (z1,u1), ..., (zn(N),un(N)) be the elements of DN(,). Then, for each pair (zi,ui) DN(,), the controller needs m(0;zi,ui) states to facilitate fundamental mode operation, say the states 1(zi,ui), m(0;zi,ui) (zi,ui). This leads to the set of controller states N := {1(z1,u1), m(0;z1,u1) (z1,u1), 1(zn(N),un(N)), m(0;zn(N),un(N)) (zn(N),un(N))}. (4-11) In case DN(,) = set N := We turn now to the set DC of Equation 4-7, assuming that it is not empty. Let n(C) be the number of elements of DC. Recall that, for each pair of DC, the machine must pass through at least one cycle in the process of matching the response of the model ; one of these cycles may be the initial step. Consider a pair (x,u) DC, let T(|s) be the matrix of stable transitions of Recall that the state set of is X = {x1, ..., xn} and the generalized state set of is X = {x1, ..., xn+t}. In the case x is a cycle state, say x = x, where {n+1, ..., n+t}, let (x) := {x(1), ...,x(p)} X. Setting x := s(x(1),u) X, it follows by Proposition 3-19 that s(x(i),u) = x for all i = 1, ..., p. The fact that x := s(x(i),u) implies that K(i)() = 1, i = 1, ..., p. By Equation 4-1, we then have that K() = 1. The

PAGE 61

52 inequality K() K() implies then that the entry T(|s) is not empty. Furthermore, letting w(x,u) be an element of T(|s), it follows by Proposition 3-18 that s(x,u) = s(x,w(x,u)). Consider now the path P(|s,x,w(x,u)). Recalling that (x,u) DC, the following hold. If x is not a cycle state, then the path P(|s,x,w(x,u)) must include a cycle. If x is a cycle state, then P(|s,x,w(x,u)) may or may not include an additional cycle. The string w(x,u) takes the machine through one possible outcome of each cycle encountered along the path P(|s,x,w(x,u)). Depending on the outcome of the critical races that occur as the machine passes through the cycles along the path P(|s,x,w(x,u)), different strings may need to be used to take the machine to the state s(x,u). Let w0(x,u) be the initial segment of the string w(x,u) that takes the machine to the state following the first cycle state along the path P(|s,x,v(x,u)). By construction, the shortest length of w0(x,u) is one character, and it is obtained when the state x is itself a cycle state. The controller C initially feeds this string to the machine character by character, to achieve semi-fundamental mode operation. The last character of w0(x,u) leads into a critical race, as it exits from the corresponding cycle. The inequality K() K() implies that there is an input string that leads from each outcome of this race to the next cycle along its way to the state s(x,u). This string will then similarly be generated by the controller and applied to the machine This process continues through each cycle encountered along the way, and is formally described next. Writing the initial substring in terms of its individual characters, set w0(x,u) = w00(x,u)w01(x,u) w0m(0;x,u)(x,u); here, m(0;x,u) = |w0(x,u)| is the length of the string.

PAGE 62

53 This string take the machine through the following sequence of generalized stable states. x0,1(x,u) := s(x,w00(x,u)), x0,2(x,u) := s(x0,1(x,u),w01(x,u)), x0,m(0;x,u)(x,u) := s(x0,m(0;x,u)(x,u),w0m(0;x,u)(x,u)), X(1)(x,u) := s(x0,m(0;x,u)1(x,u),w0m(0;x,u)(x,u)), (4-12) where X(1)(x,u) = {x(1,1), x(1,r1)} X is the set of all states of that form possible outcomes of the critical race. Since the string w0(x,u) takes up to one step past a cycle state to the outcome of the corresponding critical race, it follows that x0,m(0;x,u)(x,u) is a cycle state. Note that if the initial state x is a cycle state, then m(0;x,u) = 1, namely, the substring w0(x,u) has just a single character. The next substring of characters in w(x,u) takes the machine from the present outcome of the cycle to the outcome of the next cycle (or to the final destination, if no other cycle is encountered). Denote this substring by w1(x,u,x(1,i1)). It takes the machine from the state x(1,i1) to the outcome of the next cycle; the process is similar to the process described in Equation 4-12, and w1(x,u,x(1,i1)) has at least one character. If a cycle leading to a critical race is reached at the end of the substring w1(x,u,x(1,i1)), then, letting r2(i1) be the number of its outcomes, we denote the set of outcomes by X(2,i1)(x,u) and let its members be {x(2,i1,1), x(2,i1,r2(i1))} X. Let m(1;x,u,x(1,i1)) = |w1(x,u,x(1,i1))| be the length of the string, and let w10(x,u,x(1,i1)), w11(x,u,x(1,i1)), w1m(1;x,u,x(1,i1))(x,u,x(1,i1)) be its characters. The next such substring depends on the outcome of both the races encountered, and is given by w2(x,u,x(2, i1 i2 )). The number of cycles encountered may vary, depending on

PAGE 63

54 the outcome of the critical races through which the machine has passed. Let q be the number of cycles encountered along our path to the target s(x,u). The outcomes of the q critical races caused by the cycles are then denoted by x(1, i1 ), x(2, i1 i2 ), x(q, i1 ,, iq ). In order to simplify the notation, define x(k,i(k)) = x(k,i1, ik), for some k. The string of input characters that takes the machine from (x,u) to s(x,u) consists then of the following segments w(x,u) := w0(x,u) w1(x,u,x(1,i(1))) wq(x,u,x(q,i(q)), (4-13) where each one of the segments takes the machine from the outcome of one cycle to the outcome of the next cycle along the path. The length of the segment wj(x,u,x(j,i(j))) is m(j;x,u,x(j,i(j))) 1. Each segment can then be written in terms of its individual characters in the form wj(x,u,x(j,i(
PAGE 64

55 mode operation, the controller must generate the string segments w0(x,u), ..., wq(x,u,x(q,i(
PAGE 65

56 the controller states 00(x,u), 0m(0;x,u)(x,u), and the controller's recursion function is defined as follows. (1,(x,u)) := 00(x,u), for (x,u) D, (1,(x,t)) := 1, for all t U(x)\D(x), (0j(x,u),(x0,j(x,u),u)) := 0j+1(x,u), (0j(x,u),(z,t)) := 0j(x,u), for all (z,t) XA, (4-18) where 0 j m(0;x,u). We can now generate the first m(0;x,u) characters of the substring w0(x,u) by defining the controller output function as follows. (0j(x,u),(z,t)) := w0j(x,u), for all (z,t) XA, (4-19) where 0 j m(0;x,u). The final character of w0(x,u) is applied while the machine is in the cycle state x0,m(0;x,u)(x,u), and creates a critical race with the outcome x(1,i1), as discussed earlier. Recall that w(x,u) passes through q cycles. The controller continues to generate all the substrings wj(x,u,x(j,i(j))), j = 1, q consecutively. Let the controller states associated with the substring wj(x,u,x(j,i(j))) be j0(x,u), jm(j;x,u,x(j,i(j)))(x,u). The transition function is then given by (jh(x,u),(xj,h(x,u),u)) := jh+1(x,u), (jh(x,u),(z,t)) := jh(x,u), for all (z,t) (xj,h(x,u),u), (4-20) where h = 0, m(j;x,u,x(j,i(j))), and j = 1, q. The corresponding output values are generated by the controller's output function as follows. (jh(x,u),(z,t)) := wjh(x,u,x(j,i(j))), (z,t) XA, (4-21) where h = 0, m(j;x,u,x(j,i(j))), and j = 1, q.

PAGE 66

57 The transition from the end of one substring to the first character of the next substring of w(x,u) is accomplished by defining the controller's transition function as follows. (jm(j;x,u,x(j,i(j)))(x,u),(xj,h(x,u),u)) := j+10(x,u), (4-22) j = 0, q. At the end of the string w(x,u), the machine reaches the state s(x,u), required for matching the model The last character of w(x,u) is, of course, the last character of wq(x,u,x(q,i(q))). After this character is applied, the machine must remain in a stable combination with the state s(x,u) until the external input changes. To implement this requirement, the transition function of the controller is defined by (qm(q;x,u,x(q,i(q)))(x,u),(z,t)) := 1, (z,t) (s(x,u),u). (4-23) This completes the operation of the controller for the transition from x to s(x,u). Summarizing, the set of all controller states associated with the generation of the string w(x,u) is given by C(w(x,u)) = {00(x,u), 0m(0;x,u)(x,u), q0(x,u), qm(q;x,u,x(q,i(q)))(x,u)}. (4-24) Note when (x,u) DN(,), then q is taken as zero in the above construction, and w(x,u) consists of only one substring which completes the required transition. To complete the implementation of the controller C, the above construction has to be applied to each input pair (x,u) DC. To describe the state set of the controller, let the elements of DC be given by {(z1,u1), (zn(C),un(C))} and let w(zk,uk) be the string that takes from (xk,uk) to the state s(xk,uk) required to match the model for a

PAGE 67

58 specific sequence of cycle outcomes. Then, in analogy with Equation 4-24, the controller states associated with the generation of w(xk,uk), for a specific combination of the outcome of the cycles encountered, are C(w(xk,uk)) = {00(xk,uk), 0m(0;xk,uk) (xk,uk), q0(xk,uk), qm(q;xk,uk,x(q,i(q))) (xk,uk)}. (4-25) The set of all states for all combinations of outcomes of cycles are then given by C(xk,uk) = all possible w(x k ,u k ) C(w(xk,uk)). (4-26) Thus, the set of controller states for all the elements of DC are C = k = 1, n(C) C(xk,uk) (4-27) Of course, if DC = then C(xk,uk) = and C = Then the complete state set of the controller is given by = {0,1} N C. (4-28) By construction, the closed loop system operates in semi-fundamental mode and is well posed. This completes the construction of the controller C. Note that the states of the controller are not optimized. This can be done by the various state reduction techniques, e.g., KOHAVI [1970]. Further state reductions can be done by careful choice of the corrective string.

PAGE 68

CHAPTER 5 EXAMPLE This chapter demonstrates the construction of a controller C that fulfills the requirements of Theorem 4-1. Consider the input/state machine having the input set A = {a, b, c, d} and the state set X = {x1, x2, x3, x4}. Consider the recursion function of the machine f to be defined by Table 5-1 of transitions. Table 5-1. Transition table for the machine a b c d x1 x1 x3 x1 x1 x2 x3 x2 x4 x3 x3 x4 x4 x4 x3 x4 x2 x4 x3 x4 Applying Algorithm 3-8 to the above machine, the cycles in the machine can be found. We see that the cycles are 1 = {a;x2, x3, x4} and 2 = {c;x3, x4}. Now, the cycle states corresponding to the cycles 1 and 2 are x5 and x6. The generalized stable state machine |s now has the state set X = {x1, x2, x3, x4, x5, x6}, as defined in Equation 3-8, and the same input set A. The stable recursion function s of the generalized stable state machine |s is defined in the Table 5-2 of transitions. The generalized stable recursion function for the generalized stable state machine is defined in Equation 3-11. Note that when an input character is applied to a cycle state, it can result in unpredictable outcomes. This is represented as the set of all possible output states. 59

PAGE 69

60 Table 5-2. Stable transition table for the generalized stable state machine |s a b c d x1 x1 x3 x1 x1 x2 x5 x2 x6 x3 x3 x5 x4 x6 x3 x4 x5 x4 x6 x4 x5 x5 {x2,x4} {x4,x6} {x3,x4} x6 x5 x4 x6 {x3,x4} The machine |s is now an asynchronous machine with multiple race outcomes. We will now follow the procedure in Chapter 4 to calculate the skeleton matrix of this machine. As defined in Equation 3-12, the matrix of one-step generalized stable transitions R(|s) is shown in Table 5-3. Table 5-3. Matrix of one-step generalized stable transitions R(|s) x1 x2 x3 x4 x5 x6 x1 a,c,d N N N N N x2 N b N N b N x3 N d d N d d x4 b N b b,d b,d b,d x5 N a a a a a x6 N c c c c c

PAGE 70

61 Using Equation 3-17 and Equation 3-18, we construct the matrices R2(|s), R3(|s), R4(|s), and R5(|s), and then the matrix R(5)(|s). Then, applying Definition 3-14, the matrix of stable transitions T(|s) is constructed. Finally, using Definition 3-17, the skeleton matrix is derived. The skeleton matrix K() calculated from R(5)() is given by K() = 1 0 0 0 0 0 0 1 0 0 0 0 0 1 1 0 0 1 1 1 1 1 1 1 (5-1) Now to solve the model matching problem, we need the given stable state machine as our model. The stable recursion function for is given in Table 5-4 of transitions. Table 5-4. Stable transition function of the given model a b c d x1 x1 x3 x1 x1 x2 x4 x2 x4 x3 x3 x4 x4 x4 x3 x4 x4 x4 x4 x4 Now, the skeleton matrix for the model follows the same procedure as in the generalized stable state machine, except for the absence of the cycle states. This results in a square matrix, given by K0() = 1 0 0 0 0 1 0 0 0 1 1 0 1 1 1 1 (5-2)

PAGE 71

62 Following Equation 4-1, the augmented skeleton matrix K() is then constructed as follows. K() = 1 0 0 0 0 0 0 1 0 0 0 0 0 1 1 0 0 0 1 1 1 1 1 1 (5-3) The next step in the construction of the controller is to see if the necessary and sufficient conditions are satisfied. We find that K() K(), thus satisfying Theorem 4-1. To construct the controller, we need the following matrices, as explained in the proof of Theorem 4-1. D(,) := {(x2,a),(x3,a),(x4,a),(x2,c),(x3,c),(x4,c)}, D := {(x5,a),(x6,c),(x2,c)}, xD := {x2,x3,x4}, D(x) := {a,c}, U(x2) := {b}, U(x5) := {a}, U(x6) := {c}, DN(,) := DC := {(x2,c),(x5,a),(x6,c)}. (5-4) For (x2,c) DC(,), w0(x2,c) = d, w1(x2,c,x3) = b. There are two possible strings, d and db; r(x2,c) = 2. The state transitions are: (0,(z,t)) := 0 for all (z,t) XA\V, (0,(x2,c)) := 1 for all (x2,c) V, (1,(x2,c)) := 00(x2,c), for (x2,c) D, (1,(x2,t)) := 1, for all t U(x2)\D(x2), (1,(z,t)) := 0, for all pairs (z,t) XA\(VD), (00(x2,c),(x0,1(x2,c),d)) := 10(x2,c), (00(x2,c),(z,t)) := 00(x2,c), for all (z,t) (x0,1(x2,c),d), (10(x2,c),(z,t)) := 1, (z,t) (s(x2,c),u). (5-5)

PAGE 72

63 The output functions are (0,(z,t)) := t for all (z,t) XA, (1,(x2,t)) := b for all (x2,t) XA, (00(x2,c),(z,t)) := w00(x2,c) = d, for all (z,t) XA, (10(x2,c),(z,t)) := w10(x2,c,x3) = b, (z,t) XA. (5-6) Now, consider the next element (x5,a) DC(,). For this cycle state, w0(x5,a) = d, w1(x5,a,x3) = b; as before, r(x5,a) = 2. The state transitions and output functions are given by (0,(z,t)) := 0 for all (z,t) XA\V, (0,(x5,a)) := 1 for all (x5,a) V, (1,(x5,a)) := 00(x5,a), for (x5,a) D, (1,(x5,t)) := 1, for all t U(x5)\D(x5), (1,(z,t)) := 0, for all pairs (z,t) XA\(VD), (00(x5,a),(x0,1(x5,a),d)) := 10(x5,a), (00(x5,a),(z,t)) := 00(x5,a), for all (z,t) (x0,1(x5,a),d), (10(x5,a),(z,t)) := 1, (z,t) (s(x5,a),b), (0,(z,t)) := t for all (z,t) XA, (1,(x5,t)) := a for all (x5,t) XA, (00(x5,a),(z,t)) := w00(x5,a) = d, for all (z,t) XA, (10(x5,a),(z,t)) := w10(x5,a,x3) = b, (z,t) XA. (5-7) Similarly, the transition and output functions for the third element (x6,a) DC(,) are defined below. Here, w0(x6,c) = b; r(x6,a) = 1. (0,(z,t)) := 0 for all (z,t) XA\V, (0,(x6,c)) := 1 for all (x6,c) V, (1,(x6,c)) := 00(x6,c), for (x6,c) D, (1,(x6,t)) := 1, for all t U(x6)\D(x6), (1,(z,t)) := 0, for all pairs (z,t) XA\(VD), (00(x6,c),(z,t)) := 1, (z,t) (s(x6,c),b), (0,(z,t)) := t for all (z,t) XA, (1,(x6,t)) := c for all (x6,t) XA,

PAGE 73

64 (00(x6,c),(z,t)) := w00(x6,c) = b, for all (z,t) XA. (5-8) This concludes the construction of the feedback controller C such that the closed loop machine c|s = The equations (5-6), (5-7) and (5-8) give the state and transition functions of the controller C.

PAGE 74

CHAPTER 6 SUMMARY AND FUTURE WORK The present work shows the use of feedback controllers to correct one of the common hazards in the behavior of asynchronous sequential machines. Specifically, the designed controller not only eliminates the effects of infinite cycles in such a machine, but it can also drive the defective machine to match the behavior of a desired model. This approach opens an interesting arena where many open problems remain to be analyzed. In Chapter 5 of this dissertation, solutions have been presented to the model matching problem of input-state machines involved in infinite cycles. The necessary and sufficient conditions for the existence of a controller have been stated, and an algorithm for its construction has been included, whenever a controller exists. The control of asynchronous machines is an area of research that is still ripe with possibilities. A straight forward extension of this dissertation is to the construction of a comprehensive state feedback controller that solves the the model matching problem for a machine with multiple hazards, including both races and cycles. The comprehensive controller has elements of both the race problem investigated by Murphy 1996, Murphy, Geng, and Hammer 2002, and Murphy, Geng, and Hammer 2003, as well as the controller for remedying cycles in an asynchronous machine, described in this dissertation. My future research plans include work on extending the results obtained in this dissertation to the comprehensive state feedback controller. The next logical step lies in 65

PAGE 75

66 formulating a more compact representation of the controller. A close examination of the controller structure described in Chapter 3 and Chapter 4 shows that it consists of a number of interconnected similar units. This observation leads us to believe that the controller can be assembled in a modular fashion from a collection of standard units. Formalizing this observation will lead to a simple methodology of controller design, whereby the controller is constructed simply by interconnecting a few standard blocks. Further, investigating the possibility of a comprehensive output feedback controller for a machine with multiple races and cycles is also a future research interest. The present proposal develops a controller that eliminates the negative effects of infinite cycles in asynchronous machines under the assumption that the state of the machine is available for feedback purposes. The problem of overcoming the effects of infinite cycles becomes substantially more complex if the state of the machine is not available, and only an output signal is available. The solution of this problem requires the development of concepts related to the observability of asynchronous machines, to find conditions under which an infinite cycle in state space can be detected from an observation of the output signal. The application of the obtained results to parallel and distributed systems is also an area of interest. Asynchronous sequential systems can be used to model parallel and distributed systems due to their event driven nature. It has been shown by Plateau and Atif 1991 that complex parallel networks can be modeled using stochastic automata networks. Recent work has succeeded in showing that a distributed system can be represented by cellular automata (Zambonelli et al 2003). Feedback control holds

PAGE 76

67 promise for improving the performance and reliability of such parallel and distributed systems, and it is possible to apply the principles developed in this work.

PAGE 77

LIST OF REFERENCES Alpan, G., and Jafari, M.A., 2002, Synthesis of a closed-loop combined plant and controller model, IEEE Transactions on Systems, Man and Cybernetics, Vol. 32, No. 2, pp.163-175. Arbib, M., 1969, Theories of abstract automata, Prentice Hall Inc., Englewood Cliffs, NJ. Armstrong, D., Friedman A., and Menon P., 1968, Realization of asynchronous sequential circuits without inserted delay elements, IEEE Transactions on Computers, C-17, No. 2. Bredeson, J., and Hulina, P., 1971, Generation of a clock pulse for asynchronous sequential machines to eliminate critical races, IEEE Transactions on Computers, C-20, pp. 225-226. Bruschi, D., Pighizzini, G., and Sabadini, N., 1994, On the existence of minimum asynchronous automata and on the equivalence problem for unambiguous regular trace languages, Information and Computation, Vol. 108, No. 2, pp. 262-285. Brzozowski, J.A., and Seger, C., 1987, A characterization of ternary simulation of gate networks, IEEE Transactions on Computers, C-36, No. 11, pp. 1318-1327. Brzozowski, J.A., and Seger, C-J., 1989, A unified framework for race analysis of asynchronous networks, Journal of the Association for Computing Machinery, Vol. 36, No. 1, pp. 20-45. Brzozowski, J.A., and Yeoli, M., 1979, On a ternary model of gate networks, IEEE Transactions on Computers, C-28, pp.178-183. Chiang, J., and Radhakrishnan, D., 1990, Hazard-free design of mixed operating mode asynchronous sequential circuits, International Journal of Electronics, Vol. 68, No. 1, pp. 23-37. Chu, T., 1994, Synthesis of hazard-free control circuits from asynchronous finite state machine specifications, Journal of VLSI Signal Processing, Vol. 7, No. 1-2, pp. 61-84. Chu, T., Mani, N., and Leung, C., 1993, An efficient critical race-free state assignment technique for asynchronous finite state machines, Proceedings of the 30th ACM/IEEE Design Automation Conference, Dallas, TX, pp. 2-5. 68

PAGE 78

69 Cole, R., and Zajicek, O., 1990, The expected advantage of asynchrony, Proceedings of the Second Annual ACM Symposium on Parallel Algorithms and Architectures, pp. 85-94. Datta, P.K., Bandyopadhyay, S.K., and Choudhury, A.K., 1988, A graph theoretic approach for state assignment of asynchronous sequential machines, International Jounal of Electronics, Vol. 65, No. 6, pp. 1067-1075. Davis, A., Coates, B., and Stevens, K., 1993a, Automatic synthesis of fast compact asynchronous control circuits, S. Furber and M. Edwards, editors, Asynchronous Design Methodologies, Volume A-28 of IFIP Transactions, Elsevier Science Publishers, pp. 193-207. Davis, A., Coates, B., and Stevens, K., 1993b, The post office experience: designing a large asynchronous chip, Proceeding of the 26th Hawaii International Conference on System Sciences, Vol. 1, pp. 409-418. Dibenedetto, M.D., Saldanha, A., and Sangiovanni-Vincentelli, A., 1994, Model matching for finite state machines, Proceedings of the IEEE Conference on Decision and Control, Vol. 3, pp. 3117-3124. Dibenedetto, M.D., Saldanha, A., and Sangiovanni-Vincentelli, A., 1995a, Strong model matching for finite state machines with nondeterministic reference model, Proceedings of the IEEE conference on Decision and Control, Vol. 1, pp. 422-426. Dibenedetto, M.D., Saldanha, A., and Sangiovanni-Vincentelli, A., 1995b, Strong model matching for finite state machines, Proceedings of European Control Conference, Vol. 3, pp. 2027-2034. Dibenedetto, M.D., Sangiovanni-Vincentelli, A., and Villa, T., 2001, Model matching for finite-state machines, IEEE Transactions on Automatic Control, Vol. 26, No. 11, pp. 1726-1743. Eichelberger, E.B., 1965, Hazard detection in combinational and sequential switching circuits, IBM Journal of Research and Development, Vol. 9, No. 2, pp. 90-99. Eilenberg, S., 1974, Automata, Languages and Machines, Volume A, Academic Press, New York. Evans, J.B., 1988, Structures of discrete event simulation, Halsted Press, New York. Fisher, P., and Wu, S., September 1993, Race-free state assignments for synthesizing large-scale asynchronous sequential logic circuits, IEEE Transactions of Computers, Vol. 42, No. 9, pp.1025-1034. Fujita, M., 1993, Methods for automatic design error correction in sequential circuits, Proceedings of the European Conference on Design Automation with the European Event in ASIC Design, pp. 76-80.

PAGE 79

70 Furber, S.B., 1993, Breaking step The return of asynchronous logic, IEEE Review, pp. 159-162. Geng, X. J., 2003, Model matching for asynchronous sequential machines, Ph.D. dissertation, Department of Electrical and Computer Engineering, University of Florida, Gainesville, Florida. Geng, X. J., and Hammer, J., 2003, Input/output control of asynchronous sequential machines, submitted for publication. Geng, X. J., and Hammer, J., 2004a, Asynchronous sequential machines: input/output control, Proceedings of the 12th Mediterranean Conference on Control and Automation, Kusadasi, Turkey, June 2004. Geng, X. J., and Hammer, J., 2004b, Output Feedback Control Asynchronous Sequential Machines, Proceedings of the 8th World Multiconference on Systemics, Cybernetics and Informatics (SCI 2004) to be held in Orlando, Florida.(to appear). Hammer, J., 1994, On some control problems in molecular biology, Proceedings of the IEEE Conference on Decision and Control, Vol. 4, pp. 4098-4103. Hammer, J., 1995, On the modeling and control of biological signaling chains, Proceedings of the IEEE Conference on Decision and Control, Vol. 4, pp. 3747-3752. Hammer J., 1996a, On the control of incompletely described sequential machines, International Journal of Control, Vol. 63, No. 6, pp. 1005-1028. Hammer J., 1996b, On the corrective control of sequential machines, International Journal of Control, Vol. 65, No. 6, pp. 249-276. Hauck, S., 1995, Asynchronous design methodologies: an overview, Proceedings of the IEEE, Vol. 83, No. 1, pp. 69-93. Hazeltine, B., 1965, Encoding of asynchronous sequential circuits, IEEE Transactions on Electronic Computers, EX-14, pp.727-729. Higham, L., and Schenk, E., 1992, The parallel asynchronous recursion model, Proceedings of the IEEE Symposium on Parallel and Distributed Processing, pp. 310-316. Hlavicka, J., 1970, Essential hazard correction without the use of delay elements, IEEE Transactions on Computers, C-19, No. 3, pp. 232-238. Holcombe, W.M.L., 1982, Algebraic automata theory, Cambridge University Press, New York.

PAGE 80

71 Hubbard, P., and Caines, P.E., 2002, Dynamical consistency in hierarchical supervisory control, IEEE Transactions on Automatic Control, Vol. 47, No. 1, pp. 37-52. Huffmann D.A., 1954a, The synthesis of sequential switching circuits, J. Franklin Inst., Vol. 257, pp. 161-190. Huffmann D.A., 1954b, The synthesis of sequential switching circuits, J. Franklin Inst., Vol. 257, pp. 275-303. Huffmann, D.A., 1957, The design and use of hazard-free switching networks, Journal of the Association of Computing Machinery, Vol. 4, No. 1, pp. 47-62. Ingerson, T.E., and Buvel, R.L., 1984, Structure in Asynchronous Cellular Automata, Physica D, Vol. 10, pp. 59-68. Kailath, T., 1980, Linear systems, Prentice Hall Inc., Englewood Cliffs, New Jersey, 1979, pp. 268-272. Kalman, R.E., Falb, P.L., and Arbib, M.A., 1969, Topics in Mathematical Systems Theory, McGraw-Hill Book Company, New York. Kohavi, Z., 1970, Switching and finite automata theory, McGraw-Hill Book Company, New York, 1970. Koutsoukos, X.D., Antsaklis, P.J., Stiver, J.A., and Lemmon, M.D., 2000, Supervisory control of hybrid systems, Proceedings of the IEEE, Vol. 88, No. 7, pp. 1026-1049. Lavagno, L., Keutzer, K., and Sangiovanni-Vincentelli, A., 1991, Algorithms for synthesis of hazard-free asynchronous circuits, Proceedings of the 28th ACM/IEEE Design Automation Conference, San Francisco, CA, pp. 302-308. Lavagno, L., Moon, C.W., and Sangiovanni-Vincentelli, A., 1994, Efficient heuristic procedure for solving the state assignment problem for event-based specifications, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems, Vol. 14, pp. 45-60. Lin, B., and Devadas, S., 1995, Synthesis of hazard-free multilevel logic under multiple-input changes from binary decision diagrams, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems, Vol. 14, No. 8, pp. 974-985. Lin, F., 1993, Robust and adaptive supervisory control of discrete event systems, IEEE Transactions on Automatic Control, Vol. 38, No. 12, pp. 1848-1852. Lin, F., and Wonham, W.M., 1990, Decentralized control and coordination of discrete event systems with partial observation, IEEE Transactions on Automatic Control, Vol. 35, No. 12, pp. 1330-1337.

PAGE 81

72 Liu, C., 1963, A state variable assignment procedure for asynchronous sequential switching circuits, Journal of the Association of Computing Machinery, Vol. 10, pp. 209-216. MacLane, S., and Birkhoff, G., 1967, Algebra, The Macmillan Company, New York. Mago, G., 1971, Realization of methods for asynchronous sequential circuits, IEEE Transactions on Computers, C-20, pp. 290-298. Maki, G., and Tracey, J., 1971, A state assignment procedure for asynchronous sequential circuits, IEEE Transactions on Computers, C-20, pp. 666-668. Marshall, A., Coates, B., and Siegel, F., 1994, Designing an asynchronous communications chip, IEEE Design & Test of Computers, Vol. 11, No. 2, pp. 8-21. Masuyama, H., and Yoshida, N., 1977, design of fail-safe asynchronous sequential machines, Transactions of the Institute of Electronics and Communication, Vol. E60, No. 10, pp. 527-532. McCluskey, E.J., 1963, Fundamental mode and pulse mode sequential circuits, Proc. IFIP Congress 1962, International Conference on Information Processing, Munich, August 27-September 1, 1962, pp. 725-730, Cicely M. Popplewell (ed.), North Holland Publishing Company, Amsterdam. McCluskey, E.J., 1965, Introduction to the theory of switching circuits, McGraw-Hill Book Company, New York. Mealy, G.H., 1955, A method for synthesizing sequential circuits, Bell Systems Technical Journal, Vol. 34, pp. 1045-1079. Moon, C.W., Stephan, P.R., and Brayton, R.K., 1991, Synthesis of hazard-free asynchronous circuits from graphical specifications, IEEE International Conference on Computer-Aided Design, pp. 322-325. Moore, E.F., 1956, Gedanken-experiments on sequential machines, Automata Studies, Annals of Mathematical Studies, No. 34, Princeton University Press, Princeton, NJ. Moore, S.W., Taylor, G.S., Cunningham, P.A., Mullins, R.D., and Robinson, P., 2000, Self calibrating clocks for globally asynchronous locally synchronous systems, Proceedings of the International Conference on Computer Design, pp 73-78. Murphy, T.E., 1996, On the control of asynchronous sequential machines with races, Ph.D. Dissertation, Department of Electrical and Computer Engineering, University of Florida, Gainesville, Florida.

PAGE 82

73 Murphy, T.E., Geng, X. J., and Hammer, J., 2002, Controlling races in asynchronous sequential machines, Proceedings of the IFAC World Congress, Barcelona, July 2002. Murphy, T.E., Geng, X. J., and Hammer, J., 2003, On the control of asynchronous machines with races, IEEE Transactions on Automatic Control, Vol. 28, No. 6, pp. 1073-1081. Nelson, R.J., 1968, Introduction to automata, John Wiley and Sons, Inc., 1979. Nishimura, N., 1990, Asynchronous shared memory parallel computation, The 3rd ACM Symposium on Parallel Algorithms and Architectures SPAA pp. 76-84. Nishimura, N., 1995, Efficient asynchronous simulation of a class of synchronous parallel algorithms, Journal of Computer and System Sciences, Vol. 50, No. 1, pp. 98-113. Nowick, S.M., 1993, Automatic synthesis of burst-mode asynchronous controllers, Ph.D. Dissertation, Department of Computer Science, Stanford University, Stanford, California. Nowick, S.M., and Coates, B., 1994, UCLOCK: Automated design of high-performance unclocked state machines, Proceedings of the IEEE International Conference on Computer Design (ICCD), pp. 434-441. Nowick, S.M., Dean, M.E., Dill, D.L., and Horowitz, M., 1993, The design of a high-performance cache controller: A case study in asynchronous synthesis, Proceedings of the 26th Hawaii International Conference on System Sciences, pp. 419-427. Nowick, S.M., and Dill, D.L., 1991, Synthesis of asynchronous state machines using a local clock, IEEE International Conference on Computer Design, pp. 192-197. Oikonomou, K.N., 1992, Abstractions of finite-state machines and immediately-detectable output faults, IEEE Transactions on Computers, Vol. 41, No. 3, pp. 325-338. Oliviera, D.L., Strum, M., Wang, J.C., and Cunha, W.C., 2000, Synthesis of high performance extended burst mode asynchronous state machines, Proceedings of the 13th Symposium on Integrated Circuits and Systems Design, pp. 41-46. Ozveren, C.M., and Willsky, A.S., 1990, Observability of discrete event dynamic systems, IEEE Transactions on Automatic Control, Vol. 35, No. 7, pp. 797-806. Ozveren, C.M., Willsky, A.S., and Antsaklis, P.J., 1991, Stability and stabilizability of discrete event dynamics systems, Journal of the Association of Computing Machinery, Vol. 38, No. 3, pp. 730-752.

PAGE 83

74 Park, S-J., and Lim, J-T., 2002, Robust and nonblocking supervisory control of nondeterministic discrete event systems using trajectory models, IEEE Transactions on Automatic Control, Vol. 47, No. 4, pp. 655-658. Patterson, W.W., and Metze, G., 1974, Fail safe asynchronous sequential machine, IEEE Transactions on Computers, Vol. C-23, No. 4, pp. 369-374. Piguet, C., 1991, Logic synthesis of race-free asynchronous CMOS circuits, IEEE Journal of Solid-State Circuits, Vol. 26, No. 3, pp. 371-380. Plateau, B., and Atif, K., 1991, Stochastic automata network of modeling parallel systems, IEEE Transactions on Software Engineering, Vol. 17, No. 10, pp. 1093-1108. Ramadge, P.J., and Wonham, W.M., 1987, Modular feedback logic for discrete event systems, SIAM Journal of Control and Optimization, Vol. 25, pp. 1202-1218. Ramadge, P.J., and Wonham, W.M., 1989, The control of discrete event systems, Proceedings of the IEEE, Vol. 77, No. 1, pp. 81-99. Ramadge, P.J.G., and Wonham, W.M., 1987, Supervisory control of a class of discrete event processes, SIAM Journal of Control and Optimization, Vol. 25, No. 1, pp. 206-230. Sen, R.K., 1985, On state assignment of asynchronous sequential machines, Proceedings COMPINT 85: Computer Aided Technologies, pp. 433-440. Schnfisch, B., and De Roos, A., 1999, Synchronous and Asynchronous Updating in Cellular Automata, BioSystems, 51(3), pp. 123-143. Shields, M.W., 1987, An introduction to automata theory, Blackwell Scientific Publications, Boston, Massachusetts. Thistle, J.G., and Wonham, W.M., 1994, Control of infinite behavior of finite automata, SIAM Journal of Control and Optimization, Vol. 25, No. 1, pp. 206-230. Tracey, J.H., 1966, Internal state assignments for asynchronous sequential machines, IEEE Transactions on Electronic Computers, EC-15, pp. 551-560. Turing, A., 1936-1937, On computable numbers, with an application to the entscheidungs-problem, Proceedings of the London Mathematical Society, Ser. 2-42, pp. 230-265 with a correction, Ibid, Ser. 2-43, pp.544-546, 1936-1937. Unger, S.H., 1959, Hazards and delays in asynchronous sequential switching circuits, IRE Transactions on Circuit Theory, Vol. CT-6, No. 1, pp.12-25.

PAGE 84

75 Unger, S.H., 1969, Asynchronous sequential switching circuits, Wiley Interscience, New York, NY. Unger, S.H., 1977, Self-synchronizing circuits and non-fundamental mode operation, IEEE Transactions on Computers, Vol. 26, No. 3, pp. 278-281. Unger, S.H., 1995, Hazards, critical races and metastability, IEEE Transactions on Computers, Vol. 44, No. 6, pp. 754-768. Watanable, Y. and Brayton, R., 1993, Computing permissible behaviors of FSMs, Proceedings of the International Conference on Computer-Aided Design, pp. 316-320. Whitaker, S., and Maki, G., 1992, Self synchronized asynchronous sequential pass transistor circuits, IEEE Transactions on Computers, Vol. 41, No. 10, pp. 1344-1348. Wolfram, S., 1994, Cellular automata and complexity, World Scientific Pub Co Inc., 1986. Wonham, W.M., and Ramadge, P.J.G., 1987, On the supremal controllable sublanguage of a given language, SIAM Journal of Control and Optimization, Vol. 25, pp. 637-659. Yoeli, M., and Rinon, S., 1964, Application of ternary algebra to the study of static hazards, Journal of the Association of Computing Machinery, Vol. 11, No. 1, pp. 84-97. Yu, M.L., and Subrahmanyam, P.A., 1992, A path-oriented approach for reducing hazards in asynchronous design, Proceedings of the Design Automation Conference, 29th ACM/IEE, pp. 239-244. Zambonelli, F., Roli, A., and Mamei, M., 2003, Dissipative cellular automata as minimalist distributed systems : A study on emergent behaviors, 11th IEEE EUROMICRO Conference on Parallel, Distributed, and Network Processing, Genova (I), IEEE CS Press, pp. 250-257.

PAGE 85

BIOGRAPHICAL SKETCH Niranjan Venkatraman was born in Bangalore, India, and obtained his Bachelor of Engineering (B.E.) degree in Electrical and Electronics Engineering in May 2000 from the College of Engineering, Guindy, Chennai, a part of Anna University. Since August 2000, he has been a Ph.D. student in the Department of Electrical and Computer Engineering at the University of Florida, Gainesville, FL. During the pursuit of his Ph.D., he obtained his M.S. in Electrical and Computer Engineering from the University of Florida in December 2002. His research interests include control theory, control systems, automata theory, and the application of control theory to asynchronous networks and parallel computation. 76


Permanent Link: http://ufdc.ufl.edu/UFE0006553/00001

Material Information

Title: On the Control of Asynchronous Machines with Infinite Cycles
Physical Description: Mixed Material
Copyright Date: 2008

Record Information

Source Institution: University of Florida
Holding Location: University of Florida
Rights Management: All rights reserved by the source institution and holding location.
System ID: UFE0006553:00001

Permanent Link: http://ufdc.ufl.edu/UFE0006553/00001

Material Information

Title: On the Control of Asynchronous Machines with Infinite Cycles
Physical Description: Mixed Material
Copyright Date: 2008

Record Information

Source Institution: University of Florida
Holding Location: University of Florida
Rights Management: All rights reserved by the source institution and holding location.
System ID: UFE0006553:00001


This item has the following downloads:


Full Text












ON THE CONTROL OF ASYNCHRONOUS MACHINES WITH INFINITE CYCLES


By

NIRANJAN VENKATRAMAN


















A DISSERTATION PRESENTED TO THE GRADUATE SCHOOL
OF THE UNIVERSITY OF FLORIDA IN PARTIAL FULFILLMENT
OF THE REQUIREMENTS FOR THE DEGREE OF
DOCTOR OF PHILOSOPHY

UNIVERSITY OF FLORIDA


2004

































Copyright 2004

by

Niranj an Venkatraman

































To my parents, who always stood by me.















ACKNOWLEDGMENTS

First and foremost, I would like to acknowledge the unflagging support and

excellent supervision of my advisor, Dr. Jacob Hammer, during my four years at the

University of Florida. I thank Dr. Haniph Latchman, Dr. Tan Wong, and Dr. John

Schueller for all their efforts and their advice, and for serving on my Ph.D. supervisory

committee.

I would like to especially thank Xiaojun Geng (my officemate for three years) for

our animated and interesting discussions. I also extend special thanks to my current

officemates (Jun Peng and Debraj Chakraborty) for making the last year interesting and

full of fun. Special thanks are also due to my roommates (Raj, Nand and Arun) for

putting up with my eccentric behavior for four years. I would also like to thank all my

friends; their unceasing friendship and care has made this work possible.

Last but not the least, I would like to thank my parents, my grandmother, my sister,

her husband and my other relatives for their unfailing love and support during all the

years that I have been away from them.
















TABLE OF CONTENTS



A C K N O W L E D G M E N T S ................................................................................................. iv

L IST O F T A B L E S ........ ................................................................................. vi

L IST O F FIG U R E S .... ....... ...................... ........................ .... ...... .. ............. vii

A B S T R A C T ......... .................................. ................................................... v iii

CHAPTER

1 IN T R O D U C T IO N ............................................................................... .............. ..

2 TERMINOLOGY AND BACKGROUND ...........................................................10

2.1 Asynchronous Machines and States ....................................... ............... 10
2.2 M odes of O operation ........................................................... ............... 14

3 IN F IN IT E C Y C L E S .......................................................................... ....................20

3 .1 In tro d u ctio n .................................................................................................. 2 0
3.2 D election of Cycles................. ............ ....................................... .. ... ....22
3.3 Stable State Representations for Machines with Cycles.................................29
3.4 Stable R eachability .............................................. .... .......... .............. .. 32
3.5 Matrix of Stable Transitions and the Skeleton Matrix..................................34
3 .6 C orrectiv e C controllers ........................................ .........................................39

4 THE MODEL MATCHING PROBLEM ........................................................46

5 E X A M P L E ............................................................................................................ 5 9

6 SUMMARY AND FUTURE WORK ................................................... ...............65

L IST O F R E F E R E N C E S ..................................... .................................... ....................68

B IO G R A PH IC A L SK E TCH ...................................................................... ..................76






v















LIST OF TABLES

Table page

5-1. Transition table for the m machine ........................................ ....................... 59

5-2. Stable transition table for the generalized stable state machine |ls ........................60

5-3. Matrix of one-step generalized stable transitions R(ls) ...........................................60

5-4. Stable transition function of the given model '. .............................................61

















LIST OF FIGURES


Figure


1-1. Control configuration for the asynchronous sequential machine ...........................3


page















Abstract of Dissertation Presented to the Graduate School
of the University of Florida in Partial Fulfillment of the
Requirements for the Degree of Doctor of Philosophy

ON THE CONTROL OF ASYNCHRONOUS MACHINES WITH INFINITE CYCLES

By

Niranj an Venkatraman

August 2004

Chair: Jacob Hammer
Major Department: Electrical and Computer Engineering

My study deals with the problem of eliminating the effects of infinite cycles on

asynchronous sequential machines by using state feedback controllers. In addition to

eliminating the effects of infinite cycles, the controllers also transform the machine to

match the behavior of a prescribed model.

My study addresses machines in which the state is provided as the output of the

machine (input/state machines). Algorithms are provided for detecting infinite cycles in a

given machine, for verifying the existence of controllers that eliminate the effects of

infinite cycles, and for constructing the controllers whenever they exist.

The feedback controllers developed in my study resolve the model matching

problem for machines that are afflicted by infinite cycles. They transform the given

machine into a machine whose input/output behavior is deterministic and conforms with

the behavior of a prescribed model. Thus, the feedback control strategy overcomes the









effects of infinite cycles as well as any other undesirable aspects of the machine's

behavior.

Results include necessary and sufficient conditions for the existence of controllers,

as well as algorithms for their construction whenever they exist. These conditions are

presented in terms of a matrix inequality.

The occurrence of infinite cycles produces undesirable behavior of afflicted

asynchronous sequential machines. The occurrence of hazards has been a major problem

since the early development of asynchronous sequential machines. There are many

methods to design cycle-free machines; but the literature does not seem to contain any

technique for eliminating the negative effects of infinite cycles in case it occurs in

existing asynchronous sequential machines.














CHAPTER 1
INTRODUCTION

Asynchronous sequential machines are digital logic circuits that function without a

governing clock. They are also described variously as clockless logic circuits, self-timing

logic circuits, and asynchronous finite state machines (AFSMs). Asynchronous operation

has long been an active area of research (e.g., Huffman 1954a, 1954b, 1957), because of

its inherent advantages over commonly used synchronous machines. One of the more

obvious advantages is the complete elimination of clock skew problems, because of the

absence of clocks. This implies that skew in synchronization signals can be tolerated.

The various components of the machine can also be constructed in a modular fashion,

and reused, as there are no difficulties that are associated with synchronizing clocks.

Further, the speed of the circuit is allowed to change dynamically to the maximal respond

speed of the components. This leads to improved performance of the machine.

Asynchronous machines are by nature adaptive to all variations, and only speed up or

slow down as necessary (Cole and Zajicek (1990), Lavagno et al. (1991), Moon et al.

(1991), Yu and Subrahmanyam (1992), Fisher and Wu (1993), Furber (1993), Nowick

(1993), Nowick and Coates (1994), Hauck (1995)). Asynchronous machines also require

lower power, because of the absence of clock buffers and clock drivers that are normally

required to reduce clock skew. The switching activity within the machine is

uncorrelated, leading to a distributed electromagnetic noise spectrum and a lower average

peak value. Moreover, asynchronous operation is inherent in parallel computation

systems (Nishimura (1990), Plateau and Atif (1991), Bruschi et al. (1994)).









Asynchronous design is essential to ensure maximum efficiency in parallel computation

(Cole and Zajicek (1990), Higham and Schenk (1992), Nishimura (1995)).

Asynchronous machines are driven by changes of the input character, and are self-

timed. In this context, it is vital to address design issues, especially those that can lead to

potential inconsistencies in the pulses that propagate through the machine. These

difficulties are referred to as "hazards" (Kohavi (1970), Unger (1995)). A cycle is one

such potential hazard in the operation of asynchronous machines. It causes the machine

to "hang," as is demonstrated in software applications with coding defects that can cause

the program to hang in an infinite loop. A "critical race" is another hazard that causes the

machine to exhibit unpredictable behavior. These hazards can occur because of

malfunctions, design flaws, or implementation flaws. The common procedure followed

when a hazard occurs is to replace the machine with a new one, built with no defects. In

our study, we propose to employ control techniques to devise methods that take a

machine out of an infinite cycle and endow it with desirable behavior. Thus, we

concentrate on the design of controllers that resolve infinite cycles and control the

machine so as to achieve specified performance.

To explain the mode of action of our controllers, a basic description of the structure

of an asynchronous machine needs to be reviewed. An asynchronous machine has two

types of states: stable states and unstable states. A stable state is one in which the

machine may linger indefinitely, while an unstable state is just transitory, and the

machine cannot linger at it. A cycle is a situation where the machine moves indefinitely

from one unstable state to another, without encountering a stable state. Cycles can occur

often in applications, brought about by errors in design, by errors in implementation, or









by malfunctions of components, for example, errors in programming that lead to infinite

cycles. The solution currently recommended in the literature for correcting an infinite

cycle is to replace the affected machine by a new machine. The solution proposed in our

study is, in many cases, more efficient. Moreover, it is the only practical solution in

cases where the affected system is out of reach.

The controllers we design are feedback controllers connected to the afflicted

machine, as depicted in Figure 1-1. The controller is activated during a cycle. Whenever

possible, the controller drives the machine out of the cycle, and leads it to a desirable

state. We characterize all cycles from which there is an escape, and present an algorithm

for the design of a controller that takes the machine out of any escapable cycle.




u C V
---------------------------I








Figure 1-1. Control configuration for the asynchronous sequential machine X

Here, X is the asynchronous machine being controlled, and C is another

asynchronous machine that serves as a controller. We denote by Yc the closed loop

system represented by Figure 1-1. The controller C eliminates the effects of the cycles

of X so that the closed loop system Yc matches a prescribed model X' (i.e., Yc = Y').

The goal is to provide necessary and sufficient conditions for the existence of such a

controller C as well as an algorithm for its design. An important property of the

controller C is that the closed loop system will function properly whether or not the









cycle actually occurs. As a result, the controller C can be used to prevent the effects of

cycles before they occur, improving the reliability of the system.

It is important to note that during a cycle, the machine moves among unstable states

in quick succession, without lingering in any of the cycle states. Consequently, it cannot

be arranged for an input change to occur at a specific state of the cycle. Thus, the input

changes enforced by the controller occur at random during the cycle, and it is not possible

to predetermine the state of the cycle at which the controller acts. As a result, the

outcome of the controller action is unpredictable in most cases. This could lead to a

critical race condition being generated by the controller, which can then be rectified by

known procedures (Murphy (1996); Murphy, Geng and Hammer (2002, 2003); Geng

2003; Geng and Hammer (2003, 2004a, 2004b)).

When machine Y is an input state machine, i.e., the output of Y is the state of Y,

the controller C is called a state feedback controller. The existence of such a controller

C that takes the system out of a cycle depends on certain reachability properties of the

system. These reachability properties can be characterized in terms of a numerical matrix

called the "skeleton matrix" of the system. The skeleton matrix is calculated from the

various transitions of the machine. This skeleton matrix gives a methodology to derive

the necessary and sufficient conditions for the existence of a corrective controller C.

The function of the controller is two-fold: it eliminates the effects of the cycle on

the machine and assigns to the closed loop a specified behavior. The controller C

functions by forcing an input character change while the machine is in a cycle; this may

induce a critical race. The outcome of this unpredictable behavior is then used by the

controller to assign a proper transition, as required to match the operation of the model.









In this way, the cycles of the machine are stopped, and the machine exhibits the desired

external behavior.

The model-matching problem described here is basically a continuation of the work

of Hammer (1994, 1995, 1996a, 1996b); Murphy (1996); Murphy, Geng and Hammer

(2002, 2003); Geng (2003); and Geng and Hammer (2003, 2004a, 2004b). There are a

number of papers that relate to the model-matching problem for synchronous sequential

machines (Dibinedetto et al. (1994, 1995a, 1995b, 2001), Barrett and Lafortune (1998)).

The studies relating to synchronous machines do not take into consideration the

differences between stable and unstable states, fundamental and semi-fundamental mode

of operation (Chapter 2), and other issues that are vital to the operation of asynchronous

machines. Our study seems to be the first one to explore control theoretic tools to

eliminate the effects of infinite cycles on asynchronous machines.

Eliminating the effects of infinite cycles is not the only situation in which model

matching is beneficial (Dibenedetto et al. (2001)). For example, most large digital

system are designed in a modular fashion, with a number of subsystems. An error in the

behavior of the machine detected late in the design phase may make it more economical

to use a controller instead of redesigning, or rebuilding, the entire machine. In other

words, model matching offers a low-cost option to remedy design and construction errors

(Fujita (1993)). Moreover, the controller can also be used to improve the reliability and

performance of the system, by deploying it before a fault develops in the system. In this

way, the controller can guard against potential malfunctions, while being "transparent"

before a malfunction occurs. Thus, in machines where high reliability is vital, our study

provides a new design option.









The early work on automata theory was carried out by Turing (1936). Huffman

(1954a, 1954b, 1957) investigated various aspects of the synthesis of asynchronous relay

circuits. There is a well established technical literature relating to the subject of design of

hazard-free machines (e.g., Liu (1963), Tracey (1966), Kohavi (1970), Maki and Tracey

(1971)). This is achieved by appropriate state assignment techniques. Classical methods

for hazard free state assignments (Huffman (1954a, 1954b)) are reviewed in most

textbooks on digital circuit design (e.g., Kohavi (1970)). More recently, studies on the

subject were done by Masuyama and Yoshida (1977), Sen (1985), Datta et al. (1988),

Nowick and Dill (1991), Fisher and Wu (1993), Chu (1994), Lavagno et al. (1994),

Nowick and Coates (1994), and Lin and Devadas (1995). Evading hazards using a

locally generated clock pulse was introduced by Unger (1977), Nowick and Dill (1991),

and Moore et al. (2000). A graph theoretic approach for state assignment of

asynchronous machines was introduced by Datta, Bandopadhyay and Choudhury (1988).

Of course, all the above studies discuss the hazard free design of asynchronous machines,

and can be applied only before the machine is constructed; only Murphy (1986); Murphy,

Geng and Hammer (2002, 2003); Geng 2003; and Geng and Hammer (2003, 2004a,

2004b) detail methods to overcome hazards in an existing asynchronous machine.

Other early works on the synthesis of asynchronous machines were by Mealy

(1955) and Moore (1956). These works investigated state and circuit equivalence, and

provided methods for synthesizing asynchronous and synchronous sequential machines.

Their models of sequential machines are most commonly used today. In the work done

by Liu (1963), all internal transitions of a machine go directly from unstable states to

terminal states; with no sequencing permitted though stable states. This method of









hazard free assignment (called single transition time state variable assignment) uses

assignments similar to an equidistant error-correcting code. This kind of assignment,

which can be accomplished by mapping the rows of a flow table onto the vertices of a

unit n-dimensional cube, is not guaranteed minimal, but it works effectively with

incompletely specified flow tables. Tracey (1966) extended this work to techniques that

maximize the speed of the machine. A method for sequencing (though unstable states are

allowed before a stable state is reached when an input character is applied) was presented

by Maki and Tracey (1971), using a technique called the shared row state assignment

method. This method generally required fewer state variables than single transition time

assignments. Other work on hazard-free state assignment techniques can be found in

Hazeltine (1965); McCluskey (1965); Armstrong, Friedman and Menon (1968); Hlavicka

(1970); Mago (1971); Chiang and Radhakrishnan (1990); Lavagno, Keutzer and

Sangiovanni-Vincentelli (1991); Piguet (1991); Oikonomou (1992); Chu, Mani and

Leung (1993); and Fisher and Wu (1993).

Some other techniques for avoiding hazards were proposed by Yoeli and Rinon

(1964) and Eichelberger (1965). They proposed ternary logic models to analyze certain

aspects of the machines. Ternary algebra seems to provide an efficient method for

detection and analysis of hazards in sequential circuits. These models were further

worked on by Brzozowski and Seger (1987, 1989) and Brzozowski and Yoeli (1987).

Another method of avoiding hazards was by generating a clock pulse from other signals

in the machine (Bredeson and Hulina (1971), Whitaker and Maki (1992)).

Most applications of asynchronous machines assume that the environment of

operation is the fundamental mode (Unger (1969)); that is, an input change is applied









only after the machine has reached stability. No input change is allowed when the

machine transits through unstable states. Our study specifies conditions where

fundamental mode is not applicable, leading to what is called semi-fundamental mode of

operation (Chapter 2). Recent work in asynchronous sequential machines allows the

simultaneous change of several input variables. This mode of operation is referred to as

burst-mode (Davis et al. (1993a), Nowick (1993), Yun (1994), and Oliviera et al. (2000)).

Deterministic behavior of the machine in this approach needs special restrictions to be

imposed on the machine.

Plenty of literature is available on the application of control theory to automata and

asynchronous machines under discrete event systems. One such example that can be

readily quoted is supervisory control (Ramadge and Wonham (1987, 1989)). This is

based on formal language theory, and assumes that certain events in the system can be

enabled or disabled. The control of the system is achieved by choosing control inputs

such that the events are enabled or disabled. Literature on discrete event systems is

extensive (Ozveren et al. (1991), Lin (1993), Koutsoukos et al. (2000), Alpan and Jafari

(2002), Hubbard and Caines (2002), Park and Lim (2002)). Our study employs finite

state machines models, which are more suitable to the investigation of engineering

implementations than formal language theory (Dibenedetto et al. (2001)).

Asynchronous machines are widely used in industry, as they result in economical

digital systems. Some examples of industrial applications are the adaptive routing chip

(Davis et al. (1993b)), a cache controller (Nowick et al. (1993)) and the infrared

communications chip (Marshall et al. 1994).









The organization of this dissertation is as follows. Terminology and background is

provided in Chapter 2. A detailed analysis of infinite cycles, detection algorithms, and

the existence conditions are detailed in Chapter 3. This chapter also introduced the

concepts of generalized state machines, and the use of transition matrices and skeleton

matrices in determining the existence of the controller. Chapter 4 gives a detailed

solution to the model matching problem for asynchronous sequential machines with

cycles, and an algorithm for the construction of the controller. Chapters 3 and 4 contain

the necessary and sufficient conditions for the existence of a controller. An example is

solved in Chapter 5, detailing the transition and output functions of the controller states,

and finally, a conclusion and possible directions of further research are provided in

Chapter 6.














CHAPTER 2
TERMINOLOGY AND BACKGROUND

2.1 Asynchronous Machines and States

Here, the background and notation is introduced and the basic theory of

asynchronous sequential machines is described. An asynchronous machine is activated

by a change of its input character; it generates a sequence of characters in response. To

explain the mathematical theory, we introduce the notation and terminology involved in

describing sequence of characters.

An alphabet is a finite non-empty set A; the elements of this set are called

characters. A word w over an alphabet A is a finite and ordered (possibly empty)

string of characters from A. Let A be a finite non-empty alphabet, let A* denote the

set of all strings of characters of A, including the empty string, and let A+ be the set of

all non-empty strings in A*. The length |wl of a string w e A* is the number of

characters of w. For two strings wi, w2 e A*, the concatenation is the string w:=

wiW2, obtained by appending w2 to the end of wi. A non empty word wi in A* is a

prefix of the word w2 if w2 = wiw; and wi is a suffix of the word w2 if w2 = w'wl,

where w, w' e A*. A partial function f: S1->S2 is a function whose domain is a

subset of S1 (Eilenberg (1974)).

We now introduce the concept of a sequential machine. A sequential machine

provides a working mathematical model for a computing device with finite memory. It

has the following characteristic properties:









* A finite set of inputs can be applied to the machine in a sequential order.

* There is a finite set of internal configuration that the machine can be in. These
configuration are called states, and physically, these states correspond to the setting
on the flip flop or the bit combinations in memory devices.

* The current internal configuration or state and the applied input character determine
the next internal configuration or state that the machine achieves. For
deterministic systems, the next state is unique.

* There is a finite set of input characters.

There are two broad classes of sequential machines: asynchronous machines and

synchronous machines. An asynchronous sequential machine responds to input changes

instantaneously as they occur. On the other hand, a synchronous sequential machine is

driven by a clock, and the values of input variables affect the machine only at clock

"ticks". The current work concentrates on asynchronous sequential machines. These

machine describe the structure of the fastest computing systems.

An asynchronous machine is defined by the sextuple Y := (A,Y,X,xo,f,h), where

A, Y, and X are nonempty sets, x0 is the initial state, and f: XxA -> X and h : XxA

-> Y are partial functions. The set A is the set of input values, Y is the set of output

values, and X is the set of states. The partial function f is the recursionfunction and h

is the output function. The operation of the machine is described by the recursion

xk+l = f(Xk, Uk),
yk = h(xk, Uk), k = 0, 1, 2,... (2-1)

A valid pair (x,u) e XxA is a point at which the partial functions f and h are

defined. We assume that the initial state xo is provided with Y. An input sequence is

permissible when all pairs (xk, Uk), k = 0, 1, 2, ... are valid pairs. The integer k acts

as the step counter. An increment in the step counter takes place with every change of









the input value or with a state transition. For consistency, we assume that the functions

f and h have the same domain. It is clear from the above description that the recursion

(2-1) represents a causal system. When the output function h only depends on the state

and does not depend on the input, the machine induces a strictly causal system.

If the functions f and h are functions rather than partial functions, the machine is

said to be complete. A deterministic finite state machine is often referred to as the Mealy

machine (Mealy (1955)). If the output function does not depend on the input variable,

then the machine is referred to as the Moore machine (Moore (1956)). An asynchronous

Mealy machine can be transformed into an equivalent Moore machine, and vice versa.

A non-deterministic finite state machine X = (A,Y,X,xo,f,h) has the following

objects:

* A finite, non-empty set A of permissible input characters, termed as the input
alphabet;

* A finite, non-empty set Y of permissible output characters, termed as the output
alphabet;

* A finite, non-empty set X of states of the machine. Any number of the states can
be designates as initial or terminal states;

* A non-deterministic partial transition function f: 3(X)xA -> 3(X), where 3(X)
denotes the set of all the subsets of X (i.e., the power set of X);

* A partial function h : XxA -> Y, called the output function; and

* The initial state of the machine xo e X.

The transition function f can generate sets of states as its values, i.e., f(x,a) = {xi,

.., xk}, rather than just single values; here xl, .., k E X and a e A. In contrast, the

output function h takes only single values, i.e., there can be only one output character









associated with each state. The class of deterministic finite state machines is a subclass

of non-deterministic finite state machines.

The operation of the machine Y can be described as follows. The machine Y

starts from the initial state xo and accepts input sequences of the form u := uo ul ...

where uo, ui, ... e A. In response to this set of applied input characters, it generates a

sequence of states xo, xl, x2, ... e X and a sequence of output values yo, y1, y2, ... E

Y, according to the recursion in Equation 2-1.

Finally, the machine Y is an input/state machine when Y = X and the output is

equal to the state at each step, that is,

Yk = Xk, k = 0, 1, 2, ... (2-2)

An input/state machine Y can be represented by the quadruple (A,X,xo,f), since the

output is the state.

Using the notion of the transition function f, we can define the partial function f*:

XxA+ -> X by setting f*(x,u) := f(...f(f(f(x,uo),ul),u2)...,Uk) for some state x E X and

an input string u = uoulu2...uk e A+. Thus, f* provides the value of the last state in the

path generated by the input string u. For simplicity of notation, we will use f for f*.

Some basic terminology important to the study of asynchronous machines is now

described. A valid pair (x,u) e XxA of the machine Y is called a stable combination if

f(x,u)= x, i.e., if the state x is a fixed point of the function f An asynchronous

machine will linger at a stable combination until an input change occurs. A pair (x,v)

that is not a stable combination is called a transient combination. A potentially stable

state x is one for which there is a stable combination. Of course, states that are not

potentially stable serve only as transition states; the machine cannot stop or linger in









them, and they are not usable in applications. Due to this, it is common practice to

ignore states that are not potentially stable; will adhere to this practice and not include

such state in our state set.

Consider the sequential machine Y of Equation 2-2. Let x be the state of the

machine and u the input value. When a state-input pair (x,u) is not a stable

combination, the machine Y will go through a chain of input/state transitions, starting

from (x,u), which may or may not terminate. If the machine reaches a stable

combination (x',u) with the same input value, then the chain of transitions terminates.

It must be noted that the input value must remain constant throughout the entire

transition; and the transition will end if and only if such a stable combination as (x',u)

exists. In such a case, x' is called the next stable state of x with input value u. When

the next stable state is not uniquely determined, that is, the transition at some point has

more than one value, we have a critical race. In case there is no next stable state for x

with input value u, we obtain an infinite cycle. Critical races and infinite cycles are the

types of hazards that can occur in an asynchronous machine.

2.2 Modes of Operation

When the value of an input variable is changed while the asynchronous machine

undergoes a chain of transitions, the response of the machine may become unpredictable,

since the state of the machine at which the input change occurs in unpredictable. To

avoid this potential uncertainty, asynchronous machines are usually operated in

fundamental mode, where only one variable of the machine is allowed to change each

time. In particular, in fundamental mode operation, a change in the input variable is

allowed only while the machine is in a stable combination.









One of the main topics of our present discussion relates to the control of an

asynchronous machine in an infinite cycle. When a machine is in an infinite cycle,

fundamental mode operation becomes impossible, since the machine will not reach a

stable combination without a change of the input variable. Nevertheless, we will show

later that, when taking the machine out of its infinite cycle, it is not necessary to forego

fundamental mode operation for more than one step. When an asynchronous machine

operates in fundamental mode in all but a finite number of steps, we say that it operates in

semi-fundamental mode. The conditions and procedures for operation in semi-

fundamental mode is described in Chapter 3.

Consider a defect-free asynchronous machine Y = (A,X,xo,Y,f,h) operating in

fundamental mode. Let the machine start at the state xo, and be driven by the input

string w = vovi...vm-1. The machine now has transitions through the states xo,..., xm,

where xi+l = f(xi,vi); i = 0,1,2,...,m-l, where the last pair (xm,Vml) is a stable

combination. Fundamental mode operation implies that vi = vi+l whenever (xi,vi) is

not a stable pair, i = 0,...,m-1.

Thepath is defined as the set of pairs

P(,xo,w) = {(xo,v0), (x1,v1),...,(xm-l,vm-1), (Xm,vm-1)}. (2-3)

When a cycle occurs, there is no final stable pair, and the path becomes infinite

P(E,xo,w) = {...,(xi,vj), (xi+l,vj),...,(xi+t,vj), (xi,vj),... }.

As mentioned earlier, the step counter k advances one step during each state transition

or input change. Of course, for fundamental mode operation, the input character remains

constant during all transition chains.









Consider the case where the input value of the machine is kept constant at the

character v, while the machine goes through a string of state transitions. At each state

transition, the step counter of the system advances by one. This results in the input value

being represented as a repetitive string vvv... v, where each repetition corresponds to an

advance of the step counter. It is convenient to represent all such repetitions of the input

character by a single character, so that, for example, a string of the form w =

vovoviviviv2V2 is represented by w = voviv2. Here, it is understood that each input

value is repeated as many times as necessary. In the case of an infinite cycle, the input

value is repeated indefinitely.

Next, let Y be an asynchronous machine without hazards. Then, the notion of the

next stable state leads to the notion of the stable transition function, which plays an

important role in our discussion. As the machine Y has no hazards, every valid pair

(x,u) of Y has a next stable state x'. Define a partial function s : XxA > X by setting

s(x,u) := x' for every valid pair (x,u), where x' is the next stable state of x with the

input character u. The function s is called the stable transition function of the machine

Y. Note that the stable transition function describes the operation of the machine in the

fundamental mode, i.e., under the requirement that the input value be changed only after

the machine reaches a stable combination. This is a standard restriction in the operation

of asynchronous machines, and it guarantees that the machine produces a deterministic

response.

The stable transition function can be used to describe the operation of an

asynchronous machine Y in the following way. We know that the machine always

starts from a stable combination (xo,u-1), at which the machine has been lingering for









some time. Suppose now that an input string u := uoul...Uk e A+ is applied to the

machine. Then, the machine moves through the a list of states xl, ..., xk+l of next

stable states, where xi+1 = s(xi,ui), which implies that (xi+l,ui) is a stable combination

for i = 0, 1, ..., k. The input list u ispermissible if (xi,ui) is a valid combination for i

= 0, 1, ..., k. Since the machine operates in the fundamental mode, the input character

changes from ui to ui+l only after the stable combination (xi+1,ui) has been reached.

This guarantees that the state of the machine is well determined at the time when the

input value changes.

In general, when a machine does not have infinite cycles, the intermediate

transitory states are ignored, as they occur very speedily and are not noticeable by a user.

Thus, the operation of an asynchronous machine without infinite cycles, as observed by a

user, is best described by the stable transition function s. However, when the machine

has infinite cycles, it is not possible to ignore the transitory states involved in the cycle,

as the machine lingers among these transitions indefinitely. In Chapter 3, we will

introduce a generalized notion of the stable transition function which accommodates

infinite cycles by considering them as another form of persistent states.

Using the stable transition function s, we define the asynchronous sequential

machine XIs := (A,X,Y,xo,s,h), which is called the stable state machine induced by X.

For an input/state machine, the stable state machine is given by the quadruple (A,X,xo,s).

To deal with input strings, we can define a partial function s* : XxA+ -> X by

setting s*(x,u)= s(... s(s(s(x,uo),ul),u2)...,Uk), for some state x E X and a permissible

input string u = uouI...Uk e A+. The partial function s* provides the last state in the









path generated by the input string u. As before, we shall abuse the notation somewhat

by using s for s*.

In the case where we do not have a Moore machine, we can define the partial

function h* : XxA+ Y in a similar fashion by setting h*(x,u) :=

h(... s(s(s(x,uo),ul),u2)...,Uk) for a state x e X and a permissible input string u=

uoui...Uk e A+, as was done for the stable transition function s defined earlier. The

partial function h* gives the last output value generated by the input list u.

It is necessary in some cases to compare different states of a sequential machine.

Two states x and x' of a machine Y are distinguishable if the following condition is

valid: there is at least one finite input string which yields different output sequences when

applied to Y starting from the initial states x or x'. Two states x and x' of the

machine Y are equivalent when, for every possible input sequence, the same output

sequence is produced regardless of whether the initial state is x or x'. Qualitatively,

two states are equivalent if we cannot distinguish them by the input/output behavior of

the machine. If two states are equivalent, then so are all corresponding states included in

any paths started from x and x'. If a machine Y contains two equivalent distinct

states, then one of the states is redundant, and it can be omitted from the mathematical

model of the machine. A machine Y is minimal or reduced if it has no distinct states

that are equivalent to each other.

Consider two machines Y = (A,Y,X,f,h) and 2' = (A',Y',X',f,h'). Let x be a

state of Y and let x' be a state of Y'. The states x and x' are equivalent if both have

the same permissible input sequences, and if, for every permissible input sequence, the

output sequence generated by Y from the initial state x is the same as the output






19


sequence generated by 2' from the initial state x'. The two machines Y and 2' are

equivalent whenever there exists an equivalent state in Y for every state in 2', and

similarly, an equivalent state in Y for every state in Y'. A number of texts dwell on the

various aspects of the theory of sequential machines and automata, including McCluskey

(1965); Arbib (1969); Kalman, Falb and Arbib (1969); Kohavi (1970); Eilenberg (1974);

and Evans (1988).














CHAPTER 3
INFINITE CYCLES

3.1 Introduction

An infinite cycle is caused when there is no next stable state for a valid pair (x,u)

of a finite state asynchronous machine Y = (A,X,xo,Y,f,h). In such case, the machine

will keep moving indefinitely from one transient combination to another. Only a finite

number of states can be involved in these transitions, since Y is a finite state machine.

An infinite cycle can then be characterized by listing these states and the corresponding

input which causes the infinite cycle. Specifically, let the state set of Y be X = {x1, x2,

...,xn. Consider a infinite cycle p of Y that involves p states, say the states xkl, xk2

..., xk e X, and let a e A be the input character causing the infinite cycle. The infinite

cycle then functions according to the recursion

xkj+1 = f(xkj, a), j = 1,..., -, and
xkl = f(xk, a). (3-1)

As a shorthand notation, we will use p = a;xkl, xk2, ..., xke}, where a is the input

character of the infinite cycle, and xk xk2, ..., xk are its states. A state-input pair (xkj

,a), for some j = 1, ..., is then said to be apair of the cycle p. The length of the


infinite cycle p is defined as the number of distinct states it contains. It follows that a

cycle of length has distinct input-state pairs. A brief examination of Equation 3-1


leads to the following conclusion: Let (x,a) be any pair of the infinite cycle p. Then, x'









is a state of p if and only if there is an integer j such that x' = fJ(x,a). Then, the

recursion can be followed for the entire length of the cycle. It is convenient to denote by


{fi(x,a)}j=o the set of all distinct states included in the set {x, f(x,a), f2(x,a), ...}. This


leads us to the following lemma.

Lemma 3-1 Let (x,a) be any pair of the infinite cycle p. Then, the state set of p


is {fi(x,a)}jo.


Lemma 3-1 gives a way of finding the states of a cycle. A machine can have

several infinite cycles, and we demonstrate below an algorithm that finds all infinite

cycles of a given machine. It is relevant to see that an infinite cycle of length 1 is

nothing but a stable combination. To distinguish between infinite cycles and stable

combinations, the length of an infinite cycle must at least be 2. According to the next

statement, infinite cycles associated with the same input character must have disjoint

state sets.

Lemma 3-2 A valid input/state pair (x,a) of an asynchronous machine Y can be a

member of at most one infinite cycle.

Proof 3-2. Let pl and p2 be two infinite cycles of the machine Y associated

with the same input character a. If pi and p2 contain the same pair (x,a), then, using

Lemma 3-1, we conclude that pi and p2 have the same state set. In other words, p1 =

p2, and our proof concludes. *

The above Lemma 3-1 gives us an insight into the structure of the cycle. Since no

state can be a member of more than one cycle, we can say that a pair of a cycle is unique

to that cycle. We can now find a bound on the maximal number of infinite cycles a









machine can have. Indeed, consider the set of all infinite cycles involving the input

character a. In view of Lemma 3-2, all such infinite cycles have disjoint state sets. But

then, the fact that a infinite cycle must contain at least 2 states, implies that there cannot

be more than n/2 such infinite cycles, where n is the number of states of the machine.

Finally, recalling that the machine has m input characters, we obtain the following.

(Denote by [a]- the largest integer not exceeding a.)

Proposition 3-3 Let Y be a sequential machine with n states and an alphabet A

consisting of m characters. Then, Y cannot have more than m[n/2]- infinite cycles. *

For the sake of brevity, "infinite cycles" will be referred to as just "cycles" in the

rest of the document.

3.2 Detection of Cycles

In this section, a procedure to detect the cycles associated with a machine will be

outlined. Consider an asynchronous machine Y = (A,X,xo,Y,f,h) with n states and an

alphabet A of m input characters. Next all the cycles of the machine Y will be

determined. To this end, an nxn matrix M(f) is recursively constructed as follows.

The (i,j) entry of M(f) is the set of all characters u e A for which xi= f(xj,u). If

there is no input character u e A for which xi = f(xj,u), then the (ij) entry of M is

denoted F, where F is a character not included in the alphabet set A. Thus, the matrix

becomes

u E A:xi = f(xj,u),
Mi,j(f) := (3-2)
F otherwise,

i, j = 1, ..., n. Multiple entries in a cell are separated using a comma. We refer to M(f)

as the one-step transition matrix of the machine E.









We now define two matrix operations for one-step transition matrices. First, the

sum of two nxn one-step transition matrices A and B is defined element wise by

(A U B)j := Aij U Bij, i, j = 1, ..., n. (3-3)


The sum operation is reminiscent of the numerical addition of matrices. The

following operations on members of the set A U F is now defined.


uFF:= F
uui := F
Ful := uF

Uu2 := r
FU := (3-4)
ui U := ui
ui Uui := F
ui U u2 :=


Also, for any two sets, the operation of multiplication is defined by

{al, a2, ..., aq}.{bi, b2, ..., br = {aibj}i= ,...,q,j=I ...,r

This is similar to the classical definition of the scalar product of two vectors. Using these

operations of multiplication, the definition of matrix combination is defined as follows.

(AB)ij := Uk=l,...,nAikBkj for all i, j = 1, ..., n. (3-5)


Consider two functions g, h : XxA -> X. The composition of g and h is defined

by gh(x,u) := g(h(x,u),u). The composition of function is closely related to the

combination of the corresponding one-step transition matrices, as indicated by the

following. The next statement shows that the multiplication of two one-step transition









matrices on two recursion functions is the transition matrix on the composition of the two

functions.

Lemma 3-4 Let g, h : XxA -> X be two recursion functions with one step

transition matrices M(g) and M(h), respectively. Then, M(g)M(h) = M(gh).

Proof 3-4. Using Definition 3-4, we have

M(g)M(h) = Uk=l..n Mi,k(g)Mk,j(h). (3-6)


Now, each entry of M(g)M(h) is either a character of A or F; the definition of matrix

composition implies that the following two statements are equivalent:

(i) The (ij) element of M(g)M(h) is u.

(ii) There is a k e {1, ..., n} for which Mi,k(g)= u and Mkj(h) = u.

When (ii) holds, we have xi = g(xk,u) and xk = h(xj,u), so that xi = g(h(xj,u),u) =

gh(xj,u). Then, the (i,j) entry of M(gh) is u. Conversely, if the (ij) entry of M(gh)

is u, then xi = gh(xj,u), so that xi = g(h(xj,u),u). Now, the value h(xj,u) is, by

definition, an element of X, say the element xk, k e {1, ..., n}. Then, xk = h(xj,u) and

xi = g(xk,u), which implies that (ii) is valid for this k. Thus, we have shown that (ii) is

equivalent to

(iii) Mij(gh) = u.

Using the fact that (ii) is equivalent to (i), the Lemma follows. *

Thus, the product of two transition matrices with two different transition functions

is the transition matrix of the composition of the two functions in the order of

multiplication. Consider now the a machine Y with recursion function f. Let M(f) be









its one-step transition matrix. Then, by Lemma 3-4, M(f)M(f) = M(f2), M(f2)M(f) =

M(f3), and so on. This leads to the following corollary.

Corollary 3-5 Let Y = (A,X,xo,Y,f,h) be an asynchronous machine. Then, for

every integer p > 0, the one-step transition matrix satisfies MP(f) = M(fP). *

Consider a machine Z = (A,X,xo,Y,f,h). As mentioned earlier, a stable

combination (x,u) of Y can be considered as a cycle of length 1. This observation

helps simplify the following statement, which forms an important tool in our process of

finding all cycles of the machine Y.

Lemma 3-6 Let Y be an asynchronous machine with the recursion function f and

the state set X = {x1, ..., xn}. Let xi e X be a state and let u be an input character of

Y. Then, the following three statements are equivalent.

(i) There is an integer c > 1 such that xi = f(xi,u)

(ii) u appears on the (i,i) diagonal entry of the matrix Mt(f).

(iii) (xi,u) is a pair of a cycle whose length X is an integer divisor of c.

Proof 3-6. First, we show that (i) implies (ii). Assume that (i) is valid, so that xi =

ft(xi,u) for some integer c > 1. Then, by Equation 3-2, the character u appears on the

diagonal entry (i,i) of the matrix M(ft). By Corollary 3-5, M(f) = MZ(f); this implies

that u appears on the diagonal entry (i,i) of the transition matrix MZ(f).

Next, we show that (ii) implies (iii). Let k > 1 be the smallest integer satisfying

xi = f(xi,u). Then, < Tc. Now, if k = 1, then (xi,u) is a stable combination of Y, and

hence forms a cycle of length 1. Otherwise, (xi,u) is a pair of the cycle {xi, f(xi,u), ..,

fl-1(xi,u); u} of length k.









Now, using the integer division algorithm, we can write c = qX + p, where q and

p are integers and 0 < p < k. If p > 0, then, using the equality xi = f(xi,u), we can

write xi = f(xi,u) = fP(fq(xi,u),u) = fP(xi,u), so that xi = fP(xi,u). The latter contradicts

the fact that X was the smallest integer satisfying xi = f(xi,u), since 0 < p < k. Thus,

we must have p = 0, and X must be an integer divisor of c.

Finally, we show that (iii) implies (i). Assume that (iii) is valid, i.e., that (xi,u) is a

pair of a cycle whose length k is a divisor of c. Then, there is an integer q such that c

= qk. But then, ft(xi,u) = fq(xi,u) = xi, and (i) is valid. This concludes the proof.

Thus, by taking the powers of the one-step transition matrix M(f) and observing

the diagonal matrix at each step, the states of the machine involved in cycles can be

isolated. The next lemma indicates a method of identifying the elements of each cycle.

Lemma 3-7 Let Y be an asynchronous machine with state set X = {x, ..., xn}

and recursion function f. Assume that Y has a cycle of length k > 1 that includes the

pair (xJo,u). Then, the other states xJi, ..., xJi-1 of the cycle can be found from the matrix

M(f) in the following way: for every integer i = 0, ..., k-2, the index ji+l is given by the

position of the entry u in the column ji of the matrix M(f).

Proof 3-7. Consider a cycle of length > 1. Let {xJo, xi1, ..., xJ 1} be the states

involved in the cycle, and let u be the input character. We know f(xio,u) = xJ. This

implies that the input character u appears exactly in the position (jo, j ) of the matrix

M(f). Thus, the value of ji is given by the position of the character u in the row jo.

Continuing recursively, assume that, for some 0 < k < X, the indices jo,, ..., jk of the

states xJo, xJi, ..., xJk of the cycle have been found. Then, since xJk+1 = f(xJk,u), the









character u will appear exactly in position jk+l of the row jk of the matrix M(f). This

concludes our proof.

Thus, the knowledge of the states involved in cycles of a particular length can be

used to find the cycles specifically by applying Lemma 3-7. An algorithm that finds all

the cycles of an asynchronous machine Y whose recursion function is f will now be

outlined. Let #A denote the number of elements in the set A.

Algorithm 3-8 Let Y = (A,X,xo,Y,f,h) be an asynchronous machine, and let M(f)

be its transition matrix.

Step 1: All entries on the main diagonal of M(f) represent stable combinations

(i.e., cycles of length 1). For each input character u e A, let Ai(u) be the set of all

states for which u is included in a diagonal entry of the matrix M(f); set 41(u) := A(u).

Step 2: For i > 2, let Ai(u) be the set of all states for which u is included in a

diagonal entry of the matrix Mi(f). Define the difference set

si(u) := Ai(u) \ UI <

Stop the algorithm for the character u when i+1 > n 1 #aj(u). *

The significance of Algorithm 3-8 is pointed out by the following statement.

Proposition 3-9 Let i > 1 be an integer. Then, in the notation of Algorithm 3-8,

the following are true.

(i) The set 4i(u) consists of all states of the machine Y that are members of cycles

of length i with the input character u.

(ii) The machine Y has exactly #,i(u)/i cycles of length i.









Suppose there are 2X states in 4j(u). This means there are 2 cycles of length k

in the machine. Pick one state from 4j(u); use Lemma 3-7 to find the other k-1

members of that cycle. Now, pick another state from the k remaining states in 4j(u),

and using Lemma 3-7, the second cycle can be determined. This procedure is extended

to any number of cycles of a certain length.

Proof 3-9. Let X = {x1, ..., xn} be the state set of Y, and let u e A be a character

of the input set. By Lemma 3-6, the following two statements are equivalent:

(a) The matrix Mi(f) has an entry including u on its main diagonal, in a column

that corresponds to the state xr of y.

(b) The state xr is a member of a cycle whose length is i or an integer divisor of

i.

The case i = 1 is simple, since the elements on the main diagonal of M(f)

represent the stable combinations of the system, and whence the cycles of length 1. For i

> 1, assume that the algorithm has not stopped before i, i.e., that i < n Y' #8j(u).

Then, a slight reflection shows that the construction Equation 3-7 of ,i(u) removes all

states that are included in cycles of length less than i. Combining this with the

equivalence of (a) and (b), it follows that xr E 4i(u) if and only if xr is a member of a

cycle of length i.

Finally, consider the case where i+1 > n '1 #aj(u), and u(u) be the number of

states of Y that are members of cycles of length k < i with the character u. From the

definition of 4j(u), it follows that u(u) = '1 #aj(u). Thus, when i + 1 > n u(u), there

are not enough states left to form a cycle of length i + 1 with the character u; whence









the machine Y has no cycles of length greater than i with the character u. This

completes the proof of part (i) of the Proposition.

Regarding part (ii) of the Proposition, note that the set ,i(u) consists of all states

that form cycles of length i with the input character u. By Lemma 3-2, no two cycles

can have common states. Consequently, the number of elements of ,i(u) is a multiple

of i, and the number of cycles in 4i(u) is given by #,i(u)/i. This concludes our proof.



3.3 Stable State Representations for Machines with Cycles

In this section, a form of representation of only the next stable states and the

extension of the definitions to the case of a machine with cycles will be explained. For

an asynchronous machine Y = (A,X,Y,xo,f,h) without cycles, a valid pair (x,u) always

has a next stable state x'. Consequently, for such a machine, one can define a partial

function s : XxA X by setting s(x,u) = x' for every valid pair (x,u). The function s

is then called the stable recursionfunction of the machine Y. When s is used as a

recursion function, it induces the stable-state machine Is = (A,X,Y,xo,s,h). The stable

state machine describes only persistent states of the machine, and ignores unstable

transitions. This function describes the behavior of Y as experienced by a user, i.e., the

transition of the machine to its next stable state is described. A reformulation of the finite

state machine with cycles will now be explained, so that an equivalent stable state

machine can be described from this reformulated machine.

As mentioned earlier in Chapter 2, asynchronous machines are normally operated

in fundamental mode. In specific terms, fundamental mode operation is as follows. Let

Y be an asynchronous machine without cycles, resting in a stable combination (x,uo).









Consider a string of input values u = ui...Uk e A' applied to the machine. When the

input of X switches to ui, the machine may engage in a string of transitions culminating

in the next stable state s(x,ul). In fundamental mode operation, the input character ui is

kept fixed until the machine has reached its next stable state, to guaranty deterministic

behavior. Then, once the machine reaches the stable combination (s(x,ul),ul), the input

character is switched to u2, and the machine eventually settles on its next stable state

s(s(x,ul),U2). This process continues until we reach the final input value uk. The last

stable state reached in this process is given by x" := s(... (s(s(s(x,uo),ul),2)...,Uk). To

simplify our notation, we shall write in brief x" := s(x,u).

As mentioned earlier, the stable state machine describes persistent states of an

asynchronous machine. For machines with cycles, a cycle describes a persistent state of

the machine (i.e., the "state" of being in a cycle). Hence, when cycles are present, they

must be represented in the stable state machine. Our next objective is to generalize the

definition of the stable state machine, so it gives due representation to cycles, whenever

they are present.

Consider an asynchronous machine X = (A,Y,X,xo,f,h) having t > 0 cycles pi,

..., pt. To define a stable state machine XIs that represents the persistent behavior of X,

we first augment the state set X of X by t new elements xn+1, ..., xn+t to obtain the

augmented state set

XP := X U {xn+l, ..., xn+t}. (3-8)


Each one of the new states, called the cycle states, corresponds to one of the cycles

of X, i.e., xn+i corresponds to the cycle pi, i = 1, ..., t.









Define the function s' : XxA XP by setting

{s(x,u) if x e X and (x,u) is a stable combination,
sl(xu = (3-9)
xn+ if (x,u) e pi.

For a cycle p = {xkl, xk2, ..., xkp;a}, ki e [1,...,n], denote

sl[p,u] := {s(xk,u), sl(xk2,u), ..., sl(xkp,u)}. (3-10)

Now, the function s2 : XPxA XP is defined by setting

s(xu) if x e X,
s2(x,u) := i x (3-11)
s [pi,u] if x = xn+

The generalized stable state machine EIs of Y is then the input/state machine

defined by quintuple (A,XP,xo,s2). For the sake of notational convenience, we will omit

the primes from s2 in the future, and write YIs = (A,XP,xo,s). The function s is called

the generalized stable recursion function of E.

A cycle p associated with a cycle state x is said to be stoppable if there exists an

input character u e A such that at least one of the outcomes of s(x,u) e X. In the

present work, we assume that all the cycles are stoppable. It is necessary to make this

assumption; if not, there will be no controller that can stop the cycle.

Note that when there are no cycles, the generalized stable recursion function of X

is identical to the stable recursion function of Y. Let c|s, be the generalized stable state

machine induced by the closed loop system Ec shown in Figure 1-1. The present work

concentrates on finding the solution to the next statement; consequently, this statement is

the main topic of our discussion.









The Model Matching Problem 3-10 Let X be a machine and let X' be a stable

state machine with the same input and output alphabets as E. Find necessary and

sufficient conditions for the existence of a controller C such that the generalized stable

state machine Ecs = E'. When C exists, provide a method for its design. *

The controller C of Problem 3-10 assigns to closed loop system the stable state

behavior of the specified machine X'. Of particular interest to us here is the case where

the machine X has infinite cycles. In such case, the controller C of 3-10 eliminates the

effect of infinite cycles on the closed loop system. The model matching problem for

asynchronous machines with critical races, but not infinite cycles, was discussed in

Murphy 1996, Murphy, Geng and Hammer 2002, 2003, Geng 2003- In the following

section, a solution for the model matching problem for the case where the controlled

system X has infinite cycles is derived, and in Chapter 5 the design of an appropriate

controller is demonstrated by means of an example.

3.4 Stable Reachability

The extension of the stable state machine to machines with cycles will now be

described. This requires a reformulation of the machine. Consider an asynchronous

machine X represented by the sextuple (A,Y,X,xo,f,h), and assume that X has t > 0

cycles pi, ..., pt. Let Xis = (A,XP,xo,s), where XP X U {xn+l, ..., xn+t}, and xn+i is the


generalized state corresponding to the cycle pi. We aim to define the notion of stable

reachability for the machine X so as to characterize the "stable" states X can reach from

a given initial condition, in response to various input strings. To this end, we need to

define several notions. A generalized stable combination of the machine X is either a









stable combination of X or a pair of the form (xn+i,u), where u is the input character of

the cycle pi. A state of XIs is potentially stable if it is part of a generalized stable

combination of X.

When applying a control input to a machine that is in an cycle, it is not possible to

operate in the fundamental mode. The input character must be changed while the cycle is

in progress in order to attempt to interrupt the cycle. In other words, the input character

is changed while the machine is not in a stable combination. Of course, if this change in

input leads the machine to a stable combination, then fundamental mode operation can be

resumed from there on. We arrive at the following notion, which describes the mode of

operation that is closest to fundamental mode operation.

Definition 3-11 A machine X is said to operate in semi-fundamental mode if the

machine operates in fundamental mode when it is not in an cycle. *

Recall that the states of the generalize stable-state machine XIs are either

potentially stable states of X or cycle state that represent cycles. Thus, semi-

fundamental mode operation of X becomes fundamental mode operation of XIs.

Definition 3-12 Let X be an asynchronous machine with generalized state set XP

and generalized stable recursion function s. A state x' e XP is stably reachable from a

state x e XP if there is a input string u =uoui...uk of X for which x'= s(x,u). *

The following assumption is essential in determining the controller operation. If an

input character forms a valid combination with one outcome of a critical race, then it

forms a valid combination with all other outcomes of the same race. This assumption can

always be satisfied by extending the definition of the recursion function of the machine.









It is necessary to assume this statement because we need the controller to be operational

will all outcomes of the critical race that follows the cycle.

3.5 Matrix of Stable Transitions and the Skeleton Matrix

Consider an asynchronous machine Y = (A,Y,X,xo,f,h) with the state set { x1, ...,

xn}, and assume that Y has t > 0 cycles pi, ..., pt. Let is = (A,XP,xo,s), where XP=

X U {xn+l, ..., xn+t} and xn+i is the generalized state corresponding to the cycle pi. Let


sx(xJ,xi) be the set of all characters u e A such that x1i s(xi,u). The matrix of one-step

generalized stable transitions gives all the possible stable one-step transitions of the

machine i|s; it is an (n+t)x(n+t) matrix R(i|s), whose (i,j) entry is given by


rsx(xJ,xi) if sx(xJ,xi) # 0,
Rij(|s)- (3-12)
SN otherwise,

i, j = 1, ..., n+t. Recall that, if xJ is a generalized state, then a critical race may occur

when an input character u is applied at xJ. This race is represented in the matrix R(Yis)

by the appearance of the character u in more than one row of column j. Note that

Equation 3-12 is similar to Equation 3-2, except for the fact that R(Yis) has some

augmented states instead of cycles. We turn now to a description of some operations on

the matrix R(Yis).

Let A* be the set of all words over the alphabet A. The operation of unison / is


defined over the set A* U N as follows. Let wi, w2 be either subsets of the set A* or


the character N; then, set









wI U w2 if w1 c A* and w2 c A*,
w1 if w1 c A* and w2 =N,
wi W w2 := (3-13)
w2 if w = N and w2 c A*,
N if w = w2 = N.


Extending this definition to matrices, the unison C := A 1 B of two nxn matrices


A and B is defined by Cij := Aij J Bij, i, j = 1, ..., n, i.e., an element-wise operation as


defined in Equation 3-13-

As usual, the concatenation of two words wi, w2 e A* is given by wiw2, i.e., wl

followed by w2. For elements wi, w2 are elements of A* or the character N, the

concatenation is defined as follows.

WiW2 if Wl, W2 e A*,
conc(wi,w2) := N if N o 2 N. (3-14)
N if w, =N or w2 =N.

More generally, let W = {wi, w2, ..., Wq} and V = {vI, v2, ..., Vr} be two

subsets, whose elements are either words of A* or the character N. Define

conc(W,V):= Ui=l,...,q conc(wi,vj). (3-15)
j=l,...,r


Note that the concatenation is either a subset of A*, or it is the character N. The

concatenation is non-commutative, and N takes the place of a "zero".

Let C and D to be two nxn matrices whose entries are subsets of A* or the

character N. Let Ci and Dij be the (i,j) entries of the corresponding matrices. Then, the

product Z := CD is an nxn matrix, whose (i,j) entry Zj is given by

Zij := L lconc(Cik,Dkj), ij = 1, ..., n. (3-16)









Using this notation, we can define powers of the one-step transition matrix

recursively, by setting

RW(l|s) := RW (Els)R(ils), |t = 2, 3, ... (3-17)

The matrix R"(EXs) has the following physical significance. The (ij) element of

R"(Yls) is the set of all input strings that take xJ to xi in exactly [t steps. Thus, R"(Yls)

is called the matrix ofu -step stable transitions. This follows from Corollary 3-5, which

states that the powers of the one-step transition matrix is equal to the transition matrix of

the powers of the recursion function, i.e., the steps of the transition matrix.

Define the matrix

R(")(EIs) := Uk=l... Rk(ls), v=2,3,...,(n+t-1). (3-18)


By construction, the (i,j) entry of R( )(Ys) consists of all strings that can take the

machine Yls from the state xJ to the state x1 in [t or fewer steps. The following

statement is important to our discussion; the proof is similar to that of Murphy, Geng and

Hammer, 2003, Lemma 3-9.

Lemma 3-13 The following two statements are equivalent:

(i) There is an input string that can take the machine Yls from the state xi to the

state x1.

(n+t-1)
(ii) The ij entry Rij (Ys) N. *

Now, R(n+t-1)(Yls) contains not only the stable transitions, but also the critical races

that are cause when an input character is applied to a cycle state. To satisfy the model

matching problem, we need a matrix for which the same input string does not lead to









multiple outcomes. This is achieved by modifying the above matrix. This modified

matrix is at the center of our discussion.

Definition 3-14 Let Y be an asynchronous machine. The matrix of stable

transitions T(I|s) is constructed by performing the following operation on each column

of the matrix R(n+t-1)(Yis): remove all occurrences of strings that appear in more than one

entry of the column; if empty entries result, replace them by the character N. *

To understand the significance of the matrix T(I|s), it is instructive to compare it to

the matrix R(n+t-1)(lsi). A string u in the (ij) entry of the matrix R(n+t-1)(lis)

indicates, of course, that u takes I|s from xJ to xi. However, if the string u appears

in another entry in column j of R(n+t-1)(YIs), say in entry k, then the same string may

also take YIs from xi to xk; this indicates a critical race. The construction of the matrix

T(l|s) removes then all transitions that involve critical races. As a result, an input string

u that is included in the (i,j) entry of T(I|s) takes the machine YIs from the state xJ to

the state xi, and to no other state.

Definition 3-15 Let Y be an asynchronous machine with the generalized state set

{x1, ... xn+t}. A generalized stable transition from a generalized state xi to a generalized

state xi is a uniform transition when one of the following is true: (i) xi can be reached

from xJ without passing through a critical race, or (ii) there is a succession of critical

races through which xi can be reached from xJ for all possible race outcomes. *

Note that in case (ii) of Definition 3-15, the input string applied to the machine may

depend on the outcomes of the critical races encountered by the machine along its way

from the state xJ to the state xi. Specifically, let x(k,p) be outcome k of race p along









the way from xJ to x1. The input string applied to the machine will then be a function of

the outcomes u(x(kl,,l1), ..., x(ki,,,pl)) The set Ua= 1...,ru(x(kr,l,1), ..., x(kr,,pr,)) is


(i,j) transition set, where r is the number of possible input strings taking into account all

the critical races encountered in the path from xJ to xi. This means that pr races are

encountered in the path followed by the rth string, and x(kr,,pr,) is the outcome kr,p of

the race pr. Further, By construction, the elements of T(I|s) will contain sets of strings

that satisfy the following proposition.

Proposition 3-16 The (i,j) entry of T(I|s) is different from N if and only if there

is a uniform transition from xJ to xi. Furthermore, if the (i,j) entry of T(I|s) is not N,

then it includes an (i,j) transition set. *

Thus, depending on the sequence of critical races that occur, the entries of T(I|s)

gives a set of strings that can be used for the control process. The skeleton matrix is now

defined as follows matrix:

Definition 3-17 Let T(I|s) be the matrix of stable transitions of the generalized

stable state machine Is. The skeleton matrix K(X) of Y is a matrix of zeros and ones,

whose (ij) entry is given by

ri if Tij(s) N,
Kij() = I (3-19)
0 otherwise

i= 1,...,n,j = 1,...,n+t. *

The skeleton matrix K(X) has a simple interpretation. In view of Lemma 3-13, the

following is true









Proposition 3-18 Let K(X) be the skeleton matrix of a given machine Y. Then,

the (ij) entry of K(X) is 1 if and only if there exists a string that takes the machine XIs

from the generalized state xJ to the state xi and to no other state. *

The skeleton matrix plays a critical role in our discussion, reminiscent of the role it

played in Murphy, Geng and Hammer 2002, 2003-

3.6 Corrective Controllers

The basic considerations in the construction of a corrective controller and its

limitations for asynchronous input/state machines will now be outlined. Let X be an

asynchronous machine, being controlled in the configuration Figure 1-1 with the

controller C. Recall that Yc denotes the closed loop machine of Figure 1-1; let Xc|s be

the stable state machine induced by Yc. Now, let X' = (A,X,xo,s') be a stable state

input/state machine, with the same input set and the same state set as the machine Y.

Referring to the configuration Figure 1-1 and the Model Matching Problem 3-10, we are

investigating the existence of a controller C for which c|s, = X'.

Consider the input/state machine X = (A,X,X,f,h) and the controller C =

(AxX,A,E,4,r). Let the generalized stable state machine associated with X be X1s. As

shown below, the controller C will operate in the semi-fundamental mode: when the

controlled machine X moves toward a stable combination, the controller C will operate

in fundamental mode it will keep its output value constant until X has reached its next

stable combination; however, if X moves into an infinite cycle, the controller has no

choice but to change its output value while X is cycling otherwise, X will remain in the

cycle forever. In this case, the controller operates in the semi-fundamental mode.









Recalling that Y has the state set X and that C has the state set E, it follows that

the composite machine Yc of Figure 1-1 has the state set XxE. We can then represent

Ec by the quintuple (A,X,XxE,fc,hc), where fc is the recursion function of Yc and he

is its output function. Being an input/state system, the machine Y has the output

function h(x,u) = x. As the output of Yc is the same as the output of Y, it follows that

hc(x,,,v) = x. Formally, let 7tx: XxE-X : 7Tx(x,) -> x be the standard projection.


Then, we have he = 7tx.

Now, let y be the recursion function of cIs. We know that the output of c|s, is

the state of Y. So, if cIs = Y', then, for every valid pair (x,v) of Y', there is a state e

E for which (x,i,v) is a valid pair of c|,s. This leads to the conclusion

hcy(x,,,v)= s'(x,v), (3-20)

and, using the equality he = 7x, we obtain 7Txy(x,,,v) = s'(x,v). Note that, if s' is not

constant over one of the cycles, then the response of the closed loop machine will depend

on the state of the cycle at which the input character is applied, creating a critical race. In

other words, in order for the response of the closed loop system to be deterministic, the

stable recursion function of the model must be constant over each cycle of the controlled

machine Y. To state this fact formally, consider a cycle p = {xkl, xk2, ..., xkp;a}, ki E

[1,...,n], of the machine Y. Let s'{p) := {s'(xk,a), ..., s'(xkp,a)}, i.e., the set of values of

s' over the cycle. We say that s' is constant over the cycle p if all members of the set

s'{p} are identical.









Proposition 3-19 Let Y and 2' be two machines, where 2' is a stable state

machine. Assume that there is a controller C such that c Is = Y'. If the closed loop

machine c|s, has a race free response, then the recursion function s' of the model 2' is

constant over every cycle of Y. *

We are now ready to state one of the main results of our discussion. The following

theorem deals with the fundamental conditions for the existence of a model matching

controller (compare to Murphy, Geng and Hammer 2002, 2003, Theorem 4.3). Before

stating the theorem, we need some notation. For a cycle state z e XP, let p(z) = {a; xk,

xk2, ..., xkp}, ki e [1,...,n], be the corresponding cycle, and let 7Txp(z) := {xkl, xk2, ..., xkp

} be the states of the cycle. Define

i z if z is a regular state,
P(z)= (3-21)
t=xp(z) if z is a cycle state.

Note that (p(z) is always a set of regular states, not cycle states.

Theorem 3-20 (Existence of Controller) Let Eis = (A,XP,xo,s) be the generalized

stable state machine induced by an input/state machine Y = (A,X,xo,f). Let z1, ..., zk be

generalized states of Eis and let U1, ..., Uk be sets of input characters such that zlxU1,

z2xU2, ..., zkxUk are distinct sets of valid pairs of is. For each i = 1, ..., k, let z'i be a

state of Y that is stably reachable from the generalized state z1. Then, there exists a

controller C for which c|s, is equivalent to a stable state machine 2' = (A,X,xo,s'),

whose recursion function s' satisfies

(i) s'[p(zi),Ui] = z'i for all i = 1,...,k, and

(ii) s'(x,t) = s(x,t) for all (x,t) e XxA / Ui=1 ...,k ZixUi.









Moreover, the closed loop system Yc is well posed, and it operates in the semi-

fundamental mode.

Proof 3-20. By Proposition 3-19, the recursion function of the model is constant

over all cycles of the machine Y. Thus, since z'i is stably reachable from the

generalized state zi, there exists a string wi e A+ such that s(zi,wi) = z'i, where s is the

stable recursion function of Y. Let m(i) be the length of wi; write wi = v ...vm(i)1

where vo, v., ..., vm(i)- are individual characters of the input alphabet A and i = 1,...,

k. With this input string wi, the recursion function s generates a string of generalized

states, which we denote by

xi, := s(zi,vi),
xi,2 := s(x l,v ), ...,
xi,m(i)- := s(xi,m(i)-2vm(i)-2),
:= s(xim(i-l,vm(il-), i = 1, ..., k. (3-22)

Let U(zi) c A be the set of all input characters that form stable combinations with

the generalized state zi, i = 1, ..., k. Define the following sets:

S := Ui=1, ..., k ziU(zi),
V := Ui=l, ..., k zixUi, (3-23)


where Ui are the input character sets given in the statement of the Theorem. Then, a

controller C = (AxX,A,E,4,r) that satisfies the requirements of Theorem 3-20 can be

constructed as follows.

(i) The state set E of C has 2 + lm(i) states given by









= 1, El im(1) 1 m(2) m(k)} (3-24)
^ 05- 0, 1. 5' 2'!$- --' ^2!- -, '*' ^' **' k (3-24)

The significance of these states is explained below.

(ii) The initial state of the controller C is o0. The controller moves to the state

j1 upon the detection of a stable combination with one of the generalized states zl,..., zk

e XP. Note that, for cycle states, this transition occurs during the cycle, and is therefore a

semi-fundamental mode transition. For states that are not cycle states, this transition is in

fundamental mode. To implement these transitions, the recursion function 4 of C is

defined by

(ko,(z,t)):= o for all (z,t) E XxA \ S,
(,o,(x,u)) := 1 for all (x,u) e S. (3-25)

The state o indicates that the machine X is not in a state in which its response

must be changed, and hence, when in the state o, the controller does not interfere with

the operation of X; it simply applies to X its own external input. To this end, the output

function r of C at the state o is defined by

r(o,(z,t)) := t for all (z,t) e XxA. (3-26)

The output function at the state ,1 is defined as follows. Choose a character ui e U(zi);

set

r(li,(zi,t)) := ui for all t e A, i = 1, ..., k. (3-27)

Then, the machine X continues to rest at the generalized state z1.

(iii) Next, assume that X is in a stable combination with the generalized state zi, i

= 1, ..., k, and an input value u e Ui is applied. Then, the controller C will begin to









apply the string wi to Y, to take Y to the state z,. To this end, the recursion function of

C is defined as follows.

(l,(zi,u)) := i for all u e Ui, i = 1, ..., k;
4(1,(z,t)) := o for all pairs (z,t) e XxA\V. (3-28)

Upon reaching the state i, the controller generates the first character of the input string

wi of Y, to start taking Y to the desired state z'i. Accordingly, the controllers output

function value at this point is

r(G,(z,t))= v0 for all (z,t) e XxA, i = 1, ..., k. (3-29)

Upon application of this input character, the machine Y will move to its next generalized

stable state xi,1, where (xi, vi) is the next generalized stable combination.

(iv) In order for the controller to continue to generate the string wi as input for Y,

we define its recursion function as follows.

(,,(xid,u)) := ,1 for all u e Ui, (3-30)

j = 1,...,m(i)-l, i = 1, ..., k. Now, the controller feeds to Y the next character in the

string wi, i.e., the character vi. So the output function must satisfy

r(i ,(z,u)) := v for all (z,u) e XxA, (3-31)

i = 1,...,k,j = 1, 2, ..., m(i)-l.

(v) At the step j = m(i)-l, the controller completes generating the string wi. It

assumes then a stable combination, and continues to feed the input character vm(i) 1 until

its external input character is changed. To implement these requirements, the transition

and output functions of the controller are defined by









(((i),(z'iu)) := m(i) for all u e Ui
(i),(z,t)) := o for all (z,t) e XxA\ z'ixUi,
m(i) m(i) 1
r(i(i),(z,u)) := v(i). (3-32)

k
i = 1,...,k. Note that, since the state-input sets {zixUili=l are all disjoint, there is no

ambiguity in the definition of the recursion function 4.

From the above construction, the stable recursion function y of the closed loop

system Ec can be deduced. On analysis, this recursion function satisfies, for all i =

1,...,k:

y(zi,o,u) = (s(zi,u),S1) for all u e U(zl),
y(z,o,t) = (s(z,t),o) for all (z,t) e XxA\(SUV),
y(zi,l4,ui)= (z'i, m(i)) for all ui e Ui,
y(zi,l,u) = (zi,1) for all u e U(zi),
y(zi,,l,t) = (zi,,o) for all t e A\(U(zi) U Ui),
y(z'i,m(i),u) = (z'i,gm(i)) for all u e Ui,
y(z,im(i),t)= (s(z,t),o) for all (z,t) e XxA\z'ixUi, (3-33)

i = 1,...,k. Thus, the equivalence of 7xY and s' as defined in the beginning of this

section holds true. Also, the closed loop system operates in the semi-fundamental mode

as the definitions of 4 and r specify. We know E is an input-state system, hence it is

strictly causal; consequently the closed loop system ,c is well posed (Hammer 1996).

This concludes the proof. *

Chapter 4 deals with the specific solution to the model matching problem for this

problem. The necessary and sufficient conditions for the existence of the controller,

using the skeleton matrices are put forward, and if the controller exists, an algorithm to

construct the states is also given.














CHAPTER 4
THE MODEL MATCHING PROBLEM

In this section we present a solution to the model matching problems for machines

with infinite cycles. The solution to the model matching problem for deterministic

systems and for machines with races was presented in Murphy, Geng and Hammer,

(2002, 2003). Let Y be an asynchronous machine with all cycles stoppable, and let 2'

be the stable-state model to be matched. The skeleton matrix Ko(') of the model 2' is

given as in Definition 3-17. For the solution to the model matching problem, a form of

the skeleton matrix with columns augmented to include the solution to cycles is

introduced; this is the augmented skeleton matrix K(2').

The matrix K(2') is an nx(n+t) matrix of zeros and ones. It is obtained by

augmenting the matrix Ko(') with t columns corresponding to the cycle states, as

follows. Let z be a cycle state, and let 7Txp(z) be the states of the cycle. Then,


K (E'), i,j = 1,...,n,
Kij(Y')= 1 if K (Y')= 1 for all xk e 7xp(x), i = 1,...,n, j = n+l,...,n+t, (4-1)
0 otherwise.


In view of Proposition 3-19, the model 2' can be matched only if its stable

transition function is constant over the states of each cycle of Y. Assume then that 2'

satisfies this requirement. In such case, it follows by Equation 4-1 that the entries of the

column corresponding to xk, k = n+l,...,n+t in K(X') are all 1. The solution to the

model matching problem for a machine with infinite cycles can now be stated as follows.











Theorem 4-1 Let Y be an asynchronous machine all of whose cycles are

stoppable, and let i|s = (A,XP,xo,s) be the generalized stable state machine induced by

Y. Let 2' = (A,X,xo,s') be a stable-state input/state machine with the same state set X

and the same input set A as those of Y. Let K(X) be the skeleton matrix of Y, and let

K(X') be the skeleton matrix of Y'. Then, the two following statements are equivalent.

(i) There is a controller C for which the closed loop system c|s, is equivalent to

2', where cIs operates in the semi-fundamental mode and is well posed.

(ii) The skeleton matrices satisfy K(X) > K(E').

Theorem 4-1 provides a simple necessary and sufficient condition for the existence

of a solution to the model matching problem for systems with infinite cycles. The proof

of the Theorem, which is provided later in this section, includes an algorithm for the

construction of an appropriate controller C. When the model matching problem is

solvable, the controller C operates by transforming into unstable combinations all

generalized stable combinations of Y that do not correspond to stable combinations of

the model Y'. In this way, the stable state machine c|s, induced by the closed loop

system becomes stably equivalent to Y'.

The skeleton matrix of the given machine K(X) is never fully zeros, since each

state is potentially stable. Thus, there always exists a stable state machine Y" with

skeleton matrix equal to K(X). When considered as a model, the machine Y" satisfies

condition (ii) of Theorem 4-1. Consequently, there is a controller C for which cIs = ",

and this controller eliminates the effects of the infinite cycles of Y. Thus, feedback









controller can turn every machine with stoppable cycles into a deterministic stable state

machine.

We turn now to a preliminary technical discussion that will lead us to the proof of

Theorem 4-1. Let s be the stable recursion function of the generalized stable state

machine EIs of E, and let s' be the stable recursion function of the model E', with the

co-domain of s' extended to XP. Build the discrepancy set of E as

D(E,E') := {(x,u) e XxA : (x,u) is a valid pair of E'
and s(x,u) s'(x,u)}. (4-2)

In intuitive terms, D(E,E') is the set of all valid pairs of E' for which the next stable

state of E' is different from the next generalized state of EIs.

Now, since K(E) > K(E'), for each (x,u) e D(E,E'), there exists an input string w

e A+ for which s(x,w) = s'(x,u); let

S(x,u) c- A+ (4-3)

be the set of all input strings w satisfying s(x,w) = s'(x,u). Next, consider a pair (x,u)

e D(E,E') and an input string w e S(x,u). Let P(E,x,w) be the corresponding path of

E, and let

p(E) := {(z,r) : (z,r) e XxA, (z,r) e pi, i = 1,...,t) (4-4)

be the set of all state-input pairs involved in cycles. Define the set

DN(E,E') := {(x,u) e D(E,E') : there is a string w e S(x,u) such that
P(X,x,w)n p(X) = 0}. (4-5)


For elements (x,u) e DN(E,E'), the machine E can reach the value s'(x,u)

without passing through a cycle. Here, the controller will simply feed to E the string w,









so that the next stable state of the combination Yc will match the next stable state of the

model Y'.

Finally, on the difference set

Dc((,Y') := D( ,:')\DN(=,X'), (4-6)

the machine Y cannot match the response of 2' without passing through a cycle. In this

case, the controller will have to generate an input string for Y that will initially drive the

machine into a cycle, and then take it out of the cycle. When Y comes out of the cycle,

its next state may be one of several possible states, as exit from a cycle may give rise to a

critical race. The controller will then have to resolve the indeterminancy of the race and

drive the machine to the next stable state determined by the model 2'. The exact process

by which this is accomplished is described in the following proof.

Proof 4-1. Assume first that condition (i) of Theorem 4-1 is valid, i.e., that there

exists a controller C such that c|s, = Y'. Let Sc be the stable recursion function of Yc,

and recall that s' is the stable recursion function of the model 2'. The last equality

implies that c,(x,u) = s'(x,u) for all pairs (x,u) e XxA. Now, since the controller C

accesses Y only through its input, there is a string w(x,u) e A+ such that Sc(x,u) =

s(x,w(x,u)) where s is the stable recursion function of Y. Consequently, s(x,w(x,u))=

s'(x,u), and the state s'(x,u) is stably reachable from the state x in the machine Y.

Thus, any state that is stably reachable from the state x in the machine 2' must also be

stably reachable from the state x in the machine Y. In other words, K(X) > K(2'), and

we conclude that part (i) implies part (ii).









Conversely, assume that (ii) is true, i.e., that K(X) > K(X'). We construct below a

controller C that satisfies statement (i) of Theorem 4-1. Recalling the set D(X,2') of

Equation 4-2, note that if D(X,2') = 0, then the stable transition function of Y matches

that of Y', and no controller is needed. Next, consider the case D( 0,2') 0. Define the

set D by replacing in D(X,2') all the pairs included in cycles by the corresponding

generalized pairs, that is,

Dc := {Dc(X,') \ p(X)} U {(xn+i,u) : pi D(n,X') 0} (4-7)


The set of all input characters that pair with a state x in D is given by

D(x) := {u e A: (x,u) e D}. (4-8)

Let rx : XPxA -> XP: (x,u) -> x be the standard projection. Then, r7xD is the set


of all generalized states x e XP for which there is an input character u E A such that

(x,u) e D. Also, let U(x) be the set of all input characters that form a stable

combination with the generalized state x e XP. The set

V := x x U(x): x e ctxD} (4-9)

is then the set of all generalized stable combinations with states in rxD.

Suppose that DN(X,X') 0. Then, for each (x,u) e DN(X,X'), there exists an input

string w0(x,u) such that s(x,w0(x,u)) = s'(x,u) and the path P(X,x,w) does not contain

any cycle states. Let m(0;x,u) = Iw0(x,u)l be the length of this string, write it in terms of

0 0 0
its characters as w0(x,u) = wo(x,u)wl(x,u) ... wm(x,u)-l(x,u). Then, w0(x,u) takes the

machine through a succession of stable states, which we denote as follows.

0
xoI(x,u) := s(x,wo(x,u)),








0
x0'2(x,u) := s(x,1(x,u),wl(x,u)), ...,
xO,mn(x,u)-(x,u) := s(xOn(x,u)-2(X,U),Wm(x,u)-2(X,U)),

and, by selection of the string w0(x,u),

s(xm(x,u)-l(x,u),Wn(x,u)1(x,u)) = s'(x,u). (4-10)

Thus, to guarantee fundamental mode operation, we see that the controller must

have m(0;x,u) states associated with the pair (x,u). Now, let (zl,ul), ..., (zn(N),un(N)) be

the elements of DN(X,'). Then, for each pair (zi,ui) e DN(X,'), the controller needs

m(0;zi,ui) states to facilitate fundamental mode operation, say the states il(zi,ui), ..

m(o;zi,ui)(zi,ui). This leads to the set of controller states

EN:= R{l(zl,ul), ..., mn(o;z,ul)(zl,ul), ..., (zn(N),un(N)), ...,
m(o0;zn(N),un(N))(zn(N),un(N))}. (4-11)

In case DN(X,') = 0, set EN := 0.

We turn now to the set DC of Equation 4-7, assuming that it is not empty. Let

n(C) be the number of elements of DC. Recall that, for each pair of DC, the machine

must pass through at least one cycle in the process of matching the response of the model

Y'; one of these cycles may be the initial step.

Consider a pair (x,u) e DC, let T(1s) be the matrix of stable transitions of X.

Recall that the state set of Y is X = {xl, ..., xn} and the generalized state set of Y is XP

= {x1, ..., xn+t}. In the case x is a cycle state, say x = xY, where y e {n+1, ..., n+t}, let

p(xY) := {xv(1), ...,x(P)} c X. Setting xP := s'(xa(1),u) e X, it follows by Proposition 3-

19 that s'(xa(i),u) = xP for all i = 1, ..., p. The fact that x := s'(xa(i),u) implies that

Kpa(i)(X') = 1, i = 1, ..., p. By Equation 4-1, we then have that Kpy(X') = 1. The









inequality K(X) > K(X') implies then that the entry Tpy(|ls) is not empty. Furthermore,

letting w(x,u) be an element of Tpy(|ls), it follows by Proposition 3-18 that s'(x,u) =

s(x,w(x,u)). Consider now the path P(l|s,x,w(x,u)). Recalling that (x,u) e DC, the

following hold. If x is not a cycle state, then the path P(l|s,x,w(x,u)) must include a

cycle. If x is a cycle state, then P(l|s,x,w(x,u)) may or may not include an additional

cycle.

The string w(x,u) takes the machine through one possible outcome of each cycle

encountered along the path P(l|s,x,w(x,u)). Depending on the outcome of the critical

races that occur as the machine Y passes through the cycles along the path

P(l|s,x,w(x,u)), different strings may need to be used to take the machine to the state

s'(x,u). Let wo(x,u) be the initial segment of the string w(x,u) that takes the machine Y

to the state following the first cycle state along the path P(Xls,x,v(x,u)). By construction,

the shortest length of wO(x,u) is one character, and it is obtained when the state x is

itself a cycle state. The controller C initially feeds this string to the machine Y

character by character, to achieve semi-fundamental mode operation. The last character

of w(x,u) leads Y into a critical race, as it exits from the corresponding cycle. The

inequality K()) > K(X') implies that there is an input string that leads Y from each

outcome of this race to the next cycle along its way to the state s'(x,u). This string will

then similarly be generated by the controller and applied to the machine Y. This process

continues through each cycle encountered along the way, and is formally described next.

0
Writing the initial substring in terms of its individual characters, set w(x,u) = wo

0 0
(x,u)wl(x,u) ... wm(o;x,u)-l(x,u); here, m(O;x,u) = |w(x,u)l is the length of the string.









This string take the machine Y through the following sequence of generalized stable

states.

0
xo,(x,u) := s(x,wo(x,u)),
0
x0,2(,) := S(X0,1(X,U),Wl(x,u)), ...,
xO,m(0;x,ul(xu) := S(xO0,m(;x,u)-2(X,U),Wm(0;x,u)-2(X,U)),
X(1)(x,u) := s(xOm(O;xu)-l(x,u),Wm(o;x,u)1(x,u)), (4-12)

where X(1)(x,u)= {x(1,1), ..., x(1,ri)} c X is the set of all states of Y that form

possible outcomes of the critical race. Since the string w0(x,u) takes Y up to one step

past a cycle state to the outcome of the corresponding critical race, it follows that

xo,m(o;x,u)-l(x,u) is a cycle state. Note that if the initial state x is a cycle state, then

m(0;x,u) = 1, namely, the substring wO(x,u) has just a single character.

The next substring of characters in w(x,u) takes the machine from the present

outcome of the cycle to the outcome of the next cycle (or to the final destination, if no

other cycle is encountered). Denote this substring by wi(x,u,x(1,ii)). It takes the

machine from the state x(1,ii) to the outcome of the next cycle; the process is similar to

the process described in Equation 4-12, and wl(x,u,x(1,ii)) has at least one character. If

a cycle leading to a critical race is reached at the end of the substring wl(x,u,x(1,ii)),

then, letting r2(ii) be the number of its outcomes, we denote the set of outcomes by

X(2,ii)(x,u) and let its members be {x(2,il,1), ..., x(2,i1,r2(i1))} c X. Let

1 1
m(1;x,u,x(1,il)) = wl(x,u,x(1,il))l be the length of the string, and let wo(x,u,x(1,ii)), wi


(x,u,x(1,il)), ..., Wm(1;x,u,x(1,i))-l(x,u,x(l,il)) be its characters.

The next such substring depends on the outcome of both the races encountered, and

is given by w2(,ux(2,il,i)). The number of cycles encountered may vary, depending on









the outcome of the critical races through which the machine has passed. Let q be the

number of cycles encountered along our path to the target s'(x,u). The outcomes of the

q critical races caused by the cycles are then denoted by x(1,il), x(2,ii2), ..., x(q,il, iq). In

order to simplify the notation, define x(k,i(
input characters that takes the machine from (x,u) to s'(x,u) consists then of the

following segments

w(x,u) := w(x,u) w1(x,u,x(1,i(
where each one of the segments takes the machine from the outcome of one cycle to the

outcome of the next cycle along the path. The length of the segment wJ(x,u,x(j,i(
m(j;x,u,x(j,i(j))) > 1. Each segment can then be written in terms of its individual

characters in the form

J J
wJ(x,u,x(j,i(
wm(j;x,u,x(ji( ))-1(x,u,x(j,i(
where the possible values for each variable are il = 1, ..., r, i2 = 1, ..., r2(i), ..., ij = 1,

..., rj(il,...,ij_i), and j = 1, ..., q. Using the same notation introduced earlier, let rj(i(
1)) = rj(i,...,ij_i) for some j.

q-1
Each of the substrings {wJ(x,u,x(j,i(gj)))}j=1 drives the machine through a string of

the stable transitions similar to Equation 4-12. The last segment wq(x,u,x(q,i(
the machine to the destination s'(x,u), i.e.,

s(i1 !!'( I. 11 -(q,i( q)))-l(x,u,x(qx,u,x(q,i(q))-(x,u,x(q,i(<)))) = '(x,u).

We are now ready to introduce the operation of the controller C. The controller

generates each segment of the string w(x,u) in turn. To guaranty semi-fundamental









mode operation, the controller must generate the string segments wo(x,u), ...,

wq(x,u,x(q,i(
its next generalized state. For this purpose, the controller operation is defined as follows.

Let 4 be the transition function of the controller and let r be its output function.

Assume that the controller is in the initial state o and that the machine Y is in a

generalized stable combination (x,v), when the input character changes to u. Upon

detecting the combination (x,u) e V, the controller changes to the state 1. This entails

the following values of the transition function.

(o,(z,t)) := o for all (z,t) e XxA\V,
(o,(x,u)) := 51 for all (x,u) e V. (4-15)

Referring to (al 1), note that, while in the state o, the controller is transparent; it

applies to the machine Y it's own external input character. This entails the following

value of the output function.

r(o,(z,t)) := t for all (z,t) e XpxA. (4-16)

For semi-fundamental mode operation, the machine Y cannot change its

generalized state during a state change of the controller C. To this end, recall that U(x)

is the set of all characters that form generalized stable combinations with the state x.

Select a character v' e U(x) and set

r( 1,(x,t)) := v' for all (x,t) e XpxA. (4-17)

The controller starts now to generate the substring w0(x,u), feeding it to the

machine Y in order to make its response match the response of the model 2'. The

substring w0(x,u) is generated one character at a time, waiting after each character for

the machine Y to reach its next generalized stable combination. This process requires








0 0
the controller states o(x,u), ..., m(o;x,u)--(x,u), and the controller's recursion function is

defined as follows.

0
(1,,(x,u)) := o(x,u), for (x,u) e D,
(Sl,(x,t)) := 1, for all t e U(x)\D(x),
0. 0
(j (x,u),(xOJ(x,,u)u)) := ij+I(x,u),
O 0
K(j (x,u),(z,t)) := j (x,u), for all (z,t) e XpxA, (4-18)

where 0 j < m(0;x,u)-2. We can now generate the first m(0;x,u)-l characters of the

substring wO(x,u) by defining the controller output function as follows.

0 0
r(j (x,u),(z,t)) := wj (x,u), for all (z,t) e XpxA, (4-19)

where 0
Y is in the cycle state xo,m(o;x,u)-l(x,u), and creates a critical race with the outcome

x(1,ii), as discussed earlier.

Recall that w(x,u) passes through q cycles. The controller continues to generate

all the substrings wJ(x,u,x(j,i(j))), j = 1, ..., q consecutively. Let the controller states


associated with the substring wJ(x,u,x(j,i(
transition function is then given by

$(h(x,u),(xj,h(x,u),u)) = h+1(Xu),
$(h(x,u),(z,t)) := Wh(x,u), for all (z,t) f (xj,h(x,u),u), (4-20)

where h = 0, ..., m(j;x,u,x(j,i(
are generated by the controller's output function as follows.

ri(h(x,u),(z,t)) := wh(x,u,x(j,i(
where h = 0, ..., m(j;x,u,x(j,i(,j)))-1, and j = 1, ..., q.









The transition from the end of one substring to the first character of the next

substring of w(x,u) is accomplished by defining the controller's transition function as

follows.

j j+l 1
(m(j;mx,u,xj,i(,j)))-l(X,U),(xh(x,u),u)) = 0 (x,u), (4-22)

j = 0, ..., q-1.

At the end of the string w(x,u), the machine Y reaches the state s'(x,u), required

for matching the model 2'. The last character of w(x,u) is, of course, the last character

of wq(x,u,x(q,i(
stable combination with the state s'(x,u) until the external input changes. To implement

this requirement, the transition function of the controller is defined by

q
$( m(q;x,u,x(q,i(
This completes the operation of the controller for the transition from x to s'(x,u).

Summarizing, the set of all controller states associated with the generation of the string

w(x,u) is given by

0 0 q
Ec(w(x,u))= ((x,u), ,m(o, x,u), ..., o(x,u), ...,
q
m(q;x,u,x(q,i(
Note when (x,u) E DN((,'), then q is taken as zero in the above construction, and

w(x,u) consists of only one substring which completes the required transition.

To complete the implementation of the controller C, the above construction has to

be applied to each input pair (x,u) e DC. To describe the state set of the controller, let

the elements of Dc be given by {(zi,ul), ..., (zn(C),un(C))} and let w(zk,uk) be the

string that takes from (xk,uk) to the state s'(xk,uk) required to match the model for a









specific sequence of cycle outcomes. Then, in analogy with Equation 4-24, the controller

states associated with the generation of w(xk,uk), for a specific combination of the

outcome of the cycles encountered, are

Ec(w(xk,uk)) = {0(xk uk)' ... k k(Xk uk), k),...

m(qux k _,l)(Xk Uk) } (4-25)

The set of all states for all combinations of outcomes of cycles are then given by

EC(xk,uk) = Uall possible w(xk,uk) EC(W(Xk,uk)). (4-26)

Thus, the set of controller states for all the elements of DC are

Ec = Uk = 1,..., n(C) E(xk,uk) (4-27)


Of course, if DC = 0, then EC(xk,uk) = 0 and Ec = 0. Then the complete state

set of the controller is given by

E = {R0, l} U ENU Ec. (4-28)

By construction, the closed loop system operates in semi-fundamental mode and is well

posed. This completes the construction of the controller C. *

Note that the states of the controller are not optimized. This can be done by the

various state reduction techniques, e.g., KOHAVI [1970]. Further state reductions can be

done by careful choice of the corrective string.















CHAPTER 5
EXAMPLE

This chapter demonstrates the construction of a controller C that fulfills the

requirements of Theorem 4-1. Consider the input/state machine Y having the input set

A = {a, b, c, d} and the state set X = {xl, x2, x3, x4}. Consider the recursion function of

the machine f to be defined by Table 5-1 of transitions.

Table 5-1. Transition table for the machine X.

a b c d

x1 x1 x3 x1 x1

x2 x3 x2 x4 x3

X3 x4 x4 x4 x3

X4 x2 x4 x3 x4


Applying Algorithm 3-8 to the above machine, the cycles in the machine can be

found. We see that the cycles are pi = {a;x2, x3, x4} and p2 = {c;x3, x4}. Now, the

cycle states corresponding to the cycles pi and p2 are x5 and x6. The generalized

stable state machine Is now has the state set XP = {x1, x2, x3, x4, x5, x6}, as defined in

Equation 3-8, and the same input set A. The stable recursion function s of the

generalized stable state machine I|s is defined in the Table 5-2 of transitions. The

generalized stable recursion function for the generalized stable state machine is defined in

Equation 3-11. Note that when an input character is applied to a cycle state, it can result

in unpredictable outcomes. This is represented as the set of all possible output states.







60


Table 5-2. Stable transition table for the generalized stable state machine XIs

a b c d


x3

x2

x4

x4

{x2,x4}

x4


xl

x6

x6

x6

{x4,x6

x6


1
xl

x3

x3
3

x4

{x3,x4}

{x3,x4}


The machine I|s is now an asynchronous machine with multiple race outcomes.

We will now follow the procedure in Chapter 4 to calculate the skeleton matrix of this

machine. As defined in Equation 3-12, the matrix of one-step generalized stable

transitions R(Xls) is shown in Table 5-3.

Table 5-3. Matrix of one-step generalized stable transitions R(YIs)

x1 X2 x3 x4 x5 x6


a,c,d

N

N

b

N

N









Using Equation 3-17 and Equation 3-18, we construct the matrices R2(Xis), R3( ls),

R4( |s), and R5(Els), and then the matrix R(5)(EIs). Then, applying Definition 3-14, the

matrix of stable transitions T(I|s) is constructed. Finally, using Definition 3-17, the

skeleton matrix is derived. The skeleton matrix K(E) calculated from R(5)(E) is given

by

01 0000 0
K() 0 1 1 0 0 1 (5-1)
10 1 1 0 0 1

Now to solve the model matching problem, we need the given stable state machine

Y' as our model. The stable recursion function for X' is given in Table 5-4 of

transitions.

Table 5-4. Stable transition function of the given model X'.

a b c d












generalized stable state machine, except for the absence of the cycle states. This results

in a square matrix, given by

F10001
Ko(X') 0 1 0 0 (5-2)
1 1 1 1
I I I I
_2 i i











Following Equation 4-1, the augmented skeleton matrix K(E') is then constructed

as follows.


K(')= 0 1 0 0 0 (5-3)
011 000
111111

The next step in the construction of the controller is to see if the necessary and

sufficient conditions are satisfied. We find that K(X) > K(2'), thus satisfying Theorem 4-

1. To construct the controller, we need the following matrices, as explained in the proof

of Theorem 4-1.

D(,') := {(x2,a),(x3,a),(x4,a),(x2,c),(x3,c),(x4,c)},
D := {(x5,a),(x6,c),(x2,c)},
7rxD := x2,x3,4},
D(x) := {a,c},
U(x2) := {b},
U(x5):= {a},
U(x6):= {c},
DN(X,X') := 0,
Dc := {(x2,c),(x5,a),(x6,c)}. (5-4)

For (x2,c) e Dc(E,E'), wo(x2,c) = d, wi(x2,c,x3) = b. There are two possible

strings, d and db; r(x2,c) = 2. The state transitions are:

4(,o,(z,t)) := o for all (z,t) e XxA\V,
4(,o,(x2,c)) := for all (x2,c) e V,
(Sl,(x2,c)) := So(x2,c), for (x2,c) e D,
4(l1,(x2,t)) := 1, for all t e U(x2)\D(x2),
(i1,,(z,t)) := o, for all pairs (z,t) e XpxA\(VUD),
(S((x2,c),(x0,1(x2,c),d)) := l (x2,c),
(,(x2,c),(z,t)) := (,(x2,c), for all (z,t) / (xo,l(x2,c),d),
K(o(x2,c),(z,t)) := 1, (z,t) f (s'(x2,c),u). (5-5)









The output functions are

r(o,(z,t)) := t for all (z,t) e XpxA,
r(I,(x2,t)) := b for all (x2,t) e XpxA,
o o
ri(o(x2,c),(z,t)) := wo(x2,c) = d, for all (z,t) e XpxA,
ri(Co(x2c),(z,t)) = w(x2,c,x3) = b, (z,t) e XpxA. (5-6)

Now, consider the next element (x5,a) e Dc(X,2'). For this cycle state, wo(x5,a)

d, Wl(x5,a,x3) = b; as before, r(x5,a) = 2. The state transitions and output functions are

given by

4(o,(z,t)) := o for all (z,t) e XxA\V,
(o,(x5,a)) := for all (x5,a) e V,
#(l,(x5,a)) := So(x5,a), for (x5,a) e D,
4(1,(x5,t)) := 1, for all t E U(x5)\D(x5),
4(l1,(z,t)) := 5o, for all pairs (z,t) e XpxA\(VUD),
o 1
W(So(x5,a),(xO,l(x5,a),d)) := o(x5,a),
o o
W(So(x5,a),(z,t)) := o(x5,a), for all (z,t) (xO,l(x5,a),d),
1
O(So(x5,a),(z,t)) := 1, (z,t) / (s'(x5,a),b),
rj(o,(z,t)) := t for all (z,t) e XpxA,
r(1i,(x5,t)) := a for all (x5,t) e XpxA,
o o
ri(o(x5,a),(z,t)) := wo(x5,a) = d, for all (z,t) e XpxA,
1 1
r(So(x5,a),(z,t)) := wo(x5,a,x3) = b, (z,t) e XpxA. (5-7)

Similarly, the transition and output functions for the third element (x6,a) e

Dc(Y,2') are defined below. Here, wo(x6,c) = b; r(x6,a) =

4(o,(z,t)) := o for all (z,t) e XxA\V,
(o,(x6,c)) := l for all (x6,c) e V,
(l,(x6,C)) := o(x6,c), for (x6,c) e D,
4(l1,(x6,t)) := for all t E U(x6)\D(x6),
W(4l,(z,t)) := o, for all pairs (z,t) e XpxA\(VUD),
0
W(So(x6,c),(z,t)) := (i, (z,t) / (s'(x6,c),b),
rj(o,(z,t)):= t for all (z,t) e XpxA,
r(1,(x6,t)) = c for all (x6,t) e XpxA,






64

0 0
ri((x6,c),(z,t)) := w0(x6,c) = b, for all (z,t) e XpxA. (5-8)

This concludes the construction of the feedback controller C such that the closed

loop machine c|s = Y'. The equations (5-6), (5-7) and (5-8) give the state and transition

functions of the controller C.














CHAPTER 6
SUMMARY AND FUTURE WORK

The present work shows the use of feedback controllers to correct one of the

common hazards in the behavior of asynchronous sequential machines. Specifically, the

designed controller not only eliminates the effects of infinite cycles in such a machine,

but it can also drive the defective machine to match the behavior of a desired model.

This approach opens an interesting arena where many open problems remain to be

analyzed.

In Chapter 5 of this dissertation, solutions have been presented to the model

matching problem of input-state machines involved in infinite cycles. The necessary and

sufficient conditions for the existence of a controller have been stated, and an algorithm

for its construction has been included, whenever a controller exists.

The control of asynchronous machines is an area of research that is still ripe with

possibilities. A straight forward extension of this dissertation is to the construction of a

comprehensive state feedback controller that solves the the model matching problem for a

machine with multiple hazards, including both races and cycles. The comprehensive

controller has elements of both the race problem investigated by Murphy 1996, Murphy,

Geng, and Hammer 2002, and Murphy, Geng, and Hammer 2003, as well as the

controller for remedying cycles in an asynchronous machine, described in this

dissertation.

My future research plans include work on extending the results obtained in this

dissertation to the comprehensive state feedback controller. The next logical step lies in









formulating a more compact representation of the controller. A close examination of the

controller structure described in Chapter 3 and Chapter 4 shows that it consists of a

number of interconnected similar units. This observation leads us to believe that the

controller can be assembled in a modular fashion from a collection of standard units.

Formalizing this observation will lead to a simple methodology of controller design,

whereby the controller is constructed simply by interconnecting a few standard blocks.

Further, investigating the possibility of a comprehensive output feedback controller

for a machine with multiple races and cycles is also a future research interest. The

present proposal develops a controller that eliminates the negative effects of infinite

cycles in asynchronous machines under the assumption that the state of the machine is

available for feedback purposes. The problem of overcoming the effects of infinite

cycles becomes substantially more complex if the state of the machine is not available,

and only an output signal is available. The solution of this problem requires the

development of concepts related to the observability of asynchronous machines, to find

conditions under which an infinite cycle in state space can be detected from an

observation of the output signal.

The application of the obtained results to parallel and distributed systems is also an

area of interest. Asynchronous sequential systems can be used to model parallel and

distributed systems due to their event driven nature. It has been shown by Plateau and

Atif 1991 that complex parallel networks can be modeled using stochastic automata

networks. Recent work has succeeded in showing that a distributed system can be

represented by cellular automata (Zambonelli et al 2003). Feedback control holds






67


promise for improving the performance and reliability of such parallel and distributed

systems, and it is possible to apply the principles developed in this work.
















LIST OF REFERENCES

Alpan, G., and Jafari, M.A., 2002, "Synthesis of a closed-loop combined plant and
controller model," IEEE Transactions on Systems, Man and Cybernetics, Vol. 32,
No. 2, pp.163-175.

Arbib, M., 1969, "Theories of abstract automata," Prentice Hall Inc., Englewood Cliffs,
NJ.

Armstrong, D., Friedman A., and Menon P., 1968, "Realization of asynchronous
sequential circuits without inserted delay elements," IEEE Transactions on
Computers, C-17, No. 2.

Bredeson, J., and Hulina, P., 1971, "Generation of a clock pulse for asynchronous
sequential machines to eliminate critical races," IEEE Transactions on Computers,
C-20, pp. 225-226.

Bruschi, D., Pighizzini, G., and Sabadini, N., 1994, "On the existence of minimum
asynchronous automata and on the equivalence problem for unambiguous regular
trace languages," Information and Computation, Vol. 108, No. 2, pp. 262-285.

Brzozowski, J.A., and Seger, C., 1987, "A characterization of ternary simulation of gate
networks," IEEE Transactions on Computers, C-36, No. 11, pp. 1318-1327.

Brzozowski, J.A., and Seger, C-J., 1989, "A unified framework for race analysis of
asynchronous networks," Journal of the Association for Computing Machinery,
Vol. 36, No. 1, pp. 20-45.

Brzozowski, J.A., and Yeoli, M., 1979, "On a ternary model of gate networks," IEEE
Transactions on Computers, C-28, pp.178-183.

Chiang, J., and Radhakrishnan, D., 1990, "Hazard-free design of mixed operating mode
asynchronous sequential circuits," International Journal of Electronics, Vol. 68, No.
1, pp. 23-37.

Chu, T., 1994, "Synthesis of hazard-free control circuits from asynchronous finite state
machine specifications," Journal of VLSI Signal Processing, Vol. 7, No. 1-2, pp.
61-84.

Chu, T., Mani, N., and Leung, C., 1993, An efficient critical race-free state assignment
technique for asynchronous finite state machines," Proceedings of the 30th
ACM/IEEE Design Automation Conference, Dallas, TX, pp. 2-5.









Cole, R., and Zajicek, 0., 1990, "The expected advantage of asynchrony," Proceedings of
the Second Annual ACM Symposium on Parallel Algorithms and Architectures,
pp. 85-94.

Datta, P.K., Bandyopadhyay, S.K., and Choudhury, A.K., 1988, "A graph theoretic
approach for state assignment of asynchronous sequential machines," International
Jounal of Electronics, Vol. 65, No. 6, pp. 1067-1075.

Davis, A., Coates, B., and Stevens, K., 1993a, "Automatic synthesis of fast compact
asynchronous control circuits," S. Furber and M. Edwards, editors, Asynchronous
Design Methodologies, Volume A-28 of IFIP Transactions, Elsevier Science
Publishers, pp. 193-207.

Davis, A., Coates, B., and Stevens, K., 1993b, "The post office experience: designing a
large asynchronous chip," Proceeding of the 26th Hawaii International Conference
on System Sciences, Vol. 1, pp. 409-418.

Dibenedetto, M.D., Saldanha, A., and Sangiovanni-Vincentelli, A., 1994, "Model
matching for finite state machines," Proceedings of the IEEE Conference on
Decision and Control, Vol. 3, pp. 3117-3124.

Dibenedetto, M.D., Saldanha, A., and Sangiovanni-Vincentelli, A., 1995a, "Strong model
matching for finite state machines with nondeterministic reference model,"
Proceedings of the IEEE conference on Decision and Control, Vol. 1, pp. 422-426.

Dibenedetto, M.D., Saldanha, A., and Sangiovanni-Vincentelli, A., 1995b, "Strong model
matching for finite state machines," Proceedings of European Control Conference,
Vol. 3, pp. 2027-2034.

Dibenedetto, M.D., Sangiovanni-Vincentelli, A., and Villa, T., 2001, "Model matching
for finite-state machines," IEEE Transactions on Automatic Control, Vol. 26, No.
11, pp. 1726-1743.

Eichelberger, E.B., 1965, "Hazard detection in combinational and sequential switching
circuits," IBM Journal of Research and Development, Vol. 9, No. 2, pp. 90-99.

Eilenberg, S., 1974, "Automata, Languages and Machines," Volume A, Academic Press,
New York.

Evans, J.B., 1988, "Structures of discrete event simulation," Halsted Press, New York.

Fisher, P., and Wu, S., September 1993, "Race-free state assignments for synthesizing
large-scale asynchronous sequential logic circuits," IEEE Transactions of
Computers, Vol. 42, No. 9, pp.1025-1034.

Fujita, M., 1993, "Methods for automatic design error correction in sequential circuits,"
Proceedings of the European Conference on Design Automation with the European
Event in ASIC Design, pp. 76-80.






70


Furber, S.B., 1993, "Breaking step The return of asynchronous logic," IEEE Review,
pp. 159-162.

Geng, X. J., 2003, "Model matching for asynchronous sequential machines," Ph.D.
dissertation, Department of Electrical and Computer Engineering, University of
Florida, Gainesville, Florida.

Geng, X. J., and Hammer, J., 2003, "Input/output control of asynchronous sequential
machines", submitted for publication.

Geng, X. J., and Hammer, J., 2004a, "Asynchronous sequential machines: input/output
control", Proceedings of the 12th Mediterranean Conference on Control and
Automation, Kusadasi, Turkey, June 2004.

Geng, X. J., and Hammer, J., 2004b, "Output Feedback Control Asynchronous Sequential
Machines", Proceedings of the 8th World Multiconference on Systemics,
Cybernetics and Informatics (SCI 2004) to be held in Orlando, Florida.(to appear).

Hammer, J., 1994, "On some control problems in molecular biology," Proceedings of the
IEEE Conference on Decision and Control, Vol. 4, pp. 4098-4103.

Hammer, J., 1995, "On the modeling and control of biological signaling chains,"
Proceedings of the IEEE Conference on Decision and Control, Vol. 4, pp. 3747-
3752.

Hammer J., 1996a, "On the control of incompletely described sequential machines,"
International Journal of Control, Vol. 63, No. 6, pp. 1005-1028.

Hammer J., 1996b, "On the corrective control of sequential machines," International
Journal of Control, Vol. 65, No. 6, pp. 249-276.

Hauck, S., 1995, "Asynchronous design methodologies: an overview," Proceedings of the
IEEE, Vol. 83, No. 1, pp. 69-93.

Hazeltine, B., 1965, "Encoding of asynchronous sequential circuits," IEEE Transactions
on Electronic Computers, EX-14, pp.727-729.

Higham, L., and Schenk, E., 1992, "The parallel asynchronous recursion model,"
Proceedings of the IEEE Symposium on Parallel and Distributed Processing, pp.
310-316.

Hlavicka, J., 1970, "Essential hazard correction without the use of delay elements," IEEE
Transactions on Computers, C-19, No. 3, pp. 232-238.

Holcombe, W.M.L., 1982, "Algebraic automata theory," Cambridge University Press,
New York.









Hubbard, P., and Caines, P.E., 2002, "Dynamical consistency in hierarchical supervisory
control," IEEE Transactions on Automatic Control, Vol. 47, No. 1, pp. 37-52.

Huffmann D.A., 1954a, "The synthesis of sequential switching circuits," J. Franklin Inst.,
Vol. 257, pp. 161-190.

Huffmann D.A., 1954b, "The synthesis of sequential switching circuits," J. Franklin Inst.,
Vol. 257, pp. 275-303.

Huffmann, D.A., 1957, "The design and use of hazard-free switching networks," Journal
of the Association of Computing Machinery, Vol. 4, No. 1, pp. 47-62.

Ingerson, T.E., and Buvel, R.L., 1984, "Structure in Asynchronous Cellular Automata,"
Physica D, Vol. 10, pp. 59-68.

Kailath, T., 1980, "Linear systems," Prentice Hall Inc., Englewood Cliffs, New Jersey,
1979, pp. 268-272.

Kalman, R.E., Falb, P.L., and Arbib, M.A., 1969, "Topics in Mathematical Systems
Theory," McGraw-Hill Book Company, New York.

Kohavi, Z., 1970, "Switching and finite automata theory," McGraw-Hill Book Company,
New York, 1970.

Koutsoukos, X.D., Antsaklis, P.J., Stiver, J.A., and Lemmon, M.D., 2000, "Supervisory
control of hybrid systems," Proceedings of the IEEE, Vol. 88, No. 7, pp. 1026-
1049.

Lavagno, L., Keutzer, K., and Sangiovanni-Vincentelli, A., 1991, "Algorithms for
synthesis of hazard-free asynchronous circuits," Proceedings of the 28th
ACM/IEEE Design Automation Conference, San Francisco, CA, pp. 302-308.

Lavagno, L., Moon, C.W., and Sangiovanni-Vincentelli, A., 1994, "Efficient heuristic
procedure for solving the state assignment problem for event-based specifications,"
IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems,
Vol. 14, pp. 45-60.

Lin, B., and Devadas, S., 1995, "Synthesis of hazard-free multilevel logic under multiple-
input changes from binary decision diagrams," IEEE Transactions on Computer-
Aided Design of Integrated Circuits and Systems, Vol. 14, No. 8, pp. 974-985.

Lin, F., 1993, "Robust and adaptive supervisory control of discrete event systems," IEEE
Transactions on Automatic Control, Vol. 38, No. 12, pp. 1848-1852.

Lin, F., and Wonham, W.M., 1990, "Decentralized control and coordination of discrete
event systems with partial observation," IEEE Transactions on Automatic Control,
Vol. 35, No. 12, pp. 1330-1337.









Liu, C., 1963, "A state variable assignment procedure for asynchronous sequential
switching circuits," Journal of the Association of Computing Machinery, Vol. 10,
pp. 209-216.

MacLane, S., and Birkhoff, G., 1967, "Algebra," The Macmillan Company, New York.

Mago, G., 1971, "Realization of methods for asynchronous sequential circuits," IEEE
Transactions on Computers, C-20, pp. 290-298.

Maki, G., and Tracey, J., 1971, "A state assignment procedure for asynchronous
sequential circuits," IEEE Transactions on Computers, C-20, pp. 666-668.

Marshall, A., Coates, B., and Siegel, F., 1994, "Designing an asynchronous
communications chip," IEEE Design & Test of Computers, Vol. 11, No. 2, pp. 8-
21.

Masuyama, H., and Yoshida, N., 1977, "design of fail-safe asynchronous sequential
machines," Transactions of the Institute of Electronics and Communication, Vol.
E60, No. 10, pp. 527-532.

McCluskey, E.J., 1963, "Fundamental mode and pulse mode sequential circuits," Proc.
IFIP Congress 1962, International Conference on Information Processing, Munich,
August 27-September 1, 1962, pp. 725-730, Cicely M. Popplewell (ed.), North
Holland Publishing Company, Amsterdam.

McCluskey, E.J., 1965, "Introduction to the theory of switching circuits," McGraw-Hill
Book Company, New York.

Mealy, G.H., 1955, "A method for synthesizing sequential circuits," Bell Systems
Technical Journal, Vol. 34, pp. 1045-1079.

Moon, C.W., Stephan, P.R., and Brayton, R.K., 1991, "Synthesis of hazard-free
asynchronous circuits from graphical specifications," IEEE International
Conference on Computer-Aided Design, pp. 322-325.

Moore, E.F., 1956, "Gedanken-experiments on sequential machines," Automata Studies,
Annals of Mathematical Studies, No. 34, Princeton University Press, Princeton, NJ.

Moore, S.W., Taylor, G.S., Cunningham, P.A., Mullins, R.D., and Robinson, P., 2000,
"Self calibrating clocks for globally asynchronous locally synchronous systems,"
Proceedings of the International Conference on Computer Design, pp 73-78.

Murphy, T.E., 1996, "On the control of asynchronous sequential machines with races,"
Ph.D. Dissertation, Department of Electrical and Computer Engineering, University
of Florida, Gainesville, Florida.









Murphy, T.E., Geng, X. J., and Hammer, J., 2002, "Controlling races in asynchronous
sequential machines," Proceedings of the IFAC World Congress, Barcelona, July
2002.

Murphy, T.E., Geng, X. J., and Hammer, J., 2003, "On the control of asynchronous
machines with races," IEEE Transactions on Automatic Control, Vol. 28, No. 6, pp.
1073-1081.

Nelson, R.J., 1968, "Introduction to automata," John Wiley and Sons, Inc., 1979.

Nishimura, N., 1990, "Asynchronous shared memory parallel computation," The 3rd
ACM Symposium on Parallel Algorithms and Architectures SPAA '90, pp. 76-84.

Nishimura, N., 1995, "Efficient asynchronous simulation of a class of synchronous
parallel algorithms," Journal of Computer and System Sciences, Vol. 50, No. 1, pp.
98-113.

Nowick, S.M., 1993, "Automatic synthesis of burst-mode asynchronous controllers,"
Ph.D. Dissertation, Department of Computer Science, Stanford University,
Stanford, California.

Nowick, S.M., and Coates, B., 1994, "UCLOCK: Automated design of high-performance
unclocked state machines," Proceedings of the IEEE International Conference on
Computer Design (ICCD), pp. 434-441.

Nowick, S.M., Dean, M.E., Dill, D.L., and Horowitz, M., 1993, "The design of a high-
performance cache controller: A case study in asynchronous synthesis,"
Proceedings of the 26th Hawaii International Conference on System Sciences, pp.
419-427.

Nowick, S.M., and Dill, D.L., 1991, "Synthesis of asynchronous state machines using a
local clock," IEEE International Conference on Computer Design, pp. 192-197.

Oikonomou, K.N., 1992, "Abstractions of finite-state machines and immediately-
detectable output faults," IEEE Transactions on Computers, Vol. 41, No. 3, pp.
325-338.

Oliviera, D.L., Strum, M., Wang, J.C., and Cunha, W.C., 2000, "Synthesis of high
performance extended burst mode asynchronous state machines," Proceedings of
the 13th Symposium on Integrated Circuits and Systems Design, pp. 41-46.

Ozveren, C.M., and Willsky, A.S., 1990, "Observability of discrete event dynamic
systems," IEEE Transactions on Automatic Control, Vol. 35, No. 7, pp. 797-806.

Ozveren, C.M., Willsky, A.S., and Antsaklis, P.J., 1991, "Stability and stabilizability of
discrete event dynamics systems," Journal of the Association of Computing
Machinery, Vol. 38, No. 3, pp. 730-752.









Park, S-J., and Lim, J-T., 2002, "Robust and nonblocking supervisory control of
nondeterministic discrete event systems using trajectory models," IEEE
Transactions on Automatic Control, Vol. 47, No. 4, pp. 655-658.

Patterson, W.W., and Metze, G., 1974, "Fail safe asynchronous sequential machine,"
IEEE Transactions on Computers, Vol. C-23, No. 4, pp. 369-374.

Piguet, C., 1991, "Logic synthesis of race-free asynchronous CMOS circuits," IEEE
Journal of Solid-State Circuits, Vol. 26, No. 3, pp. 371-380.

Plateau, B., and Atif, K., 1991, "Stochastic automata network of modeling parallel
systems," IEEE Transactions on Software Engineering, Vol. 17, No. 10, pp. 1093-
1108.

Ramadge, P.J., and Wonham, W.M., 1987, "Modular feedback logic for discrete event
systems," SIAM Journal of Control and Optimization, Vol. 25, pp. 1202-1218.

Ramadge, P.J., and Wonham, W.M., 1989, "The control of discrete event systems,"
Proceedings of the IEEE, Vol. 77, No. 1, pp. 81-99.

Ramadge, P.J.G., and Wonham, W.M., 1987, "Supervisory control of a class of discrete
event processes," SIAM Journal of Control and Optimization, Vol. 25, No. 1, pp.
206-230.

Sen, R.K., 1985, "On state assignment of asynchronous sequential machines,"
Proceedings COMPINT 85: Computer Aided Technologies, pp. 433-440.

Schonfisch, B., and De Roos, A., 1999, "Synchronous and Asynchronous Updating in
Cellular Automata", BioSystems, 51(3), pp. 123-143.

Shields, M.W., 1987, "An introduction to automata theory," Blackwell Scientific
Publications, Boston, Massachusetts.

Thistle, J.G., and Wonham, W.M., 1994, "Control of infinite behavior of finite
automata," SIAM Journal of Control and Optimization, Vol. 25, No. 1, pp. 206-
230.

Tracey, J.H., 1966, "Internal state assignments for asynchronous sequential machines,"
IEEE Transactions on Electronic Computers, EC-15, pp. 551-560.

Turing, A., 1936-1937, "On computable numbers, with an application to the
entscheidungs-problem," Proceedings of the London Mathematical Society, Ser. 2-
42, pp. 230-265 with a correction, Ibid, Ser. 2-43, pp.544-546, 1936-1937.

Unger, S.H., 1959, "Hazards and delays in asynchronous sequential switching circuits,"
IRE Transactions on Circuit Theory, Vol. CT-6, No. 1, pp.12-25.






75


Unger, S.H., 1969, "Asynchronous sequential switching circuits," Wiley Interscience,
New York, NY.

Unger, S.H., 1977, "Self-synchronizing circuits and non-fundamental mode operation,"
IEEE Transactions on Computers, Vol. 26, No. 3, pp. 278-281.

Unger, S.H., 1995, "Hazards, critical races and metastability," IEEE Transactions on
Computers, Vol. 44, No. 6, pp. 754-768.

Watanable, Y. and Brayton, R., 1993, "Computing permissible behaviors ofFSM's,"
Proceedings of the International Conference on Computer-Aided Design, pp. 316-
320.

Whitaker, S., and Maki, G., 1992, "Self synchronized asynchronous sequential pass
transistor circuits," IEEE Transactions on Computers, Vol. 41, No. 10, pp. 1344-
1348.

Wolfram, S., 1994, "Cellular automata and complexity," World Scientific Pub Co Inc.,
1986.

Wonham, W.M., and Ramadge, P.J.G., 1987, "On the supremal controllable sublanguage
of a given language," SIAM Journal of Control and Optimization, Vol. 25, pp. 637-
659.

Yoeli, M., and Rinon, S., 1964, "Application of ternary algebra to the study of static
hazards," Journal of the Association of Computing Machinery, Vol. 11, No. 1, pp.
84-97.

Yu, M.L., and Subrahmanyam, P.A., 1992, "A path-oriented approach for reducing
hazards in asynchronous design," Proceedings of the Design Automation
Conference, 29th ACM/IEE, pp. 239-244.

Zambonelli, F., Roli, A., and Mamei, M., 2003, "Dissipative cellular automata as
minimalist distributed systems : A study on emergent behaviors," 11th IEEE
EUROMICRO Conference on Parallel, Distributed, and Network Processing,
Genova (I), IEEE CS Press, pp. 250-257.















BIOGRAPHICAL SKETCH

Niranjan Venkatraman was born in Bangalore, India, and obtained his Bachelor of

Engineering (B.E.) degree in Electrical and Electronics Engineering in May 2000 from

the College of Engineering, Guindy, Chennai, a part of Anna University. Since August

2000, he has been a Ph.D. student in the Department of Electrical and Computer

Engineering at the University of Florida, Gainesville, FL. During the pursuit of his Ph.D.,

he obtained his M.S. in Electrical and Computer Engineering from the University of

Florida in December 2002. His research interests include control theory, control systems,

automata theory, and the application of control theory to asynchronous networks and

parallel computation.