«Yangi O‘zbekistonda islohotlarni amalga oshirishda zamonaviy axborot-kommunikatsiya
texnologiyalaridan foydalanish» mavzusida Xalqaro ilmiy-amaliy konferentsiya
Andijon
27-29 oktabr 2021 yil
282
Regulyar ifodalarni hosil qiluvchi konteksdan holi grammatika- regulyar
grammatika va uning boshqa ko’rinishi o’ng(chap) chiziqli grammatika deb ataladi.
Regulyar grammatika aniqlaydigan til – regulyar til deb ataladi[1,3] Regulyar
ifodalarni tahlil qilish uchun yaratilgan abtrakt mexanizm– tanib oluvchi
(recognizer) va uning xususiy hollari chekli avtomat va xotirali chekli avtomat deb
ataladi.
Leksik tahlilni amalga oshirish uchun yuqorida ko’rsatilgan tushunchalar
bilan tanishish kerak bo’ladi. Endi ana shu tushunchalarni batafsil qarab chiqamiz.
Σ chekli alfavit bo’lsin. Σ chekli alfavitda regulyar to’plam quyidagicha
rekursiv aniqlanadi[2,4]:
(1)
(bo’sh to’plam) - Σ chekli alfavitda regulyar to’plamdir
(2)
{ε} - Σ chekli alfavitda regulyar to’plamdir
(3)
a
Σ uchun {a}- Σ chekli alfavitda regulyar to’plamdir
(4)
Agar P va Q to’plamlar Σ chekli alfavitdagi regulyar to’plamlar
bo’lsalar, u holda quyidagi to’plamlar ham Σ chekli alfavitda regulyar
to’plamlar bo’ladilar:
(a)
P
Q
(b) PQ
(c) P*
(5)
Hech qanday boshqa to’plam Σ chekli alfavitdagi regulyar
to’plam bo’la olmaydi
Shunday qilib berilgan to’plam Σ chekli alfavitdagi regulyar to’plam bo’la
oladi faqat va faqat shu holdaki, agar u
, {ε}, Σ ga tegishli harfdan iborat to’plam
bo’lsa, yoki shunday to’plamlardan, birlashma, konkatenatsiya va iteratsiya
operatsiyalari orqali hosil qilinsa.
Σ alfavitdagi regulyar ifoda va u ifodalaydigan regulyar to’plam quyidagicha
rekursiv aniqlanadi:
(1)
- Σ alfavitda regulyar ifoda va u
regulyar to’plamni ifodalaydi
(2)
ε - Σ alfavitda regulyar ifoda va u {ε} regulyar to’plamni ifodalaydi
(3)
a
Σ uchun a-Σ alfavitda regulyar ifoda va u {a} regulyar to’plamni
ifodalaydi
(4)
Agar p va q to’plamlar Σ alfavitdagi regulyar ifodalar bo’lsa va mos
ravishda P va Q regulyar to’plamlarni ifodalasalar, u holda quyidagi ifodalar ham Σ
alfavitda regulyar ifodalar bo’ladi va mos regulyar to’plamlarni ifodalaydi:
(a)
(p+q) – regulyar ifoda P
Q regulyar to’plamni ifodalaydi
(b)
(pq) – regulyar ifoda PQ regulyar to’plamni ifodalaydi
(c)
(p)* - regulyar ifoda P* regulyar to’plamni ifodalaydi.
(5)
Hech qaysi boshqa ifoda Σ alfavitda regulyar ifoda bo’la olmaydi.
Ifodalarni yozishda ma’nosi buzilmaydigan qisqartmalarni ishlatamiz,
masalan, pp* o’rniga p
+
va ortiqcha qavslarni tashlab ketamiz. Bunday
qisqartirishlarda operatsiyalar chap assotsiativ deb hisoblanib, ularning ustunlik
darajasi quyidagicha yuqoridan pastga qarab aniqlanadi: *, konkatenatsiya, +.
Shunday qilib, 0+10* qisqartirilgan regulyar ifoda (0+(1(0*))) ni bildiradi.
O’z – o’zidan ravshanki, har bir regulyar to’plam uchun hech bo’lmasa bitta
bu to’plamni ifodalaydigan regulyar ifoda topish mumkin va teskarisi, har bir
Do'stlaringiz bilan baham: |