You are on page 1of 156

თსუ ზუსტ და საბუნებისმეტყველო მეცნიერებათა ფაკულტეტი

კომპიუტერულ მეცნიერებათა დეპარტამენტი

„ფორმალური ენები და ავტომატები“


ლექციათა კურსი

მაგალითები და სავარჯიშოები

ასოცირებული პროფესორი ტარიელ ხვედელიძე

თბილისი

2020

1
სარჩევი
1. ზოგადი ცნებები ფორმალური სისტემების შესახებ
1.1. გამონათქვამები და ლოგიკური კავშირები ……………………………………… გვ. 5
1.2. დე მორგანის წესები ..................................................................................................... გვ.11
1.3. გამონათქვამთა აღრიცხვის თეორიულ-სიმრავლური ინტერპრეტაცია.......... გვ. 12
1.4. ფორმალური სისტემისა და ფორმალური ენის ცნება ......................................... გვ.13
კითხვარი თვითშემოწმებისათვის ………………………………………………………. გვ.14
2. სიტყვები, ენები და გრამატიკები
2.1. ძირითადი ცნებები და განმარტებები ................................................................ გვ. 14
2.2. ოპერაციები ენებზე ................................................................................................... გვ.16
კითხვარი თვითშემოწმებისათვის ……………………………………………………… .გვ.18
2.3. წარმომქმნელი გრამატიკა ( 0 ტიპის გრამატიკა).................................................. გვ.19
2.4. გრამატიკის კლასები ................................................................................................... გვ.21
2.5. ხომსკის გრამატიკა და ხომსკის ენა ( - გრამატიკა და - ენა) ..................... გვ.25
2.6. შესაბამისობა გრამატიკებსა და ენებს შორის .......................................................... გვ.27
2.7. არაცარიელი, სასრული და უსასრულო ენები ……………………………………. გვ.28
2.8. ენის მაგალითი, რომელიც არაა -ენა .................................................................. გვ.30
2.9. ცარიელი ჯაჭვის ელიმინაცია .................................................................................... გვ.30
2.10. არაპროდუქტიული წესების ელიმინაცია, ცარიელი ენა .................................... გვ.31
2.11. ჩაკეტილობის თვისება. ოპერაციები - ენებზე ..............................................გვ.32
2.12. - ენების სპეციალური კლასები ......................................................................... გვ.34
კითხვარი თვითშემოწმებისათვის ……………………………………………………….გვ.38
სასრული ავტომატები
3.1. ზოგადი ცნებები აბსტრაქტული ავტომატების შესახებ ...................................... გვ.39
3.2. დინამიური სისტემა ................................................................................................... გვ.40
3.3. სასრული აბსტრაქტული ავტომატები ....... ............................................................ გვ.40
3.4. ავტომატების კლასიფიკაცია სხვადასხვა ნიშნის მიხედვით ............................. გვ.41
3.5. მილისა ( გვარის და მურის (II გვარის) ავტომატები ..................................... გვ.43
3.6. აბსტრაქტული ავტომატების ფუნქციონირების აღწერა .................................... გვ.45
3.7. მურის ავტომატის მილის ეკვივალენტურ ავტომატად გარდაქმნა .................. გვ.57
3.8. მილის ავტომატის მურის ეკვივალენტურ ავტომატად გარდაქმნა ................. გვ.58
3.9. სასრული ავტომატების მაგალითები ............................. ..................................... გვ.61
კითხვარი თვითშემოწმებისათვის …………………………………………………… გვ.64
3.10. არადეტერმინირებული სასრული ავტომატები .............................................. გვ.67
3.11. სასრული ავტომატის კონფიგურაცია ................................................................გვ.70

2
3.12. სასრული ავტომატები ერთასონიშნიანი გადასვლებით ................................... გვ.71
3.13. მარჯვენა წრფივი ენების დახასიათება ............................................................ გვ.73
3.14. მარჯვენა წრფივი გრამატიკების ნორმალური ფორმა .................................. გვ.74
3.15. დეტერმინირებული სასრული ავტომატები ..................................................... გვ.74
3.16. სასრული ავტომატის დეტერმინირებულ სახეზე მიყვანა ............................ გვ.75
კითხვარი თვითშემოწმებისათვის …………………………………………………… . .გვ.76
4. ავტომატური ენების ძირითადი თვისებები
4.1. ავტომატური ენების ჩაკეტილობის თვისება ................................................... გვ. 76
4.2. ავტომატური ენების თანაკვეთა და დამატება ................................................. გვ. 78
4.3. ლემა ავტომატური ენების ზრდადობის შესახებ ............................................... გვ. 78
4.4. არაავტომატური ენების მაგალითები..................................................................... გვ. 79
5. რეგულარული გამოსახულებები
5.1. რეგულარული გრამატიკები ..................................................................................... გვ.80
5.2. რეგულარული ენები ................................................................................................ გვ.80
5.3. ავტომატების ანალიზისა და სინთეზის ზოგადი ამოცანები…………………. გვ.84
5.4. კლინის თეორემა ....................................................................................................... გვ. 85
5.5. რეგულარული გამოსახულების მინიმალური ფორმა ....................................... გვ. 85
5.6. რეგულარული გამოსახულებების გრაფული წარმოდგენები............................ გვ. 90
კითხვარი თვითშემოწმებისათვის ……………………………………………………… გვ.92
6. დეტერმინირებული სასრული ავტომატების მინიმიზაცია .................. გვ.93
7. არაცალსახობა კონტექსტურად -თავისუფალ გრამატიკებში
7.1. გამოყვანის ხეები ....................................................................................................... გვ.93
7.2. ცალსახა კონტექსტურად - თავისუფალი გრამატიკები ....................................... გვ.94
კითხვარი თვითშემოწმებისათვის ……………………………………………………… გვ.96

8. კონტექსტურად - თავისუფალი ენების ნორმალური ფორმები


8.1 უსარგებლო სიმბოლოების აღმოფხვრა .................................................................... გვ.96
8.2. - წესების აღმოფხვრა...................................................................................................გვ.98
8.3. ხომსკის ნორმალური ფორმა ..................................................................................... გვ.99
9. კონტექსტურად - თავისუფალი ენების ძირითადი თვისებები
9.1. ლემა წრფივი ენების ზრდადობის შესახებ ,...........................................................გვ.101
9.2. წრფივი ენების კლასის ჩაკეტილობის თვისება ................................................... გვ.101
9.3. კონტექსტურად - თავისუფალი ენების ჩაკეტილობის თვისება.......................... გვ.102
9.4. კონტექსტურად - თავისუფალი ენების თანაკვეთა და დამატება ....................... გვ.103
9.5. კონტექსტურად - თავისუფალი ენის თანაკვეთა ავტომატურ ენასთან............. გვ.103
კითხვარი თვითშემოწმებისათვის ……………………………………………………… გვ.104

10. ალგორითმი. ტიურინგის მანქანა.


მაღაზიური მეხსიერების ავტომატი (PD-ავტომატი)
10.1. ტიურინგის მანქანა ................................................................................................... გვ.104
3
10.2. მაღაზიური მეხსიერების ავტომატის ფუნქციონირება....................................... გვ.111
10.3. ენათა კლასი, დასაშვები PD-ავტომატში და წარმოქმნილი
PD-ავტომატის მიერ ............................................................................................................ გვ.114
10.4. PD-ავტომატის ფუნქციონირება ენის წარმოქმნისას............................................ გვ.115
10.5. PD-ავტომატის ფუნქციონირება ენის დაშვებისას ................................................გვ.115
10.6. გრამატიკები, რომლებიც წარმოქმნიან PD -ავტომატისათვის დასაშვებ ენებს.გვ.116
10.7. სასრული ავტომატები და მათი კლასიფიკაცია მეხსიერების მიხედვით........ გვ.116
11. სინტაქსური გარჩევა
11.1. დაღმავალი გარჩევა ................................................................................................... გვ.119
11.2. აღმავალი გარჩევა ..................................................................................................... გვ.122
კითხვარი თვითშემოწმებისათვის ……………………………………………………… გვ.123

12. ალგორითმული პრობლემები


12.1. ჩერჩ- ტიურინგის თეზისი ........................................................................................გვ.126
12.2. დაშვებადი და ჩამოთვლადი სიმრავლეები ...........................................................გვ.126
12.3. მასიური ამოცანები ......................................................................................................გვ.126
12.4. 0 ტიპის ( წარმომქმნელი) გრამატიკა ...................................................................... გვ.127
12.5. პოსტის შესაბამისობის პრობლემა ........................................................................... გვ.127
13. ალგორითმულად გადაჭრადი პრობლემები
13.1. შეუმოკლებელი გრამატიკები .....................................................................................გვ.128
13.2. წრფივად შეზღუდული ავტომატები .......................................................................გვ.129
13.3. სიტყვის გამოყვანის პრობლემა .................................................................................გვ.130
13.4. ენის სიცარიელის პრობლემა ......................................................................................გვ.130
13.5. ენის უსასრულობის პრობლემა ................................................................................ გვ.130
13.6. სასრული ავტომატების ეკვივალენტობის პრობლემა ..........................................გვ.131

14. ალგორითმულად გადაუჭრადი პრობლემები


14.1. კონტექსტურად - თავისუფალი ენების თანაკვეთა ...............................................გვ.131
14.2. ცალსახობის პრობლემა............................................................................................... გვ.132
14.3. კონტექსტურად - თავისუფალი ენის დამატება ................................................... გვ.132
14.4. ენის ავტომატურობის პრობლემა .............................................................................გვ.134
14.5. კონტექსტურად თავისუფლების პრობლემა............................................................გვ.135
კითხვარი თვითშემოწმებისათვის ……………………………………………………… . გვ.135
დანართი
1. ენები და დაპროგრამების სისტემები .......................................................................... გვ.136
2. ავტომატებთან, როგორც მექანიკურ მოწყობილობებთან დაკავშირებული ზოგიერთი
ისტორიული ფაქტი .............................................................................................................. გვ.139
3. სავარჯიშოები ......................................................................................................................გვ.140
გამოყენებული ლიტერატურა .............................................................................................გვ.156

4
ფორმალური გრამატიკების თეორიას ცენტრალური შემადგენელი ადგილი
უჭირავს მათემატიკურ ლინგვისტიკაში (ენათმეცნიერებაში). იგი წარმოიშვა, ერთის
მხრივ, ლინგვისტიკის და, მეორეს მხრივ, გამომთვლელი მანქანების მათემატიკური
უზრუნველყოფის მოთხოვნილებასთან დაკავშირებით. ფორმალურ გრამატიკებს შორის
განსაკუთრებით მნიშვნელოვანია კონტექსტურად თავისუფალი გრამატიკების კლასი.
იგი მეტად ხელსაყრელი აღმოჩნდა მრავალი ბუნებრივი ენის კონსტრუქციის აღსაწერად
და შემდეგში ფართო გამოყენება ჰპოვეს პროგრამირების ენების აღწერაში. თავისი
სტრუქტურის სიმარტივისა და აბსტრაქტული ავტომატების თეორიის ზოგიერთ
კონცეფციასთან მჭიდრო კავშირის წყალობით იგი მეტად ხელსაყრელია მათემატიკური
შესწავლის თვალსაზრისითაც.
ლექციათა კურსი მოიცავს ინფორმატიკის ისეთ კლასიკურ თემებს, როგორიცაა
წარმომქმნელი გრამატიკები, სასრული ავტომატები, წრფივი გრამატიკები,
რეგულარული გამოსახულებები, კონტექსტურად თავისუფალი გრამატიკები და ენები,
ტიურინგის მანქანა, გრამატიკებთან და ავტომატებთან დაკავშირებული
ალგორითმული პრობლემები. მოყვანილია პრაქტიკული მაგალითები და სავარჯიშოები
დამოუკიდებელი მუშაობისათვის.

1. ზოგადი ცნებები ფორმალური სისტემების შესახებ


გამონათქვამები და ლოგიკური კავშირები

გამონათქვამი არის მტკიცებულება ან ისეთი წინადადება, რომლის შესახებაც


შეიძლება ითქვას ჭეშმარიტია იგი თუ მცდარი. სხვა სიტყვებით რომ ვთქვათ,
გამონათქვამის შესახებ ჭეშმარიტების ან მცდარობის მტკიცებულებას აზრი უნდა
ჰქონდეს. რაიმე მტკიცებულების ჭეშმარიტებას ან მცდარობას ეწოდება მისი
ჭეშმარიტების მნიშვნელობა.

მოვიყვანოთ ზოგიერთი წინადადება, რომელიც არაა გამონათქვამი:


ვინ ხართ? (კითხვა),
წაიკითხეთ ეს თავი შემდეგ მეცადინეობამდე! (ბრძანება),
ეს მტკიცებულება მცდარია ( შინაგანი წინააღმდეგობრივი მტკიცებულება).
განვიხილოთ ორი ასეთი ფრაზა: “ორჯერ ორი ოთხია” და “ორჯერ სამი
ხუთია”. ამ ორი ფრაზიდან, რომლებიც გამონათქვამებს წარმოადგენენ, პირველი
მათგანი ჭეშმარიტია, ხოლო მეორე-მცდარი, რადგან პირველი მათგანის ლოგიკური
მნიშვნელობაა ჭეშმარიტება, მეორის ლოგიკური მნიშვნელობა- მცდარობა. ფრაზები “ამ
დღეს მოდიოდა წვიმა”, “მთელი რიცხვი არის მარტივი” არიან ცვლადიანი
გამონათქვამები, რომლებიც გარემოებებზეა დამოკიდებული და შეუძლიათ მიიღონ

5
ჭეშმარიტი ან მცდარი მნიშვნელობა. ზოგადად ჭეშმარიტება აღინიშნება 1-იანით, ხოლო
მცდარობა 0-ით.

გამონათქვამებსა და ცვლადიან გამონათქვამებს ავღნიშნავთ მცირე ლათინური


p,q,r… ასოებით.
მეტყველებაში მარტივი წინადადებებიდან რთული წინადადებების მისაღებად
გამოიყენება კავშირები – მეტყველების განსაკუთრებული ნაწილები, რომლებიც
აერთებენ ცალკეულ გამონათქვამებს. ყველაზე ხშირად გამოიყენება “და”, “ან”, “არა”,
“თუ.. მაშინ”, “მხოლოდ თუ”, “და მაშინ და მხოლოდ მაშინ” კავშირები. გამონათქვამს
ეწოდება მარტივი, თუ იგი არ შეიცავს არცერთ კავშირს. გამონათქვამს ეწოდება რთული,
თუ იგი შეიცავს ერთ ან რამოდენიმე კავშირს.
ვთქვათ და აღნიშნავს შემდეგ მარტივ გამონათქვამებს:

: “გივი ატარებს ავტომობილს”,

: ”გოგის შავი თმები აქვს”.

გამონათქვამი
“გივი ატარებს ავტომობილს და გოგის შავი თმები აქვს”
არის რთული გამონათქვამი და ის შედგება ორი ნაწილისაგან, რომლებიც შეერთებულია
ერთმანეთთან “და” კავშირით. ეს გამონათქვამი სიმბოლურად შეიძლება შემდეგი სახით
ჩავწეროთ:
და .
გამონათქვამი “წვიმა მოდის და ქარი ქრის” ჭეშმარიტად ითვლება მაშინ და
მხოლოდ მაშინ, თუ ერთდროულად წვიმაც მოდის და ქარიც ქრის. ეს გამონათქვამი
არის ორი – “წვიმა მოდის” და “ქარი ქრის” მარტივ გამონათქვამთა კონიუნქცია.
ორი და გამონათქვამის კონიუნქცია აღინიშნება ⋀ სიმბოლოთი (⋀
სიმბოლო აღნიშნავს “და” კავშირს) და და -ს სხვადასხვა მნიშვნელობებისათვის აქვს
შემდეგი მნიშვნელობები:

0 0 0

0 1 0

1 0 0

1 1 1

6
დიზიუნქცია ⋁ (⋁ სიმბოლო აღნიშნავს “ან” კავშირს) ითვლება
ჭეშმარიტად მაშინ და მხოლოდ მაშინ, როცა ერთ-ერთი გამონათქვამი მაინცაა
ჭეშმარიტი.

0 0 0

0 1 1

1 0 1

1 1 1

ნებისმიერ გამონათქვამს შეგვიძლია შევუსაბამოთ (ან ̅) -მისი უარყოფა,


რომელიც განისაზღვრება შემდეგი ცხრილით:

0 1

1 0

ნებისმიერ გამონათქვამთა წყვილს შეგვიძლია შევუსაბამოთ


გამონათქვამი (იმპლიკაცია).

0 0 1

0 1 1

1 0 0

1 1 1

გამოსახულებაში ლოგიკური ოპერატორი არავითარ შემთხვევაში


არ უნდა ავურიოთ “ ⇒ ” მეტაიმპლიკაციაში, რომელიც აღნიშნავს, რომ
ნამდვილად გამომდინარეობს - დან. ჩვენს შემთხვევაში და გამონათქვამების
შინაარსი არ განიხილება და ერთადერთი, რაც მათ შესახებაა ცნობილი, არის მათი
ლოგიკური მნიშვნელობა.

7
თუ ვიცით, რომ -ს მნიშვნელობაა 1 და -ს აქვს მნიშვნელობა 1, მაშინ
შეგვიძლია დავასკვნათ, რომ -ს მნიშვნელობაა 1 .

ორი და გამონათქვამიდან შეგვიძლია შევადგინოთ


გამონათქვამი, რომელიც განისაზღვრება შემდეგი ცხრილით:

0 0 1

0 1 0

1 0 0

1 1 1

აქ ფაქტიურად წარმოდგენილია გამონათქვამი “ ეკვივალენტურია –სი”,


ანუ “ - ს აქვს იგივე ლოგიკური მნიშვნელობა , რაც – ს”.
როგორც იმპლიკაციის შემთხვევაში, ლოგიკური ეკვივალენტობის
შემთხვევაშიც შესაერთებელი გამონათქვამების შინაარსი მხედველობაში არ მიიღება.
⋀ და ⋁ სიმბოლოებს ბინარულ კავშირებს უწოდებენ, რადგანაც ისინი
გამონათქვამთა ორ წყვილს აერთებს. სიმბოლო არის უნარული კავშირი, რადგან
იგი მხოლოდ ერთი გამონათქვამისათვის გამოიყენება.
ვთქვათ გვაქვს ცვლადების სასრული ან უსასრულო რაოდენობა. მათი და
ლოგიკური ოპერაციების საშუალებით შეგვიძლია შევქმნათ გამოსახულებები. მაგ:
⋁ ⋀ ⋁ და სხვ.
არსებობენ გამოსახულებები, რომლებიც ღებულობენ 1-ის ტოლ მნიშვნელობას,
როგორიც არ უნდა იყოს მასში შემავალი ცვლადების მნიშვნელობები. მაგალითად:
⋁ ̅ . ასეთ გამონათქვამებს უწოდებენ იგიურად ჭეშმარიტ გამონათქვამებს ანუ
ტავტოლოგიას.

არსებობენ გამოსახულებები, რომლებიც ღებულობენ 0-ის ტოლ მნიშვნელობას


მასში შემავალი ცვლადების ნებისმიერი მნიშვნელობისათვის. მაგალითად: ⋀ ̅
⋁ ̅ ⋀ ̅ . ასეთ გამოსახულებებს უწოდებენ იგიურად მცდარ ანუ
წინააღმდეგობრივ გამონათქვამებს.

8
არსებობენ გამოსახულებები, რომლებიც ღებულობენ ან 1 ან 0 მნიშვნელობებს
მასში შემავალი ცვლადების მნიშვნელობებზე დამოკიდებულების მიხედვით.
მაგალითად: ⋁ ⋀ თუ ამ გამონათქვამს ავღნიშნავთ -ით, მაშინ

0 0 1

0 1 1

1 0 0

1 1 1

ლოგიკური გამომდინარეობა

დებულებას `თუ , მაშინ ~, სადაც რაიმე პირობაა, ხოლო - მისგან გამომდინარე


შედეგი, ლოგიკური გამომდინარეობა ანუ პირობითი დებულება ეწოდება. ცხადია ამ
დებულების მნიშვნელობაც იქნება მცდარი ან ჭეშმარიტი.

თუ რაიმე მოცემულ დებულებას ჩავთვლით პირდაპირ დებულებათ, მაშინ ამ


დებულებიდან შეიძლება მივიღოთ მისი საწინააღმდეგო, შებრუნებული, მოპირდაპირე
(ტოლფასი) და შებრუნებულის მოპირდაპირე (ექვივალენტური) დებულებები.

საწინააღმდეგო დებულება

`თუ , მაშინ ~ დებულების საწინააღმდეგო დებულებაა: `თუ , მაშინ არა ~.

ე.ი. საწინააღმდეგო დებულებაში პირობა რჩება იგივე, ხოლო შედეგი იცვლება მისი
უარყოფით.

მაგალითად, დებულების: თუ ვაშლი წითელია, მაშინ ის კეხურაა, საწინააღმდეგო


დებულებაა - თუ ვაშლი წითელია, მაშინ ის არაა კეხურა.

შევნიშნოთ, რომ თუ მოცემული დებულება ჭეშმარიტია, მაშინ მისი საწინააღმდეგო


დებულება იქნება მცდარი. ხოლო, თუ მოცემული დებულება მცდარია, მაშინ მისი
საწინააღმდეგო დებულება იქნება ჭეშმარიტი.

მაგალითად, თუ დებულება: ყველა ბავშვი ცელქია, მცდარია, მაშინ მისი საწინააღმდეგო


დებულება – ყველა ბავშვი არ არის ცელქი, იქნება ჭეშმარიტი.

9
შებრუნებული დებულება

`თუ , მაშინ ~ დებულების შებრუნებული დებულებაა: `თუ B , მაშინ ~.

ე.ი. პირდაპირი დებულების პირობა შებრუნებულ დებულებაში ხდება შედეგი, ხოლო


პირდაპირი დებულების შედეგი შებრუნებულ დებულებაში ხდება პირობა.

მაგალითად, დებულების: თუ ფული მექნება, მაშინ ვიყიდი მობილურს, შებრუნებული


დებულებაა - თუ ვიყიდი მობილურს, მაშინ ფული მექნება.

შევნიშნოთ, რომ თუ მოცემული დებულება ჭეშმარიტია, მაშინ მისი შებრუნებული


დებულება შეიძლება არ იყოს ჭეშმარიტი. ანუ, მოცემული და მისი შებრუნებული
დებულებები ყოველთვის არ არის ერთდროულად ჭეშმარიტი ან მცდარი.

მაგალითად, დებულება: ყველა ცხენი ცხოველია - ჭეშმარიტია, მაგრამ მისი


შებრუნებული დებულება: ყველა ცხოველი ცხენია – მცდარია. ხოლო დებულება: ყველა
ლუწი რიცხვი იყოფა ორზე და მისი შებრუნებული დებულება: ყველა რიცხვი რომელიც
იყოფა ორზე ლუწია - ორივე ჭეშმარიტია.

მოპირდაპირე (ტოლფასი) დებულება

`თუ , მაშინ ~ დებულებაში პირობა და შედეგი შევცვალოთ მათი უარყოფებით,


მაშინ მივიღებთ ახალ დებულებას: `თუ არა , მაშინ არა ~, რომელსაც მოცემული
დებულების მოპირდაპირე ანუ ტოლფასი დებულება ეწოდება:

ე.ი. მოცემული დებულების ტოლფას დებულებაში, პირობის უარყოფიდან


გამომდინარეობს შედეგის უარყოფა. ანუ დებულების ჭეშმარიტობიდან
(მცდარობიდან) გამომდინარეობს დებულების ჭეშმარიტობა (მცდარობა). ეს
დებულებები ერთდროულად არიან ჭეშმარიტი ან მცდარი. ამასთან, მოცემული და მისი
ტოლფასი დებულებები ყოველთვის გამოხატავენ ერთსა და იმავე აზრს.

მაგალითად, დებულების: თუ მოღრუბლულია, მაშინ იწვიმებს მოპირდაპირე (ტოლფასი)


დებულებაა - თუ მოღრუბლული არაა, მაშინ არ იწვიმებს.

შებრუნებულის მოპირდაპირე (ექვივალენტური) დებულება

`თუ A , მაშინ ~ დებულების შებრუნებულ დებულებაში - `თუ , მაშინ ~,


პირობა და შედეგი შევცვალოთ მათი უარყოფებით, მაშინ მივიღებთ ახალ დებულებას:
`თუ არა , მაშინ არა ~, რომელსაც მოცემული დებულების შებრუნებულის
მოპირდაპირე ანუ ექვივალენტური დებულება ეწოდება.

10
ე.ი. მოცემული დებულების ექვივალენტურ დებულებაში შედეგის უარყოფიდან
გამომდინარეობს პირობის უარყოფა. ანუ დებულების ჭეშმარიტობიდან
(მცდარობიდან) გამომდინარეობს დებულების ჭეშმარიტობა (მცდარობა). ეს
დებულებებიც ერთდროულად არიან ჭეშმარიტი ან მცდარი, მაგრამ არ გამოხატავენ ერთსა
და იმავე აზრს.

მაგალითად, დებულების: თუ კარგი ამინდი იქნება, მაშინ წავალ სასეირნოდ


ექვივალენტური დებულებაა - თუ სასეირნოდ არ წავალ, მაშინ კარგი ამინდი არ იქნება.

დე მორგანის წესები

ადვილად შეგვიძლია დავრწმუნდეთ, რომ გამოსახულებები


̅̅̅̅̅̅̅̅̅̅̅̅ ̅̅̅̅̅̅̅̅̅̅̅̅
( ⋁ ) ̅⋀ ̅ ( ⋀ ) ̅⋁ ̅
წარმოადგენენ ტავტოლოგიურ ეკვივალენტურობას. მათ ეწოდებათ დე მორგანის
წესები.

ნებისმიერი ცვლადების ან გამოსახულებებისათვის გვაქვს:

1. ⋁ ⋀ : იდემპოტენტურობა.
2. ⋁ ⋁ ⋀ ⋀ : კომუტატიურობა.
3. ⋁ ⋁ ⋁ ⋁ ; ⋀ ⋀ ⋀ ⋀ : ასოციაციურობა.

4. ⋁ ⋀ ⋀ ⋁

⋁ ⋀ ⋁ ⋀ ⋁
5. { : დისტრიბუტიულობა.
⋀ ⋁ ⋀ ⋁ ⋀

6. ⋁ ̅ ჭეშმარიტი ⋀ ̅ მცდარი

̅̅̅̅̅̅
⋁ ̅⋀ ̅
7. {̅̅̅̅̅̅ : გაორება ( დე მორგანის წესი).
⋀ ̅⋁ ̅

8. ̅̅̅̅̅

11
გამონათქვამთა აღრიცხვის თეორიულ-სიმრავლური
ინტერპრეტაცია

ავიღოთ სიმრავლეთა ოჯახი და ცვლადების ინტერპრეტაცია მოვახდინოთ


როგორც სახის გამოსახულება ერთი და იმავე -ით. მაშინ ⋀
ინტერპრეტირდება, როგორც , ხოლო ⋁ - როგორც და ა. შ.
გამონათქვამთა აღრიცხვა ახლა მიიღებს შემდეგ ინტერპრეტაციას: მის თეორიულ-
სიმრავლურ სახეს წარმოადგენს სიმრავლეთა ალგებრა, მიღებული - დან
თანაკვეთის, გაერთიანების ოპერაციებისა და რაიმე უნივერსალური სიმრავლის
მიმართ დამატების აღებით, რომელიც თავის მხრივ შეიცავს ყველა - ს და
შეესაბამება ჭეშმარიტებას. უნივერსალური სიმრავლის მიმართ დამატების აღება
შეესაბამება უარყოფას; ცარიელი სიმრავლე, რომელიც წარმოადგენს დამატებას -
თვის, შეესაბამება სიცრუეს.

ორი ცვლადიდან ან გამოსახულებიდან გამომდინარე, შეიძლება ავაგოთ “p w ”


ფორმულა, სადაც w მოიცემა შემდეგი ცხრილით:

0 0 0

0 1 1

1 0 1

1 1 0

და შეესაბამება მკაცრ დიზიუნქციას: ან ერთი ან მეორე, მაგრამ არც ერთი და არც მეორე
ერთად.
| ოპერაცია ( შეფერის შტრიხი ანუ უთავსებადობა ) ასე განისაზღვრება:

0 0 1

0 1 1

1 0 1

1 1 0

შეამოწმეთ შემდეგი ტავტოლოგიური ეკვივალენტურობა

12
̅ .

⋁ .

⋀ .

ფორმალური სისტემისა და ფორმალური ენის ცნება


ფორმალური სისტემის ცნება ისტორიულად ჩამოყალიბდა აქსიომატური
თეორიის ცნების საფუძველზე. ჯერ კიდევ ევკლიდეს გეომეტრია იყო ნაწილობრივ
აქსიომატიზირებული. სრულად კი აქსიომატური მიდგომა ცხადად გაფორმდა 19-ე
საუკუნის ბოლოს.
აქსიომებიდან გამომდინარე, შეგვიძლია დავამტკიცოთ თეორემები. მაგალითად,
თეორემა: ორ განსხვავებულ წრფეს შეიძლება ჰქონდეს ერთი საერთო წერტილი.
წერტილებისა და წრფეების შესახებ ყველა არსებული ინფორმაცია კი
მოცემულია შემდეგ აქსიომებში;
წრფე არის წერტილთა სიმრავლე.
ნებისმიერ ორ წერტილზე შეიძლება გავავლოთ რაიმე წრფე.
ორ წერტილზე გაივლება მხოლოდ ერთი წრფე.
ნებისმიერ წრფეზე არსებობს არანაკლებ ორი წერტილი.
არსებობს სამი წერტილი მაინც, რომლებიც არ ეკუთვნის ერთ წრფეს.
ფორმალურ სისტემას საქმე აქვს ენასთან, რომელიც აიგება რაიმე ალფავიტის
მიხედვით აქსიომებისა და გამომდინარეობის (გამოყვანის) წესების საშუალებით. რომ
ვილაპარაკოთ ფორმალური სისტემის ელემენტებზე, მათ წესებსა და სხვ. , უნდა
ვისარგებლოთ რომელიმე ენით. ეს ენა უნდა შეიცავდეს ობიექტების სახელებს,
ურთიერთობის სახეებს და სხვ.
საზოგადოდ, ფორმალური სისტემა იქმნება როგორც რაღაც მეორის
იდეალიზირებული სახე. ამ რაღაც მეორეს შეიძლება დავარქვათ, მაგალითად,
“თეორია” , რომლის მიმართებითაც ეს ფორმალური სისტემა აზრს იძენს. მაშინ
ფორმალური სისტემა წარმოადგენს რაიმე თეორიის ფორმალიზაციას, წარმოშობს რა ამ
თეორიის სინტაქსს. თეორია კი წარმოადგენს ამ ფორმალური სისტემის
ინტერპრეტაციას.
ფორმალური სისტემის სწორად შედგენილი სიტყვები (ფრაზები) აზრს იძენენ
ფორმალიზირებული თეორიის ჩარჩოებში. პირიქით, ნებისმიერ გამონათქვამს,

13
რომელსაც აზრი აქვს მოცემულ თეორიაში, შეესაბამება სწორად შედგენილი სიტყვების
(ფრაზების) რაღაც კლასი ფორმალურ სისტემაში.
გავუკეთოთ რეზიუმე ზემოთ ნათქვამს ფორმალური სისტემის შესახებ.
ფორმალური სისტემა ეწოდება ოთხეულს, სადაც -
თვლადი ალფავიტია; -ფორმალური ენა -ზე; - სიმრავლის რაიმე ქვესიმრავლე
ან აქსიომათა სიმრავლე; R - გამომდინარეობის წესების ერთობლიობა.
ფორმალური ენა არის ალფავიტში შემავალი ასოებისაგან შედგენილი
სიტყვათა მიმდევრობა (ჯაჭვი), გამოყოფილი რაღაც სასრული რაოდენობის წესების
საშუალებით.

კითხვარი თვითშემოწმებისათვის

1. რა არის გამონათქვამი?
2. როგორ გამონათქვამს ეწოდება მარტივი გამონათქვამი?
3. როგორ გამონათქვამს ეწოდება რთული გამონათქვამი?
4. ჩამოაყალიბეთ და მოიყვანეთ ორი გამონათქვამის კონიუნქციის, დიზიუნქციის,
იმპლიკაციის, მკაცრი დიზიუნქციისა და გამონათქვამის უარყოფის განმარტებები და
ჭეშმარიტების ცხრილები.
5. როგორ კავშირებს ეწოდება ბინარული კავშირები? უნარული კავშირები?
6. ჩამოაყალიბეთ ლოგიკური გამომდინარეობის ანუ პირობითი დებულების
განმარტება.
7. ჩამოაყალიბეთ მოცემული დებულების საწინააღმდეგო, შებრუნებული, მოპირდაპირე
(ტოლფასი) და შებრუნებულის მოპირდაპირე (ექვივალენტური) დებულებები.
8. ჩამოაყალიბეთ დე მორგანის წესები.
9. რომელი თეორიის ცნების საფუძველზე ჩამოყალიბდა ფორმალური სისტემის ცნება?
10. მოიყვანეთ ფორმალური სისტემისა და ფორმალური ენის განმარტებები.

2. სიტყვები, ენები და გრამატიკები


2.1. ძირითადი ცნებები და განმარტებები

განმარტება 2.1.1. ნატურალური რიცხვები ვუწოდოთ არაუარყოფით მთელ რიცხვებს


და ავღნიშნოთ სიმბოლოთი: { }

განმარტება 2.1.2. ალფავიტი ეწოდება სასრულ არაცარიელ სიმრავლეს. მის ელემენტებს


ეწოდებათ სიმბოლოები (ასონიშნები).

14
განმარტება 2.1.3. სიტყვა (ჯაჭვი, სტრიქონი) ალფავიტში ეწოდება ალფავიტის
ელემენტების სასრულ მიმდევრობას.

მაგალითი 2.1.4. განვიხილოთ { } ალფავიტი. მაშინ წარმოადგენს


სიტყვას ალფავიტში.

განმარტება 2.1.5. სიტყვა, რომელიც არცერთ სიმბოლოს არ შეიცავს ( ე.ი. 0-ვანი


სიგრძის მიმდევრობას), ეწოდება ცარიელი სიტყვა და აღინიშნება სიმბოლოთი.

განმარტება 2.1.6. ყველა სიტყვათა სიმრავლე ალფავიტში აღინიშნება - ით.

შენიშვნა 2.1.7. - სიმრავლე თვლადია. მართლაც, ალფავიტში მოცემული


სიგრძის ყველა სიტყვათა სიმრავლე სასრულია, შესაბამისად - არის სასრული
რაოდენობა თვლადი სიმრავლეების გაერთიანება.

განმარტება 2.1.8. ალფავიტში არაცარიელი სიტყვების სიმრავლე აღინიშნება

- ით.

მაგალითი 2.1.9. თუ { } მაშინ { }.

განმარტება 2.1.10. თუ , მაშინ -ს ეწოდება ენა (ან ფორმალური ენა)


ალფავიტზე.

რადგანაც ყოველი ენა არის სიმრავლე, ამიტომ შეიძლება განვიხილოთ ერთსა და


იმავე ალფავიტზე განსაზღვრული ენების გაერთიანება, თანაკვეთა და სხვაობა
(აღინიშნება შესაბამისად შემდეგნაირად: ).

მაგალითი 2.1.11. { } სიმრავლე წარმოადგენს ენას { } ალფავიტზე.

განმარტება 2.1.12. ვთქვათ . მაშინ ენას ეწოდება ენის დამატება


ალფავიტის მიმართ.

განმარტება 2.1.13. თუ და სიტყვებია ალფავიტში, მაშინ სიტყვას


ეწოდება და სიტყვების კონკატენაცია (კატენაცია, მოჭიდულობა). ზოგჯერ
და სიტყვების კონკატენაციას აღნიშნავენ ასე: .

განმარტება 2.1.14. თუ არის სიტყვა და , მაშინ -ით აღინიშნება -


ჯერ სიტყვა. დავუშვათ ( სიმბოლო იკითხება: „ტოლია
განმარტების ძალით“). შემდეგში სიტყვებისა და სიმბოლოების ხარისხის
მაჩვენებლებში ვიგულისხმებთ ნატურალურ რიცხვებს.

მაგალითი 2.1.15. შეთანხმების ძალით და .


15
მაგალითი 2.1.16. სიმრავლე წარმოადგენს ენას { }
{ }
ალფავიტზე. ეს ენა შეიცავს
სიტყვებს.

განმარტება 2.1.17. სიტყვის სიგრძე ეწოდება სიმბოლოების რაოდენობას -ში და


აღინიშნება - ით. ამავე დროს თითოეული სიმბოლო იმდენჯერ ითვლება,
რამდენჯერაც გვხვდება იგი - ში.

მაგალითი 2.1.18. ცხადია, რომ და .

განმარტება 2.1.19. -თი აღინიშნება სიტყვაში სიმბოლოს რაოდენობა.

მაგალითი 2.1.20. თუ { } მაშინ


და

2.2. ოპერაციები ენებზე

განმარტება 2.2.1. ვთქვათ მაშინ { }.


ენას ეწოდება და ენების კონკატენაცია.

მაგალითი 2.2.2. თუ { } და { }

მაშინ { }.

სავარჯიშო 2.2.3. როგორი მთელი დადებითი რიცხვებისათვის არსებობს


ალფავიტი, და ენები, რომლებიც აკმაყოფილებენ |
| | | პირობებს?

განმარტება 2.2.4. ვთქვათ . მაშინ

{ } ჯერ, თუ

მაგალითი 2.2.5. თუ { } მაშინ

{ }

სავარჯიშო 2.2.6. ვთქვათ { } და { } იპოვე

განმარტება 2.2.7. ენის იტერაცია (აღინიშნება -ით) ეწოდება

16

ამ ოპერაციას ეწოდება კლინის ვარსკვლავი.

მაგალითი 2.2.8. თუ { } და { }, მაშინ

{ }

განმარტება 2.2.9. სიტყვის შებრუნებული ანუ სარკული ანასახი აღინიშნება -


ით და ეწოდება სიტყვას, რომელშიდაც სიტყვის სიმბოლოები განლაგებულია
საწინააღმდეგო რიგით.

მაგალითი 2.2.10. თუ მაშინ

განმარტება 2.2.11. ვთქვათ მაშინ { }.

ენას ეწოდება ენის შებრუნებული.

განმარტება 2.2.12. ვიტყვით, რომ სიტყვა პრეფიქსია (საწყისია) სიტყვისა


(აღინიშნება ) , თუ რომელიმე სიტყვისათვის.

მაგალითი 2.2.13. ცხადია, რომ და .

განმარტება 2.2.14. ვთქვათ . Pref(L) -ით აღინიშნება სიმრავლე, რომელიც


შედგება ენის ყველა სიტყვების პრეფიქსებისაგან და ეწოდება ენის პრეფიქსთა
სიმრავლე:

{ }

განმარტება 2.2.15. ვიტყვით, რომ სიტყვა სუფიქსია (ბოლო) სიტყვისა


(აღინიშნება ) , თუ რომელიმე სიტყვისათვის.

განმარტება 2.2.16. ვთქვათ . Suf(L) - ით აღინიშნება სიმრავლე, რომელიც


შედგება ენის ყველა სიტყვების სუფიქსებისაგან და ეწოდება ენის სუფიქსთა
სიმრავლე:

{ }

განმარტება 2.2.17. ვიტყვით, რომ არის სიტყვის ქვესიტყვა, თუ


რაიმე და სიტყვებისათვის.

17
განმარტება 2.2.18. ვთქვათ . მაშინ - ით აღინიშნება ენის ყველა
ქვესიტყვათა სიმრავლე.

განმარტება 2.2.19. სიგრძის სიტყვას ეწოდება სიტყვის


ქვემიმდევრობა, თუ არსებობს ისეთი სიტყვები,
რომ

შენიშვნა 2.2.20. სიტყვის ყველა ქვესიტყვა აგრეთვე წარმოადგენს სიტყვის


ქვემიმდევრობას.

განმარტება 2.2.21. ვთქვათ . მაშინ აღნიშნავს სიმრავლეს, რომელიც


შედგება ენის ყველა სიტყვების ქვემიმდევრობისაგან.

მაგალითი 2.2.22. განვიხილოთ { } ენა { } ალფავიტზე.

ცხადია, რომ { }

განმარტება 2.2.23. ფუნქციას ეწოდება ბიექცია, თუ სიმრავლის ყოველი


ელემენტი წარმოადგენს სიმრავლის მხოლოდ ერთადერთი ელემენტის
სახეს ფუნქციის მიმართ.

განმარტება 2.2.24. და სიმრავლეები თანაბარი სიმძლავრისაა, თუ არსებობს


ბიექცია დან -ში.

კითხვარი თვითშემოწმებისათვის

1. რას ეწოდება ალფავიტი ?


2. რას ეწოდება სიტყვა (ჯაჭვი, სტრიქონი) ალფავიტში?
3. როგორ სიტყვას ეწოდება ცარიელი სიტყვა?
4. რას აღნიშნავს და სიმრავლეები?
5. რას ეწოდება სიტყვის სიგრძე?
6. მოიყვანეთ ორი სიტყვისა და ორი ენის კონკატენაციის განმარტებები.
7. როგორ ოპერაციას ეწოდება კლინის ვარსკვლავი?
8. ჩამოაყალიბეთ სიტყვის სარკული ანასახის განმარტება.
9. ჩამოაყალიბეთ ენის შებრუნებული ენის განმარტება.
10. რას ეწოდება სიტყვის პრეფიქსი? სუფიქსი?
11. როგორ ფუნქციას ეწოდება ბიექცია? რა შემთხვევაშია ორი სიმრავლე თანაბარი
სიმძლავრის?

18
2.3. წარმომქმნელი გრამატიკა

განმარტება 2.3.1. წარმომქმნელი გრამატიკა (0 ტიპის გრამატიკა) ეწოდება

ოთხეულს, სადაც და სასრული ალფავიტებია,


, , P სასრულია და აქ - ძირითადი
ალფავიტია (ტერმინალური ალფავიტი). მის ელემენტებს ეწოდება ტერმინალური
სიმბოლოები ანუ ტერმინალები, - დამხმარე ალფავიტი (არატერმინალური
ალფავიტი). მის ელემენტებს ეწოდება არატერმინალური სიმბოლოები,
არატერმინალები, დამხმარე სიმბოლოები ან ცვლადები. S - საწყისი სიმბოლოა
(აქსიომა). წყვილს ეწოდება ჩასმის წესები ან პროდუქცია და ჩაიწერება
სახით.
წარმომქმნელ გრამატიკას (0 ტიპის გრამატიკას) ასევე ალგორითმულ
გრამატიკასაც უწოდებენ.

მაშასადამე, თუ სახის წესებზე არავითარი შეზღუდვა არაა დაწესებული


(გარდა იმისა, რომ არ შეიძლება შედგებოდეს მხოლოდ ძირითადი სიმბოლოებისაგან),
მაშინ გრამატიკას ეწოდება წარმომქმნელი გრამატიკა. ეს მოთხოვნა აუცილებელია
ყველა გრამატიკისათვის!

მაგალითი 2.3.2. ვთქვათ მოცემულია = {S}, { } და


{ } სიმრავლეები. მაშინ წარმოადგენს
წარმომქმნელ გრამატიკას.

შენიშვნა 2.3.3. სიმრავლის ელემენტები ავღნიშნოთ ლათინური ანბანის პატარა


ასონიშნებით, ხოლო სიმრავლის ელემენტები - დიდი ასონიშნებით. წარმომქმნელ
გრამატიკაში წესები ჩაიწერება ისე, რომ პირველი წესის მარცხენა მხარე იქნება საწყისი
S სიმბოლო.

შენიშვნა 2.3.4. ერთნაირი მარცხენა ნაწილის მქონე

წესებისათვის ხშირად გამოიყენება ჩაწერა.


განმარტება 2.3.5. ვთქვათ მოცემულია G გრამატიკა. დავწერთ, რომ , თუ
, და რომელიმე სიტყვებისათვის


ალფავიტში. თუ , მაშინ იტყვიან, რომ სიტყვა უშუალოდ
გამოიყვანება სიტყვიდან.

შენიშვნა 2.3.6. როდესაც კონტექსტიდან ცხადია თუ რომელ გრამატიკაზეა საუბარი,

19

- ს ნაცვლად უბრალოდ შეიძლება დავწეროთ ⇒ სიმბოლო.

მაგალითი 2.3.7. ვთქვათ

{ }{ }{ }

მაშინ .

⇒ ⇒ ⇒
განმარტება 2.3.8. თუ სადაც მაშინ

დავწერთ ⇒ და ვიტყვით, რომ სიტყვა გამოიყვანება სიტყვიდან.


სხვა სიტყვებით, ⇒ ბინარული დამოკიდებულება ბინარული დამოკიდებულების

რეფლექსური, ტრანზიტული ჩართვაა, განსაზღვრული სიმრავლეზე.

ამავე დროს სიტყვების მიმდევრობას ეწოდება სიტყვის


გამოყვანა სიტყვიდან გრამატიკაში. რიცხვს ეწოდება ამ გამოყვანის სიგრძე
(ბიჯების რაოდენობა).

შენიშვნა 2.3.9. კერძოდ, ყოველი სიტყვისათვის ⇒

(რადგანაც შესაძლებელია 0-ნი სიგრძის გამოყვანა).

მაგალითი 2.3.10. ვთქვათ { }{ }{ } . მაშინ


aSa ⇒ . ამ გამოყვანის სიგრძეა - 3.

განმარტება 2.3.11. ენა, წარმოქმნილი გრამატიკით, არის

{ ⇒ } სიმრავლე. ვიტყვით აგრეთვე, რომ გრამატიკა

წარმოქმნის ენას.

შენიშვნა 2.3.12. არსებითია, რომ წარმომქმნელი გრამატიკის განმარტებაში ჩართულია


ორი და ალფავიტი. ეს საშუალებას გვაძლევს 2.3.11. განმარტებაში
„აღმოვფხვრათ“ საწყისი სიმბოლოდან მიღებული სიტყვების ნაწილი. კერძოდ,
უკუვაგდოთ ყოველი სიტყვა, რომელიც შეიცავს ერთ სიმბოლოს მაინც, რომელიც არ
ეკუთვნის ალფავიტს.
20
მაგალითი 2.3.13. თუ { }{ }{ }

მაშინ { }. .

განმარტება 2.3.14. ორი გრამატიკა ეკვივალენტურია, თუ ისინი წარმოქმნიან ერთსა და


იმავე ენას.

მაგალითი 2.3.15. გრამატიკა და


გრამატიკა ეკვივალენტურებია.

2.4. გრამატიკის კლასები


შემოვიღოთ ფორმალური გრამატიკების შემდეგი კლასიფიკაცია.

განმარტება 2.4.1. კონტექსტური გრამატიკა (1 ტიპის გრამატიკა) ეწოდება წარმომქმნელ


გრამატიკას, რომლის ყველა წესს აქვს სახე, სადაც
, , .

ე.ი. თუ სახის წესში - ს სიგრძე (სიმბოლოების რაოდენობა ჯაჭვში) არა


ნაკლები -ს სიგრძეზე, მაშინ გრამატიკას ეწოდება კონტექსტური გრამატიკა.

მაგალითი 2.4.2.

გრამატიკა არ არის კონტექსტური, რადგან ბოლო სამ წესს არ აქვს აღნიშნული საჭირო სახე.

განმარტება 2.4.3.კონტექსტურად - თავისუფალი გრამატიკა (2 ტიპის გრამატიკა)


ეწოდება წარმომქმნელ გრამატიკას, რომლის ყველა წესს აქვს სახე, სადაც
.

ე.ი. კონტექსტურად - თავისუფალ გრამატიკაში მარცხენა მხარეს დგას დამხმარე


ალფავიტის მხოლოდ ერთი ასონიშანი.

მაგალითი 2.4.4.

გრამატიკა კონტექსტურია და არა კონტექსტურად - თავისუფალი, რადგან ბოლო ხუთ წესს არ


აქვს აღნიშნული საჭირო სახე.

21
განმარტება 2.4.5. წრფივი გრამატიკა ეწოდება წარმომქმნელ გრამატიკას, რომლის
ყველა წესს აქვს ან სახე, სადაც

მაგალითი 2.4.6.

გრამატიკა კონტექსტურად - თავისუფალი გრამატიკაა, მაგრამ არაა წრფივი, რადგან პირველ ორ


წესს არ აქვს საჭირო სახე.

განმარტება 2.4.7. მარჯვენა წრფივი გრამატიკა (3 ტიპის გრამატიკა) ეწოდება


წარმომქმნელ გრამატიკას, რომლის ყველა წესს აქვს ან სახე,
სადაც , ხოლო თუ ყველა წესს აქვს ან
სახე, მაშინ ასეთ წარმომქმნელ გრამატიკას ეწოდება მარცხენა წრფივი
გრამატიკა.

შევნიშნოთ, რომ წრფივი გრამატიკა ავტომატური გრამატიკაა. შესაბამისად


მარჯვენა (მარცხენა) წრფივი გრამატიკა არის მარჯვენა (მარცხენა) ავტომატური
გრამატიკა. ამავე დროს იგულისხმება, რომ მარჯვენა (მარცხენა) ავტომატურ
გრამატიკაში ყველა წესს აქვს ან ან სახე.

მაგალითი 2.4.8.

გრამატიკა წრფივი გრამატიკაა, მაგრამ არაა მარჯვენა წრფივი გრამატიკა, რადგან


პირველ წესს არ აქვს საჭირო სახე.

მაგალითი 2.4.9.
გრამატიკა მარჯვენა წრფივი გრამატიკაა. იგი წარმოქმნის ენას.

მაგალითი 2.4.10.

გრამატიკა მარჯვენა წრფივი გრამატიკაა.

მაგალითი 2.4.11.

გრამატიკა მარჯვენა წრფივი გრამატიკაა.

განმარტება 2.4.12. სახის წესებს ეწოდება (ეფსილონ) - წესები.

22
ლემა 2.4.13. ყოველი მარჯვენა წრფივი გრამატიკა არის წრფივი გრამატიკა. ყოველი
წრფივი გრამატიკა არის კონტექსტურად - თავისუფალი. ყოველი კონტექსტურად -
თავისუფალი გრამატიკა წესების გარეშე არის კონტექსტური გრამატიკა.

განმარტება 2.4.14. 0, 1, 2 და 3 ტიპის გრამატიკები ქმნიან ხომსკის იერარქიას .

განმარტება 2.4.15. ენას ეწოდება 0- ნი ტიპის ენა (კონტექსტური, კონტექსტურად-


თავისუფალი, წრფივი, მარჯვენა წრფივი, მარცხენა წრფივი ენა), თუ იგი
წარმოიქმნება 0-ნი ტიპის (შესაბამისად კონტექსტური, კონტექსტურად-თავისუფალი,
წრფივი, მარჯვენა წრფივი, მარცხენა წრფივი) გრამატიკით. კონტექსტურად-
თავისუფალ ენებს აგრეთვე უწოდებენ ალგებრულ ენებს.

{ } -ით ავღნიშნოთ -ური ტიპის ( = 0,1,2,3) ენათა სიმრავლე. მაშინ:


1. ალგორითმული გრამატიკები წარმოქმნიან ნულოვანი ტიპის ენას;
2. კონტექსტური გრამატიკები წარმოქმნიან პირველი ტიპის ენას;
3. უკონტექსტო გრამატიკები წარმოქმნიან მეორე ტიპის ენას;
4. ავტომატური გრამატიკები წარმოქმნიან მესამე ტიპის ენას.
როგორც გრამატიკების განმარტებებიდან გამომდინარეობს, { } { } { }
{ } . შეიძლება იმის ჩვენება, რომ სინამდვილეში ადგილი აქვს { } { } { }
{ } მკაცრ ჩართვას.

მაგალითი 2.4.16. ვთქვათ მოცემულია ნებისმიერი

{ }

ალფავიტი. მაშინ ენა მარჯვენა წრფივი ენაა, რადგან იგი წარმოიქმნება

გრამატიკით.

Type 0

CS
CF
R

23
ნახ. 1. ფორმალური ენებისა და გრამატიკის ტიპების თანაფარდობა

R - regular grammar - რეგულარული გრამატიკა;


3 ტიპის გრამატიკა.

CF - context - free grammar - კონტექსტურად - თავისუფალი გრამატიკა;


2 ტიპის გრამატიკა.

CS - context - sensitive grammar - კონტექსტურად - დამოკიდებული გრამატიკა;


1 ტიპის გრამატიკა.

Type 0 - წარმომქმნელი გრამატიკა;


0 ტიპის გრამატიკა.

ფორმალური გრამატიკების კლასიფიკაცია უფრო მარტივად

შეიძლება შემდეგნაირად ჩამოვაყალიბოთ


განვიხილოთ { } - ტერმინარული ანუ ძირითადი სასრული
ალფავიტი და { } - დამხმარე სასრული ალფავიტი.
სიმრავლედან შევქმნათ სასრული სიგრძის ყველა შესაძლებელი ჯაჭვი. ასეთი ჯაჭვების
სიმრავლე უსასრულოა (თვლადი). განვიხილოთ სახის წესი, სადაც და
ნებისმიერი ჯაჭვებია - დან. ვთქვათ არის სახის წესით ტერმინალური
სიმბოლოებისაგან შედგენილი სიმრავლე. მაშინ არის ენა, წარმოქმნილი
ფორმალური გრამატიკით.
შემოვიღოთ ფორმალური გრამატიკების შემდეგი კლასიფიკაცია.
1. ალგორითმული გრამატიკები, რომლებიც წარმოქმნიან ნულოვანი ტიპის ენას;
2. კონტექსტური გრამატიკები, რომლებიც წარმოქმნიან პირველი ტიპის ენას;
3. უკონტექსტო გრამატიკები, რომლებიც წარმოქმნიან მეორე ტიპის ენას;
4. ავტომატური გრამატიკები, რომლებიც წარმოქმნიან მესამე ტიპის ენას.
თუ სახის წესებზე არავითარი შეზღუდვა არაა დაწესებული (გარდა იმისა, რომ
არ შეიძლება შედგებოდეს მხოლოდ ძირითადი სიმბოლოებისაგან), მაშინ
გრამატიკას ეწოდება ალგორითმული გრამატიკა. თუ ამის გარდა მოითხოვება, რომ - ს
სიგრძე (სიმბოლოების რაოდენობა ჯაჭვში) არ იყოს ნაკლები -ს სიგრძეზე, მაშინ
გრამატიკას ეწოდება კონტექსტური გრამატიკა.

24
თუ ამის გარდა წესებს აქვთ სახე (ე.ი. შედგება ერთი დამხმარე
სიმბოლოსაგან), მაშინ გრამატიკას ეწოდება უკონტექსტო გრამატიკა. და ბოლოს, თუ
ზემოთ ჩამოთვლილ შეზღუდვათა გარდა -ს აქვს ან სახე (ე.ი. წესებს აქვთ
ან სახე), მაშინ გრამატიკას ეწოდება ავტომატური გრამატიკა.

2.5. ხომსკის გრამატიკა და ხომსკის ენა


(კონტექსტურად თავისუფალი გრამატიკა და კონტექსტურად თავისუფალი ენა
- გრამატიკა, ენა )

ენებსა და გრამატიკებს შორის ერთერთი მნიშვნელოვანია ხომსკის გრამატიკა და


შესაბამისად მისგან წარმოქმნილი ენა, რომელსაც ხომსკის ენა ეწოდება. თვითონ ხომსკი
ამ კლასის ენებს უწოდებდა “კონტექსტურად-თავისუფალ” ანუ “უკონტექსტო” ენას.
ტერმინი „კონტექსტურად-თავისუფალი” ანუ „უკონტექსტო“ აღნიშნავს იმ ფაქტს, რომ
დამხმარე სიმბოლოს შეცვლა ჯაჭვით არაა დამოკიდებული კონტექსტზე ( ე.ი. დამხმარე
სიმბოლო ნებისმიერ დროს შეგვიძლია შევცვალოთ ჯაჭვით).
შემდეგში “კონტექსტურად-თავისუფალ” გრამატიკებსა და ენებს ავღნიშნავთ
შემოკლებით, როგორც -გრამატიკები და -ენა ( - ინგლ. კონტექსტურად-
თავისუფალი).

განმარტება 2.5.1. ხომსკის გრამატიკა ( - გრამატიკა) მოიცემა ობიექტების


შემდეგი ოთხეულის მითითებით;

-ტერმინარული ანუ ძირითადი სასრული ალფავიტი.

-დამხმარე სასრული ალფავიტი.

აქსიომა.

სასრული სიმრავლე A→υ სახის -წესებისა, სადაც

, { }

განმარტება 2.5.2. ხომსკის ენა ( - ენა) ეწოდება ფრაზათა სიმრავლეს,


წარმოქმნილს ხომსკის გრამატიკის ტერმინარული სიტყვებით.
ხომსკის გრამატიკაში “დამტკიცების” ნაცვლად მიღებულია ტერმინი
“გამომდინარეობა”.
თუ გვაქვს სიმრავლე, მაშინ სიმბოლოთი ავღნიშნოთ სიმრავლე,
წარმოქმნილი - ს ელემენტების კომბინაციით. მაგალითად, თუ და
, მაშინ , . თუ { } , მაშინ იქნება - ს ხარისხების
სიმრავლე. თუ { }, მაშინ სიმრავლის ჯაჭვები იქნება მთელი ორნიშნა
25
რიცხვები. ამ შემთხვევაში კონკატენაცია წარმოადგენს საკმაოდ რთულ არითმეტიკულ
ოპერაციას (კონკატენაცია - სხვადასხვა კომპონენტიდან აღებული ელემენტებისა და
სიმბოლოების შეერთება).

მაგალითი 2.5.3. ვთქვათ გვაქვს გრამატიკა

{ } { }

| |

ერთ - ერთი გამომდინარეობა -ში არის

ჩვენ დავწერთ ⇒ .

ჩანაწერი ⇒ აღნიშნავს, რომ არსებობს გამომდინარეობა, რომელიც იწყება


υ ჯაჭვით (მიმდევრობით) და მთავრდება Ψ ჯაჭვით.

ცხადია, რომ გრამატიკა წარმოშობს იმ ფრაზებს, რომლებიც აგებულია { }


სქემით, სადაც არის ნებისმიერი ჯაჭვი შედგენილი და სიმბოლოებით, ხოლო
მისი სარკული ანასახი. ეს ასე შეიძლება ჩავწეროთ

{ { }}

მაგალითი 2.5.4. ვთქვათ გვაქვს გრამატიკა

{ } { }

| |

ცხადია რომ გამომდინარეობა ამ გრამატიკაში უსასრულოდ გრძელდება და არ


მიგვიყვანს ტერმინარულ ჯაჭვამდე. წარმოქმნის ცარიელ ენას.
წესების კლასიფიკაცია. ნებისმიერი კონტექსტურად თავისუფალი G გრამატიკა
წარმოქმნის არატერმინარული ჯაჭვების რაიმე მიმდევრობას და რაიმე ტერმინარული
ჯაჭვების (შეიძლება ცარიელი) სიმრავლეს, რომლებიც ქმნიან L( G) ენას. დავარქვათ
წინატერმინარული არატერმინარულ ჯაჭვს, რომლისგანაც ზუსტად ერთი წესის
გამოყენებით მიიღება ტერმინარული ჯაჭვი. ცხადია, რომ წინატერმინარული ჯაჭვი
შეიცავს ზუსტად ერთ არატერმინარულ სიმბოლოს.

26
L( G) ენის არაცარიელობის აუცილებელ პირობას წარმოადგენს G -ში ერთი ან
რამოდენიმე A → τ სახის ტერმინარული წესის არსებობა, სადაც გრამატიკის
სხვა წესებს ეწოდება არატერმინარული.
მაგალითი 2.5.5. გრამატიკას აქვს ორი არატერმინარული წესი: და
და ერთი ტერმინარული წესი.
გრამატიკას არ აქვს არცერთი ტერმინარული წესი.

2.6. შესაბამისობა გრამატიკებსა და ენებს შორის

ყოველ -გრამატიკას შეესაბამება რომელიმე -ენა, შეიძლება ცარიელიც. ეს


შესაბამისობა არ არის ურთიერთცალსახა: განსხვავებულმა გრამატიკებმა შეიძლება
წარმოშვას ერთი და იგივე ენა.
მაგალითი . ვთქვათ გვაქვს გრამატიკა

{ } { }

| |

| |

გრამატიკა წარმოქმნის იგივე ენას, როგორსაც წარმოქმნის


გრამატიკა. გრამატიკები კი განსხვავებულია -საგან შემდეგი წესებით:

(4)-ე წესის დამატებით, რომელიც უზრუნველყოფს ენის ზოგიერთი ჯაჭვის


უფრო სწრაფ შექმნას.

(5)-ე და (6)-ე წესების დამატებით, რომლებიც საერთოდ არ იძლევიან არცერთ


ტერმინარულ ჯაჭვს.

მაშასადამე, ვთქვათ მოცემული გვაქვს რაღაც გრამატიკა. ჩვენ შეგვიძლია


(მისგან წარმოქმნილი ენის შეუცვლელად) მასზე ჩავატაროთ შემდეგი გარდაქმნები:

“გავწმინდოთ” გრამატიკა იმ წესებისა და სიმბოლოების ამოყრით, რომლებიც


არ მიგვიყვანენ ტერმინარულ ჯაჭვამდე.

ამა თუ იმ სახით გადავაწყოთ მისი წესები მისგან წარმოქმნილი ენის


შენარჩუნებით.

27
შემაკავშირებული გრამატიკები. გრამატიკების განხილვისას მოსახერხებელია მას
შევუსაბამოთ გრაფი, რომლის წვეროები შეუსაბამებენ არატერმინარული ანბანის
სიმბოლოებს სიმბოლოებს, რომლებიც ფიგურირებენ
ტერმინალურ წესებში.

გავატაროთ რკალი -დან -ში (შესაბამისად -ში) თუ გრამატიკაში არის


(შესაბამისად ) სახის წესი.

ცხადია, რომ თუ ეს გრაფი არაა შემაკავშირებელი, მაშინ არც ერთი


შემაკავშირებულობის კომპონენტი არ მოახდენს არავითარ გავლენას გრამატიკის მიერ
წარმოქმნილ ენაზე. ამიტომ შესაბამისი წესები და სიმბოლოები გრამატიკიდან უნდა
ამოვაგდოთ.

მაშასადამე, ყოველთვის შეგვიძლია ვიგულისხმოთ, რომ განსახილველი


გრამატიკა იქნება შემაკავშირებელი, ე.ი. ისეთი, რომ მისი შესაბამისი გრაფი იქნება
შემაკავშირებელი.

ცარიელი ჯაჭვის შესახებ არავითარი პრინციპული მოსაზრება არ გვიშლის ხელს


გვქონდეს A→E სახის ტერმინარული წესი, სადაც E - ცარიელი ჯაჭვია. მაგრამ
ტექნიკური თვალსაზრისით უფრო მოსახერხებელია ასეთი წესის ამოგდება. შეიძლება
დამტკიცება, რომ ნებისმიერი -გრამატიკა, რომელიც წარმოქმნის L ენას და
შეიცავს ცარიელ ჯაჭვს, შევცვალოთ მასთან ახლოს მყოფი -გრამატიკით, რომელიც
წარმოქმნის { } ენას.

გამომდინარეობის შეკვეცა. ვთქვათ რაიმე გრამატიკაში გვაქვს ⇒


გამომდინარეობა, სადაც A არატერმინალური სიმბოლოა, ხოლო υ - ნებისმიერი ჯაჭვი.
ცხადია, რომ ჩვენ არ შევცვლით ენას, წარმოქმნილს ამ გრამატიკით, თუ მას
დავუმატებთ A → υ წესს. ვიტყვით, რომ ეს წესი მიღებულია გამომდინარეობის
შეკვეცით.

2.7. არაცარიელი, სასრული და უსასრულო ენები

არაცარიელი ენები. ენის, რომელიც წარმოქმნილია G სახის -გრამატიკით,


არაცარიელობის აუცილებელი და საკმარისი პირობა მდგომარეობს S ⇒ τ
გამომდინარეობის არსებობაში, სადაც τ - ტერმინალური ჯაჭვია.

უსასრულო ენები. რადგან ტერმინალური ანბანი სასრულია, ამიტომ L( G) ენის


უსასრულობისათვის აუცილებელი პირობაა წარმოქმნილი ტერმინალური ჯაჭვების

28
სიგრძეთა შემოუსაზღვრელობა. აქედან გამომდინარეობს, რომ წინატერმინალური
ჯაჭვებიც უნდა იყოს შემოუსაზღვრელი. ასევე შემოუსაზღვრელი უნდა იყოს
არატერმინალური ჯაჭვების სიგრძე.

ეს პირობა ცხადია რომ არაა საკმარისი, რადგანაც შეიძლება არსებობდეს


გრამატიკები, რომლებშიც არატერმინალური ჯაჭვების სიგრძე შემოუსაზღვრელია,
მაგრამ ისინი წარმოქმნიან ცარიელ ენას (მაგალითად გრამატიკა).

ენის უსასრულობის პრობლემა შეიძლება ორ ნაწილად გავხლიჩოთ:

ა) ვიპოვოთ აუცილებელი და საკმარისი პირობა გრამატიკებით წარმოქმნილი


არატერმინალური ჯაჭვების უსასრულობისათვის.

ბ) ვიპოვოთ დამატებითი პირობა ტერმინალური ჯაჭვების უსასრულობისათვის.

ა) კითხვაზე პასუხი ასეთია: იმისათვის, რომ გრამატიკით წარმოდგენილი


არატერმინალური ენა იყოს უსასრულო, აუცილებელი და საკმარისია, რომ რაიმე
არატერმინალური A სიმბოლოსათვის არსებობდეს ⇒ სახის
გამომდინარეობა. ასეთი არატერმინალური სიმბოლოს არსებობის პრობლემა
ალგორითმულად გადაწყვეტადია. თუ |υ|*|ψ|≠0, მაშინ იტყვიან, რომ A სიმბოლო
თვითჩადგმადია.

რაც შეეხება ბ) კითხვას, მისთვისაც შეიძლება მოიძებნოს კრიტერიუმი, რომელიც


ამ პრობლემას გადაწყვეტს (იხ. მაგ. 7). მაშასადამე, ენის სისრულის გამოცნობისა და
სიცარიელის გამოცნობის (მაგ. 6) პრობლემა გადაწყვეტადია.

თეორემა. - გრამატიკის თვისებები, წარმოქმნას ცარიელი ენა და წარმოქმნას


სასრული ენა (შესაბამისად წარმოქმნას არაცარიელი ან უსასრულო ენა),
ალგორითმულად გადაწყვეტადია.

ვინაიდან ჩვენ ამოვაგდეთ A→E სახის წესი, გამომდინარეობის ყოველ ბიჯზე


- გრამატიკაში ჯაჭვის სიგრძე შეიძლება გაიზარდოს ან დარჩეს უცვლელი სიგრძის.
იმის საპასუხოდ, ეკუთვნის თუ არა მოცემული ჯაჭვი (არა აუცილებლად
ტერმინალური) ენას, წარმოქმნილს მოცემული -გრამატიკით , საკმარისია ავაგოთ ამ
გრამატიკაში ყველა შესაძლებელი გამომდინარეობა, რომლებიც იწყება საწყისი
სიმბოლოთი და მთავრდება ჯაჭვით, რომლის სიგრძეც არ აღემატება განსხვავებული
ჯაჭვის სიგრძეს. ეს პროცედურა გამოიყენება ნებისმიერი ჯაჭვისათვის და ყოველთვის
იძლევა “კი” ან “არა” პასუხს. საბოლოოდ ვასკვნით, რომ ნებისმიერი -ენა
წარმოადგენს რეკურსიულ სიმრავლეს.

29
2.8. ენის მაგალითი, რომელიც არაა -ენა

შემდეგში ჩვენ დაგვჭირდება ის ფაქტი, რომ { } ენა არ არის -ენა.

დამტკიცება. დავუშვათ, რომ L წარმოქმნილია რაიმე -გრამატიკით. ვინაიდან


L უსასრულოა, ამიტომ გრამატიკაში არსებობს ⇒
გამომდინარეობა. ამიტომ მასში -თვის გამომდინარეობს სახის ჯაჭვები.
საბოლოოდ υ, A და ψ-მ უნდა მოგვცეს ტერმინალური ჯაჭვები. შესაბამისი
გამომდინარეობების შეკვეცით ჩვენს გრამატიკას შეგვიძლია დავუმატოთ A → τ სახის
წესი.

ადვილი საჩვენებელია, რომ ასეთი სახის როგორი წესიც არ უნდა ავირჩიოთ,


მივიღებთ ჯაჭვის გარდა აგრეთვე სხვა ჯაჭვებს, რომლებშიდაც , , და -ს
ხარისხები არ იქნებიან ტოლი.

ცხადია, რომ { } ენა რეკურსიულია. შესაბამისად -ენების კლასი


საკუთრივი ქვეკლასია რეკურსიული ენების კლასისა.

განვიხილოთ ალფავიტი და A→υ სახის წესი; . აქსიომებად


ავიღოთ ყველა ელემენტი ერთმანეთის მიმდევრობით ალფავიტიდან. ამ დროს
შეიძლება თუ არა წარმოიქმნას სხვადასხვა ენა? ერთ-ერთი მათგანი ასეთია:

| |

| |

| |

2.9. ცარიელი ჯაჭვის ელიმინაცია


( ელიმინაცია - განდევნა, თავიდან მოშორება, მოცილება)

ვთქვათ G არის -გრამატიკა და ვთქვათ სიმბოლოების სიმრავლეა -


დან ისეთი, რომ მათთვის გვაქვს A→E სახის წესი. შევადგინოთ სიმრავლე -ის
ყველა ისეთი -ს დამატებით, რომელთათვისაც არსებობს A→υ სახის წესი, სადაც
, ანალოგიურად განვსაზღვროთ და ა.შ.

30
განვიხილოთ მიღებული სიმრავლეების მიმდევრობა. ჩამოვაყალიბოთ
აუცილებელი და საკმარისი პირობა, რომ . G-დან გამომდინარე ავაგოთ
-გრამატიკა ისეთი, რომ { } .

შევნიშნოთ, რომ ამისათვის არასაკმარისია უბრალოდ ყველა A→E სახის წესის


ამოგდება. მართლაც, განვიხილოთ გრამატიკა

| |

თუ G - დან ამოვაგდებთ A→E წესს, მაშინ G არ წარმოქმნის არც სახის, არც


სახის ჯაჭვებს. ცხადია, რომ ამ ჯაჭვების წარმოქმნის წესები შენარჩუნებული უნდა
იყოს.

2.10. არაპროდუქტიული წესების ელიმინაცია, ცარიელი ენა

ვთქვათ G არის გრამატიკა. ჩავთვალოთ, რომ G -ში არ არის სახის


წესები. ავღნიშნოთ -ით ტერმინალური ალფავიტისა და ისეთი A
სიმბოლოების გაერთიანება, რომ და გვქონდეს A→ τ სახის წესები, სადაც τ -
ტერმინალური ჯაჭვია. შევქმნათ სიმრავლე -თან ყველა ისეთი - ს
დამატებით, რომელთათვისაც არსებობს , სახის წესები.

ანალოგიური მოქცევით წარმოიქმნება სიმრავლეთა მიმდევრობა.


სიმრავლის გამოყენებით ჩამოაყალიბეთ აუცილებელი და საკმარისი პირობა
იმისათვის, რომ L(G) ენა იყოს ცარიელი.

მიუთითეთ პროცედურაზე, რომელიც საშუალებას მოგვცემს გრამატიკიდან


ამოვაგდოთ ყველა “არაპროდუქტიული” წესი.

შევნიშნოთ, რომ

| |
| |

გრამატიკისათვის და სიმრავლეები შესაბამისად არის {A,B} და { }


მაგრამ თუ S არის აქსიომა, მაშინ A სიმბოლო “არაპროდუქტიულია”, რადგანაც S -დან
მისი მიღება შეუძლებელია. საქმე სულ სხვაგვარად იქნება, თუ ამ გრამატიკას
დავუმატებთ სახის წესს.
31
2.11. ჩაკეტილობის თვისება. ოპერაციები - ენებზე

იტყვიან, რომ სიმრავლე ჩაკეტილია რაიმე ოპერაციის მიმართ, თუ ამ ოპერაციის


გამოყენების შედეგი ნებისმიერ ელემენტარულ სიმრავლეზე (უნარული ოპერაციის
შემთხვევაში) ან ნებისმიერ ელემენტთა წყვილზე (ბინარული ოპერაციის შემთხვევაში)
და ა.შ. შედის ამ სიმრავლეში.
ამ თვალსაზრისით განვიხილოთ ზოგიერთი მარტივი ოპერაცია -ენებზე.

2.11.1. - ენების გაერთიანება

ვთქვათ და -ენებია, წარმოქმნილი შესაბამისად და გრამატიკებით


და , აქსიომებით. ზოგიერთი ან ყველა დამხმარე სიმბოლოების შეცვლით, თუ
საჭიროა, შეიძლება მივაღწიოთ იმას, რომ

განვიხილოთ გრამატიკა აქსიომით, რომლის წესებიც იქნება და


გრამატიკების წესები და დამატებით და წესები. ცხადია, რომ ესაა -
გრამატიკა და იგი წარმოშობს ენას. მაშასადამე, ორი -ენების გაერთიანება
არის - ენა.

2.11.2. - ენების ნამრავლი

იგივე აღნიშვნების შენარჩუნებით განვსაზღვროთ ნამრავლი. როგორც


ზემოთ, ამჟამადაც ისე მოვიქცეთ, რომ დამხმარე ალფავიტების თანაკვეთა და
გრამატიკებისა ცარიელი იყოს. შემდეგ აქსიომის როლში ავიღოთ ახალი სიმბოლო ,
გავაერთიანოთ ორივე გრამატიკის წესები და დავუმატოთ ამ გაერთიანებას
წესი. ცხადია, რომ ასეთი გზით ჩვენ ავაგეთ -გრამატიკა, რომელიც წარმოქმნის
ენას.
მაშასადამე, ორი -ენის ნამრავლი არის -ენა.

2.11.3. - ენების იტერაცია

ზემოთა შედეგი საშუალებას გვაძლევს -გრამატიკით, რომელიც წარმოქმნის


L ენას, ავაგოთ -გრამატიკები, რომლებიც წარმოქმნიან ენებს.

განვიხილოთ { } ენა.

ვთქვათ S არის G გრამატიკის აქსიომა, რომელიც წარმოქმნის L ენას. დავამატოთ


G -ს ახალი T სიმბოლო და , წესები. გარდა ამისა T გამოვაცხადოთ
32
აქსიომად S -ის ნაცვლად. ახალი წესები საშუალებას იძლევა წარმოიქმნას
ჯაჭვები, რომლებიდანაც G გრამატიკის წესებით მიიღება ენები.
მაშასადამე, -ენების იტერაცია არის - ენა (ცარიელ ჯაჭვამდე სიზუსტით).

2.11.4. - ენების თანაკვეთა.

ა) განვიხილოთ -ენები { } და { { }} .

ცხადია, რომ .

ბ) ახლა განვიხილოთ -ენები { } და { }.

გვაქვს { }. მაგრამ ეს ენა, როგორც ვნახეთ, არ არის -ენა.

მოყვანილი მაგალითებიდან ჩანს, რომ ორი - ენის თანაკვეთა არ არის


აუცილებელი იყოს - ენა.

2.11.5 -ენის დამატება

ენა არის -ენა, რადგანაც იგი შეიძლება მიღებული იქნეს ისეთი


გრამატიკისაგან, რომელიც შეიცავს და სახის ყველა შესაძლო
წესს.

L ენის ̅ დამატების ქვეშ იგულისხმება დამატება -ის მიმართ. ცნობილია, რომ


̅̅̅̅̅̅̅̅̅ ̅̅̅ ̅̅̅

ამიტომ, თუ დამატების ოპერაცია შეინარჩუნებს იყოს -ენა, მაშინ თანაკვეთაც


შეინარჩუნებს მას. შესაბამისად -ენის დამატება არა აუცილებელი იყოს -ენა.

2.11.6. -ენის შებრუნება

შებრუნების ოპერაცია, გამოყენებული L -ენაზე გრამატიკით { },


შეუსაბამებს მას ენას გრამატიკით { }. ცხადია, რომ -ენის შებრუნების
შედეგი არის -ენა.

33
2.11.7. -ენის ჩასმა

ვთქვათ გვაქვს -ენა , წარმოქმნილი ალფავიტის G გრამატიკით,


სადაც { } . ვთქვათ გვაქვს n რაოდენობის –ენა (ამ
ენების რაოდენობა იმდენია, რამდენი სიმბოლოცაა -ში). ვთქვათ აგრეთვე, რომ
-გრამატიკებია, რომლებიც წარმოქმნიან ამ ენებს. მოვიქცეთ ისე, რომ
-გრამატიკების დამხმარე ალფავიტების ყველა წყვილ-წყვილად თანაკვეთა
იყოს ცარიელი და გავაიგივოთ გრამატიკის აქსიომასთან.
გრამატიკების გაერთიანება არის -გრამატიკა, რომელიც წარმოქმნის
ენას, მიღებულს -დან ისეთი ოპერაციით, რომელსაც ეწოდება
ენების ჩასმა L -ში. მაშასადამე, -ენების ჩასმა -ენაში, არის -ენა.

მიღებული შედეგების რეზიუმე: - ენების სიმრავლე ჩაკეტილია


გაერთიანების, გამრავლების, იტერაციის, შებრუნების და ჩასმის ოპერაციების მიმართ.

2.12. -ენების სპეციალური კლასები

- გრამატიკებზე დამატებითი შეზღუდვების დადებით შეიძლება


განვსაზღვროთ - ენების სხვადასხვა კლასები. რადგანაც სხვადასხვა -
გრამატიკებმა შეიძლება წარმოქმნან ერთი და იგივე ენა, ამიტომ ენების
კლასიფიკაციისას უნდა გამოვიჩინოთ გარკვეული სიფრთხილე.

ჩვენ განვსაზღვრავთ ამა თუ იმ ტიპის გრამატიკას, რომელსაც უნდა


ფლობდეს მისი წესები.

ვიტყვით, რომ L ენა ეკუთვნის ტიპს, თუ არსებობს ასეთი ტიპის ერთი მაინც
გრამატიკა, რომელიც წარმოქმნის აღნიშნულ ენას.

მაშასადამე, რომ დავამტკიცოთ, რომ L ენა არ ეკუთვნის ტიპს,


აუცილებელია ვაჩვენოთ, რომ იგი არ შეიძლება წარმოქმნილი იყოს ტიპის არცერთი
გრამატიკით.

2.12.1. ავტომატური ენები


შემდეგში ჩვენ განვიხილავთ გრამატიკებს, რომელთა ყველა არატერმინალურ
წესს აქვთ სახე:

ასეთი სახის გრამატიკებს ეწოდება ავტომატური გრამატიკები (A - გრამატიკები) , ხოლო


მისგან წარმოქმნილ ენას ავტომატური ენა (A - ენა).

34
2.12.2. წრფივი ენები

გრამატიკებს, რომელთა ყველა არატერმინალურ წესს აქვთ

სახე, ეწოდებათ წრფივი გრამატიკა.


ენას ეწოდება წრფივი, თუ ის წარმოქმნილია წრფივი გრამატიკით. A - ენები
შეადგენენ წრფივი ენების ქვეკლასს. მეორე საინტერესო ქვეკლასს წარმოადგენს
მინიმალური წრფივი ენები, რომელთათვისაც შედგება მხოლოდ ერთი S
სიმბოლოსაგან, ხოლო ტერმინალური წესების ერთობლიობა მხოლოდ ერთი
წესისაგან, ამავე დროს c სიმბოლო არ უნდა გვხვდებოდეს არცერთ სხვა წესში. ენა
( 1. მაგალითი 16-ე გვერდზე) წარმოადგენს მინიმალურ წრფივ ენას.

2.12.3. მეტაწრფივი ენები


- გრამატიკას ეწოდება მეტაწრფივი, თუ მისი წესების მარჯვენა მხარე არ
შეიცავს აქსიომებს და ყველა წესს, რომელთა მარცხენა მხარეები განსხვავდებიან
აქსიომებისაგან, აქვთ ისეთივე სახე, როგორც წრფივი გრამატიკის წესებს.
ენას ეწოდება მეტაწრფივი, თუ არსებობს მისი წარმომქმნელი მეტაწრფივი
გრამატიკა.
მაგალითი 2.12.4.. განვიხილოთ ენა შედგენილი { } { }
ალფავიტებითა და

| |

გრამატიკით. მეტაწრფივი გრამატიკაა. იგი წარმოქმნის { }


„ორმაგ სარკულ ენას“.

კონტრმაგალითი 2.12.5. | | გრამატიკა არაა მეტაწრფივი. მისგან


წარმოქმნილი ენა შედგება ყველანაირი გამოსახულების უსასრულო ჩანაწერის
„ჩონჩხისაგან“, რომელიც წარმოქმნილია საგნობრივი სიმბოლოებისა და ბინარული
ოპერაციების სიმბოლოებისაგან. შეიძლება იმის ჩვენება, რომ ეს ენა არ წარმოადგენს
მეტაწრფივ ენას.

2.12.6. მიმდევრობითი გრამატიკები


გრამატიკას ეწოდება მიმდევრობითი, თუ მისი არატერმინარული სიმბოლოები
შეიძლება განვალაგოთ მიმდევრობით ისეთნაირად, რომ წესი
მარცხენა ნაწილით არ შედის -საგან განსხვავებული არატერმინალური სიმბოლოების

35
მარჯვენა ნაწილში, წესი მარცხენა ნაწილით არ შეიცავს -სა და -საგან
განსხვავებულ არატერმინალურ სიმბოლოებს და ა.შ.
ენას ეწოდება მიმდევრობითი, თუ ის წარმოქმნილია მიმდევრობითი
გრამატიკით.
მაგალითები 2.12.7. { } ენა არის მიმდევრობითი ენა, როგორც ყველა ენა
წარმოქმნილი - გრამატიკითა და ერთი არატერმინალური სიმბოლოთი.
ენა აგრეთვეა მიმდევრობითი ენა : გრამატიკაში შეიძლება დავუშვათ

ამის საწინააღმდეგოდ

| |
| |

გრამატიკა არაა მიმდევრობითი. შესაბამისად მისგან წარმოქმნილი ენაც არაა


მიმდევრობითი ენა.

2.12.8. ავტომატური გრამატიკები

ავტომატური ენები წარმოადგენენ კერძო შემთხვევას -ენებისა, რომელთაც


აგრეთვე უწოდებენ კლინის ენას, ან რეგულარულ ენას ან კიდევ ენას მდგომარეობათა
სასრული სიმრავლით.

ავტომატურ გრამატიკას, ანუ A-გრამატიკას აქვს: V = ალფავიტი, სადაც -


დამხმარე, ხოლო -ძირითადი ალფავიტებია. ამავე დროს

{ } და აქსიომაა, { }, მარჯვენა და
მარცხენა სახის წესები:

- (მარჯვენა),

(მარცხენა),

(თითოეულ გრამატიკაში მხოლოდ მარჯვენა ან მხოლოდ მარცხენა წესია), აგრეთვე

36
(ანბანური ანუ ტერმინალური წესები).

ისარი X → Y-ში აღნიშნავს “ ჩავსვათ Y X -ის ნაცვლად”.

მაგალითი 2.12.9. { } { } -აქსიომა

მარჯ | |.

ეს გრამატიკა მოგვცემს ენას, შედგენილს ყველა შესაძლო ჯაჭვისაგან


შემდეგნაირად: მიმდევრობა -დან, ხოლო მის მიყოლებით მიმდევრობა -დან, ე.ი.

{ }

იგივე ენა შეიძლება აღიწეროს მეორე გრამატიკით

მარცხ | |.

მაგალითის სახით მოვიყვანოთ ჯაჭვის გამოყვანა მარჯ გრამატიკაში:

შენიშვნა 2.12.10. ნებისმიერი სასრული ენა წარმოადგენს A-ენას. სიმრავლე,


რომელსაც { } ჯაჭვი შეიცავს შეიძლება აღწერილი იქნეს
შემდეგი -გრამატიკით:

{ }

ნებისმიერი G გრამატიკისათვის მოიძებნება ისეთი ავტომატური გრამატიკა,


რომელიც იგივე ენას წარმოქმნის (ცარიელი e სიტყვის სიზუსტემდე), რასაც
{ }

განვიხილოთ ისეთი ავტომატები, რომლებსაც აქვთ შიგა მდგომარეობათა


სასრული რაოდენობა. ავტომატის მიერ ”ელემენტარული მოქმედების” შესრულება
შეიძლება სხვადასხვა ხასიათის იყოს სხვადასხვა ავტომატისათვის. სასრულ
ავტომატებს გააჩნიათ მდგომარეობათა სასრული რაოდენობა და შემავალი
სიმბოლოების სასრული რაოდენობა. როგორც კი შემავალი სიმბოლო შევა სასრულ
ავტომატში, ავტომატი ერთი მდგომარეობიდან გადავა მეორეში და ეს გადასვლა
დეტერმინირებული იქნება. გარდა ამისა მდგომარეობათა სიმრავლეში გამოიყოფა

37
საწყისი მდგომარეობა და დამამთავრებელ მდგომარეობათა სიმრავლე. ჯაჭვი
დასაშვებია სასრული ავტომატისათვის, თუ საწყის მდგომარეობაში მუშაობის
დაწყებისას და ამ ჯაჭვის ბოლომდე წაკითხვის შემდეგ ავტომატი გადადის ერთ-ერთ
დამამთავრებელ მდგომარეობაში.

მაშასადამე, თითოეული სასრული ავტომატი მუშაობს როგორც მოწყობილობა,


რომელიც გამოიცნობს რაიმე ჯაჭვების სიმრავლეს (იგი დაუშვებს მხოლოდ ისეთ
ჯაჭვებს, რომლებიც ამ სიმრავლეს ეკუთვნიან).

განმარტება 2.12.11. სასრული ავტომატი ეწოდება მოწესრიგებულ


ხუთეულს, სადაც:

K -მდგომარეობათა არაცარიელი სიმრავლეა.

Σ -შემავალი სიმბოლოების სიმრავლე (ალფავიტი).

δ – K* Σ სიმრავლის K სიმრავლეში ასახვა (გადასვლის ფუნქცია).

- საწყისი მდგომარეობა ( ϵK).

F - დამამთავრებელ მდგომარეობათა სიმრავლე (F K).

როგორც ზემოთ ავღნიშნეთ, ავტომატების მიერ წარმოდგენილ ენას ეწოდება


აგრეთვე რეგულარული ენა , ან უბრალოდ, ხდომილება.

კითხვარი თვითშემოწმებისათვის

1. როგორ გრამატიკას ეწოდება წარმომქმნელი გრამატიკა (0 ტიპის გრამატიკას)?


2. როგორ გრამატიკებს ეწოდებათ ეკვივალენტური გრამატიკები?
3. როგორ გრამატიკას ეწოდება კონტექსტური გრამატიკა (1 ტიპის გრამატიკა) ?
4. როგორ გრამატიკას ეწოდება კონტექსტურად - თავისუფალი გრამატიკა (2 ტიპის
გრამატიკა)?
5. როგორ გრამატიკას ეწოდება მარჯვენა წრფივი გრამატიკა (3 ტიპის გრამატიკა) ?
6. რომელი გრამატიკა წარმოადგენს ავტომატურ გრამატიკას?
7. მოიყვანეთ ფორმალური ენებისა და გრამატიკის ტიპების თანაფარდობა (ხომსკის
იერარქია).
8. როგორ გრამატიკას ეწოდება ხომსკის გრამატიკ ა?
9. როგორ ენას ეწოდება ხომსკის ენა?
10. გრამატიკის რომელ წესებს ეწოდება ტერმინარული და არატერმინალური წესები?
11. როგორ ჯაჭვებს ეწოდება ტერმინარული და არატერმინალური ჯაჭვები?
12. როგორ ჯაჭვს ეწოდება წინატერმინარული ჯაჭვი?
13. ჩამოაყალიბეთ ენის არაცარიელობის აუცილებელი პირობა.
14. ჩამოაყალიბეთ ენის არაცარიელობის აუცილებელი და საკმარისი პირობა.
38
15. ჩამოაყალიბეთ ენის უსასრულობის აუცილებელი პირობა.
16. ჩამოაყალიბეთ სიმრავლის ჩაკეტილობის თვისება რაიმე ოპერაციის მიმართ.
17. რომელი ოპერაციების მიმართ არის ჩაკეტილი კონტექსტურად - თავისუფალი
ენების სიმრავლე?
18. როგორ გრამატიკას ეწოდება ავტომატური გრამატიკა (A - გრამატიკა)? ავტომატური
ენა (A - ენა)?
19. როგორ ენას ეწოდება მინიმალური წრფივი ენა?
20. როგორ გრამატიკას ეწოდება მეტაწრფივი?
21. როგორ ენას ეწოდება მეტაწრფივი ენა?
22. როგორ გრამატიკას ეწოდება მიმდევრობითი გრამატიკა?
23. როგორ ენას ეწოდება მიმდევრობითი ენა?
24. როგორ გრამატიკას ეწოდება ავტომატური გრამატიკა? როგორი სახის წესებია
ავტომატურ გრამატიკაში?
25. მოიყვანეთ სასრული ავტომატის განმარტება და მუშაობის პრინციპი.

3. სასრული ავტომატები
3.1. ზოგადი ცნებები აბსტრაქტული ავტომატების შესახებ

სასრული ავტომატების თეორიას საქმე აქვს ისეთ მათემატიკურ მოდელებთან,


რომლებიც გამოიყენებიან ფიზიკური ან აბსტრაქტული მოვლენების მიახლოებითი
ასახვისათვის. სასრული ავტომატების თეორიის იდეა და ტექნიკა გამოიყენება ისეთი
პრობლემების გადასაწყვეტად, როგორიცაა, მაგალითად, ადამიანის ნერვული სისტემის
ფუნქციონირების გამოკვლევა, ინგლისური ენის სინტაქსის ანალიზი, ელექრონული
გამომთვლელი მანქანების პროექტირება და სხვა.
უამრავი პრობლემა, რომელიც გვხვდება მეცნიერებასა და ტექნიკაში, შეიძლება
დავყოთ ორ კატეგორიად: ანალიზის ამოცანები და სინთეზის ამოცანები.
ანალიზის ამოცანა მდგომარეობს მოცემული განსაზღვრული სისტემის ქცევის
პროგნოზირებაში, ხოლო სინთეზის ამოცანა - მოცემული ქცევის მოხედვით სისტემის
აგებაში.
ავტომატების ზოგადი თეორია იყოფა ორ ნაწილად: - ავტომატების აბსტრაქტული
თეორია და ავტომატების სტრუქტურული თეორია.
ავტომატების აბსტრაქტულ თეორიას არ აინტერესებს არც ავტომატის სტრუქტურა
და არც მასში შემავალი და გამომავალი სიგნალები. აბსტრაქტული სტრუქტურა
სწავლობს მხოლოდ იმ გადასვლებს, რომლებსაც ის განიცდის შემავალი სიგნალების
ზემოქმედებისას და იმ გამომავალ სიგნალებს, რომლებსაც იგი ამ დროს გამოსცემს.

39
ავტომატების აბსტრაქტული თეორიისაგან განსხვავებით, ავტომატების
სტრუქტურული თეორია, უპირველეს ყოვლისა, შეისწავლის როგორც თვით ავტომატს,
ასევე მასში შემავალი და გამომავალი სიგნალების სტრუქტურას.

3.2. დინამიური სისტემა

დინამიური სისტემის ტერმინის ქვეშ განიხილება ისეთი სისტემები ტექნიკაში,


ბუნებაში, ცხოვრებაში და სხვა, რომლებშიდაც პროცესი ვითარდება დროში. დინამიური
სისტემის მდგომარეობას ყოველ მომენტში ახასიათებენ რაღაც განზოგადოებული
(სასრული ან უსასრულო) კოორდინატების რიცხვით.
დინამიური სისტემები შეიძლება დავყოთ რამოდენიმე კლასად შემდეგი
ფაქტორების გათვალისწინებით:
1. ითვლება თუ არა მიმდინარე დრო უწყვეტად ან დისკრეტულად.
2. აქვს თუ არა სისტემას განზოგადებული კოორდინატების სასრული ან
უსასრულო სიმრავლე.
3. განზოგადოებული კოორდინატებიდან თითოეულის შესაძლებელი
მნიშვნელობათა სიმრავლის სიმძლავრე, ე.ი. არის თუ არა ეს სიმრავლე
სასრული, თვლადი.
დინამიური სისტემების განსაკუთრებულ კლასს შეადგენს სისტემები,
რომელთათვისაც დრო დისკრეტულია, ე.ი. იცვლება თვლად სიმრავლეზე, ხოლო
განზოგადებული კოორდინატები (რომელთა რიცხვი შეიძლება იყოს სასრულიც და
უსასრულოც) იცვლებიან სასრულ სიმრავლეზე.
დინამიური სისტემების განხილვის დროს, რომელთა განზოგადოებული
კოორდინატები მოიცემა სასრულ სიმრავლეზე, ბუნებრივია ჩავთვალოთ, რომ გარე
ზემოქმედებათა რიცხვი სასრულია და თითოეული მათგანი ასევე მოცემულია სასრულ
სიმრავლეზე.
ისეთ დინამიურ სისტემებს, რომელთათვისაც დრო მოიცემა სასრულ
სიმრავლეებზე და გარე ზემოქმედებებისა და კოორდინატების რიცხვი სასრულია,
ვუწოდოთ სასრული დინამიური სისტემები. ასეთ სასრული დინამიური სისტემების
კლასს ეკუთვნის სასრული ავტომატი.

3.3. სასრული აბსტრაქტული ავტომატები

ვთქვათ { } და { } არის ელემენტთა ნებისმიერი


სიმრავლე, რომელთაც ვუწოდოთ ალფავიტი, ხოლო მის ელემენტებს - ალფავიტის
ასოები. ასოების სასრულ მოწესრიგებულ მომდევრობას ვუწოდოთ სიტყვა მოცემულ
ალფავიტში. ავღნიშნოთ და -ით შესაბამისად და ალფავიტებში სიტყვათა
40
სიმრავლე. მაშინ დისკრეტული ინფორმაციის ნებისმიერი გარდაქმნა შეიძლება
მოცემული იქნეს როგორც ცალსახა ასახვა სიტყვათა სიმრავლისა სიტყვათა
სიმრავლეში. გარდაქმნას (ასახვას) უწოდებენ ალფავიტურ ასახვას ან ალფავიტურ
ოპერატორს, ხოლო და ალფავიტს შესაბამისად ოპერატორის შესასვლელ და
გამოსასვლელ ალფავიტებს. თითოეულ შემავალ სიტყვას ოპერატორი
შეუსაბამებს გამომავალ სიტყვას. ამიტომ ყოველი -თვის არსებობს
ისეთი , რომ . ამ შემთხვევაში არის ფუნქცია, რომლის განსაზღვრის
არეა , ხოლო მნიშვნელობათა სიმრავლე .
ნებისმიერი აბსტრაქტული ავტომატი რეალიზებას უკეთებს რომელიმე
ოპერატორს, ანუ ინდუცირებს რომელიმე ასახვას. ავღნიშნოთ ზოგიერთი დაშვება,
რომლებიც დაკავშირებულია აბსტრაქტული ავტომატის ცნებასთან:
1. ავტომატის განსხვავებული მდგომარეობების ნებისმიერი რაოდენობა და
მომენტალური გადასვლა ერთი მდგომარეობიდან მეორეში.
2. ერთი მდგომარეობიდან მეორეში გადასვლა შესაძლებელია მხოლოდ დროის
დისკრეტულ ინტერვალებში.
3. შემავალი და გამომავალი სიგნალების რაოდენობა სასრულია (განსხვავებული
სიგნალების).
4. შემავალი სიგნალები არის ავტომატის ერთი მდგომარეობიდან მეორეში
გადასვლის მიზეზი, ხოლო გამომავალი სიგნალები - ავტომატის რეაქცია იმ შემავალ
სიგნალებზე, რომლებიც ეკუთვნის დროის იმ მომენტებს, რომლებიც განისაზღვრება
ავტომატის შესაბამისი სიგნალებით.
ამ მდგომარეობის გათვალისწინებით შეიძლება ვთქვათ, რომ აბსტრაქტული
ავტომატი ფუნქციონირებს დროის დისკრეტულ =0,1,2,… მომენტებში. ყოველ
შემავალ სიგნალზე ავტომატი რეაგირებს გამომავალი სიგნალით.

3.4. ავტომატების კლასიფიკაცია სხვადასხვა ნიშნის მიხედვით

ავტომატების კლასიფიკაცია შეიძლება მოვახდინოთ სხვადასხვა ნიშნის მიხედვით.

1. საქმიანობის მიხედვით ავტომატები არის: ინფორმაციული, მმართავი და


გამომთვლელი.

ინფორმაციულ ავტომატებს განეკუთვნება სხვადასხვა საცნობარო ცხრილი,


საინფორმაციო ტაბლო სტადიონზე, ავარიული სიგნალიზაციის მოწყობილობა.

მმართავ ავტომატებს განეკუთვნება მოწყობილობები, რომლებიც განკუთვნილია


რაიმე პროცესების მართვისათვის (ლიფტი, კონვეიერი, დაზგა, შლაგბაუმი).

41
გამომთვლელ ავტომატებს განეკუთვნება მიკროკალკულატორი, პროცესორი ეგმ -
ში და მსგავსი მოწყობილობები, რომლებიც ასრულებენ გამოთვლებს.

მრავალი ავტომატი იმდენად რთული სისტემაა, რომ ისინი ერთდროულად


წარმოადგენენ როგორც გამომთვლელ, ისე მმართავ და ინფორმაციულ ავტომატებს.

2. სასრული ავტომატები ინფორმატიკის აზრით არის ისეთი ავტომატები,


რომლებიც წარმოადგენენ ინფორმაციის დისკრეტულ გარდამქმნელებს. ამ დისკრეტულ
გარდამქმნელებში როგორც შემავალი, ასევე გამომავალი სიგნალების სიმრავლეები
სასრულია. სასრულია აგრეთვე შიგა მდგომარეობათა სიმრავლე.

3. ციფრული ავტომატები - ავტომატები, რომლებიც ციფრულ ინფორმაციას


გარდაქმნიან. ასეთ ავტომატში შემავალი სიგნალები მოიცემა სასრული რაოდენობის
მყისიერი სიმბოლოების სახით: ამ სიგნალების ხანგრძლიობა იმდენად მცირეა, რომ იგი
შეიძლება უგულელვყოთ. ფიქსირებული დროის განმავლობაში მიმდინარეობს
შემავალი სიმბოლოების გარდაქმნა, ხოლო გამოსასვლელზე მიმდინარეობს
ნახტომისებრი გადასვლა ერთი მდგომარეობიდან მეორე მდგომარეობაში.

4. აბსტრაქტული ავტომატები - ავტომატები, რომლებიც შემავალი X ალფავიტის


სიტყვათა სიმრავლეს ასახავს გამომავალი Y ალფავიტის სიტყვათა სიმრავლეში.

აბსტრაქტული ავტომატი არის:

მათემატიკური მოდელი,

კოდური მიმდევრობის რაიმე გარდაქმნის მოქმედების ალგორითმი,

შემავალი ალფავიტის გამომავალ ალფავიტში გარდაქმნის კანონი.

5. სინქრონული და ასინქრონული ავტომატები. სინქრონული ავტომატი -


მდგომარეობიდან მდგომარეობაში გადასვლა ხორციელდება დროის თანაბარ
შუალედებში. ასინქრონული ავტომატი - მდგომარეობიდან მდგომარეობაში გადასვლა
ხორციელდება დროის არათანაბარ შუალედებში.

6. სასრული და უსასრულო ავტომატები. სასრული ავტომატი - ავტომატის


მდგომარეობათა რაოდენობა სასრულია. უსასრულო ავტომატი - ავტომატის
მდგომარეობათა რაოდენობა უსასრულოა. ასეთი ავტომატის მეხსიერება პოტენციურად
შესაძლებელია უსასრულოდ იზრდებოდეს. მაგალითად, პოსტისა და ტიურინგის
ცნობილი აბსტრაქტული ავტომატები წარმოადგენენ უსასრულო ავტომატებს, ხოლო
თვით ეგმ ან მისი ცალკეული ნაწილები სასრულ ავტომატებს. ყველა რეალური
ავტომატი სასრულია.

42
7. დეტერმინირებული და ალბათური (სტოქასტური) ავტომატები.
დეტერმინირებულ ავტომატებში ქცევა და სტრუქტურა დროის ყოველ მომენტში
ცალსახად განისაზღვრება მიმდინარე შემავალი ინფორმაციითა და დროის წინა
მომენტში ავტომატის მდგომარეობით. ალბათურ (სტოქასტურ) ავტომატებში ეს
დამოკიდებულება დაკავშირებულია კიდევ რაიმე შემთხვევით არჩევასთან.

8. უნივერსალური ავტომატი. ავტომატების თეორიაში დამტკიცებულია, რომ


სხვადასხვა სახის ინფორმაციის გარდაქმნისათვის საკმარისია პროგრამისა და
შესაბამისი კოდირების საშუალებით აიგოს უნივერსალური ავტომატი, რომელსაც
შეუძლია გადაწყვიტოს ნებისმიერი ამოცანა.

9. კომბინაციური ავტომატები არის ისეთი ავტომატები, რომელშიდაც


გამომავალი სიმბოლო არაა დამოკიდებული მის მდგომარეობაზე და განისაზღვრება
მხოლოდ მიმდინარე შემავალი სიგნალებით, ე. ი. ასეთ ავტომატში ყველა მდგომარეობა
ეკვივალენტურია. ასეთ ავტომატში გადასვლის ფუნქცია გადაგვარებულია და
ფუნქციონირების პროცესში უცვლელია. ამიტომ მინიმალურ კომბინაციურ ავტომატს
აქვს მზოლოდ ერთი მდგომარეობა.

3.5. მილისა ( გვარის და მურის (II გვარის) ავტომატები


ავტომატის მდგომარეობა მომენტში ცალსახად განისაზღვრება
წინამდებარე მდგომარეობითა და შემავალი სიგნალით. ამიტომ შეიძლება
დავწეროთ:

( ( ))

სადაც არის ფუნქცია, რომელიც განსაზღვრავს ავტომატის მომდევნო მდგომარეობას,


აღინიშნება უბრალოდ -ით და ეწოდება გადასვლის ფუნქცია.
რეალური ავტომატის გამომავალი სიგნალი ყოველთვის გამოჩნდება შემავალი
სიგნალის შემდეგ. მაგრამ ავტომატის მდგომარეობიდან
მდგომარეობაში გადასვლის დროს მომენტის მიმართ გამომავალი სიგნალი
შეიძლება ამ მომენტზე ადრე ან გვიან გამოჩნდეს. ამიტომ სამართლლიანია
გამოსახულებები:

( )
( )

სადაც არის (2)-ის შემთხვევაში ჩვეულებრივი, ხოლო (3)-ის შემთხვევაში


წანაცვლებული გამოსავლის ფუნქცია. იგი ცალსახად განსაზღვრავს ავტომატიდან
გამომავალ ასოს წინამდებარე დროის მომენტში მდგომარეობასა და
43
შემავალ სიგნალზე დამოკიდებულებით, თუ იგი არის ჩვეულებრივი გამოსავლის
ფუნქცია, ხოლო წანაცვლებული ფუნქციის შემთხვევაში მდგომარეობასა და
შემავალ სიგნალზე დამოკიდებულებით.
რეალური ავტომატების მუშაობის გათვალისწინებით განასხვავებენ ორი სახის
ავტომატებს, რომლებიც მოიცემიან შემდეგი ფორმულებით:
პირველი გვარის ავტომატები ეწოდება ავტომატებს, რომლებიც განისაზღვრებიან

( )
( )

ფორმულებით და განსაზღვრავენ ამ ავტომატების ფუნქციონირების კანონს, ხოლო


მეორე გვარის ავტომატები ეწოდება ავტომატებს, რომელთა ფუნქციონირების კანონი
მოიცემა განტოლებებით:

( ),
( )

სადაც
ნებისმიერი გვარის აბსტრაქტულ ავტომატს ეწოდება წესიერი, თუ გამომავალი
სიგნალი ცხადად არ არის დამოკიდებული შემავალ სიგნალზე და
განისაზღვრება მხოლოდ ან მდგომარეობით. პირველი გვარის
ავტომატებს ეწოდებათ აგრეთვე მილის ავტომატები, ხოლო მეორე გვარის ავტომატებს -
მურის ავტომატები.

ნახ.1-ზე გამოსახულია მილისა და მურის ავტომატების გრაფული აღწერები

მილის ავტომატი მურის ავტომატი


ნახ.1

44
3.6. აბსტრაქტული ავტომატების ფუნქციონირების აღწერა

არსებობს აბსტრაქტული ავტომატების აღწერის სხვადასხვა საშუალებები. ეს არის


ანალიზური, გეომეტრიული და მატრიცული.
ავტომატების აღწერის ანალიზური ხერხი. იტყვიან, რომ მოცემულია
აბსტრაქტული A ავტომატი, თუ მოცემულია ხუთი ობიექტის ერთობლიობა: ავტომატში
შემავალი { } { } ალფავიტი, ავტომატიდან გამომავალი
{ } { } ალფავიტი, მდგომარეობათა ალფავიტი, რომლის ელემენტი
არის ავტომატის საწყისი მდგომარეობა, F ასახვა, რომელიც -ს ასახავს თავის თაში და
რომელიც ნებისმიერ და ყოველ შემავალ ასოს შეუსაბამებს მდგომარეობას
და რომელიც განსაზღვრავს გადასვლის ფუნქციას, გამოსავალი ასო,
რომელიც განსაზღვრავს ჩვეულებრივ ან წანაცვლებულ გამოსავლის ფუნქციას.
შესაბამისად აღნიშნავს ნებისმიერ აბსტრაქტულ
ავტომატს. თუ A არის პირველი გვარის აბსტრაქტული ავტომატი, მაშინ -
გამოსავლის ჩვეულებრივი ფუნქციაა, ხოლო თუ A არის მეორე გვარის, მაშინ )-
გამოსავლის წანაცვლებული ფუნქციაა.
თუ სიმრავლე სასრულია, მაშინ A ავტომატი სასრულია, წინააღმდეგ
შემთხვევაში A ავტომატი უსასრულოა. ყველა რეალური ავტომატი სასრულია.
ვაჩვენოთ, თუ როგორ შეიძლება განვსაზღვროთ ასახვა, რომელიც ინდუცირებულია
მოცე-მული სასრული A ავტომატის მიერ. როგორც ცნობილია, ავტომატი
ფუნქციონირებს t=0,1,2,.... დისკრეტულ დროში. იგულისხმებს, რომ t=0 საწყის მომენტში
ავტომატი იმყოფება საწყის მდგომარეობაში. დროის ყოველ მომენტში, საწყისი
მომენტისაგან განსხვავებით, ავტომატის შესასვლელზე ყოველთვის მიეწოდება
შემავალი სიგნალი, რომელიც წარმოადგენს შემავალი X ალფავიტის ნებისმიერ ასოს,
ხოლო გამოსასვლელზე წარმოიქმნება რაღაც გამოსასვლელი სიგნალი-
გამოსავალი ალფავიტის ასო. ვთქვათ და შესაბამისად არის A ავტომატის
შემავალი და გამომავალი სიტყვების სიმრავლე და ნებისმიერი შემავალი
სიტყვაა, ე.ი. A ავტომატის შესასვლელზე, რომელიც იმყოფება საწყის
მდგომარეობაში, სასრული მომდევრობის მიწოდება F
ასახვის საფუძველზე იწვევს ავტომატის გამოსასვლელზე
ცალსახად განსაზღვრული სასრული მიმდევრობის გამოჩენას, რომელიც
შეესაბამებამება გამომავალ სიტყვას -დან. ამიტომ . თუ
ყოველ შესასვლელ სიტყვას მივაკუთნებთ მის შესაბამის გამოსასვლელ
სიტყვას, მივიღებთ საძიებელ ასახვას, რომელიც წარმოადგენს ასახვას,
ინდუცირებულს სასრული A ავტომატის მიერ.
ცხადია, რომ F ასახვა სიმრავლისა -ში ცალსახად იძლევა და
ფუნქციებს, რომლებიც განსაზღვრავენ A ავტომატის ფუნქციონირების კანონს და
45
პირიქით. ეს ფუნქციები შეიძლება წარმოვიდგინოთ მართკუთხოვანი ცხრილის სახით,
რომლის სტრიქონები შეესაბამებიან შემავალი ალფალიტის სხვადასხვა ასოებს, ხოლო
სვეტები - ალფავიტის განსხვავებულ მდგომარეობებს . სტრიქონისა და სვეტის
გადაკვეთაზე -ის გადასვლის ცხრილში იწერება მდგომარეობა, რომელშიც ის
გადადის მდგომარეობიდან შემავალი სიგნალის ზემოქმედების შედეგად, ხოლო
-ის გამოსასვლელის ცხრილში იწერება ასო, რომელიც გამოჩნდება ავტომატის
გამოსასვლელზე.
ორ აბსტრაქტულ ავტომატს, A-სა და B-ს, ერთნაირი შემავალი და გამომავალი
ალფავიტებით ეწოდება ეკვივალენტური, თუ ისინი ინდუცირებენ ერთსა და იმავე
ასახვას სიმრავლისა სიმრავლეში.

ნახ.2 -ზე გამოსახულია მილის ავტომატის გრაფული წარმოდგენა.

ნახ.2

არის საწყისი მდგომარეობა. ავტომატის შესასვლელზე მიეწოდა


) სიტყვა. შედეგად ფორმირებულ იქნა სიტყვა,
რომელიც წარმოადგენს ავტომატის რეაქციას.

ნახ.3 -ზე კი გამოსახულია მურის ავტომატის გრაფული წარმოდგენა.


აქაც არის საწყისი მდგომარეობა. ავტომატის შესასვლელზე მიეწოდა იგივე
) სიტყვა. შედეგად ფორმირებულ იქნა იგივე
სიტყვა, რომელიც ასევე წარმოადგენს ავტომატის რეაქციას.
46
როგორც ავღნიშნეთ, ორ ავტომატს ეწოდება ეკვივალენტური, თუ:

 შემავალი და გამომავალი ალფავიტები ერთიდაიგივეა;


 საწყისი მდგომარეობიდან ნებისმიერ შემავალ სიტყვაზე მათი რეაქციები
( გამომავალი სიგნალები) თანხვედრილია.

არსებობს თეორემა: მურის ნებისმიერი ავტომატისათვის არსებობს ეკვივალენტური


მილის ავტომატი და პირიქით.

ავტომატების მოცემის გეომეტრიული ხერხი დაიყვანება შესაბამისი


ორიენტირებული გრაფის გამოსახულებაზე, რომლის წვეროებს წარმოადგენს
ავტომატის მდგომარეობები, აღნიშნული სხვადასხვა ასოებით, ხოლო ყოველი

ნახ.3

გვერდის გასწვრივ იწერება ასო შემავალი ალფავიტიდან, რომელიც იწვევს


ავტომატის მდგომარეობიდან -ში გადასვლას და გამომავალი ალფავიტის ასო,
რომელიც გამოჩნდება ავტომატის გამოსასვლელზე. თუ ავტომატი პირველი გვარისაა,
მაშინ გამომავალი ასო განისაზღვრება წყვილით, ხოლო მეორე გვარის

47
ავტომატის შემთხვევაში დამოკიდებულია -ზე. ავტომატის საწყისი
მდგომარეობა აღინიშნება ასოთი. მაშასადამე, ასეთი ორიენტირებული გრაფი
ცალსახად იძლევა რომელიღაც აბსტრაქტულ ავტომატს. გრაფებს დატვირთული
გვერდებით (გვერდებზე წონითი ფუნქციებით) ეწოდება გრაფოიდები. ამიტომ
ორიენტირებული გრაფოიდი არის აბსტრაქტული ავტომატის გეომეტრიული
ინტერპრეტაცია.
გრაფოიდიდან ადვილად შეიძლება გადასვლა მოცემულ ავტომატზე
დატვირთული წინარე ხის საშუალებით, რომელიც წარმოადგენს სტრუქტურული
გრაფის მაგალითს. გრაფოიდის მიხედვით, წინარე ხის აგება ხდება შემდეგნაირად:
ფიქსირდება წვერო, რომელიც შეესაბამება საწყის მდგომარეობას. იგი არის
პირველი რანგის წვერო ან წინარე ხის ძირი. პირველი რანგის წვეროდან გაივლება ორი
რკალი, რომელთაც ეწოდებათ პირველი რანგის რკალები და რომელთა რაოდენობაც
ტოლია ავტომატის შემავალი ალფავიტის ასოთა რაოდენობისა. ყოველი რკალი შედის
მეორე რანგის წვეროში ( რაოდენობის წვერო). მეორე რანგის ყოველი წვეროდან
გამოდის რაოდენობის რკალი, რომლებიც შედის მესამე რანგის წვეროებში ( ²
წვერო) და ა.შ. პირველი და მომდევნო რანგის თითოეულ რკალს მიეწერება შესავალი
ასო და ფრჩხილებში გამოსავალი ასო შესაბამისი ალფავიტებისა, ხოლო
მეორე და მომდევნო რანგის წვეროებს ასო. მაშასადამე, ავტომატის წინარე ხე
არის გრაფი, რომლის ყოველ წვეროში, გარდა ფუძისა, შედის ერთი რკალი და
რომელიც არ შეიცავს კონტურებს.
ეხლა განვიხილოთ ავტომატების მოცემის მატრიცული ხერხი. მის ერთ-ერთ სახეს
წარმოადგენს ზემოთ აღწერილი მართკუთხა მატრიცები, რომელთაც ეწოდებათ
გადასვლებისა და გამოსასვლელების ცხრილები და განსაზღვრავენ და
ფუნქციებს. რადგანაც ამ მატრიცებში მონაწილეობს ყველა ასონიშანი
შესასვლელი და გამოსასვლელი ალფავიტებისა და აგრეთვე მდგომარეობათა
ალფავიტისა, ამიტომ ისინი სრულად და ცალსახად იძლევიან რაღაც ავტომატს.
უფრო ხშირად გამოიყენება კვადრატული მატრიცები, რომელთაც ეწოდებათ
ავტომატის შეერთების მატრიცა და იგი შემდეგნაირად აიგება. შეერთების მატრიცის
სტრიქონები და სვეტები შეესაბამებიან ავტომატის სხვადასხვა მდგომარეობას.
პირველი სტრიქონი და პირველი სვეტი შეესაბამება საწყის მდგომარეობას. -
ური სტრიქონისა და -ური სვეტის გადაკვეთაზე იწერება შემავალი ალფავიტის
ასო ან შემავალი ასოების დიზიუნქცია, რომელიც იწვევს ავტომატის გადასვლას
მდგომაეობიდან -ში, ხოლო ფრჩხილებში იწერება გამომავალი ალფავიტის ასო
ან გამომავალი ასოების დიზიუნქცია, რომლებიც გამოჩნდებიან ავტომატის
გამოსასვლელზე. თუ არცერთ ასოს შემავალი ალფავიტისა არ გადაყავს ავტომატი
მდგომარეობიდან -ში, მაშინ შესაბამის გადაკვეთაზე იწერება ნული.

48
შეერთების მატრიცას გააჩნია ის თვისება, რომ მის ნებისმიერ სტრიქონში
შემავალი ალფავიტის ყოველი ასო მხოლოდ ერთხელ უნდა შეგვხვდეს. ეს პირობა
დაკავშირებულია ავტომატის გადასვლისა და გამოსავლის ფუნქციების
ცალსახობასთან და ეწოდება ცალსახობის პირობა.

მაგალითზე ვაჩვენოთ ავტომატის მოცემის სხვადასხვა მეთოდები და მეორე გვარის


ავტომატის ინტერპრეტაცია პირველი გვარის ავტომატით.

მაგალითი 3.1.8: ვთქვათ მოცემულია აბსტრაქტული ავტომატი


, სადაც { } { } { } ხოლო
სიმრავლის სიმრავლეში ასახვა განისაზღვრება შემდეგნაირად:
{ ⁄ ⁄ ⁄ },
{ ⁄ ⁄ ⁄ }
{ ⁄ ⁄ }
{ ⁄ ⁄ }

ვიგულისხმოთ, რომ A ავტომატი არის პირველი გვარის. A ავტომატის


შესასვლელზე, რომელიც თავის მხრივ იმყოფება საწყის მდგომარეობაში,
სიტყვის მიწოდება იწვევს გამოსასვლელზე
სიტყვის გამოჩენას, ხოლო შესასვლელი სიტყვა იწვევს
გამოსასვლელზე სიტყვის გამოჩენას. F ასახვაზე
დამოკიდებულებით (Q - ს ასახვა თავის თავში) ადვილად შეიძლება ავაგოთ
გადასვლებისა და გამოსასვლელების ცხრილები A ავტომატისათვის. გადასვლის
ცხრილს, რომელსაც განსაზღვრავს გადასვლის ფუნქცია, აქვს ცხრ.(1) სახე,
ხოლო გამოსასვლელის ცხრილს, რომელსაც განსაზღვრავს გამოსასვლელი ψ
ჩვეულებრივი ფუნქცია, ცხრ.(2) სახე.

ცხრ.1 ცხრ.2

49
ავტომატის გრაფოიდი გამოსახულია 10-ე ნახაზზე, ხოლო დატვირთული წინარე ხის
პირველი სამი იარუსი, აგებული გრაფოიდის მიხედვით, ნაჩვენებია 11-ე ნახაზზე.

ნახ.10

50
ნახ.11

აავტომატის შეერთების მატრიცას აქვს სახე:

( ) ( ) 0 ( )

( ) 0 ( ) ( ) (4)

( ) ( 0 ( )

( ) 0 ( ) ( )

ე.ი. შეერთების მატრიცა მიიღება ასახვებიდან. ვთქვათ ავტომატი არის

51
მეორე გვარის ავტომატი. მაშინ (1) ცხრილი განსაზღვრავს გადასვლის
ფუნქციას, ხოლო მე-2 ცხრილი გამოსასვლელის ψ წანაცვლებულ ფუნქციას.
მე-(2) გვარის ავტომატის გრაფოიდი მოცემულია (1)-ნახაზზე, ხოლო შეერთების
მატრიცას აქვს (4) სახე. თუ ავტომატი იმყოფება საწყის მდგომარეობაში და მის
შესასვლელზე მოვა და სიტყვები, ისეთები
როგორებიც პირველი გვარის ავტომატის შესასვლელზე, მაშინ გამოსასვლელზე
მივიღებთ და სიტყვებს, რომლებიც
განსხვავდებიან პირველი გვარის ავტომატის გამოსასვლელი სიტყვებისგან. ამიტომ
პირველი გვარის ავტომატის ასახვა განსხვავდება მეორე გვარის ავტომატის
ასახვისგან.
როგორც ცნობილია, მურის ავტომატის გამოსასვლელი სიგნალი
დამოკიდებულია მხოლოდ მის მდგომარეობაზე ე.ი. ( ) ამიტომ ყოველი
მდგომარეობა აღნიშნულია გამოსასვლელი ასოთი, რომელიც ასახვაში
ისმება ფრჩხილებში ელემენტის გვერდით. ამიტომ ანალიზურად მურის ავტომატი
შეიძლება მოცემული იყოს ფორმით: ( ) სადაც ასახვა -
სათვის თავში ნებისმიერი და ყოველ ასოს შეუსაბამებს
მდგომარეობას, რომელიც განსაზღვრავს გამოსასვლელის წანაცვლებულ
ფუნქციას. მაშასადამე, მურის ავტომატის გამოსასვლელის ცხრილი დაიყვანება ერთ
სტრიქონამდე, რომელიც განლაგდება მდგომარეობათა გადასვლის ცხრილის თავზე.
მურის ავტომატის გეომეტრიული ინტერპრეტაციის გამოსასვლელი ალფავიტის
ასოები იწერება მდგომარეობათა ალფავიტის გვერდით ფრჩხილებში, ხოლო
შეერთების მატრიცაში იწერება შესაბამისი სვეტის თავზე.

მაგალითი 3.1.9. ვთქვათ მოცემულია მურის ( )


ავტომატი, სადაც { } { } { } ხოლო

{ }
{ },
{ }.

ავტომატის გრაფოიდს აქვს სახე (ნახ.12).

52
ნახ.12

ამ ნახაზის მიხედვით ადვილად ავაგებთ გადასვლის ცხრილებს, რომლებიც


განსაზღვრავენ მურის ავტომატის ფუნქციონირების კანონს ( და
ფუნქციებს).

y X\Q

X\Q

(ცხრ.4) (ცხრ.5)

შეერთების მატრიცას მურის ავტომატისათვის აქვს სახე:

( ) ( )

= 0

53
0 .

ავაგოთ ახლა მილის ავტომატი, რომელიც იქნება მურის B ავტომატის


ინტერპრეტაცია. (4) ცხრილის საშუალებით ავაგოთ ψ(q,x) გამოსასვლელის ფუნქცია
(ცხრ.5), რომელიც განსაზღვრავს მილის A = ( X, Q, Y, Q, F(x X / y Y) ) ავტომატს:

={ ( / ), ( / )},
={ ( / ), ( / )},
={ ( / ), ( / )},

შეერთების მატრიცას ექნება სახე:

0 ) ( )

= 0 ) ( )

( ) ) 0 ,

ხოლო მილის ავტომატის გეომეტრიული ინტერპრეტაცია მოცემულია მე-13 ნახაზზე:

ნახ.13

მაგ , , , .
ადვილი შესამოწმებელია, რომ მილის ავტომატი (x) სიმრავლის სიტყვებს ასახავს
(y)-ში ისევე, როგორც მურის B ავტომატი.
აქამდე ვიხილავდით პირველი და მეორე გვარის ავტომატებს, რომელთათვისაც
მდგომარეობათა Q სიმრავლის თავის თავში F ასახვა განსაზღვრული იყო ნებისმიერი
(q,x) წყვილისათვის, სადაც q Q x X . ასეთ ავტომატებს უწოდებენ სრულად
განსაზღვრულებს. ავტომატები (ნებისმიერი გვარის), რომელთათვისაც Q სიმრავლის
თავის თავში F ასახვა განსაზღვრული არ არის ყველა q Q და x X წყვილისათვის,
უწოდებენ ნაწილობრივ ავტომატებს. ნაწილობრივი ავტომატის ცნება შეიძლება

54
განვმარტოთ, თუ გამოვიყენებთ ავტომატის გამოსასვლელისა და შესასვლელის
ფუნქციებს. ნაწილობრივი ავტომატი ეწოდება ავტომატს, რომლისთვისაც გადასვლის
ფუნქცია ან გამოსასვლელის ფუნქცია ან ორივე ეს ფუნქცია განსაზღვრული არ არის
q Q და x X ელემენტთა წყვილის ყველა მნიშვნელობისათვის. გადასვლისა და
გამოსვლის ცხრილების და აგრეთვე ავტომატის შეერთების მატრიცის იმ
ადგილებზე, რომლებშიდაც შესაბამისი გადასვლები და გამოსვლები არ არის
განსაზღვრული, ჩაიწერება ნული ან ტირე.
განვიხილოთ ასახვა, ინდუცირებული ნაწილობრივი ავტომატით. ავტომატის
შესასვლელზე მივაწოდოთ შემავალი ალფავიტის სხვადასხვა სიტყვები.
ვიგულისხმოთ, რომ რაღაც სიტყვის P= .... შემავალი ასოს მიწოდებისას
მისი შესაბამისი გამოსასვლელი სიგნალი არ არის განსაზღვრული. ამ შემთხვევაში
იტყვიან, რომ P შესასვლელი სიტყვა აკრძალულია მოცემული ნაწილობრივი
ავტომატისათვის. ყველა ასეთი სიტყვების აკრძალული ერთობლიობა შეადგენს
მოცემული ავტომატის აკრძალულ არეს. სიტყვა, რომელიც არ არის აკრძალული,
ეწოდება დასაშვები, ხოლო მათ სიმრავლეს, დასაშვებ სიტყვათა სიმრავლე.
განვსაზღვროთ დამაკავშირებელი ავტომატის ცნება, რომელიც მეტად მნიშვნელოვან
როლს თამაშობს ნაწილობრივი ავტომატის შესწავლისას.
აბსტრაქტული ავტომატის Q მდგომარეობას ეწოდება მიღწევადი, თუ იგი
ემთხვევა საწყის მდგომარეობას ან თუ არსებობს ისეთი Q მიღწევადი
მდგომარეობა და შემავალი ალფავიტის ისეთი ასო, რომ .
წინააღმდეგ შემთხვევაში მდგომარეობას ეწოდება არამიღწევადი. აბსტრაქტულ
ავტომატს, რომელთა ყველა მდგომარეობა მიღწევადია, ეწოდება დამაკავშირებელი
ავტომატი.
ადვილი დასანახია, რომ საწყისი მდგომარეობიდან ავტომატი ვერ გადავა
არამიღწევად მდომარეობაში, ამიტომ ავტომატის შეერთების მატრიცაში ის
სტრიქონები და სვეტები, რომლებიც შეესაბამებიან არამიღწევად მდგომარეობებს,
შეიძლება ამოვშალოთ. ამ შემთხვევაში ავტომატის მიერ ინდუცირებული ასახვა არ
შეიცვლება, ამიტომ შემდეგში განვიხილავთ დამაკავშირებელ ავტომატებს.
ახლა განვიხილოთ ავტონომიური ავტომატი. ვთქვათ მოცემულია მილის A=(X,
Q, Y, Q, F(x X/y Y)) ავტომატი. განასხვავებენ მილის ავტონომიური ავტომატის
ორ სახეს: ავტონომიური ავტომატი შესასვლელით და ავტონომიური ავტომატი
გამოსასვლელით.
ავტონომიური ავტომატი შესასვლელი x X ასოთი ეწოდება ავტომატს, რომელიც
აღინიშნება { } სიმბოლოთი და რომლის შესასვლელი
ალფავიტი შედგება მხოლოდ {x} სიმრავლისაგან, ხოლო F ასახვა Q სიმრავლისა
თავის თავში განისაზღვრება ისე, რომ ნებისმიერი q Q მდგომარეობას შეესაბამება
ისეთი Q მდგომარეობა, რომელშიდაც გადასვლა განხორციელდება მხოლოდ x
55
შემავალი ასოთი. ავტომატის გამომავალი ასოები არ განიხილება.
თუ მოცემულია A ავტომატის გრაფოიდი, მასზე ყველა გვერდი უნდა წავშალოთ,
რომელზედაც აღნიშნულია x -გან განსხვავებული შემავალი ასოები, მივიღებთ
ავტონომიური ავტომატის გრაფს. ავღნიშნოთ, რომ ავტონომიური ავტომატი მოიცემა
ბერჟის გრაფით და არა გრაფოიდით. ავტომატის შეერთების მატრიცა მიიღება A
ავტომატის შეერთების მატრიციდან იმ ელემენტების ნულით შეცვლით, რომლებიც x
ასოსაგან განსხვავდებიან და გამომავალი ასოების წაშლით, რომლებიც ფრჩხილებით
x ასოს გვერდით დგას.
(14) ნახაზზე მოცემულია მილის ავტონომიური ავტომატის გრაფი შესაბამისად
და შემავალი ასოს მიხედვით.

q2 -ით q3 q2 -ით

ნახ. 14

A ავტონომიური ავტომატი y Y გამომავალი ასოს მიხედვით ეწოდება ავტომატს


( აღინიშნება Ay=( Q, {y}, Q, F(y)) სიმბოლოთი), რომლის გამომავალი ალფავიტი
შედგება {y} სიმრავლისგან, ხოლო F ასახვა Q სიმრავლისა თავის თავში ისე
განისაზღვრება, რომ ნებისმიერ q Q მდგომარეობას შეესაბამება ისეთი Q
მდგომარეობა, რომელშიდაც გადასვლა გამოიწვევს მხოლოდ გამომავალი y ასოს
გამოჩენას. ავტომატის შემავალი ასოები მხედველობაში არ მიიღებიან.
მაშასადამე, მილის A ავტომატი შეიძლება მოცემული იყოს როგორც
ერთობლიობა ავტონომიური ავტომატებისა შემავალი და გამომავალი ალფავიტების
ყველა ასოს მიხედვით. მურის ავტომატის შემთხვევაში აზრი აქვს ვისაუბროთ
მხოლოდ ავტონომიურ ავტომატებზე შესასვლელი ასოების მიხედვით.
(15) ნახაზზე, მოცემულია მილის ავტონომიური ავტომატების გრაფი გამომავალი
და ასოების მიხედვით, რომლის გრაფოიდიც (5)-ე ნახაზზეა მოცემული.

56
-ით -ით

ნახ.15

3.7. მურის ავტომატის მილის ეკვივალენტურ ავტომატად გარდაქმნა

მურის ავტომატის გრაფული წარმოდგენისას მილის ავტომატზე გადასვლა


სრულდება შემდეგი სახით: მდგომარეობიდან გამომავალი სიგნალი დაეწერება
ყველა რკალს, რომელიც ამ მდგომარეობაში შედის (იხ. ნახ.4). ნახ.5-ზე მოცემულია
მურის ავტომატის ეკვივალენტურ მილის ავტომატად ტრანსფორმაცია.

ნახ.4

57
ნახ.5

3.8. მილის ავტომატის მურის ეკვივალენტურ ავტომატად გარდაქმნა

უფრო რთულადაა საქმე მილის ავტომატის მურის ეკვივალენტურ ავტომატად


გარდაქმნისას. ასეთი გარდაქმნისას გასათვალისწინებელია შემდეგი შეზღუდვა: მილის
ავტომატში არ უნდა არსებობდეს ისეთი მდგომარეობები, რომლიდანაც არსებობს ერთი
მაინც გამომავალი რკალი და არ არსებობს არცერთი შემავალი რკალი, როგორც ნახ.6
ნახაზზეა ნაჩვენები

ნახ.6

მურის ავტომატში გამომავალი სიგნალი ფორმირდება როგორც


ფუნქცია, ხოლო მილის ავტომატში - . ამავე დროს -
ავტომატის მიმდინარე, ხოლო - წინა მდგომარეობაა.
მასასადამე, მდგომარეობა შეესაბამება ჯგუფს { } , რომელთა რაოდენობა
ტოლია განსხვავებული { } გამომავალი სიგნალების რაოდენობისა, განლაგებული
58
შემავალ რკალებზე. ამის გრაფიკული ინტერპრეტაცია ნაჩვენებია ნახ.7-ზე.

ნახ.7

ვთქვათ მოცემულია მილის ავტომატი: ). ავაგოთ


ისეთი ეკვივალენტური მურის ავტომატი ), რომ
და .

განვიხილოთ მაგალითი. მოცემულია მილის ავტომატი ნახ.8. ავაგოთ


ავტომატის მდგომარეობათა სიმრავლე. ამისათვის ვიპოვოთ წყვილები:

{ ⁄ ⁄ } { }

{ ⁄ }

{ ⁄ ⁄ } { }

{ }

აღნიშვნები შევცვალოთ აღნიშვნებით, შედეგად მივიღებთ გრაფს,


გამოსახულს ნახ.9 -ზე.

59
ნახ.8

ნახ.9

60
3.9. სასრული ავტომატების მაგალითები

მაგალითი 3.9.1. ავტომატი, რომელიც აღწერს „ჭკვიანი“ მამის ქცევას

აღვწეროთ მამის ქცევა, რომლის ვაჟიშვილიც სკოლაში სწავლობს და მოაქვს


ორიანები და ხუთიანები. მამას არ სურს ყოველთვის ქამრის გამოყენება, როდესაც
შვილი ორიანს მიიღებს და იჩევს აღზრდის სხვა ტაქტიკას. ასეთი ავტომატი
წარმოვადგინოთ გრაფის სახით (ნახ.16), რომელშიდაც წვეროები შეესაბამებიან
მდგომარეობებს, ხოლო რკალი მდგომარეობიდან მდგომარეობაში, რომელიც
აღინიშნება ⁄ სიმბოლოთი, გაივლება მაშინ, როცა ავტომატი მდგომარეობიდან
შემავალი სიგნალის ზემოქმედების შედეგად გადადის მდგომარეობაში, რომლიდანაც
გამომავალი სიგნალია . ავტომატის გრაფს აქვს ოთხი { } მდგომარეობა,
ორი შემავალი სიგნალი - { } შეფასებები და გამომავალი { }
სიგნალები, რომელთა ინტერპრეტირებაც მოვახდინოთ შემდეგი სახით, როგორც მამის
რეაქცია:

- ქამრის გამოყენება;

- შვილის დატუქსვა;

- შვილის დამშვიდება;

- დაიმედება, რომ მომავალში ასეთი რამ არ განმეორდება;

- გახარება;

- აღფრთოვანება.

61
ნახ.16

შვილს, რომელიც რამოდენიმეჯერ ერთსა და იმავე ნიშანს - ორიანს მიიღებს, სახლში


მამისაგან ელოდება სხვადასხვა რეაქცია მისი სწავლის ისტორიიდან გამომდინარე.
მაგალითად, ზედიზედ მესამე ორიანის { } შემდეგ მას ხვდებიან ქამრით, ხოლო
{ } ნიშნების შემთხვევაში დაამშვიდებენ და ა.შ.

ქვემოთ მოყვანილ მაგალითებში აღნიშნავს შემავალ ალფავიტს, -გამომავალ


ალფავიტს, ხოლო - მდგომარეობათა სიმრავლეს. თითოეული მაგალითისთვის
მოცემული იქნება მისი სიტყვიერი აღწერა, რომელიც წარმოადგენს ძირითად
საფუძველს მდგომარეობათა სიმრავლის არჩევისათვის.

მაგალითი 3.9.2. მოცემულია: ორგანიზმი აღიგზნება ორი სტიმულით: „დადებითი“


და „უარყოფითი“. ორგანიზმი არ რეაგირებს უარყოფით სტიმულზე და რეაგირებს
დადებითი სტიმულების მონაცვლეობაზე.
= {დადებითი სტიმული; უარყოფითი სტიმული}
= {რეაქცია; რეაქციის არარსებობა}
= {რეაქცია ბოლო დადებით სტიმულზე, არ არის რეაქცია ბოლო დადებით
სტიმულზე}
62
მიმდინარე მომენტში „რეაქცია ბოლო დადებით სტიმულზე“ მდგომარეობისას და
შესასვლელზე „დადებითი სტიმულის“ შემთხვევაში გამოსასვლელზე გამოჩნდება „არ
არის რეაქცია“, ხოლო შემდეგი მდგომარეობა იქნება „არ არის რეაქცია ბოლო დადებით
სტიმულზე“. მიმდინარე მომენტში სისტემის „არ არის რეაქცია ბოლო დადებით
სტიმულზე“ მდგომარეობაში ყოფნისას და შესასვლელზე „დადებითი სიმულის“
არსებობისას წარმოიქმნება გამოსასვლელი რეაქცია და შემდეგი მდგომარეობა „რეაქცია
ბოლო დადებით სტიმულზე“. შესავლელზე „უარყოფითი სტიმულის“ დროს
წარმოიქმნება გამოსასვლელი „არ არის რეაქცია“ მიმდინარე მომენტში მდგომარეობაზე
დამოუკიდებლად, ხოლო სისტემის მდგომარეობა არ შეიცვლება.

მაგალითი 3.9.3. მოცემულია: ინგლისურ ტექსტში, შედგენილი ალფავიტის 26


ასოსგან და ჰარისაგან („პრობელებისაგან“), უნდა დავთვალოთ სიტყვათა რეაოდენობა,
რომელიც იწყება - ით და მთავრდება -თი (მაგ.: და სხვ.) სიმარტივისთვის
პრობელი აღვნიშნოთ Π ასოთი, ხოლო ყველა დანარჩენი ასო d, n და u -საან
განსხვავებული ასოთი.
X={ d, n, u, Π, }
Z={დავთვალოთ; არ დავთვალოთ}
S={ახალი სიტყვა, ველოდოთ ახალ სიტყვას, u-ს გამოჩენა, u-n-ის გამოჩენა,
u-n-d-ს გამოჩენა}
შესასვლელზე Π-ის გამოჩენისას შემდეგ მომენტში, არსებული მდგომარეობისაგან
დამოუკიდებლად, გვექნება მდგომარეობა „ახალი სიტყვა“. მიმდინარე მომენტში „u-n-
d-ს გამოჩენა“ მდგომარეობისას და შესასვლელზე Π-ის გამოჩენისას წარმოიშვება
გამოსასვლელი „დავთვალოთ“. ყველა დანარჩენ შემთხვევაში გამოსასვლელზე
წარმოიშვება „ არ დავთვალოთ“. მიმდინარე მდგომარეობა თუ არის „ახალი სიტყვა“,
ხოლო შესასვლელზე u, მაშინ შემდეგი მდგომარეობა იქნება „u-ს გამოჩენა“, ხოლო
შესასვლელზე d, n ან -ს შემთხვევაში შემდეგი მდგომარეობა იქნება „ველოდოთ ახალ
სიტყვას“. მიმდინარე მომენტში მდგომარეობა თუ არის „u-ს გამოჩენა“, ხოლო
შესასვლელზე-n, შემდეგ მომენტში მდგომარეობა იქნება „u-n-ის გამოჩენა“, ხოლო
შესასვლელზე d, u ან -ს შემთხვევაში, შემდეგ მომენტში მდგომარეობა იქნება
„ველოდოთ ახალ სიტყვას“. თუ მიმდინარე მომენტში მდგომარეობაა „u-n-ის გამოჩენა“
ან „u-n-d-ის გამოჩენა“, d შესასვლელის შემთხვევაში, მაშინ შემდეგ მომენტში გვექნება
მდგომარეობა „u-n-d-ის გამოჩენა“, ხოლო n და u ან შესავლელის შემთხვევაში
მდგომარეობა „u-n-ის გამოჩენა“. მდგომარეობა ველოდოთ ახალ სიტყვას, Π-გან
განსხვავებული შესასვლელის შემთხვევაში, დარჩება უცვლელი.
63
მაგალითი 3.9.4. მოცემულია: ბორბლის ბრუნვა, რომელიც მოძრაობაში მოჰყავს
ძრავას, განისაზღვრება ორპოზიციანი ქანჩით: ქანჩის მარჯვენა მდგომარეობა
შეესაბამება საათის ისრის მიმართულებით ბრუნვას, მარცხენა კი საათის ისრის
საწინააღმდეგოდ. ბრუნვის მიმართულების შეცვლის მომენტში ჩაირთვება
ინდიკატორული ნათურა.

X = { მარჯვნივ, ნარცხნივ }

Z = {ნათურა ჩართულია, ნათურა გამორთულია}

S = {საათის ისრის მიმართულებით, საათის ისრის საწინააღმდეგოდ}

მიმდინარე მომენტში მდგომარეობა თუ იმყოფება „საათის ისრის


მიმართულებით“, ხოლო შესავლელზე გვაქვს „მარჯვნივ“ ან მდგომარეობა თუ არის
„საათის ისრის საწინააღმდეგო მიმართულებით“, ხოლო შესასვლელზე „მარცხნივ“,
მდგომარეობა გვექნება უცვლელი და გვექნება გამოსასვლელი „ნათურა გამორთულია“.
მიმდინარე მომენტში მდგომარეობა თუ იმყოფება „საათის ისრის მიმართულებით“,
ხოლო შესასვლელზე გვაქვს „მარცხნივ“, ან პირიქით „საათის ისრის საწინააღმდეგომ
მიმართულებით“ მდგომარეობა, ხოლო სესასვლელზე „მარჯვნივ“-მდგომარეობა
შეიცვლება და გამოსასვლელზე გვექნება „ნათურა ჩართულია“.
განხილული მაგალითები გვიჩვენებს, რომ სასრულ ავტომატად შეიძლება
წარმოვიდგინოთ თამაში, ენა, ალგორითმი, გადამრთველი, ცოცხალი ორგანზმი,
ორგანიზაცია და ა.შ. არსებითად, ნებისმიერი სისტემა შეიძლება წარმოვადგინოთ
სასრულ ავტომატად, რომელშიც მიმდინარე მომენტში გამომავალი სიგნალი
დამოკიდებულია მიმდინარე მომენტში მდგომარეობაზე და შემავალ სიგნალზე, ხოლო
მდგომარეობა შემდეგ მომენტში დამოკიდებულია მიმდინარე მომენტში მდგომარეობაზე
და შემავალ სიგნალზე.

კითხვარი თვითშემოწმებისათვის

1. ჩამოაყალიბეთ ანალიზისა და სინთეზის ამოცანების არსი.


2. ჩამოაყალიბეთ ავტომატების აბსტრაქტული თეორიისა და ავტომატების
სტრუქტურული თეორიის შესწავლის საგანი.
3. მოიყვანეთ დინამიური სისტემის განმარტება.
4. ჩამოთვალეთ ის ძირითადი ფაქტორები, რომელთა გათვალისწინებითაც დინამიური
სისტემები იყოფა სხვადასხვა კლასებად.
5. როგორ დინამიურ სისტემებს ეწოდება სასრული დინამიური სისტემები?

64
6. ჩამოაყალიბეთ აბსტრაქტული ავტომატის ცნებასთან დაკავშირებული ზოგიერთი
დაშვება.
7. როგორი ავტომატები განეკუთვნებიან ინფორმაციულ, მმართავ და გამომთვლელ
ავტომატებს?
8. მოიყვანეთ სასრული, ციფრული, აბსტრაქტული, სინქრონული და ასინქრონული,
სასრული და უსასრულო, დეტერმინირებული და ალბათური (სტოქასტური)
ავტომატების განსაზღვრებები.
9. ჩამოაყალიბეთ პირველი გვარის (მილის) და მეორე გვარის (მურის) ავტომატების
ფუნქციონირების კანონები განტოლებების საშუალებით. რა აქვთ საერთო და რითი
განსხვავდებიან მილისა და მურის ავტომატები ერთმანეთისაგან?
10. ჩამოაყალიბეთ აბსტრაქტული ავტომატების აღწერის ანალიზური, გეომეტრიული
და მატრიცული მეთოდები.
11. როგორ ავტომატებს ეწოდებათ სასრული ავტომატი? უსასრულო ავტომატი.
12. როგორ ავტომატებს ეწოდებათ ეკვივალენტური ავტომატები?
13. ჩამოაყალიბეთ სრულად და ნაწილობრივ განსაზღვრული ავტომატების
განმარტებები.
14. ჩამოაყალიბეთ ავტომატის დასაშვებ და აკრძალულ სიტყვათა სიმრავლის ცნება.
15. ავტომატის როგორ მდგომარეობას ეწოდება მიღწევადი? არამიღწევადი?

სიმბოლოთი აღინიშნება მდგომარეობა, რომელშიდაც აღმოჩნდება


სასრული ავტომატი ტაქტის ფუნქციონირების შედეგად, თუ შესასვლელზე მიიღებს
სიტყვას.
ვთქვათ მაშინ
( საწყისი მდგომარეობაა)
( ) ̅̅̅̅̅
თი აღინიშნება ენა, რომელსაც გამოიცნობს სასრული ავტომატი.
ენას ეწოდება რეგულარული, თუ არსებობს სასრული ავტომატი, რომ
სასრული ავტომატის მდგომარეობას ეწოდება მშთანთქავი, თუ ნებისმიერი
შემავალი ასონიშანი ავტომატს ვერ გამოიყვანს ამ მდგომარეობიდან. მშთანთქავ
მდგომარეობას ეწოდება დადებითად მშთანთქავი მდგომარეობა, თუ ის ეკუთვნის
დამამთავრებელ მდგომარეობათა სიმრავლეს. წინააღმდეგ შემთხვევაში მას ეწოდება
უარყოფითად მშთანთქავი.

მაგალითი 3.9.5. მოცემულია დეტერმინირებული სასრული ავტომატი


{ } ალფავიტით.
𝑞

65
c a, b a b

c b, c
𝑞 𝑞
a, c

a, b
𝑞

გამოთვალეთ , სადაც ,

a) b) c) F d) Q \ F პასუხი: a)
ამოხსნა:
,
( ) ,
( ) ,
( ) .

მაგალითი 3.9.6. მოცემულია დეტერმინირებული სასრული ავტომატი { }


ალფავიტით.

𝑞
a a,b

𝑞 𝑞

b a,b
𝑞

შემდეგი სიტყვებიდან რომელი ეკუთვნის ენას?

b) c) d) e) პასუხი: b,c

ამოხსნა:
, ე.ი.
, ე.ი.
̅ ე.ი.

66
.

აქ უარყოფითად მშთანთქავი მდგომარეობაა, დამამთავრებელ


დგომარეობათა სიმრავლე. ე.ი.

3.10. არადეტერმინირებული სასრული ავტომატები

განმარტება 3.10.1. სასრული ავტომატი არის ხუთეული,


სადაც - სასრული შემავალი ალფავიტია, და - სასრული სიმრავლეა,

, , .
- ს ელემენტებს ეწოდება მდგომარეობები, - ს ელემენტებს საწყისი მდგომარეობები,
-ის ელემენტებს დამამთავრებელი მდგომარეობები. თუ ,
მაშინ -ს ეწოდება - დან - ში გადასვლა, ხოლო სიტყვას - ამ
გადასვლის აღნიშვნა (მარკირება).

მაგალითი 3.10.2. ვთქვათ { }, { } { }, { },

{ }

მაშინ - სასრული ავტომატია.

შენიშვნა 3.10.3. სასრული ავტომატები შეიძლება გამოვსახოთ მდგომარეობათა


დიაგრამის სახით. დიაგრამაზე თითოეული მდგომარეობა აღინიშნება წრით, ხოლო
გადასვლა - ისრით. ისარი - დან -ში, აღნიშნული (მარკირებული) სიტყვით,
გვიჩვენებს, რომ არის მოცემული სასრული ავტომატის გადასვლა.
თითოეული საწყისი მდგომარეობა გამოიცნობა მისკენ მიმართული მოკლე ისრით.
თითოეული დამამთავრებელი მდგომარეობა დიაგრამაზე გამოიცნობა ორმაგი წრით.

მაგალითი 3.10.4. დიაგრამაზე გამოსახულია სასრული ავტომატი 3.10.2. მაგალითიდან.

შენიშვნა 3.10.5. თუ სასრულ ავტომატში არის რამოდენიმე გადასვლა საერთო საწყისი


და საერთო ბოლო მდგომარეობებით, მაშინ ასეთ გადასვლებს ეწოდება პარალელური
გადასვლები. ზოგჯერ პარალელური გადასვლები დიაგრამაზე გამოისახება ერთი
ისრით. ამ დროს გადასვლის აღნიშვნები (მარკირებები) გამოიყოფა მძიმით.

67
მაგალით 3.10.6. დიაგრამაზე ისევ არის გამოსახული სასრული ავტომატი 3.10.2.
მაგალითიდან.

განმარტება 3.10.7. სასრული ავტომატის გზა არის კორტეჟი,


სადაც და ნებისმიერი -თვის. ამავე დროს -
გზის დასაწყისია, - გზის დასასრული, - გზის სიგრძე, - გზის
აღნიშვნა.

შენიშვნა 3.10.8. ნებისმიერი მდგომარეობისათვის არსებობს გზა . მისი


მარკირება - , საწყისი და დასასრული ემთხვევიან.

განმარტება 3.10.9. გზას ეწოდება წარმატებული, თუ მისი საწყისი ეკუთვნის -ს,


ხოლო დასასრული -ს.

მაგალითი 3.10.10. განვიხილოთ სასრული ავტომატი 3.10.2. მაგალითიდან.

გზა წარმატებულია . მისი აღნიშვნაა (მარკირება, ეტიკეტი) - . ამ გზის სიგრძეა -


4.

განმარტება 3.10.11. სიტყვა დაშვებულია (გამოიცნობა) სასრული ავტომატის მიერ,


თუ იგი არის რომელიმე წარმატებული გზის მარკირება.

განმარტება 3.10.12. ენა, გამოცნობილი სასრული ავტომატის მიერ, არის ენა,


შედგენილი ყველა წარმატებული გზის ეტიკეტებისაგან (ე.ი. ყველა დასაშვები
სიტყვებისაგან). აგრეთვე ვიტყვით, რომ ავტომატი გამოიცნობს ენას.

შენიშვნა 3.10.13. თუ მაშინ ენა, რომელიც გამოცნობადია სასრული


ავტომატის მიერ, შეიცავს - ს.

მაგალითი 3.10.14. ვთქვათ , სადაც { }, { },

{ }, { }, { }

მაშინ

68
{ } { }
განმარტება 3.10.15. ორი სასრული ავტომატი ეკვივალენტურია, თუ ისინი გამოიცნობენ
ერთსა და იმავე ენას.

განმარტება 3.10.16. ენას ეწოდება ავტომატური, თუ არსებობს სასრული ავტომატი,


რომელიც გამოიცნობს ამ ენას.

შენიშვნა 3.10.17. ჩვეულებრივ სახელმძღვანელოებში გამოიყენება


არადეტერმინირებული სასრული ავტომატის უფრო ვიწრო განმარტება, მაგრამ ეს არ
ცვლის ავტომატური ენების კლასს.

მაგალითი 3.10.18. განვიხილოთ ერთასონიშნიანი { } ალფავიტი. ნებისმიერი


ფიქსირებული და - თვის { } ენა ავტომატურია.

შენიშვნა 3.10.19. ყოველი სასრული ენა ავტომატურია.

განმარტება 3.10.20. მდგომარეობა მიღწევადია მდგომარეობიდან, თუ არსებობს


გზა, რომლის საწყისია , ხოლო დასასრული - .

ლემა 3.10.21. ყოველი ავტომატური ენა გამოიცნობა რომელიმე სასრული ავტომატის


მიერ, რომელშიდაც თითოეული მდგომარეობა მიღწევადია რომელიმე საწყისი
მდგომარეობიდან და თითოეული მდგომარეობიდან მიღწევადია ერთი მაინც
დამამთავრებელი მდგომარეობა.

მაგალითი 3.10.22. განვიხილოთ სასრული ავტომატი,


სადაც { } { } { } { }

{ }

ამოვშალოთ ის მდგომარეობები და შესაბამისი გადასვლები, რომლებიც არ


აკმაყოფილებენ 3.10.21. ლემის მოთხოვნებს. მიიღება ეკვივალენტური სასრული

ავტომატი, სადაც { } { }
{ } { }

69
შენიშვნა 3.10.23. სასრული ავტომატის ბუნებრივ განზოგადებას წარმოადგენს
სასრული გარდამქმნელი, რომელსაც ყოველ ტაქტზე შეუძლია რამოდენიმე სიმბოლო
ერთდროულად გაუშვას „გამოსასვლელ“ ნაკადში. ზოგიერთ სახელმძღვანელოში
სწორედ ასეთ მოწყობილობას (გამოსასვლელი ნაკადით) უწოდებენ სასრულ ავტომატს.
ჩვენ ასეთ სასრულ გარდამქმნელებს არ განვიხილავთ.

3.11. სასრული ავტომატის კონფიგურაცია

განმარტება 3.11.1. სასრული ავტომატის კონფიგურაცია ან მყისიერი


აღწერა ეწოდება ნებისმიერ მოწესრიგებულ წყვილს, სადაც და

შენიშვნა 3.11.2. შინაარსობრივად კონფიგურაცია წარმოადგენს სასრული ავტომატის


„მყისიერ აღწერას“. თუ წარმოვიდგენთ, რომ საწყისი სიტყვა, რომლის მიკუთვნებაც
განსახილველ ენასთან შესამოწმებელია და რომელიც მოცემულია რომელიმე „შემავალ
ნაკადში“, მაშინ კონფიგურაციაში სიტყვა არის საწყისი სიტყვის ის ნაწილი,
რომელიც ჯერჯერობით დარჩენილია შემავალ ნაკადში (ეს საწყისი სიტყვის რაღაც
სუფიქსია), ხოლო არის „მმართველი მოწყობილობის“ მიმდინარე მდგომარეობა.

განმარტება 3.11.3. განვსაზღვროთ სასრული ავტომატის ყველა


კონფიგურაციათა სიმრავლეზე ბინარული თანაფარდობა (მუშაობის ტაქტი) შემდეგი
სახით. თუ და მაშინ ზოგჯერ -ის
ნაცვლად წერენ .

მაგალითი 3.11.4. განვიხილოთ სასრული ავტომატი

3.10.2. მაგალითიდან. მაშინ

განმარტება 3.11.5. ბინარული დამოკიდებულება განიმარტება როგორც რეფლექსური,


ტრანზიტული ჩაკეტვა დამოკიდებულებისა.

მაგალითი 3.11.6. სასრული ავტომატისათვის 3.10.2. მაგალითიდან სრულდება

და .

ლემა 3.11.7. ვთქვათ მოცემულია სასრული ავტომატი .

70
სიტყვა ეკუთვნის ენას მაშინ და მხოლოდ მაშინ, როცა რომელიმე
და - თვის სამართლიანია .

ლემა 3.11.8. თუ და

, მაშინ .

დამტკიცება. ლემა ადვილად მტკიცდება ინდუქციით გამოთვლით პროცესში ტაქტების


რაოდენობის მიხედვით, რომელიც კონფიგურაციიდან მიდის
კონფიგურაციაში.

3.12. სასრული ავტომატები ერთასონიშნიანი გადასვლებით

ლემა 3.12.1. ყოველი ავტომატური ენა გამოიცნობა რაიმე სასრული ავტომატით,


რომელიც არ შეიცავს გადასვლებს ერთზე მეტი სიგრძის მარკირებით და აქვს ზუსტად
ერთი საწყისი და ერთი დამამთავრებელი მდგომარეობა.

მაგალითი 3.12.2. განვიხილოთ ენა, მოცემული სასრული ავტომატით,


სადაც { }, { }, { } { }

{ }

იგივე ენა გამოიცნობა სასრული ავტომატით, სადაც

{ }, { }, { },
{ }

71
აქ პირველი ორი გადასვლა ცვლის ძველ გადასვლას და შემდეგი ორი
გადასვლა ცვლის ძველ გადასვლას. რომ უზრუნველვყოთ საწყისი
მდგომარეობის ერთადერთობა, დაემატა და გადასვლები. ბოლო ორი
გადასვლა - ში უზრუნველყოფენ დამამთავრებელი მდგომარეობის ერთადერთობას.

ლემა 3.12.3. ყოველი ავტომატური ენა გამოიცნობა რაიმე სასრული ავტომატით,


რომელიც შეიცავს გადასვლებს მხოლოდ ერთი სიგრძის მარკირებით და აქვს ზუსტად
ერთი საწყისი მდგომარეობა.

დამტკიცება. 3.12.1 ლემის თანახმად შეიძლება ვიგულისხმოთ, რომ საწყისი ენა


მოცემულია სასრული ავტომატით რომელიც არ შეიცავს ერთზე მეტი
სიგრძის მარკირებიან გადასვლებს, ამავე დროს ავაგოთ საძიებელი სასრული
ავტომატი , დავუშვათ რა რომ , ,

და მოიძებნება ისეთი რომ


{ }
და არსებობს გზა დან ში მარკირებით

მოიძებნება ისეთი
{ }
რომ არსებობს გზა დან ში მარკირებით

მაგალითი 3.12.4. ვთქვათ , სადაც { }, { }


{ }, { } { }.

ადვილად დავრწმუნდებით, რომ { } იგივე ენა


გამოიცნობა სასრული ავტომატით, სადაც { } და
{ }

72
3.13. მარჯვენა წრფივი ენების დახასიათება

თეორემა 3.13.1. ყოველი ავტომატური ენა მარჯვენა წრფივი ენაა.

ზოგადობის შეუზღუდავად შეიძლება ვიგულისხმოთ, რომ საწყისი ენა მოიცემა


სასრული ავტომატით, სადაც და { }. დავუშვათ

და { } { }

მაგალითი 3.13.2. ენა, გამოცნობილი სასრული ავტომატის მიერ 3.10.2. მაგალითიდან


წარმოიქმნება გრამატიკით

თეორემა 3.13.3. ყოველი მარჯვენა წრფივი ენა ავტომატურია.

დამტკიცება. ზოგადობის შეუზღუდავად შეიძლება ვიგულისხმოთ, რომ საწყისი ენა


მოცემულია მარჯვენა წრფივი გრამატიკით, რომელიც არ შეიცავს სახის წესებს,
სადაც . დავუშვათ { }

{ } და { }.

მაგალითი 3.13.4. ვთქვათ { }. განვიხილოთ გრამატიკა

იგი ეკვივალენტურია გრამატიკის

ამ გრამატიკებით წარმოქმნილი ენა გამოიცნობა სასრული ავტომატით,


სადაც { } { } { } და
{ }

73
3.14. მარჯვენა წრფივი გრამატიკების ნორმალური ფორმა

განმარტება 3.14.1. მარჯვენა წრფივი გრამატიკა ნორმალურ ფორმაში (ავტომატური


გრამატიკა, რეგულარული გრამატიკა) არის მარჯვენა წრფივი გრამატიკა, რომელშიდაც
თითოეულ წესს აქვს სახე: , ან სადაც

თეორემა 3.14.2. ყოველი მარჯვენა წრფივი გრამატიკა ეკვივალენტურია რომელიმე


მარჯვენა წრფივი გრამატიკისა ნორმალურ ფორმაში.

თეორემა 3.14.3. თუ მარჯვენა წრფივი ენა არ შეიცავს ცარიელ სიტყვას, მაშინ იგი
წარმოიქმნება რაიმე მარჯვენა წრფივი გრამატიკით ნორმალურ ფორმაში - წესების
გარეშე.

3.15. დეტერმინირებული სასრული ავტომატები

განმარტება 3. 15.1. სასრული ავტომატი დეტერმინირებულია, თუ

1. სიმრავლე შეიცავს ზუსტად ერთ ელემენტს;


2. ყოველი გადასვლისათვის სრულდება ტოლობა;
3. ნებისმიერი სიმბოლოსათვის და ნებისმიერი
მდგომარეობისათვის არსებობს თვისების მქონე არაუმეტეს ერთი
მდგომარეობა.

მაგალითი 3.15.2. სასრული ავტომატი 3.10.14 მაგალითიდან დეტერმინირებულია.

განმარტება 3.15.3. დეტერმინირებულ სასრულ ავტომატს ეწოდება


სრული, თუ ყოველი მდგომარეობისათვის და ყოველი

სიმბოლოსათვის მოიძებნება ისეთი მდგომარეობა, რომ .

მაგალითი 3.15.4. სასრული ავტომატი 3.10.14. მაგალითიდან ეკვივალენტურია სრული


დეტერმინირებული სასრული ავტომატისა, სადაც

{ }, { } { } { }

{ }

74
შენიშვნა 3.15.5. ზოგიერთი ავტორი სრული დეტერმინირებული სასრული ავტომატის
განმარტებაში შესაბამისობის ნაცვლად იყენებს ფუნქციას.
ფუნქციიდან შეიძლება გადავიდეთ შესაბამისობაზე, თუ დავუშვებთ

{ }

3.16. სასრული ავტომატის დეტერმინირებულ სახეზე მიყვანა

თეორემა 3.16.1. ყოველი ავტომატური ენა გამოიცნობა რაიმე სრული


დეტერმინირებული სასრული ავტომატით.

დამტკიცება. ზოგადობის შეუზღუდავად შეიძლება ვიგულისხმოთ, რომ საწყისი ენა


მოცემულია საწყისი ავტომატით, რომელიც შეიცავს მხოლოდ ეტიკეტებს
ერთეული სიგრძით. ნებისმიერი და -თვის ავღნიშნოთ

{ რომელიმე }

ით ავღნიშნოთ სიმრავლის ყველა ქვესიმრავლეთა სიმრავლე. დავუშვათ


და ავაგოთ სრული დეტერმინირებული ავტომატი,
სადაც

{ } და { }

მაგალითი 3.16.2. ვთქვათ { } . განვიხილოთ სასრული

{ } { } { } ავტომატი, სადაც
{ }

75
თუ გამოვიყენებთ 3.16.1. თეორემის დამტკიცების კონსტრუქციას და შემდეგ
გამოვრიცხავთ იმ მდგომარეობებს, რომლებიც არამიღწევადია საწყისი
მდგომარეობიდან, მიიღება სრული დეტერმინირებული სასრული ავტომატი

{{ } { }{ }} {{ }} {{ }} , სადაც
{{ } { } { } { } { } { }
{ } { } { } { } { } { }}

კითხვარი თვითშემოწმებისათვის

1. ავტომატის როგორ მდგომარეობას ეწოდება საწყისი მდგომარეობა? დამამთავრებელი


მდგომარეობა?
2. მოიყვანეთ არადეტერმინირებული სასრული ავტომატის განმარტება.
3. ავტომატის რომელ გზას ეწოდება წარმატებული?
4. რა შემთხვევაში გამოიცნობა სიტყვა სასრული ავტომატის მიერ?
5. როგორ ენას ეწოდება ავტომატური ენა?
6. ჩამოაყალიბეთ მარჯვენა წრფივი გრამატიკის განმარტება ნორმალურ ფორმაში.
7. მოიყვანეთ დეტერმინირებული სასრული ავტომატის განმარტება.

4. ავტომატური ენების ძირითადი თვისებები

4.1. ავტომატური ენების ჩაკეტილობის თვისება

თეორემა 4.1.1. ავტომატური ენების კლასი ჩაკეტილია იტერაციის, კონკატენაციის და


გაერთიანების ოპერაციების მიმართ.

დამტკიცება. ზოგადობის შეუზღუდავად შეიძლება ვიგულისხმოთ, რომ თითოეული


ენა მოცემულია ერთი საწყისი და ერთი დამამთავრებელ მდგომარეობიანი ავტომატით.
მაშინ სამივე ოპერაციის შემთხვევაში საძიებელი ავტომატი მიიღება საწყისიდან
რამოდენიმე გადასვლისა და მდგომარეობის დამატებით და ახალი საწყისი და
დამამთავრებელი მდგომარეობების დანიშვნით.

მაგალითი 4.1.2. ვთქვათ { }. განვიხილოთ სასრული ავტომატი


76
{ } { } { }
სადაც

მაშინ ენა გამოიცნობა სასრული ავტომატით

მაგალითი 4.1.3. ვთქვათ . განვიხილოთ სასრული


ავტომატი 3.1.2 მაგალითიდან და სასრული ავტომატი

სადაც

მაშინ ენა გამოიცნობა სასრული ავტომატით

ხოლო ენა გამოიცნობა სასრული ავტომატით

77
4.2. ავტომატური ენების თანაკვეთა და დამატება

თეორემა 4.2.1. ავტომატური ენების კლასი ჩაკეტილია დამატებისა და თანაკვეთის


მიმართ.

დამტკიცება. თუ ენა გამოიცნობა სრული დეტერმინირებული სასრული

ავტომატით, მაშინ ენა გამოიცნობა

ავტომატით.

თანაკვეთა გამოისახება გაერთიანებისა და დამატების სახით (დე მორგანის კანონი).

შენიშვნა 4.2.2. ორი ავტომატური ენის ავტომატურობა ადვილად შეიძლება


დამტკიცდეს 2.7.1. თეორემის გარეშეც. ამისათვის საკმარისია ორი ერთასოიანი
გადასვლის ავტომატით

ავაგოთ ახალი სასრული ავტომატი

სადაც

4.3. ლემა ავტომატური ენების ზრდადობის შესახებ

ლემა 4.3.1 (pumping lemma). ვთქვათ ავტომატური ენაა ალფავიტზე. მაშინ


მოიძებნება ისეთი დადებითი მთელი რიცხვი , რომ ნებისმიერი
სიტყვისათვის, რომლის სიგრძე არანაკლებია -ზე, შეიძლება შეირჩეს სიტყვები
, რომელთათვისაც სამართლიანია

78
და ყველა .

დამტკიცება. ვთქვათ L ენა გამოიცნობა სასრული ავტომატით,


რომელიც შეიცავს მხოლოდ ერთეული სიგრძის ეტიკეტიან გადასვლებს. დავუშვათ
. ვთქვათ სიტყვა არის წარმატებული გზის ეტიკეტი
და . დარიხლეს პრინციპის თანახმად მოიძებნება ისეთი

და ინდექსები, რომ და ,

(რადგან ინდექსების სიმრავლე შეიცავს p+1 ნატურალურ რიცხვებს,


ხოლო qi -ს მნიშვნელობები აიღება სიმრავლიდან, რომელიც შეიცავს მხოლოდ
p ელემენტს). შევარჩიოთ და სიტყვები ისე, რომ , და .

მაგალითი 4.3.2. ვთქვათ . განვიხილოთ ავტომატური ენა

დავუშვათ p = 3. მაშინ ნებისმიერი სიტყვისათვის, რომლის სიგრძე


არანაკლებია p -ზე, მოიძებნება 4.3.1. ლემის მტკიცებულობისათვის შესაბამისი
სიტყვები. მართლაც, თუ w = abu რომელიმე u სიტყვისათვის, მაშინ
დავუშვათ , y = ab, z = u ; წინააღმდეგ შემტხვევაში w = aabu და შეიძლება
დავუშვათ x = a, y = ab, z = u.

4.4. არაავტომატური ენების მაგალითები

მაგალითი 4.4.1. განვიხილოთ ენა


ალფავიტზე. 4.3.1 ლემის მტკიცებულება არ სრულდება არცერთი ნატურალური p
რიცხვისათვის. მართლაც, თუ w = abpap, მაშინ x = abk, y = bm, z = bp-k-map

რომელიმე და ან , y = abl, z = bp-lap რომელიმე -თვის.


ორივე შემთხვევაში . მაშასადამე, L ენა არაა ავტომატური.

შენიშვნა 4.4.2. 4.3.1 ლემის პირობა აუცილებელია ავტომატურობისატვის, მაგრამ არა


საკმარისი.

მაგალითი 4.4.3. ვთქვათ . განვიხილოთ ენა L = {akbman | k=0 ან m=n}.


დავუშვათ p = 1. მაშინ ნებისმიერი სიტყვისათვის, რომლის სიგრძე

79
არანაკლებია p -ზე, მოიძებნება სიტყვები , რომლებიც შეესაბამებიან
4.3.1. ლემის მტკიცებულობას. მიუხედავად ამისა L ენა არაა ავტომატური, რადგანაც

ლემა 4.4.4*. ვთქვათ L - ავტომატური ენაა ალფავიტზე. მაშინ მოიძებნება ისეთი


დადებითი მთელი p რიცხვი, რომ ნებისმიერი სიტყვისათვის შეიძლება
შევარჩიოთ სიტყვა, რომელთათვისაც სამართლიანია xyz = w,

და ყველა -თვის. აქ [m] აღნიშნავს m სიტყვის


მთელ ნაწილს.

დამტკიცება. ვთქვათ L გამოიცნობა სასრული ავტომატით,


რომელიც შეიცავს მხოლოდ ერთეული სიგრძის გადასვლებს. დავუშვათ
ვთქვათ w სიტყვა არის წარმატებული გზის მარკირება.
ავღნიშნოთ = [|w|/p]. თუ = 0, მაშინ დავუშვათ და . ვთქვათ .
დირიხლეს პრინციპის თანახმად მოიძებნება ისეთი ნატურალური j და k რიცხვები ,
რომ და = . ავირჩიოთ x, y და z სიტყვები ისე, რომ |x| = j , |y|
= k - j და xyz = w.

5. რეგულარული გამოსახულებები

ვთქვათ { } ნებისმიერი ალფავიტია, ხოლო ყველა სიტყვათა


სიმრავლე ამ ალფავიტში. სიმრავლის ნებისმიერ ქვესიმრავლეს ეწოდება
ხდომილება ალფავიტში.
ხდომილებათა ალგებრა ალფავიტში ეწოდება ამ ალფავიტში ყველა ხდომილებათა
სიმრავლეს, რომელზედაც მოცემულია სამი ოპერაციის სისტემა: ორი ბინარული
ოპერაცია - დიზუნქცია და გამრავლება, და ერთი უნარული ოპერაცია - იტერაცია.
და ხდომილებათა დიზიუნქცია ეწოდება ხდომილებას, რომელიც
აღინიშნება და წარმოადგენს და ხდომილებათა თეორიულ-სიმრავლურ
გაერთიანებას.
და ხდომილებათა ნამრავლი ეწოდება სიმრავლეს, რომელიც
შედგება სახის ყველა სიტყვისაგან, სადაც , შესაბამისად, სიტყვა
წარმოიქმნება, თუ სიტყვას მარჯვნივ მივაწერთ სიტყვას და არა პირიქით.

80
ხდომილების იტერაცია ეწოდება ხდომილებას, რომელიც აღინიშნება { } და
განისაზღვრება როგორც დიზუნქცია ცარიელი სიტყვისა, ხდომილებისა,
ხდომილებისა, ხდომილებისა და ა.შ. უსასრულობამდე. ე.ი.
{ }
მაგალითის სახით განვიხილოთ ალფავიტი { } . ვთქვათ მოცემულია
ხდომილებები { } და { } ალფავიტში. განსაზღვრის
მიხედვით , , { } ხდომილებები:
{ , , },
{ , , , },
{ } { , , , , , , , , , , ,
, , , ,… }.

ერთელემენტიან ხდომილებას, ე.ი. ერთი სიტყვისგან შედგენილ ხდომილებას,


აღვნიშნავთ ამ სიტყვის სიმბოლოთი. შევნიშნოთ, რომ ხდომილება, რომელიც
შედგენილია ცარიელი სიტყვით, შედგება ნულოვანი სიგრძის ერთი სიტყვისაგან
და დამხმარე როლს თამაშობს ავტომატების თეორიაში. შევთანხმდეთ, რომ არ
განვასხვავოთ ერთმანეთისგან ხდომილებები, რომლებიც ერთმანეთისაგან მხოლოდ
ცარიელი სიტყვით განსხვავდებიან. განვიხილავთ აგრეთვე ცარიელ
ხდომილებას, რომელიც შედგება შემავალი ალფავიტის ასოთა ცარიელი
სიმრავლისაგან და ამიტომაც წარმოადგენს ნებისმიერი ხდომილების ნაწილს.
ვთქვათ X={ , , ... , } ნებისმიერი ალფავიტია. შემოვიღოთ რეგულარული
გამოსახულების ცნება X ალფავიტში შემდეგნაირად:
1. , , ... , ,  სიმბოლოები რეგულარული გამოსახულებებია.
2 . თუ R და S რეგულარული გამოსახულებებია, მაშინ ასეთივეა , R S, { } .
3. არცერთი გამოსახულება არ არის რეგულარული თუ იგი არ არის მიღებული
სასრული რაოდენობის 1 და 2 წესების გამოყენებით.
მაშასადამე, რეგულარული გამოსახულება არის ფორმულა ხდომილებათა
ალგებრაში. ერთი და იგივე ხდომილება შეიძლება სხვადასხვანაირად იყოს
გამოსახული ერთელემენტიანი ხდომილების და დიზუნქციის, გამრავლებისა და
იტერაციის ოპერაციების საშუალებით.
იმ ხდომილებებს, რომლებთათვისაც არსებობენ რეგულარული
გამოსახულებები, ეწოდებათ რეგულარული ხდომილებები. წინააღმდეგ შემთხვევაში
ხდომილებას ეწოდება არარეგულარული.
ხდომილებათა ალგებრაში დიდი მნიშვნელობა ენიჭება რეგულარულ
გამოსახულებათა ექვივალენტური გარდაქმნების კანონების დადგენას. განვიხილოთ
დიზიუნქციის, გამრავლების და იტერაციის ოპერაციების ძირითადი თვისებები,
რომლებიც გამომდინარეობს მათი განმარტებებიდან. ვთქვათ, R და S ნებისმიერი
81
რეგულარული ხდომილებებია (x) - დან. მაშინ ადგილი აქვს შემდეგ
თანაფარდობას:

P ⋁ =  ⋁ P,

P =  P=,

P = P = P,

{}* = , { }* = .

იტერაციისა და დიზიუნქციის კომუტაციურობა:

P ⋁ R = R ⋁ P,

P {P}* = {P}* P.

დიზიუნქციისა და გამრავლების ასოციაციურობა:

P ⋁ (R ⋁ S) = (P ⋁ R) ⋁ S,

P (R S) = (P R) S.

გამრავლების მარცხენა და მარჯვენა დისტრიბუციულობა დიზიუნქციის მიმართ:

P (R ⋁ S) = (P R) ⋁ (P S),

(P ⋁ R) S = (P S) ⋁ (R S).

დიზუნქციისა და იტერაციის იდენპოტენციურობა:

P ⋁ P = P,

{{P}*}* = {p}*.

იტერაციის დიზიუნქციური შთანთქმა: :

{P}* ⋁ P = {P}*.

იტერაციის მულტიპლიკაციური შთანთქმა:

{P}* {P}* = {P}*.

იტერაციის აღსანიშნავად გამოყენებულ {}* სიმბოლოს ეწოდება იტერაციული


ფრჩხილები. ხდომილებათა ალგებრაში ოპერაციათა შესრულების
თანმიმდევრობისათვის გამოიყენება ჩვეულებრივი ფრჩხილები. მათი არარსებობის
82
შემთხვევაში პირველად შესრულდება იტერაცია, შემდეგ გამრავლება და ბოლოს
დიზიუნქცია.
რეგულარული გამოსახულების ციკლური სიღრმე ეწოდება ერთმანეთში ჩადგმული
იტერაციული ფრჩხილების მაქსიმალურ რიცხვს. მაგალითად: { { { }* }* }*⋁
გამოსახულების ციკლური სიღრმეა 3, ხოლო ({ }*{ }*) ⋁ { }*
გამოსახულების ციკლური სიღრმეა 1. ყველა სასრულ გამოსახულებას აქვს ნულოვანი
ციკლური სიღრმე.
რეგულარული ხდომილების ციკლური სიღრმის ქვეშ იგულისხმება მასში
წარმოდგენილ რეგულარულ გამოსახულებათა მინიმალური ციკლური სიღრმე.
განვიხილოთ { , , } ალფავიტში რეგულარულ ხდომილებათა
ზოგიერთი მაგალითი:
1. ხდომილება, რომელსაც ეწოდება უნივერსალური და შედგება ალფავიტის
ყველა ასოსაგან, შეიძლება ჩაიწეროს შემდეგი სახით: { ⋁ ⋁ }*
2. ხდომილება, რომელიც შეიცავს ალფავიტის მხოლოდ სამ ასოიან სიტყვას,
აქვს სახე: ( ⋁ ⋁ )( ⋁ ⋁ )( ⋁ ⋁ ) .
3. ხდომილება, რომელიც შედგება ისეთი სიტყვებისაგან, რომელშიდაც ერთხელ
მაინც გვხვდება მონაკვეთი, შეიძლება ჩაიწეროს შემდეგი ფორმით:
{ ⋁ ⋁ }* { ⋁ ⋁ }*
4. ხდომილება, რომელიც შედგება ყველა იმ სიტყვისაგან, რომლებიც იწყება ან
ასოთი და მთავრდება მონაკვეთით: ( ⋁ ){ ⋁ ⋁ }* .
5. ხდომილება, რომელიც შედგება ყველა იმ სიტყვისაგან, რომელთა სიგრძე 2-ის
ჯერადია: {(   )(   )}*
6. ისეთი სიტყვებისაგან შედგენილი ხდომილება, რომელთა საწყისია ან ასო,
შემდეგ მოდის ან -ისგან შედგენილი ორასოიანი სიტყვა და ბოლოს, დასასრული
შეიცავს ერთ ასოს მაინც: {  }*(  )(  ) { }*.
ხდომილებათა ალგებრის განხილული , , {}* ოპერაციებიდან გამომდინარეობს,
რომ ყველა სასრული ხდომილება რეგულარულია. ეს გამომდინარეობს იქიდან, რომ
ხდომილების ნებისმიერი სიტყვა გამოისახება ასოების ნამრავლით, ხოლო ნებისმიერი
სასრული ხდომილება მისი შედგენილი სიტყვების დიზიუნქციით.
იტერაციის გამოყენება იწვევს უსასრულო რაოდენობის რეგულარულ
ხდომილებათა გაჩენას. მაგრამ ადვილი შესამჩნევია, რომ უსასრულო ხდომილებათა
უმრავლესობა არარეგულარულია. მართლაც, სიტყვათა სიმრავლე არაცარიელ სასრულ
ალფავიტში თვლადია, მაშინ, როდესაც ყველა ხდომილებათა სიმრავლეს ასეთ
ალფავიტში აქვს კონტინიუმის სიმძლავრე.
ავაგოთ არარეგულარული ხდომილების მაგალითი. ავირჩიოთ მთელ რიცხვთა
უსასრულო ზრდადი მიდევრობა , , ...; , ... ისე, რომ - (i=1,2,...) სხვაობა არაა
შემოსაზღვრული ერთობლიობაში. ე.ი. ნებისმიერი რაგინდ დიდი N რიცხვისთვის
83
მოიძებნება ისეთი i, რომ - >N. ამ პირობას აკმაყოფილებს, მაგალითად,
ნატურალურ რიცხვთა რიგის კვადრატების მიმდევრობა, კუბების მიმდევრობა და ა.შ.
ახლა ნებისმიერ შესასვლელ ალფავიტში ავაგოთ S ხდომილება, რომელიც შედგება
ყველა იმ სიტყვებისაგან, რომელთა სიგრძეებია , , ...; ვაჩვენოთ, რომ S აუცილებლად
არარეგულარული ხდომილებაა. დავუშვათ საწინააღმდეგო და ჩავთვალოთ, რომ R არის
რაღაც რეგულარული გამოსახულება S ხდომილებისა. რადგანაც S ხდომილება
უსასრულოა, ეს გამოსახულება შეიცავს მხოლოდ ისეთ იტერაციულ ფრჩხილებს მაინც,
რომელთა შიგნით მოთავსებული გამოსახულება განსხვავდება ცარიელი e სიტყვისაგან.
R გამოსახულებაში ყველა დანარჩენი იტერაციული ფრჩხილი შევცვალოთ
ცარიელი სიტყვით, ხოლო გამოყოფილი ფრჩხილები {p}* გამოსახულებით, სადაც P
ნებისმიერი არაცარიელი სიტყვაა S ხდომილებიდან. შედეგად მივიღებთ
რეგულარულ გამოსახულებას რაღაც ხდომილებისათვის, რომელიც შედის S-ში. --ის
გამოსახულებიდან გამომდინარეობს, რომ S ხდომილებაში შედის rg, rpg, rppg, rpppg, …
სახის სიტყვები, რომელთა სიგრძეც შეადგენს უსასრულოდ ზრდად არითმეტიკულ
პროგრესიას. მაგრამ ეს ეწინააღმდეგება S ხდომილების აგების წესს. შესაბამისად, S
ხდომილება არ შეიძლება წარმოდგენილი იქნეს არავითარი რეგულარული
გამოსახულებით და იგი წარმოადგენს არარეგულარულ ხდომილებას.

5.1. ავტომატების ანალიზისა და სინთეზის ამოცანები

ავტომატების თეორიის ძირითად ამოცანებს წარმოადგენენ ავტომატების


ანალიზისა და სინთეზის ამოცანები. ანალიზის ქვეშ იგულისხმება იმ ასახვის დადგენა,
რომელიც რეალიზდება მოცემული ავტომატის მიერ, ხოლო სინთეზის ქვეშ კი
იგულისხმება ავტომატის სქემის აგება, რომელიც ინდუცირებს მოცემულ ასახვას.
გრაფთა თეორიის მეთოდები საშუალებას იძლევა წარმატებით გადაიჭრას
ავტომატების აბსტრაქტული და სტრუქტურული თეორიის ამოცანები. ავტომატების
აბსტრაქტულ თეორიაში მნიშვნელოვანი როლი უკავიათ ავტომატების ანალიზისა და
სინთეზის ამოცანებს, ხოლო სტრუქტურულ დონეზე პირველ ადგილზე დგას
ავტომატების სინთეზის პრობლემა.
ავტომატების ანალიზისა და სინთეზის ზოგადი ამოცანები ფორმულირდება
შემდეგნაირად:
1) მოცემული მილის ან მურის აბსტრაქტული ავტომატით ვიპოვოთ
ხდომილება, რომელიც წარმოდგენილია ავტომატში გამოსასვლელი ასოების
ნებისმიერი სიმრავლით ან ავტომატის მდგომარეობებით.

84
2) ნებისმიერი ხდომილებათა სასრული სიმრავლის მიხედვით ავაგოთ მილის ან
მურის ავტომატი, რომელიც ამ სიმრავლის ნებისმიერ ხდომილებას წარმოადგენს
გამოსასვლელი ასოების რაღაც სიმრავლით ან მდგომარეობებით.

სასრულ ავტოამატებში ხდომილებათა წარმოდგენის შესახებ სამართლიანია


კლინის ფუნდამენტური თეორემა.

თეორემა (კლინი): ხდომილებათა კლასი, წარმოდენილი სასრულ ავტომატებში,


ემთხვევა რეგულარულ ხდომილებათა კლასს.

ეს თეორემა შედგება ორი თეორემისაგან, რომელთაც ხშირად უწოდებენ კლინის


პირველ და მეორე თეორემებს.

თეორემა (კლინი 1): ხდომილება, წარმოდგენილი მილის ან მურის ნებისმიერ


სასრულ ავტომატებში გამომავალი სიგნალების ნებისმიერი სიმრავლით ან
მდგომარეობებით, აუცილებლად რეგულარულია.

თეორემა (კლინი 2) : ნებისმიერი რეგულარული გმაოსახულება შეიძლება


წარმოდგენილი იქნას მილის ან მურის სასრულ ავტომატში გამომავალი სიგნალების
რაიმე სიმრავლით ან მდგომარეობებით.

კლინის თეორემა წარმოადგენს ფუნდამენტურ თეორემას აბსტაქტული


ავტომატების თეორიაში, რადგანაც მისგან გამომდინარეობს, რომ რეგულარულ
გამოსახულებათა ენა საკმარისია ნებისმიერი სასრული ავტომატის მიერ
ინდუცირებული ასახვების აღწერისათვის.

5.2. რეგულარული გამოსახულების მინიმალური ფორმა

ავტომატების ანალიზის შედეგად მიიღება სხვადასხვა სახის რეგულარულ


გამოსახულებათა ეკვივალენტური ფორმები წარმოდგენილი ავტომატში. ეს
რეგულარული გამოსახულებები განსხვავებულები არიან თავიანთი სირთულით.
ამიტომ წამოიჭრა რეგულარული გამოსახულების მინიმალური ფორმის პრობლემა.
რეგულარულ გამოსახულებას ეწოდება მინიმალური, თუ მას გააჩნია უმცირესი
ციკლური S სიღრმე. ერთი და იგივე ციკლური სიღრმის რამოდენიმე რეგულარული
გამოსახულების დროს მინიმალურ გამოსახულებად ჩაითვლება ის რეგულარული

85
გამოსახულება, რომელსაც აქვს უმცირესი e სიგრძე, სადაც e არის ასოთა რაოდენობა,
რომელიც შედის რეგულარულ გამოსახულებაში.
სასრული ავტომატის ანალიზის დროს მიიღება სასრული რაოდენობის
რეგულარულ გამოსახულებათა ეკვივალენტური ფორმები. ამიტომ ერთი და იგივე
ხდომილების რეგულარული გამოსახულების მინიმალური ფორმა შეიძლება მიღებული
იქნეს ავტომატის გრაფოიდზე სასრული რაოდენობის ანალიზის ალგორითმის
გამოყენებით.
იმისათვის, რომ მივიღოთ გამარტივებული (მინიმალურთან ახლო) ფორმა
რეგულარული გამოსახულებისა ანალიზის ალგორითმის ერთჯერადი გამოყენების
პროცესში, საჭიროა მთელი რიგის წესების გათვალისწინება.
შემოვიღოთ წინასწარ ზოგიერთი ცნება.
გრაფოიდს ეწოდება ტიპიური, თუ მას გააჩნია წყარო და შემკრები; სუსტად
ტიპიური, თუ მას აქვს მხოლოდ წყარო და არატიპიური, თუ ის არ შეიცავს არც წყაროს
და არც შემკრებს, ან აქვს მხოლოდ შემკრები.
გავითვალისწინოთ, რომ წვეროში შესასვლელის ხარისხი არის იმ წვეროთა
რაოდენობა, რომელთაგანაც წვეროში შედის ერთი მაინც რკალი.

წესი 1. ტიპიური გრაფოიდისთვის, რომელსაც გააჩნია მხოლოდ პირდაპირი გზა,


მინიმალური ფორმა რეგულარული გამოსახულებისა განისაზღვრება განტოლებათა
სისტემაში უცნობთა (წვეროების) ნებისმიერი რიგით მიმდევრობით გამორიცხვის
საშუალებით.
ასეთი ავტომატისათვის არსებობს მხოლოდ ერთი რეგულარული გამოსახულება.
წესი 2. ტიპიური გრაფოიდისთვის, რომელსაც აქვს უკუკავშირის კონტური, უცნობთა
გამორიცხვა იწყება იმ უცნობით, რომელიც შეესაბამება უმცირესი შესასვლელის
ხარისხის მქონე წვეროს. შემდგომი გამორიცხვა უნდა მიმდინარეობდეს შესასვლელის
ხარისხის ზრდადი მიმდევრობით.
წესი 3. სუსტად ტიპიური გრაფოიდისთვის უცნობთა გამორიცხვა უნდა დაიწყოს
უმცირესი შესასვლელის მქონე წვეროს შესაბამისი უცნობით.
წესი 4. არატიპიური გრაფოიდისთვის, რომლის აღნიშნული წვერო არის შემკრები,
უცნობთა გამორიცხვა იწყება მეორე წესით, როგორც ტიპიური გრაფოიდისთვის, ხოლო
თუ აღნიშნული წვერო არის შემკრები, მაშინ მესამე წესით.

ზოგად შემთხვევაში შეიძლება აღმოჩნდეს, რომ სისტემის რამოდენიმე განტოლებაში

x1 x2

q1 q2
q3 x2 x3 q4
x5
x4 x3 x4
q1
x6 86
x1
q2 q6 q3 q4
q5
b) g)
შედის უცნობთა ერთიდაიგივე რიცხვი (გრაფოიდზე ეს შეესაბამება ერთდაიგივე
შესასვლელის ხარისხის მქონე წვეროს არსებობას). მაშინ გაუგებარია თუ რომელი
უცნობით (წვეროთი) უნდა იწყებოდეს გამორიცხვა. ასეთი შემთხვევის რაოდენობა
სულ შეიძლება სამი აღმოჩნდეს. იმის მიხედვით, თუ რომელი წვეროა საწყისი,
მივიღებთ შემდეგ სამ ვარიანტს. ამ ნახაზებზე მოცემულია რაღაც ავტომატის ნაწილები,
რომელთათვისაც არცერთი წვერო არაა საწყისი მდგომარეობა.

x4
q3
q4
x1

q1 x3
x2

q4 q5

a)

I. ა) ნახაზზე მოცემული გრაფოიდისთვის

= ⋁ (7)

= ⋁

საიდანაც

= { ⋁ }*

ამიტომ გამორიცხვა უნდა დაიწყოს უცნობით.

ბ) ნახაზზე მოცემული გრაფოიდისთვის

= ⋁ ⋁ (8)

= ⋁ ⋁

sadac

= { ⋁ }*

ამიტომ გამორიცხვა უნდა დაიწყოს უცნობით.

გ) ნახაზზე მოცემული გრაფოიდისთვის

87
= ⋁ (9)

= ⋁

და გამორიცხვა შეიძლება დაიწყოს ნებისმიერი მიმდევრობით.


დავუშვათ, რომ არის ავტომატის რაღაც ნაწილების საწყისი
მდგომარეობა, მოცემული 6.12 ა), ბ), გ) ნახატებზე, მაშინ (7), (8), (9)
განტოლებათა სისტემებს -თვის დაემატება e ასო. ეს ართულებს
განტოლებას. ამიტომ უცნობთა გამორიცხვა ყველა შემთხვევაში უნდა დაიწყოს
-ით.
დავუშვათ, რომ არის საწყისი წვერო (ნახ. 6.12 ა) ბ) გ)), მაშინ
განტოლებათა სისტემა, რომლებიც აღწერს 6.12 ა) ბ) ნახაზზე მოცემულ
გრაფოიდებს მიიღებს სახეს

= ⋁ ,

= ⋁ ⋁e

და

= ⋁ ⋁ ,

= ⋁ ⋁ ⋁ e,

ხოლო მათი ამოხსნები შესაბამისად იქნება

= ( ⋁e) { }*,

= ( ⋁e) {x4⋁x5}*,

რომელთაგანაც უნდა დაიწყოს უცნობთა გამორიცხვა. 6.12 ნახატზე მოცემული


გრაფოიდისათვის გამორიცხვა უნდა დაიწყოს R1- ით, რადგან (9) განტოლება R2–
სთვის რთულდება e ასოს დამატებით.

მაგალითი. ვთქვათ მოცემულია ავტომატი. (ნახ. 6.13.) ვიპოვოთ

x1
x3 q4
q1

x2 nax.13
x3
x1 x2

q2 q3
x2 88
x1 x3
ხდომილების მინიმალური გამოსახულება წარმოდგენილი ავტომატში
მდგომარეობით. შევადგინოთ გამოსახულებათა სისტემა :

R1 = R1x1 ⋁ R2x2 ⋁ R4x3⋁e,

R2 = R1x1 ⋁ R2x2

R3 = R1x3 ⋁ R3x3 ⋁ R3x1

R4 = R3x2

მიმდევრობით გამოვრიცხოთ R2, R1, R3 და განვსაზღვროთ R4.

R2 = R1x1{X2}*

R1 = R1x1⋁R1x1{x2}*x2⋁R4x3⋁e

R1 = (R4x3⋁e){x1⋁x1{x2}*x2}*

R3 = (R4x3⋁e){x1⋁x1{x2}*x2}*x1{x2}*x3⋁R3(x3⋁x1)

R4 = R4x3{x1⋁x1{x2}*x2}*x1{x2}*x3{x3⋁x1}*x2⋁{x1⋁x1{x2}*x2}*x1{x2}*x3{x3⋁x1}*x2

R4 = {x1⋁x1{x2}*x2}*x1{x2}*{x3⋁x1}*x2{x3}x1⋁x1{x2}*}*x1{x2}*x3{x3⋁x1}*x2.

საძიებელი რეგულარული გამოსახულების სიგრძეა , ხოლო ციკლური


სიღრმე .
ვიპოვოთ იგივე ხდომილების მინიმალური რეგულარული გამოსახულება,
გამოვიყენოთ მე- 4 წესი და პირველ რიგში გამოვრიცხოთ R4 უცნობი, შემდეგ R2. შემდეგ
კი მე-2 წესის მიხედვით გამოვრიცხავთ R3 და R1-ს, ვიპოვით R4-ს:

R2 = R1x1{x2}*

R3 = R1x1{x2}*⋁R3x3⋁R3x1

R3 = R1x1{x2}*{x3⋁x1}*

R1 = R1x1⋁R1x1{x2}*VR1x1{x2}*{x3Vx1}*x2x3Ve

R1 = {x1⋁x1{x2}*⋁x1{x2}*{x3⋁x1}*x2x3}*

89
R4 = {x1⋁x1{x2}*⋁x1{x2}*{x3⋁x1}*x2x3}*x1{x2}*{x3⋁x1}*x2

ამ რეგულარული გამოსახულების სიგრძეა , ხოლო ციკლური სიღრმე .

5.3. რეგულარული გამოსახულებების გრაფული წარმოდგენები

ნებისმიერი რეგულარული გამოსახულება შეიძლება წარმოვადგინოთ გრაფის


სახით. ელემენტარული რეგულარული გამოსახულებების გრაფები (დიზიუნქცია
, ნამრავლი , იტერაცია { } ) ნაჩვენებია 6.14. ა,ბ,გ, ნახაზებზე.

xi 2
xi xj
xi
1 1 3 1
2
xj
3
g)
a) b)
გრაფის საწყისი წვერო აღინიშნება 1-იანით, ხოლო დანარჩენები ნომრებით
2,3,4…სიმრავლიდან.
მაგალითად { } { } { } რეგულარულ გამოსახულებას
აძლევს სახეს

x1 2
1 x3

x3 3
x4
x1
nax.6.15
5 x2
6
x2
x1
4
სადაც საწყისია წვერო 1, ხოლო ბოლო – 3, 6 და 1 წვეროები. თითოეულ გზას
რეგულარული გამოსახულების გრაფზე საწყისიდან ნებისმერ ბოლომდე უნდა
შეესაბამებოდეს შემავალი ასოების მიმდინარეობა, რომელიც ეკუთვნის მოცემულ
რეგულარულ გამოსახულებას და პირიქით, მიმდევრობა, რომელიც რეგულარული
გამოსახულებით განსაზღვრავს გარკვეულ გზას რეგულარული გამოსახულების
გრაფში. მაგრამ შესაძლოა რომ აგებულ გრაფში აღმოჩნდეს მცდარი მიმდევრობები,
რომლებიც არაა მოცემული რეგულარული გამოსახულებით. მაგალითად, გზა
გამოყოფილი მუქი ხაზებით 6.15 ნახ-ზე შეესაბამება სიტყვას, რომელიც არ
ეკუთვნის რეგულარულ გამოსახულებას. წარმოქმნილი მცდარი მიმდევრობები
შეიძლება აღმოვფხვრათ გრაფზე ცარიელი ისრის შემოღებით, რომელიც აღნიშნავს
მყისიერ გადასვლას გრაფის ერთი წვეროდან მეორეში. ცარიელი ისრის გამოყენებით

90
6.15 გრაფის შესწორებული გრაფის ნახატი მოცემულია 6.16 ნახ-ზე.

2
1
3
x4
x2
7
nax.6.16
6
5 x1
x3 x2
x1 4

მოვიყვანოთ წესები, რომელთა შემთხვევაშიც შესაძლებელია ცარიელი ისრების


გამოყენება.

წესი 1. თუ გვაქვს ორი ან მეტი იტერაციის ნამრავლი

S = ∏ { }*, i = {1,2,…,n} ,

სადაც - ნებისმიერი რეგულარული გამოსახულებაა. გეომეტრიული ინტერპრეტაცია


მოცემულია ნახ. 6.17 - ზე.

R1 R2 Rn

1 2 n
nax.6.17

წესი 2. რეგულარულ გამოსახულებაში იტერაციულ ფრჩხილში დაწყება ან


დამთავრება ხდება იტერაციით

a) S = { {P}* R }*
b) S = { R {N}* }*
g) S = { {P}* R {N}* }*

R R P
P N N
R
1 2 1 2 1 2 3

a) b) g)
ნახ.6.18

სადაც P, R, N – ნებისმიერი რეგულარული გამოსახულებებია

91
წესი 3. თუ რეგულარულ გამოსახულებაში ერთი მაინც დიზიუნქციური წევრი
იწყება იტერაციით (ნახ. 6.19)

R
S = {R}* ⋁ {P}*…⋁ ,
4
1 Q 5

nax.6.19 სადაც რეგულარული გამოსახულებაა,


2 3
P რომელიც არ შეიცავს იტერაციულ ფრჩხილებს.

წესი 4. თუ რეგულარულ გამოსახულებაში მარცხენა თანამამრავლი წარმოადგენს


დიზიუნქციას, რომლის ერთი მაინც წევრი მთავრდება იტერაციით (ნახ. 6.20)

P
Q
S = ( {P}* ⋁ {R}* ⋁…⋁ )N
1 N
2
R 5
3 4 შევნიშნოთ, რომ კერძო შემთხვევებში P, R, N,
Q რეგულარული გამოსახულებები შეიძლება
nax.6.20 შედგებოდეს ერთი ასოსაგან.
1-4 სისტემა, ცარიელი ისრების შემოღების რეგულარული გამოსახულების
გრაფში მცდარი გზების უკუსაგდებად, არის სრული სისტემა.

კითხვარი თვითშემოწმებისათვის

1. ჩამოაყალიბეთ რაიმე ალფავიტში ხდომილობის, ხდომილობათა ალგებრის,


ხდომილობათა დიზიუნქციის, ნამრავლის და ხდომილობის იტერაციის განმარტებები.
2. ჩამოაყალიბეთ რაიმე ალფავიტში რეგულარული გამოსახულების ცნება.
3. როგორ ხდომილობებს ეწოდება რეგულარული ხდომილებები? არარეგულარული
ხდომილებები?
4. რას ეწოდება რეგულარული გამოსახულების ციკლური სიღრმე?
5. რა იგულისხმება რეგულარული ხდომილების ციკლური სიღრმის ქვეშ?
6. ჩამოაყალიბეთ ავტომატების ანალიზისა და სინთეზის ზოგადი ამოცანები.
7. ჩამოაყალიბეთ კლინის თეორემები.
8. როგორ რეგულარულ გამოსახულებას ეწოდება მინიმალური?

92
6. დეტერმინირებული სასრული ავტომატების მინიმიზაცია

განმარტება 6.1. ვიტყვით, რომ სიტყვა განასხვავებს სრული


დეტერმინირებული ავტომატის და მდგომარეობებს, თუ ერთ-ერთი
, მდგომარეობებიდან დამამთავრებელია, ხოლო მეორე არა.

განმარტება 6.2. სრული დეტერმინირებული ავტომატის


და მდგომარეობებს ეწოდება განსხვავებადი (distinguishable), თუ არსებობს
სიტყვა, რომელიც მათ განასხვავებს.

სასრული ავტომატები შეიძლება შეიცავდეს ორი ტიპის ზედმეტ მდგომარეობას:


არამიღწევად და ეკვივალენტურ მდგომარეობებს.

განმარტება 1. ორ q და q′მდგომარეობას სასრულ M = (Q, T, F, H, Z) ავტომატში


ეწოდება - ეკვივალენტური, n ∈ N, თუ , ამ მდგომარეობებიდან ერთ-ერთში ყოფნისას
და შესასვლელზე სიმბოლოების ნებისმიერი ჯაჭვის მოსვლისას : , | | ,
ავტომატს შეუძლია გადავიდეს ერთსა და იმავე მდგომარეობათა სასრულ სიმრავლეში.

განმარტება 2. სასრული ავტომატის q მდგომარეობას ეწოდება არამიღწევადი,


თუ არ არის გზა ავტომატის საწყისი მდგომარეობიდან ამ მდგომარეობისაკენ.

განმარტება 3. სასრულ ავტომატს ეწოდება წარმოსახვითი ან მინიმალური


სასრული ავტომატი, თუ იგი არ შეიცავს არამიღწევად ან ეკვივალენტურ
მდგომარეობებს.

7. არაცალსახობა კონტექსტურად -თავისუფალ გრამატიკებში

7.1. გამოყვანის ხეები

განმარტება 7.1.1. გამოყვანებს კონტექსტურად - თავისუფალ გრამატიკებში შეესაბამება


ე.წ. გამოყვანის ხეები (გარჩევის ხე ) - რაიმე მოწესრიგებული ხეები, რომელთა
წვეროებიც აღნიშნულია ალფავიტის სიმბოლოებით. ხის ძირი შეესაბამება საწყის
სიმბოლოს. სიტყვის თითოეულ სიმბოლოს, რომელზედაც იცვლება საწყისი
სიმბოლო გამოყვანის პირველ ბიჯზე, შეესაბამება ხის წვერო და მისკენ გაივლება რკალი
ხის ძირიდან. ასეთი სახით მიღებული ფესვის უშუალო შთამომავლები
მოწესრიგებულია სიტყვაში მათი ეტიკეტების მიმდევრობის შესაბამისად.
სიმრავლის სიმბოლოებისთვისაც ანალოგიურად ხდება ხის აგება და ა.შ.

გამოყვანის ხის მოსავლიანობა (yield) ეწოდება სიტყვას, დაწერილს წვეროებში და


აღნიშნულს ალფავიტის სიმბოლოებით.

93
მაგალითი 7.1.2. განვიხილოთ კონტექსტურად -თავისუფალი გრამატიკა

გამოყვანას შეესაბამება
შემდეგი გამოყვანის ხე.

ამ გამოყვანის ხის მოსავლიანობაა -

7.2. ცალსახა კონტექსტურად -თავისუფალი გრამატიკები

განმარტება 7.2.1. გამოყვანას კონტექსტურად - თავისუფალ გრამატიკაში


ეწოდება მარცხენა , თუ გამოყვანის ყოველ ბიჯზე იცვლება უკიდურესი მარცხენა
დამხმარე სიმბოლო (ე.ი. გამოყვანის ყოველ ბიჯს აქვს სახე,
სადაც , და ). ზოგჯერ მარცხენა
გამოყვანებში ნიშნაკის ნაცვლად წერენ \lmarrow. მარჯვენა გამოყვანა
განიმარტება ანალოგიურად. მარჯვენა გამოყვანებში ნიშნაკის ნაცვლად
წერენ \rmarrow.

მაგალითი 7.2.2. გამოყვანა

7.1.2 მაგალითიდან არ არის მარცხენა.

ლემა 7.2.3. ყოველი სიტყვისათვის, რომელიც გამოიყვანება კონტექსტურად -


თავისუფალი გრამატიკიდან, არსებობს მარცხენა გამოყვანა.

ლემა7.2.4. ვთქვათ - კონტექსტურად-თავისუფალი გრამატიკაა ალფავიტზე.

ვთქვათ . მაშინ არსებობს ურთიერთცალსახა შესაბამისობა გრამატიკაში


სიტყვის მარცხენა გამოყვანასა და გამოყვანის ხეს შორის, რომლის მოსავლიანობაც არის
.
94
მაგალითი 7.2.5. განვიხილთ გამოყვანის ხე 7.1.2 მაგალითიდან. მას შეესაბამება

მარცხენა გამოყვანა.

განმარტება 7.2.6. კონტექსტურად-თავისუფალი გრამატიკას ეწოდება არაცალსახა

(ambiguous), თუ არსებობს სიტყვა, რომელსაც გააჩნია ორი ან მეტი მარცხენა გამოყვანა


(მოძველებული ტერმინი-განუსაზღვრელი გრამატიკა). წინააღმდეგ შემთხვევაში
კონტექსტურად-თავისუფალ გრამატიკას ეწოდება ცალსახა (unambiguous).
მაგალითი 7.2.7. კონტექსტურად-თავისუფალი გრამატიკა 7.1.2 მაგალითიდან
არაცალსახაა. სიტყვას გააჩნია ორი მარცხენა გამოყვანა:

და

მაგალითი 7.2.8. ვთქვათ { ⋀ ⋁} . კონტექსტურად-თავისუფალი


გრამატიკა

წარმოქმნის ბულის ფორმულების სიმრავლეს, რომლებიც შედგენილია


ცვლადების , ფრჩხილებისა და ⋀ ⋁ ოპერატორების საშუალებით. ეს გრამატიკა
ცალსახაა.

განმარტება 7.2.9. კონტექსტურად-თავისუფალი ენას ეწოდება არსებითად არაცალსახა


(inherently ambiguous), თუ ამ ენის წარმომქმნელი ყოველი კონტექსტურად-
თავისუფალი გრამატიკა არაცალსახაა.

მაგალითი 7.2.10. ენა, წარმოქმნილი კონტექსტურად-თავისუფალი გრამატიკით 7.1.2


მაგალითიდან, არ არის არსებითად არაცალსახა . ის წარმოიქმნება შემდეგი ცალსახა
გრამატიკით

95
მაგალითი 7.2.11. ვთქვათ { } კონტექსტურად - თავისუფალი
{ ან } ენა არსებითად არაცალსახაა. [დამტკიცება იხ. Ахо Уль, с.
234-236].

კითხვარი თვითშემოწმებისათვის

1. სრული დეტერმინირებული ავტომატის როგორ მდგომარეობებს ეწოდება


განსხვავებადი მდგომარეობები?
2. ავტომატის რომელ მდგომარეობებს ეწოდებათ ეკვივალენტური?
3. სასრული ავტომატის როგორ მდგომარეობას ეწოდება არამიღწევადი?
4. როგორ სასრულ ავტომატს ეწოდება წარმოსახვითი ან მინიმალური სასრული
ავტომატი?
5. როგორ სიტყვას ეწოდება გამოყვანის ხის მოსავლიანობა (yield)?
6. როგორ გამოყვანას ეწოდება კონტექსტურად - თავისუფალ გრამატიკაში მარცხენა გამოყვანა?
მარჯვენა გამოყვანა?
7. რა შემთხვევაში ეწოდება კონტექსტურად-თავისუფალ გრამატიკას არაცალსახა
(ambiguous) გრამატიკა? ცალსახა (unambiguous) გრამატიკა?
8. რა შემთხვევაში ეწოდება კონტექსტურად-თავისუფალ გრამატიკას არსებითად
არაცალსახა (inherently ambiguous)?

8. კონტექსტურად თავისუფალი ენების ნორმალური ფორმები

8.1. უსარგებლო სიმბოლოების აღმოფხვრა

განმარტება 8.1.1. ვთქვათ წარმომქმნელი გრამატიკაა. სიმბოლოს

ეწოდება სასარგებლო (useful), თუ არსებობს ისეთი

, და სიტყვები, რომ და .

სიმბოლოს ეწოდება უსარგებლო (useless), თუ ის არ არის სასარგებლო.

96
სიმბოლოს ეწოდება წარმომქმნელი (generating), თუ არსებობს ისეთი
სიტყვა, რომ . სიმბოლოს ეწოდება მიღწევადი , თუ არსებობს

ისეთი და სიტყვები, რომ .

ლემა 8.1.2. ვთქვათ მოცემულია კონტექსტურად - თავისუფალი


გრამატიკა, რომელშიდაც ყველა სიმბოლო N- დან არის წარმომქმნელი. ვთქვათ N' - G
გრამატიკის ყველა მიღწევადი სიმბოლოებია, ხოლო P' - იმ წესების სიმრავლე P -დან,
რომლებიც არ შეიცავენ არ შეიცავენ არცერთ სიმბოლოს სიმრავლიდან.

მაშინ კონტექსტურად - თავისუფალ გრამატიკაში ყველა სიმბოლო


N'-დან წარმომქმნელია. \end{lemma}

თეორემა 8.1.3. ვთქვათ მოცემულია კონტექსტურად - თავისუფალი

გრამატიკა და . მაშინ არსებობს ისეთი და სიმრავლეები,

რომ კონტექსტურად - თავისუფალ გრამატიკაში არ არის უსარგებლო


სიმბოლოები და იგი ეკვივალენტურია საწყისი გრამატიკისა.

დამტკიცება. პირველ ეტაპზე უკუვაგდოთ ყველა არაწარმომქმნელი სიმბოლოები (


აგრეთვე ყველა წესი, რომელიც ასეთ ერთ სიმბოლოს მაინც შეიცავს). მეორე ეტაპზე
მიღებული გრამატიკიდან ამოვყაროთ ყველა არამიღწევადი სიმბოლოები ( ასევე მათი
შემცველი წესები). 8.1.2 - ის თანახმად მეორე ეტაპზე არცერთი წარმომქმნელი
სიმბოლო ვერ გახდება არაწარმომქმნელი.

მაგალითი 8.1.4. განვიხილოთ კონტექსტურად - თავისუფალი გრამატიკა შემდეგი


წესებით:

97
ამოვაგდოთ ოთხი წესი, რომლებიც შეიცავენ არაწარმომქმნელ სიმბოლოს, მივიღებთ
გრამატიკას. მასში სიმბოლო არამიღწევადია. ამოვაგდოთ სამი წესი, რომლებიც
შეიცავენ -ს, მივიღებთ გრამატიკას

წესებით. ცხადია, რომ და გრამატიკა არ შეიცავს უსარგებლო


სიმბოლოებს.

8.2. წესების აღმოფხვრა

თეორემა 8.2.1. ვთქვათ კონტექსტურად - თავისუფალი ენაა. მაშინ { } ენა


წარმოიქმნება რომელიმე კონტექსტურად - თავისუფალი გრამატიკით წესების
გარეშე.

დამტკიცება. ვთქვათ მოცემულია კონტექსტურად - თავისუფალი


გრამატიკა, რომელიც წარმოქმნის ენას. ჩავატაროთ სიმრავლეში გარდაქმნათა
სერია.

თუ რომელიმე და - თვის სიმრავლე


შეიცავს და სახის წესებს, მაგრამ არ შეიცავს წესებს, მაშინ
დავამატოთ ეს წესი - ში. ეს პროცედურა გავიმეოროთ მანამ, სანამ შესაძლებელია.
ახლა

- დან გამოვრიცხოთ სახის წესები. მიღებული გრამატიკა წარმოქმნის


{ } ენას.

მაგალითი 8.2.2. განვიხილოთ ენა, წარმოქმნილი გრამატიკით

{ } ენა წარმოიქმნება შემდეგი გრამატიკით:

98
8.3. ხომსკის ნორმალური ფორმა

განმარტება 8.3.1. გრამატიკა ხომსკის ნორმალურ ფორმაში ( grammar in Chomsky


normal form) ეწოდება კონტექსტურად - თავისუფალ გრამატიკას,
რომელშიდაც თითოეულ წესს აქვს ერთ-ერთი სახე შემდეგი სამიდან:
, , , სადაც , ,
, .

მაგალითი 8.3.2. გრამატიკა

არის გრამატიკა ხომსკის ნორმალურ ფორმაში.


მაშასადამე, გრამატიკა ხომსკის ნორმალურ ფორმაში არის გრამატიკა,
რომელშიდაც თითოეული წესის მარჯვენა მხარე არ შეიცავს აქსიომას.

თეორემა 8.3.3. ყოველი კონტექსტურად - თავისუფალი გრამატიკა ეკვივალენტურია


რაიმე გრამატიკისა ხომსკის ნორმალურ ფორმაში.

დამტკიცება. ვთქვათ მოცემულია კონტექსტურად - თავისუფალი


გრამატიკა. ჩავატაროთ მთელი რიგი გარდაქმნები ისე, რომ მისგან
წარმოქმნილი ენა დარჩეს უცვლელი.

თუ რაიმე წესის მარჯვენა ნაწილი შეიცავს სიმბოლოს, მაშინ


გრამატიკა შევცვალოთ შემდეგი გრამატიკით

სადაც - ახალი სიმბოლოა, რომელიც არ ეკუთვნის სიმრავლეს.

99
შევცვალოთ ყველა წესში თითოეული ტერმინალური სიმბოლო ახალი
არატერმინალური სიმბოლოთი და სიმრავლეს წესი ყველა -
თვის.

აღმოვფხვრათ სახის წესები, სადაც , შევცვალოთ რა თითოეული


მათგანი უფრო მოკლე წესებით ( ამავე დროს ემატება ახალი არატერმინალური
სიმბოლოები). ახლა აღმოვფხვრათ ყველა სახის წესები, სადაც არ
წარმოადგენს საწყის სიმბოლოს.

თუკი რომელიმე და - თვის სიმრავლე შეიცავს


და წესებს, მაგრამ არ შეიცავს წესებს, მაშინ დავამატოთ ეს
წესი - ში. ეს პროცედურა გავიმეოროთ მანამ, სანამ იქნება შესაძლებელი. ამის
შემდეგ გამოვრიცხოთ სიმრავლიდან ყველა სახის წესი.

მაგალითი 8.3.4. გრამატიკა

ეკვივალენტურია შემდეგი გრამატიკისა ხომსკის ნორმალურ ფორმაში:

თეორემა 8.3.5. თუ კონტექსტურად - თავისუფალი ენა არ შეიცავს ცარიელ სიტყვას,


მაშინ ის წარმოიქმნება რაიმე გრამატიკით, რომელშიდაც თითოეულ წესს აქვს ერთ-
ერთი სახე შემდეგი ორიდან: , , სადაც
, , , .

100
9. კონტექსტურად - თავისუფალი ენების ძირითადი თვისებები

9.1. ლემა წრფივი ენების ზრდადობის შესახებ

განმარტება 9.1.1. წრფივი გრამატიკა ნორმალურ ფორმაში არის ისეთი წრფივი


გრამატიკა, რომელშიდაც თითოეულ წესს აქვს სახე ,
, ან , სადაც , , .

თეორემა 9.1.2. ყოველი წრფივი გრამატიკა ეკვივალენტურია რომელიმე წრფივი


გრამატიკისა ნორმალურ ფორმაში.

თეორემა 9.1.3. თუ წრფივი ენა არ შეიცავს ცარიელ სიტყვას, მაშინ იგი წარმოიქმნება
ნორმალური ფორმის რაიმე წრფივი გრამატიკით - წესების გარეშე.

თეორემა 9.1.4. ენა წრფივია მაშინ და მხოლოდ მაშინ, როცა { } ენა წრფივია.

ლემა 9.1.5. ვთქვათ - წრფივი ენაა ალფავიტზე. მაშინ მოიძებნება ისეთი მთელი
დადებითი რიცხვი, რომ -ზე არანაკლები სიგრძის ნებისმიერი სიტყვისათვის
შეიძლება შეირჩეს სიტყვები, რომელთათვისაც
სამართლიანია

( ე.ი ან ), და

ყველა - თვის.

მაგალითი 9.1.6. განვიხილოთ ენა { }


ალფავიტზე. 9.1.5 ლემის პირობები არ სრულდება არცერთი ნატურალური
რიცხვისათვის. შესაბამისად ენა არ არის წრფივი.

9.2. წრფივი ენების კლასის ჩაკეტილობის თვისება

მაგალითი 9.2.1. ვთქვათ . ენა წრფივია,


რადგან იგი წარმოიქმნება გრამატიკით

მაგალითი 9.2.2. განვიხილოთ ალფავიტი.


101
ენა წრფივია, რადგან იგი წარმოიქმნება გრამატიკით

თეორემა 9.2.3. თუ და - წრფივი ენებია ლფავიტზე, მაშინ აგრეთვე


წრფივი ენაა.

მაგალითი 9.2.4. განვიხილოთ ალფავიტი.

ენა წრფივია, რადგან სადაც

წრფივი ენებია, ხოლო

ავტომატური ენაა.

9.3. კონტექსტურად - თავისუფალი ენების კლასის ჩაკეტილობის თვისება

თეორემა 9.3.1. თუ - კონტექსტურად - თავისუფალი ენაა, მაშინ *


აგრეთვე
კონტექსტურად - თავისუფალი ენაა.

დამტკიცება. ვთქვათ ენა წარმოიქმნება კონტექსტურად-


*
თავისუფალი გრამატიკით. მაშინ ენა წარმოიქმნება გრამატიკით

სადაც .

თეორემა 9.3.2. თუ და - კონტექსტურად - თავისუფალი ენებია ალფავიტზე,


მაშინ აგრეთვე კონტექსტურად-თავისუფალი ენაა.

102
თეორემა9.3. 3. თუ და - კონტექსტურად - თავისუფალი ენებია ალფავიტზე,
მაშინ აგრეთვე კონტექსტურად-თავისუფალი ენაა.

თეორემა 9.3.4. თუ - კონტექსტურად-თავისუფალი ენაა, მაშინ აგრეთვე


კონტექსტურად-თავისუფალი ენაა.

9.4. კონტექსტურად-თავისუფალი ენების თანაკვეთა და დამატება

თეორემა 9.4.1. არასწორია, რომ ნებისმიერი და კონტექსტურად - თავისუფალი


ენებისათვის, აგრეთვე კონტექსტურად - თავისუფალია.

თეორემა 9.4. 2. არასწორია, რომ ნებისმიერი კონტექსტურად -


თავისუფალი ენისათვის, ენა აგრეთვე კონტექსტურად - თავისუფალია.

9.5. კონტექსტურად - თავისუფალი ენის თანაკვეთა ავტომატურ ენასთან

თეორემა 9.5.1. თუ - კონტექსტურად - თავისუფალი ენაა და - ავტომატური ენა,


მაშინ ენა აგრეთვე კონტექსტურად - თავისუფალია.

მაგალითი 9.5.2. ვთქვათ . განვიხილოთ კონტექსტურად -


თავისუფალი ენა , წარმოქმნილი

გრამატიკით და ავტომატური ენა, რომელსაც გამოიცნობს სასრული


ავტომატი, სადაც { } { } { }

მაშინ ენა წარმოიქმნება კონტექსტურად - თავისუფალი გრამატიკით

103
აქ S11, S12, S21 და S22 შეესაბამება ,
, და სიმბოლოებს 9.6.1. თეორემის დამტკიცებიდან.

კითხვარი თვითშემოწმებისათვის

1. წარმომქმნელ გრამატიკაში როგორ სიმბოლოებს ეწოდება უსარგებლო? სასარგებლო?


2. როგორ გრამატიკას ეწოდება გრამატიკა ხომსკის ნორმალურ ფორმაში ( grammar in
Chomsky normal form)?
3. როგორ გრამატიკას ეწოდება წრფივი გრამატიკა ნორმალურ ფორმაში?
4. მოიყვანეთ კონტექსტურად - თავისუფალი ენების კლასის ჩაკეტილობის თვისება ენის
იტერაციის, ენების ნამრავლის, გაერთიანების, თანაკვეთის, დამატების და ენის
შებრუნებულის მიმართ.

10.1. ალგორითმი. ტიურინგის მანქანა.


მაღაზიური მეხსიერების ავტომატი

ალგორითმის ცნება
ალგორითმის ცნების დეტალური დახასიათება მოიცავს შემდეგ ასპექტებს
( ხარტლი როჯერსის მიხედვით):
ა). ალგორითმი არის ინსტრუქციათა ერთობლიობა, რომელთაც გააჩნიათ სასრული
სიგრძე. ეს სიგრძე იზომება, მაგალითად, სიმბოლოების რაოდენობით, რომლებიც
აუცილებელია წესების ჩაწერისათვის.
ბ). არსებობს მექანიზმი (ადამიანი, მექანიკური, ოპტიკური და ა.შ. მოწყობილობა,
ელექტრონული მანქანა), რომელიც აღიქვამს და შეასრულებს ინსტრუქციებს.
გ). არსებობს საშუალებები (ადამიანური მეხსიერება, საწერ-ქაღალდი, კბილანა
ბორბლები, მაგნიტური დამამახსოვრებელი მოწყობილობა და ა.შ), რომლებიც

104
აფიქსირებს და ინახავს ცნობებს ინსტრუქციის შესრულების ნებისმიერ ეტაპზე და
აგრეთვე გასცემს მათ საჭიროების შემთხვევაში.
დ). არსებითია, რომ ყველა შესასრულებელი პროცედურა დისკრეტულია (თუმცა მათ
მიერ დასამუშავებელი ობიექტები თავიანთი ხასიათის მიხედვით შესაძლებელია
იყვნენ უწყვეტი).
ე). ელემენტარულ ოპერაციათა მიმდევრობა მკაცრადაა განსაზღვრული: პროცესის
თითოეული ბიჯიდან შემდეგ ბიჯზე გადასვლა შესაძლებელია მხოლოდ ერთადერთი
გზით.

ალგორითმები და ფორმალური გრამატიკები

ფორმალური გრამატიკა არის წესების ერთობლიობა, რომლებიც უზრუნველყოფს


ან სწორად აგებული სიტყვების ( სწორი ფრაზების) ერთობლიობას, ან იმის გარკვევას,
არის თუ არა მოცემული ასონიშნების (სიტყვების) მიმდევრობა სწორად აგებული
სიტყვა (სწორი ფრაზა). სხვა სიტყვებით რომ ვთქვათ, გრამატიკის მიზანს წარმოადგენს
როგორმე მივიღოთ (დავახასიათოთ) სიტყვები (ფრაზები), რომლებიც ეკუთვნიან
მოცემულ ენას. მაშასადამე, ფორმალური გრამატიკა არის წესების ერთობლიობა,
რომელთა საშუალებითაც მოიცემა რაიმე ენა.

გამოთვლადობა

ტიურინგის მანქანის ცნების საშუალებით ფორმალიზდება გამოთვლადობის


ინტიუციური გაგება ( შესაბამისად - ალგორითმის ცნების ინტიუციური გაგება).
მხედველობაში გვაქვს უპირველეს ყოვლისა ფსიქოლოგიური წარმოდგენა
გამოთვლადობაზე: გამომთვლელს (ადამიანს) მიეწოდება რაიმე საწყისი მონაცემები და
მათი დამუშავების წესები. მან ამ მონაცემებზე დამოკიდებულებით უნდა მიიღოს რაიმე
შედეგი. ხშირად გამომთვლელი ( ადამიანი) წინასწარ განსაზღვრავს გამოთვლადია თუ
არა მოთხოვნადი შედეგი, რადგანაც ის ფლობს გამოთვლითი მუშაობის გარკვეულ
პრაქტიკულ გამოცდილებას. ცნობილია, რომ

 რიცხვი არაგამოთვლადია, რადგან მისი ათობითი წარმოდგენა უსასრულოა;


 რიცხვის მიახლოებითი მნიშვნელობა გამოთვლილია - მდე სიზუსტით
ნებისმიერი ფიქსირებული - თვის.
მაგრამ უმრავლეს შემთხვევაში უცნობია, გამოთვლადია თუ არა მოთხოვნადი
შედეგი.

ტიურინგის მანქანა
1936 წელს ინგლისელმა მათემატიკოსმა და ლოგიკოსმა ალან ტიურინგმა შექმნა
აბსტრაქტული მანქანა.
105
ტიურინგის მანქანა შედგება შემდეგი ნაწილებისაგან:

 მმართველი მოწყობილობა, რომელსაც შეუძლია მიიღოს მდგომარეობათა რაიმე


რაოდენობა, რომლებიც თავის მხრივ შეესაბამება მანქანის შინაგანი ელემენტების
ნებისმიერ კომბინაციას ( მეხსიერების უჯრები, ელექტრონული სქემები და ა.შ.)
 ლენტა, რომელზედაც წინასწარ მოთავსებულია დასამუშავებელი მონაცემები და
რომელზედაც მანქანის მუშაობის პროცესში დაიტანება გამოთვლის შუალედური
შედეგები. ყველა ჩანაწერი ლენტაზე წარმოებს რაიმე ალფავიტის ასონიშნებით.
ლენტა დაყოფილია უჯრებად, რომლებშიდაც განთავსებულია არაუმეტეს ერთი
სიმბოლო. უჯრების რაოდენობა ორივე მხრიდან შემოუსაზღვრელია.
 წამკითხველის თავი, რომელიც ასრულებს სიმბოლოების ჩაწერასა და წაკითხვას.
იგი უზრუნველყოფს ლენტასა და მმართველ მოწყობილობას შორის
ინფორმაციის გაცვლას. ყოველ მომენტში წამკითხველის თავი შეიძლება
მუშაობდეს ლენტის მხოლოდ ერთ უჯრასთან. ამავე დროს მას შეუძლია:
შეცვალოს წაკითხული სიმბოლო სხვა სიმბოლოთი;
ერთი უჯრით გადაწიოს ლენტა მარჯვნივ ან მარცხნივ.
ტიურინგის მანქანა მუშაობს შემდეგნაირად: თითოეულ სიტუაციაში, რომელიც
განისაზღვრება მმართველი მოწყობილობის შიგა მდგომარეობითა და ლენტაზე
წაკითხული სიმბოლოთი, მანქანა გადავა სხვა მდგომარეობაში, გადაწევს რა ლენტას
განსაზღვრული სახით.
მოვიყვანოთ ტიურინგის მანქანის ფუნქციონირების ფორმალური აღწერა მარტინ
დევისის მიხედვით.
სიმბოლოები, რომლებსაც მანქანა კითხულობს და წერს ლენტაზე, ავღნიშნოთ
- ით. ისინი ქმნიან მანქანის ალფავიტს. არის "ცარიელი სიმბოლო",
რომელიც განსაკუთრებულ როლს ასრულებს: იგულისხმება, რომ ეს სიმბოლო
ჩაწერილია ყველა ცარიელ უჯრაში და პირიქით, თუ უჯრაში ჩაწერილია სიმბოლო,
მაშინ ის ცარიელია. -ის ნაცვლად შეიძლება აგრეთვე ჩავწეროთ ან სიმბოლო. -
ის შეცვლა - ით ნიშნავს -ის წაშლას.
-ის ნაცვლად ხშირად წერენ "1" (ერთიანი) ან "|" (ჯოხი).
შიგა მდგომარეობები (მმართველი მოწყობილობის მდგომარეობები) აღინიშნება
ტიურინგის ნებისმიერ კონკრეტულ მანქანას აქვს ასეთი
მდგომარეობების სასრული რაოდენობა.
და სიმბოლო აღნიშნავს შესაბამისად მარჯვნივ ან მარცხნივ ლენტის
გადაადგილებას.
მოვიყვანოთ რამოდენიმე განმარტება.
(1) გამოსახულება ეწოდება სიმბოლოების სასრულ მიმდევრობას
{ } ალფავიტში.

106
(2) ბრძანება ეწოდება შემდეგი სამი სახიდან ერთ-ერთს:

.
(3) ტიურინგის მანქანა ეწოდება ბრძანებების სასრულ სიმრავლეს, რომელთაც აქვთ
წყვილ-წყვილად განსხვავებული საწყისი სიმბოლოები.

ტიურინგის მანქანის მუშაობა

ზემოთმოყვანილი განსაზღვრებების საშუალებით ტიურინგის მანქანის მუშაობა


შეიძლება ავღწეროთ ზუსტად.
 რომელიმე ბრძანების საწყისი წყვილი განსაზღვრავს საწყის სიტუაციას:
მანქანა იმყოფება მდგომარეობაში და კითხულობს სიმბოლოს.
 სიტუაციაში მანქანის მოქმედება სრულად განისაზღვრება იმ ერთადერთი
ბრძანების წყვილი სიმბოლოთი, რომელიც ამ სიტუაციას შეესაბამება( ე.ი. იწყება
სიმბოლოების წყვილით). ამავე დროს მანქანის ელემენტარული მოქმედება შეიძლება
იყოს ერთ-ერთი შემდეგი სამი სახიდან:
ტიპი : მანქანა - ს შეცვლის - თი და მდგომარეობიდან გადავა
მდგომარეობაში.
ტიპი მანქანა გადაწევს ლენტას ერთი უჯრით მარჯვნივ და
მდგომარეობიდან გადავა მდგომარეობაში.
ტიპი მანქანა გადაწევს ლენტას ერთი უჯრით მარცხნივ და
მდგომარეობიდან გადავა მდგომარეობაში.
შეგახსენებთ, რომ ტიურინგის მანქანის ბრძანებათა სიმრავლეზე დადებულია
მოთხოვნა, რომ ყველა ბრძანების საწყისი წყვილი იყოს განსხვავებული. ამ
მოთხოვნის ძალით ნებისმიერ სიტუაციაში შესაძლებელია არაუმეტეს ერთი
ელემენტარული მოქმედების შესრულება. იმ მანქანას, რომლისთვისაც ეს მოთხოვნა
შესრულებულია, ვუწოდოთ დეტერმინირებული. წინააღმდეგ შემთხვევაში -
არადეტერმინირებული. ე.ი. ზოგიერთ სიტუაციაში რამოდენიმე განსხვავებული
ელემენტარული მოქმედებიდან შეუძლია აირჩიოს ერთ-ერთი მოქმედება.
ჩამოვაყალიბოთ კიდევ ერთი განმარტება.
(4) კონფიგურაცია ეწოდება გამოსახულებას, რომელიც აკმაყოფილებს პირობებს:
 იგი არ შეიცავს და სიმბოლოებს;
 იგი შეიცავს ტიპის მხოლოდ ერთ სიმბოლოს;
 ეს ტიპის სიმბოლო გამოსახულებაში არ მდებარეობს უკიდურეს მარჯვენა
პოზიციაზე.

107
მაშასადამე, განმარტების ძალით და კონფიგურაციებია,
ხოლო კონფიგურაციებს არ წარმოადგენენ.
ვთქვათ რაიმე კონფიგურაციაა. ვიტყვით, რომ არის ტიურინგის რაიმე
მანქანის კონფიგურაცია, თუ მდგომარეობა, რომელიც ფიგურირებს - ში,
წარმოადგენს მანქანის ერთ-ერთ შიგა მდგომარეობას, ხოლო - ში შემავალი ყველა
სხვა სიმბოლო ეკუთვნის ალფავიტს.
მანქანის კონფიგურაცია ცალსახად განსაზღვრავს მის მოქმედებას. მართლაც,
სიტუაციის ხასიათი არ ითვალისწინებს ლენტაზე ჩაწერილი ყველა სიმბოლოს
ერთობლიობას; კონფიგურაცია ამის საშუალებას იძლევა.
კონფიგურაცია, რომლიდანაც ამოგდებულია , ახასიათებს ლენტის
შემადგენლობას, მაშინ როცა თუ არის სიმბოლო, რომელიც კონფიგურაციაში - ის
მარჯვნივ დგას, ე.ი. არის მანქანის სიტუაცია.
მოვიყვანოთ ბოლო განმარტება.
(5) ვთქვათ და რაიმე მანქანის კონფიგურაციაა. ჩვენ დავწერთ
შემდეგი სამიდან ერთ-ერთის შემთხვევაში (აქ და აღნიშნავენ მანქანის ალფავიტის
სიმბოლოების ნებისმიერ მიმდევრობას):
მანქანას აქვს ბრძანება ,
მანქანას აქვს ბრძანება ,
მანქანას აქვს ბრძანება .
 პირველი შემთხვევა შეესაბამება მანქანის ისეთ ელემენტარულ მოქმედებას,
რომლის დროსაც იგი ცვლის სიმბოლოს სიმბოლოთი და მდგომარეობიდან
გადადის მდგომარეობაში.
 მეორე შემთხვევა შეესაბამება ისეთ მოქმედებას, როცა ლენტა ერთი უჯრით
გადადის მარცხნივ და მდგომარეობა გადადის მდგომარეობაში.
 მესამე შემთხვევა შეესაბამება ლენტის ერთი უჯრით მარჯვნივ და
მდგომარეობიდან მდგომარეობაში გადასვლას.
(5) განმარტებიდან უშუალოდ გამომდინარეობს, რომ
 თუ და , მაშინ ;
 თუ და ტიურინგის ორი მანქანაა ისეთი, რომ ნებისმიერი ბრძანება ათვის
არის ბრძანება მანქანისათვის ( ამ შემთხვევაში წერენ ), მაშინ - ის მიმართ
- დან გამომდინარეობს - ის მიმართ.
გამოთვლები. კონფიგურაციას ეწოდება დამამთავრებელი მანქანის
მიმართ, თუ არ არსებობს ამ მანქანის კონფიგურაცია ისეთი, რომ .
ტიურინგის მანქანის გამოთვლა ვუწოდოთ ისეთ

108
მიმდევრობას, რომ და დამამთავრებელი კონფიგურაციაა (
-ის მიმართ) და დავწერთ , რაც აღნიშნავს: " არის მანქანის მიერ
-ის გადამუშავების შედეგი".

საწყისი კონფიგურაცია. შევთანხმდეთ, რომ მანქანა გადაამუშავებს { }


ალფავიტში ჩაწერილ სიტყვებს; ამავე დროს აღნიშნავს ცარიელ სიმბოლოს და
საწყისი სიტყვა ორივე მხრიდან ცარიელი სიმბოლოებითაა გარსშემორტყმული.
მანქანის განკარგულებაში იმდენი ცარიელი უჯრაა, რამდენიც აუცილებელია
გამოთვლების ჩასატარებლად. მანქანის ერთ-ერთი მდგომარეობა ითვლება საწყის
მდგომარეობად; მანქანა ამ მდგომარეობიდან იწყებს მუშაობას და წამკითხველის თავი
დაყენებულია ლენტაზე ჩაწერილ ყველაზე მარცხნივ მდგომი არაცარიელი სიმბოლოს
წინ.

ტიურინგის მანქანის მაგალითი


ვთქვათ ტიურინგის მანქანის ალფავიტია { }, ხოლო { }
მდგომარეობები; - საწყისი მდგომარეობაა. მანქანის ქცევა აღიწერება შემდეგი
ბრძანებებით:
(1)
(2)
(3)
(4)
(5)
(6)
(7)

ახსნა - განმარტება.
ა). თუ მანქანა იმყოფება საწყის მდგომარეობაში და კითხულობს ან
სიმბოლოს, მაშინ იგი ლენტას ერთი უჯრით გადაწევს მარცხნივ დარჩება რა იმავე
საწყის მდგომარეობაში; ახლა წამკითხველი ხედავს სიმბოლოს, რომელიც უჯრაში
უშუალოდ ან - ის მარჯვნივ დგას (ბრძანება (1) და (2)).
ბ). თუ მანქანა იმყოფება მდგომარეობაში და კითხულობს სიმბოლოს, მაშინ იგი
ლენტას ერთი უჯრით გადაწევს მარცხნივ და შედეგად იწყებს იმ სიმბოლოს დანახვას,
რომელიც - ის მარჯვნივაა. ამავე დროს იგი "იმახსოვრებს" იმ ფაქტს, რომ დაინახა :

109
მდგომარეობას შეიძლება მივცეთ ინტერპრეტაცია იმისა, რომ წაკითხულ იქნა
სიმბოლო (ბრძანება (3)).
გ). თუ მანქანას ჯერ კიდევ "ახსოვს -ის შესახებ" და მან დაინახა ან , მას
ავიწყდება, რომ ხედავდა -ს ( მდგომარეობაში დაბრუნება) და გადადის ან
სიმბოლოების მარჯვნივ მყოფი სიმბოლოების შეთვალიერებაზე (ბრძანება (5) და (6)).
დ). თუ მანქანას ჯერ კიდევ "ახსოვს -ის შესახებ" და იმყოფება მდგომარეობაში,
მანქანა ისევ ხედავს -ს, უბრუნდება წინა სიმბოლოს ( ეს ის - ია, რომელმაც იგი
გადაიყვანა მდგომარეობაში) და გადადის მდგომარეობაში (ბრძანება (4)). შემდეგ
- ს შეცვლის - ით და გადადის მდგომარეობაში (ბრძანება (7)). ახლა მანქანა
აღმოჩნდება სიტუაციაში, რომლისთვისაც არ არსებობს შესაბამისი ბრძანება.
ამიტომ იგი გაჩერდება.
ე). მასასადამე, ერთადერთი ფაქტორი, რომელმაც გამოიწვია მანქანის გაჩერება, არის
ორი ზედიზედ დაწერილი . თუ შემავალი სიტყვის კითხვისას მანქანას არ შეხვდება
ორი ერთმანეთის გვერდით მდგომი , მაშინ იგი გავა სიტყვის ბოლომდე, შემდეგ
გადავა მისგან მარჯვენა ცარიელ უჯრაზე და იმუშავებს მუდმივად(ბრძანება (1)).
მანქანას, რომელიც იმყოფება მდგომარეობაში, მივცეთ
სიტყვა. შედეგად მივიღებთ შემდეგ კონფიგურაციებს:
(1)
(2)
(3)
(4)
(5)
(6)
(7) ( დამამთავრებელი კონფიგურაცია)

ახლა იმავე მანქანას მივცეთ სიტყვა. ამ შემთხვევაში გამოთვლები იქნება


შემდეგი სახის:
(1)
(2)
(3)
(4)
(5)
პროცესი უსასრულოდ გაგრძელდება, ე.ი. ამ შემთხვევაში შედეგი არაა
განსაზღვრული.

110
ავტომატები და ენები
არსებობს ავტომატების სპეციალური კლასი, რომლებიც შეესაბამებიან KF -
ენების კლასს, ე. წ. ავტომატები მაღაზიური მეხსიერებით (PD - ავტომატი,
pushdown automaton ). PD - ავტომატი არის სისტემა , რომელიც შედგება შემდეგი სამი
კომპონენტისაგან: 1. შემავალი E ლენტა, რომელიც დაყოფილია უჯრებად და
პოტენციურად შემოუსაზღვრელია ორივე მხრიდან. 2. სამუშაო ლენტა, ანუ მაღაზიური
მეხსიერების M ლენტა, რომელიც შემოსაზღვრულია ერთი მხრიდან (ჩავთვალოთ
მარცხნიდან). იგი ასევე დაყოფილია უჯრებად და პოტენციურად არაა შემოსაზღვრული
მეორე მხრიდან. 3. მმართველი A მოწყობილობა, რომელსაც აქვს ორი წამკითხველი.
შემავალი წამკითხველი კითხულობს სიმბოლოებს E შემავალ ლენტაზე. სამუშაო
წამკითხველს შეუძლია წაიკითხოს სიმბოლოები M სამუშაო ლენტაზე, აგრეთვე
მოახდინოს მასზე სიმბოლოების წაშლა და ჩაწერა.

შემავალი ლენტა. PD - ავტომატის მუშაობის დაწყებამდე შემავალ ლენტაზე


შეიძლება ჩაიწეროს რაიმე ინფორმაცია-თითოეული სიმბოლო თითოეულ უჯრაში. ამ
ინფორმაციის ჩასაწერად გამოიყენება შემავალი ალფავიტი { }
ამ ალფავიტს ემატება ერთეულოვანი სიმბოლო. შედეგად მივიღებთ

ერთეულოვანი სიმბოლო არ უნდა ავურიოთ ცარიელ სიმბოლოსთან, რომელიც


აღინიშნება B-თი. ჯაჭვი, რომელიც შედგება შემავალი ალფავიტისაგან, E ლენტაზე
ჩაიწერება ისე, რომ მარცხნივ და მარჯვნივ რჩება სიცარიელე. ჩაწერა ხორციელდება
მარცხნიდან მარჯვნივ.

სამუშაო ლენტა. ჩაწერა სამუშაო ლენტაზე წარმოებს თვით ავტომატის მიერ


სამუშაო ალფავიტის საშუალებით

{ }.

111
ეს ალფავიტი შეიძლება ჩავრთოთ - შიც. ალფავიტს მიუერთდება
ერთეულოვანი სიმბოლო და კიდევ ერთი სიმბოლო, რომელიც არ გამოიყენება
ავტომატის მიერ მისი მუშაობის დროს. მივიღებთ ალფავიტს ̅̅̅̅ { } { }

მმართველი მოწყობილობა. მას შეუძლია მიიღოს სასრული რაოდენობის


შიგა მდგომარეობა.

- ავტომატის ფუნქციონირება
PD -ავტომატის ფუნქციონირების აღსაწერად დაგვჭირდება შემდეგი ცნებები:

1. ̅̅̅̅̅ - -ზე განსაზღვრული ფუნქცია ისეთი, რომ

თუ

2. ავტომატის ფიზიკური მდგომარეობა არის

{ }

სამეული, სადაც არის E ლენტაზე ჩაწერილი სიმბოლო, -ავტომატის მდგომარეობა;


- სიმბოლო, რომელიც ჩაწერილია M-ზე.

ავტომატის სიტუაცია - ეს არის ან ავტომატის ფიზიკური სიტუაცია, ან სამეული,


მიღებული რაიმე ფიზიკური სიტუაციიდან ან (ან ორივე ერთად) სიმბოლოების
შეცვლით e სიმბოლოთი. სწორედ აქ მჟღავნდება PD- ავტომატის არადეტერმინირებული
ხასიათი: რაიმე მოცემულ სიტუაციაში ავტომატმა შეიძლება “დახუჭოს” ის “თვალი”,
რომლითაც იგი აღიქვამდა -ს, ან ის “თვალი”, რომლითაც აღიქვამდა -ს. მაშინ იგი
ამ “თვალით” “ხედავს” ერთეულოვან სიმბოლოს.

თუ ავტომატი იმყოფება { } ფიზიკურ სიტუაციაში, მაშინ იგი ერთდროულად


იმყოფება შემდეგ ოთხ სიტუაციაში:

,
,
,
.

ბრძანება არის სახის გამოსახულება, სადაც სიტუაციაა, --


მდგომარეობა, ხოლო აღნიშნავს ან -ს, ან -ს, ან ჯაჭვს ალფავიტში.

112
5. აბსტრაქტული PD -ავტომატი ეწოდება სასრული რაოდენობის სახის
ბრძანებებს. რადგანაც განსახილველი ავტომატები არ არიან დეტერმინირებული
ავტომატები, შეიძლება ბრძანებები იყოს თანხვედრილი მარცხენა ნაწილებით (ე.ი.
ერთნაირი სიტუაციებით). ახლა უკვე შეგვიძლია დავაზუსტოთ, თუ რა იგულისხმება
გამოთვლის პროცესის ქვეშ.

გამოთვლის პროცესი. გამოთვლა PD -ავტომატში მოიცემა ალფავიტში ჯაჭვით,


რომელიც ჩაწერილია შემავალ ლენტაზე და ორივე მხრიდან არის შემოსაზღვრული
ჰარით (ე.წ. „პრობელებით“). გამოთვლის დაწყების წინ მმართველი მოწყობილობა
იმყოფება საწყის მდგომარეობაში, ხოლო შემავალი წამკითხველი ხედავს შემავალი
ჯაჭვის ყველაზე მარცხენა სიმბოლოს. ამ დროს სამუშაო ლენტის ყველაზე მარცხენა
უჯრაში უნდა იყოს ჩაწერილი სიმბოლო და ამ უჯრას უნდა უყურებდეს სამუშაო
წამკითხველი.

მაშასადამე, გამოთვლა იწყება ფიზიკური სიტუაციით და მიმდინარეობს


შემდეგნაირად.

დავუშვათ, რომ PD -ავტომატი გამოთვლის რომელიმე ბიჯზე მოხვდა


სიტუაციაში. თუ ავტომატის პროგრამაში არაა ბრძანებები -მიმართ, მაშინ ავტომატი
გაჩერდება. თუ ასეთი ბრძანება ან ბრძანებები არსებობს, მაშინ ავტომატი ამ
ბრძანებებიდან ირჩევს ერთ-ერთს. ვთქვათ არჩეულია ბრძანება.

ამ ბრძანებასთან დაკავშირებით შემდეგი რამ ხდება. ა). მმართველი მოწყობილობა


გადადის მდგომარეობაში. ბ) თუ მოცემული სიტუაციის პირველი სიმბოლო არის ,
მაშინ შემავალი წამკითხველი E ლენტას უძრავს დატოვებს, ხოლო თუ პირველი
სიმბოლოა მაშინ წამკითხველი გადააადგილებს ლენტას ისე, რომ დაინახოს -ს
მარჯვნივ მყოფი უახლოესი სიმბოლო. გ) -ის მნიშვნელობისაგან დამოუკიდებლად
სამუშაო წამკითხველი ლენტასთან შემდეგნაირად მოქმედებს: თუ ,, მაშინ
გადავწიოთ ლენტა უფრო მარჯვნივ ერთი უჯრით, რომ წამკითხველი დავაყენოთ იმ
სიმბოლოს პირდაპირ , რომელიც წინამდებარე სიმბოლოს მარცხნივაა, წაიშალოს
წინამდებარე სიმბოლო; თუ , მაშინ ლენტა არ გადავაადგილოთ, არაფერი არ
ჩავწეროთ; თუ ჩავწეროთ მიმდევრობა უკანასკნელი სიმბოლოს
მარჯვნივ. გადავწიოთ ლენტა უჯრით მარცხნივ ისე, რომ წამკითხველი ხედავდეს
ჩაწერილი სიმბოლოებიდან ყველაზე მარჯვენას.

113
ენათა კლასი, დასაშვები PD-ავტომატში და
წარმოქმნილი PD-ავტომატის მიერ

ვაჩვენოთ, რომ ნებისმიერ გრამატიკაში შეიძლება ავაგოთ PD -ავტომატი,


რომლისთვისაც L(G) ენა დასაშვებია ან წარმოქმნილია მის მიერ.

განვიხილოთ G -გრამატიკა:

{ } { | }

აქსიომა

| |

ამ გრამატიკით ავაგოთ PD -ავტომატი. მისი შესასვლელი ̅̅̅ ალფავიტი იქნება -


ს დამატებული სიმბოლო. ̅̅̅̅ ალფავიტი იქნება გაერთიანება დამატებული σ
და სიმბოლოები. მისი მდგომარეობები იქნება [ ] [ ] [ ] [ ] სიმბოლოები. [0]
მდგომარეობა იქნება საწყისი. [1] მდგომარეობას ვუწოდოთ “წინასინტაქსური”, ხოლო
[ ]მდგომარეობებს –“სინტაქსური”.

ავტომატის ბრძანებები შეიცავს:

1. საწყის ბრძანებას [ ] [ ]

2. სინტაქსურ მდგომარეობაში გადასვლის ბრძანებებს

[ ] [ ]

ამ ბრძანებების რაოდენობა ემთხვევა სინტაქსურ მდგომარეობათა რაოდენობას (ე.ი. G


გრამატიკის დამხმარე სიმბოლოების რაოდენობას).

3. წარმოქმნის (ან დაშვების) ბრძანებები

[ ] [ ] ,

რომელთა რიცხვი ტოლია საწყისი გრამატიკების წესების რაოდენობისა.

4. სიმბოლოების წაკითხვის ან კოპირების ბრძანებები

( [ ] ) [ ] ,

რომელთა რიცხვი ტერმინალური სიმბოლოების ტოლია.


114
5. დამამთავრებელი ბრძანება

[ ] [ ] .

ავტომატის ფუნქციონირება ენის წარმოქმნისას

ვთქვათ ჩვენს ავტომატს მიცემული აქვს სწორი საწყისი პირობები. მაშინ იგი გადავა
[1] წინასინტაქსურ მდგომარეობაში, ჩაიწერს სამუშაო ლენტაზე აქსიომას და
დაიმახსოვრებს მას. ე.ი. გადადის შესაბამის სინტაქსურ მდგომარეობაში და
ამავდროულად წაშლის აქსიომას.

[ ] სინტაქსურ მდგომარეობაში ყოფნისას ავტომატი ირჩევს რაიმე წესს,


ჩაწერს მის მარჯვენა მხარეს სამუშაო ლენტაზე, დააყენებს წამკითხველს ისე, რომ იგი
ხედავდეს მის მიერ ჩაწერილ ბოლო სიმბოლოს და ბრუნდება [1] წინასინტაქსურ
მდგომარეობაში.

საზოგადოდ, თუ ავტომატი სამუშაო M ლენტაზე კითხულობს რაიმე წესის მარცხენა


ნაწილს, მაშინ იგი მას წაშლის, გადადის შესაბამის სინტაქსურ მდგომარეობაში, ჩაიწერს
M-ზე იმავე წესის მარჯვენა ნაწილს და, დაბრუნდება რა წინასინტაქსურ
მდგომარეობაში, დაინახავს მის მიერ M-ზე ჩაწერილ უკანასკნელ სიმბოლოს.

თუ ავტომატი M ლენტაზე კითხულობს ტერმინალურ სიმბოლოს, მაშინ იგი მას


წაშლის, წინასწარ მოახდენს რა მის კოპირებას E ლენტაზე.

პროცესი დამთავრდება, როდესაც ავტომატი მომდევნო კოპირების შემდეგ


დაინახავს M ლენტაზე ყველაზე მარცხენა σ სიმბოლოს. ცხადია, რომ აღწერილი
პროცესი ეკვივალენტურია -გრამატიკაში გამომდინარეობების აგებისა მიღებული
ტერმინალური სიმბოლოების კოპირებით (ცხადია, შებრუნებული მიმდევრობით).

ავტომატის ფუნქციონირება ენის დაშვებისას

ავტომატის ფუნქციონირება ამ შემთხვევაში გარანტირებულია PD - ავტომატის


“შებრუნებადობით”.

მაგალითი. ავაგოთ ზემოთაღწერილი წესის მიხედვით ენისათვის PD -


ავტომატი.

115
ვთქვათ გვაქვს - გრამატიკა { } { } ალფავიტებით და
წესებით.

რადგან ამ გრამატიკაში არის მხოლოდ ერთი დამხმარე სიმბოლო - S აქსიომა,


ამიტომ ჩვენს ავტომატს აქვს მხოლოდ ერთი წინასინტაქსური მდგომარეობა. მოცემული
გრამატიკის შესაბამისი ავტომატის პროგრამა მდგომარეობს შემდეგში:

1: [ ] [ ]

2: [ ] [ ]

[ ]
3: [ ] { [ ]
[ ]

[ ]
4: [ ] } [ ]
[ ]

5: [ ] [ ]

გრამატიკები, რომლებიც წარმოქმნიან PD - ავტომატისათვის


დასაშვებ ენებს

-გრამატიკების აგება, რომლებიც ქარმოქმნიან PD -ავტომატში დასაშვებ ენას,


ასევეა შესაძლებელი, ოღონდ მისი შესრულება უფრო რთული პროცესებითაა
შესაძლებელი. კერძოდ, ამისათვის საჭიროა ავტომატის ბრძანებების წინასწარი
“ნორმალიზაცია”.

მაშასადამე, გვაქვს შემდეგი თეორემა.

თეორემა. PD -ავტომატის მიერ წარმოქმნილი და მასში დასაშვები ენების კლასი


ემთხვევა -ენების კლასს.

სასრული ავტომატები და მათი კლასიფიკაცია მეხსიერების მიხედვით

სასრულ ავტომატებს გააჩნიათ მდგომარეობათა სასრული


სიმრავლე. მას აქვს წამკითხველის თავი და ლენტა, რომელიც გადაადგილდება ამ თავის
ქვეშ. ლენტა დაყოფილია უჯრებად. თითოეულ უჯრაში შეიძლება იყოს ერთი სიმბოლო

116
{ } ალფავიტიდან, სადაც ასრულებს ცარიელი სიმბოლოს როლს.
ავტომატის მდგომარეობებიდან გამოყოფილია ერთ-ერთი - და მას ეწოდება საწყისი
მდგომარეობა.
ავტომატის ფუნქციონირება შესაძლებელია წარმოვიდგინოთ შემდეგნაირად.
ლენტაზე ჩაიწერება ჯაჭვი და ვიგულისხმოთ, რომ ყველა უჯრა - ს მარჯვნივ
და მარცხნივ შევსებულია ცარიელი სიმბოლოთი. ავტომატი მუშაობას იწყებს
საწყისი მდგომარეობიდან. წაიკითხავს რა იმ სიმბოლოს, რომელსაც იგი ხედავს,
ავტომატი გადადის ახალ მდგომარეობაში და ლენტას გადასწევს მარცხნივ ერთი
უჯრით. ახალ მდგომარეობაში გადასვლა ხორციელდება ბრძანების
შესაბამისად, რომელთა რიცხვიც სასრულია. ბრძანების მარცხენა
მხარეს ეწოდება ავტომატის სიტუაცია, ხოლო მარჯვენა მხარე არის მდგომარეობა,
რომელშიდაც ავტომატი აღმოჩნდება შემდეგ ტაქტში (შესაბამისი ბრძანების
შესრულების შედეგად).
თუ ავტომატი აღმოჩნდება სიტუაციაში, რომელიც არ არის რაიმე
ბრძანების მარცხენა მხარე, მაშინ იგი გაჩერდება. თუ ჯაჭვზე გამოთვლების ჩატარების
შემდეგ ავტომატი დაუბრუნდება სიტუაციას, მაშინ იტყვიან, რომ ავტომატი
უშვებს (გამოიცნობს) ჯაჭვს. იმ ჯაჭვების ერთობლიობა, რომლებიც გამოიცნობა
მოცემული ავტომატის მიერ, შეადგენს იმ ენას, რომელიც გამოიცნობა მოცემული
ავტომატით. ავტომატებით გამოცნობილი ენების კლასი ემთხვევა ავტომატური ენების
კლასს.
მაგალითი. ქვემოთ მოყვანილია იმ სასრული ავტომატის ბრძანებათა სიმრავლე,
რომელიც გამოიცნობს { } ენას:

ჩვენ განვიხილეთ ავტომატების სამი კლასი: ტიურინგის მანქანა, მაღაზიური


მეხსიერების ავტომატები, სასრული ავტომატები.
ტიურინგის მანქანას თავის ლენტაზე განთავსებული აქვს ცარიელი უჯრების
უსასრულო რაოდენობა, რომელთა საშუალებითაც მას შეუძლია დაიმახსოვროს
სიმბოლოების უსასრულოდ ბევრი რაოდენობა.
სასრული ავტომატი, პირიქით, იყენებს სასრულ, უფრო მეტიც - ფიქსირებული
რაოდენობის მეხსიერებას და ლენტა ემსახურება მხოლოდ მონაცემების წაკითხვას (
მასზე დაწერა არ შეიძლება).

117
არსებობს აგრეთვე წრფივად შეზღუდული ავტომატები, რომელთაც შუალედური
მდგომარეობა უჭირავთ ტიურინგის მანქანასა და სასრულ ავტომატებს შორის: მათი
მეხსიერება ყოველთვის ფიქსირებული არ არის, მაგრამ არც შემოუსაზღვრელია: იგი
შემოსაზღვრულია მხოლოდ დასამუშავებელი ჯაჭვის სიგრძით. მაღაზიური
მეხსიერების ავტომატები კი ხასიათდებიან არა მეხსიერების, არამედ მათი გამოყენების
შემოსაზღვრულობით. მაგრამ ნებისმიერი მაღაზიური მეხსიერების ავტომატისათვის
შეიძლება აიგოს მისი ეკვივალენტური მაღაზიური მეხსიერების ავტომატი,
რომლისთვისაც გამოთვლებისათვის საჭირო სამუშაო ლენტის სიგრძე არ აღემატება
შემავალი ჯაჭვის სიგრძეს. ასეთი მაღაზიური მეხსიერების ავტომატი "თითქმის"
შეიძლება განვიხილოთ როგორც წრფივად შეზღუდული ავტომატების კერძო შემთხვევა
("თითქმის" იმიტომ, რომ მაღაზიური მეხსიერების ავტომატს აქვს განცალკევებული
შემავალი ლენტა, რომელსაც მოკლებულია წრფივად შეზღუდული ავტომატი).

მაშასადამე, გამოთვლებისათვის საჭირო მეხსიერების მოცულობის მიხედვით


ავტომატების კლასიფიკაცია ასე გამოიყურება:

ტიურინგის წრფ.შეზღ.
მანქანების ავტომატების
კლასი კლასი

სასრული
ავტომატების
კლასი

განმარტება 10.1.1. მაღაზიური მეხსიერების ავტომატი (PD - ავტომატი,

pushdown automaton) - არის ექვსეული , სადაც ,


, და - სასრული სიმრავლეებია, , და

118
აქ Q - მდგომარეობათა სიმრავლეა, - შემავალი ალფავიტი, - მაღაზიური
მეხსიერების ალფავიტი (stack alphabet), - გადასვლების სიმრავლე (transition
relation), I ელემენტები საწყისი მდგომარეობებია, F - დამამთავრებელი
მდგომარეობები.

მაგალითი 10.1.2. ვთქვათ Q = {1,2}, , ,

, . მაშინ PD - ავტომატია.

შენიშვნა 10.1.3. PD - ავტომატები შეიძლება გამოვსახოთ მდგომარეობათა დიაგრამის


სახით. დიაგრამაზე თითოეული მდგომარეობა წრით აღინიშნება, ხოლო გადასვლები -
ისრით. თითოეული საწყისი მდგომარეობა გამოიცნობა მასში შემავალი მოკლე სიგრძის
ისრით. თითოეული დამამთავრებრელი მდგომარეობა აღინიშნება ორმაგი წრით.
ისარი აღნიშვნით, რომელიც მიდის p - დან q - ში, გვიჩვენებს,
რომ წარმოადგენს PD - ავტომატის გადასვლას.

მაგალითი 10.1.4. ქვემოთ მოყვანილია PD - ავტომატის დიაგრამა 10.1.2


მაგალითიდან.

11. სინტაქსური გარჩევა


11.1. დაღმავალი გარჩევა

განმარტება 11.1.1. w სიტყვის გამოყვანის ხის პოვნის პროცესს მოცემულ


კონტექსტურად-თავისუფალ გრამატიკაში ეწოდება სინტაქსური გარჩევა ან სინტაქსური
ანალიზი (parsing).

განმარტება 11.1.2. კონტექსტურად-თავისუფალ გრამატიკაში


მარცხენა გამოყვანის პროტოკოლი ვუწოდოთ ამ გამოყვანაში გამოყენებული წესების
მიმდევრობას. ფორმალურად

119
მარცხენა გამოყვანის პროტოკოლს წარმოადგენს მიმდევრობა

სადაც ყოველი i < n -თვის,


თუ და ზოგიერთი ,
, , -თვის, მაშინ Ai+1 = B და .

მაგალითი 11.1.3. განვიხილოთ კონტექსტურად-თავისუფალ გრამატიკა

გამოყვანის ხეს

შეესაბამება მარცხენა გამოყვანა

ამ გამოყვანის პროტოკოლია მიმდევრობა

ლემა 11.1.4. განსხვავებულ მარცხენა გამოყვანებს ერთსა და იმავე კონტექსტურად-


თავისუფალ გრამატიკაში შეესაბამება განსხვავებული პროტოკოლები.

შენიშვნა 11.1.5. მარცხენა გამოყვანის პროტოკოლს კონტექსტურად-თავისუფალ


გრამატიკაში წარმოადგენს შესაბამისი გამოყვანის ხის ბუნებრივი აღწერა პრეფიქსური
შემოვლით (preorder traversal). (მოწესრიგებული ხის პრეფიქსური შემოვლისას პირველ
რიგში ეწვევა ამ ხის ფუძეს, შემდეგ სრულდება პრეფიქსური შემოვლა ფუძის პირველ
უშუალო შტამომავალზე, შემდეგ კი მეორეზე და ა.შ.)

მაგალითად, მარცხენა გამოყვანის პროტოკოლის პროცესი 11.1.3 მაგალითიდან


გამოსახულია ქვემოთ.

120
განმარტება 11.1.6. მარცხენა გარჩევა (left parse) w სიტყვისა კონტექსტურად-
თავისუფალ G გრამატიკაში ეწოდება w სიტყვის ნებისმიერ მარცხენა გამოყვანის
პროტოკოლს G გრამატიკაში.

მაგალითი 11.1.7. მარცხენა გარჩევას სიტყვისა

aceaacecbecbb

გრამატიკაში 11.1.3 მაგალითიდან წარმოადგენს მიმდევრობა

განმარტება 11.1.8. w სიტყვის მარცხენა გარჩევის პოვნის პროცესს მოცემულ


კონტექსტურად-თავისუფალ G გრამატიკაში ეწოდება დაღმავალი გარჩევა (top-down
parsing).

განმარტება 11.1.9. გრამატიკის სენტენციალური ფორმა


(sentential form) ეწოდება ნებისმიერ სიტყვას ალფავიტში, გამოყვანილი
საწყისი S სიმბოლოდან.

მაგალითი 11.1.10. სიტყვები S, aSeaceSbb, aceaacecbecbb გრამატიკის


სენტენციალური ფორმებია 11.1.3. მაგალითიდან.

121
11.2. აღმავალი გარჩევა

განმარტება 11.2.1 კონტექსტურად-თავისუფალ გრამატიკაში


მარჯვენა გამოყვანის პროტოკოლი ვუწოდოთ ამ გამოყვანაში გამოყენებული წესების
შებრუნებულ მიმდევრობას. ფორმალურად

მარჯვენა გამოყვანის პროტოკოლს წარმოადგენს მიმდევრობა

სადაც ყოველი i<n -თვის,


თუ და ზოგიერთი ,
, , -თვის, მაშინ An-i = B და .

მაგალითი 11.2.2. განვიხილოთ კონტექსტურად-თავისუფალი გრამატიკა

და გამოყვანის ხე

11.1.3. მაგალითიდან. გამოყვანის ამ ხეს შეესაბამება მარჯვენა გამოყვანა

ამ გამოყვანის პროტოკოლია მიმდევრობა

ლემა 11.2.3. ერთსა და იმავე კონტექსტურად-თავისუფალ გრამატიკაში განსხვავებულ


მარჯვენა გამოყვანებს შეესაბამება განსხვავებული პროტოკოლები.

122
მარჯვენა გამოყვანის პროტოკოლს კონტექსტურად-თავისუფალ გრამატიკაში
წარმოადგენს შესაბამისი გამოყვანის ხის ბუნებრივი აღწერა პოსტსუფიქსური
შემოვლით (postorder traversal). (მოწესრიგებული ხის პოსტსუფიქსური შემოვლა
შეიძლება განვმარტოთ რეკურსიულად შემდეგნაირად: პირველად სრულდება
პოსტსუფიქსური შემოვლა ფუძის პირველი უშუალო შთამომავლისა, შემდეგ მეორისა
და ა.შ., ბოლოს კი ეწვევა ხის ფუძეს.)

მაგალითად, 11.2.2 მაგალითიდან მარჯვენა გამოყვანის პროტოკოლი იძლევა


გამოყვანის ხის შემდეგ კონსტრუირებას, გამოსახულს ქვემოთ.

განმარტება 11.2.5. w სიტყვის მარჯვენა გარჩევა (right parse) კონტექსტურად-


თავისუფალ G გრამატიკაში ეწოდება w სიტყვის ნებისმიერ მარჯვენა გამოყვანის
პროტოკოლს G გრამატიკაში.

მაგალითი 11.2.6. მარჯვენა გარჩევა aceaacecbecbb სიტყვისა გრამატიკაში 11.2.2


მაგალითიდან არის მიმდევრობა

განმარტება 11.2.7. w სიტყვის მარჯვენა გარჩევის პოვნის პროცესს მოცემულ


კონტექსტურად-თავისუფალ G გრამატიკაში ეწოდება აღმავალი გარჩევა (bottom-up
parsing).

კითხვარი თვითშემოწმებისათვის

1. რა არის ალგორითმი?
2. რა კავშირია ალგორითმებსა და ფორმალურ გრამატიკებს შორის?
3. მოკლედ დაახასიათეთ ტიურინგის მანქანის შემადგენელი ნაწილები.
123
4. მოკლედ ჩამოაყალიბეთ ტიურინგის მანქანის მუშაობის პრინციპი.
5. მოკლედ დაახასიათეთ მაღაზიური მეხსიერების ავტომატის შემადგენელი
კომპონენტები.
6. როგორი ენათა კლასია დასაშვები მაღაზიური მეხსიერების ავტომატში და როგორი
ენათა კლასი წარმოიქმნება მაღაზიური მეხსიერების ავტომატის მიერ?
7. მოიყვანეთ სასრული ავტომატების კლასიფიკაცია მეხსიერების მოცულობის
მიხედვით.
8. რა არის სინტაქსური გარჩევა?
9. რას ეწოდება კონტექსტურად-თავისუფალ გრამატიკაში მარცხენა გამოყვანის
პროტოკოლი?
10. რას ეწოდება კონტექსტურად-თავისუფალ გრამატიკაში დაღმავალი გარჩევა (top-down
parsing)?
11. რას ეწოდება გრამატიკის სენტენციალური ფორმა (sentential form)?
12. რას ეწოდება კონტექსტურად-თავისუფალ გრამატიკაში მარჯვენა გამოყვანის
პროტოკოლი?
13. რას ეწოდება სიტყვის მარჯვენა გარჩევა (right parse) კონტექსტურად-თავისუფალ
გრამატიკაში?
14. რას ეწოდება კონტექსტურად-თავისუფალ გრამატიკაში აღმავალი გარჩევა (bottom-
up parsing)?

12. ალგორითმული პრობლემები

ნაწილობრივი ფუნქცია. არგუმენტის ფუნქციას ეწოდება ნაწილობრივი,


თუ იგი განსაზღვრულია არგუმენტის ნაწილისათვის. ფუნქციას, რომელიც არაა
ნაწილობრივი, ეწოდება სრული.

მაგალითი. ნამდვილი რიცხვების შებრუნების ფუნქცია ⁄


ნაწილობრივი ფუნქციაა. რომ მივუთითოთ, რომ ფუნქცია ნაწილობრივია,
გამოიყენება გადახაზული ისარი: I . ჩვეულებრივი ისარი კი
აღნიშნავს, რომ ფუნქცია სრულია. ⁄ ფუნქციის განსაზღვრის არეა
{ }

განმარტება 12.1.1. ვთქვათ f - ნაწილობითი ფუნქციაა - დან -ში. ტიურინგის


დეტერმინირებული მანქანა გამოითვლის (computes)
f ფუნქციას მაშინ და მხოლოდ მაშინ, როცა ყოველი სიტყვისათვის:

124
1) თუ f(w) არაა განსაზღვრული, მაშინ არ არსებობს ისეთი ,
, , , , რომ

2) თუ f(w)=z, მაშინ ზოგიერთი , , და -თვის


სრულდება პირობა

განმარტება12.1.2. ნაწილობრივ ფუნქციას -დან -ში ეწოდება გამოთვლადი, თუ


არსებობს ტიურინგის დეტერმინირებული მანქანა, რომელიც გამოითვლის ამ ფუნქციას.

შენიშვნა 12.1.3. ჩერჩ-ტიურინგის თეზისი (ზოგჯერ ჩერჩის თეზისი) ეწოდება შემდეგ


არაფორმალურ მტკიცებულებას: ინტიუტიური აზრით ნებისმიერი გამოთვლადი
ნაწილობრივი ფუნქციისათვის -დან -ში, არსებობს ტიურინგის მანქანა,
რომელიც გამოითვლის ამ ფუნქციას.

12.2. დაშვებადი და ჩამოთვლადი სიმრავლეები

განმარტება 12.2.1. L ენა ალფავიტზე დაშვებადი ან რეკურსიულია (decidable,


recursive), თუ არსებობს ტიურინგის დეტერმინირებული მანქანა, რომელიც დაუშვებს
L ენას.

განმარტება 12.2.2. ტიურინგის მანქანის მიერ დაშვებადი ენა არის ენა, რომელიც
შედგება ტიურინგის მანქანის მიერ დაშვებადი ყველა სიტყვებისაგან.

განმარტება 12.2.3. ენას ეწოდება ჩამოთვლადი ( რეკურსიულად


ჩამოთვლადი, ნახევრადდაშვებადი, recursively enumerable), თუ არსებობს ტიურინგის
დეტერმინირებული მანქანა, რომელიც დაუშვებს ამ ენას.
(ამ განმარტებაში შესაძლებელია ტიურინგის მანქანის დეტერმინირებულობის
უკუგდება).

თეორემა 12.2.4. ყოველი დაშვებადი ენა ჩამოთვლადია.

125
12.3. მასიური ამოცანები

განმარტება 12.3.1. მასიური ამოცანები (problem) ეწოდება "ერთგვაროვან"


ინდივიდუალურ ამოცანათა (instance) უსასრულო სერიას, რომელთაგანაც თითოეულ
მათგანს გააჩნია განსაზღვრული პასუხი. თითოეულ მასიურ ამოცანასთან
დაკავშირებულია კოდირების რაღაც ფიქსირებული სქემა (encoding scheme), რომელიც
ინდივიდუალურ ამოცანებს ასახავს მათ კოდში - სიტყვა რომელიმე ფიქსირებულ
ალფავიტში. ამავე დროს მოითხოვება, რომ კოდების სიმრავლე ყველა
ინდივიდუალური ამოცანებისა იყოს დაშვებადი.

განმარტება 12.3.2. გამოცნობის ამოცანა (decision problem) ეწოდება მასიურ ამოცანას,


რომელშიდაც ინდივიდუალური ამოცანების პასუხები შეიძლება იყოს მხოლოდ "კი" და
"არა" (ე.ი. არსებობს მხოლოდ ორი შესაძლო პასუხი).

მაგალითი 12.3.3. დავაფიქსიროთ რაიმე ალფავიტი. განვიხილოთ შემდეგი


ერთტიპიური ინდივიდუალური ამოცანები: მოცემულია ორი
სიტყვა და , აუცილებელია გავარკვიოთ, წარმოადგენს თუ არა
x სიტყვა y სიტყვის ქვესიტყვას.

ვთქვათ # ახალი სიმბოლოა, რომელიც არ ეკუთვნის ალფავიტს. კონკრეტული


x და y სიტყვების ინდივიდუალური ამოცანის კოდად ჩავთვალოთ
x#y სიტყვა ალფავიტში.

ეს მასიური ამოცანა წარმოადგენს გამოცნობის ამოცანას.

განმარტება 12.3.4. ალგორითმული პრობლემა - პრობლემა, რომელშიდაც მოითხოვება


მასიური ამოცანის ამოხსნისათვის ალგორითმის პოვნა. თუ ასეთი ალგორითმი
არსებობს, მაშინ მოცემულ პრობლემას ეწოდბა ალგორითმულად გადაჭრადი ან
უბრალოდ გადაჭრადი (decidable, solvable), წინააღმდეგ შემთხვევაში მას ეწოდება
ალგორითმულად გადაუჭრადი (undecidable, unsolvable).

შენიშვნა 12.3.5. ალგორითმული პრობლემა, რომელიც ეხება გამოცნობის რომელიმე


ამოცანას, ალგორითმულად გადაჭრადია მაშინ და მხოლოდ მაშინ, როცა გადაჭრადია
ინდივიდუალური ამოცანების კოდების სიმრავლე "კი" პასუხით.

12.4. 0 ტიპის ( წარმომქმნელი) გრამატიკა

განმარტება 12.4.1. წარმომქმნელი გრამატიკა ნორმალურ ფორმაში - ეს წარმომქმნელი

126
გრამატიკაა, რომელშიც თითოეულ წესს აქვს სახე ,

ან , სადაც , , , .

თეორემა 12.4.2. ყოველი წარმომქმნელი გრამატიკა ეკვივალენტურია რაიმე


წარმომქმნელი გრამატიკისა ნორმალურ ფორმაში.

12.5. პოსტის შესაბამისობის პრობლემა

განმარტება 12.5.1. პოსტის სისტემის შესაბამისობის ალფავიტზე ეწოდება


დალაგებულ სასრულ წყვილს, სადაც და

ყველა i -თვის.

შენიშვნა 12.5.2. სისტემას ზოგჯერ გამოსახავენ


ასეთი სახით

განმარტება 12.5.3. პოსტის ((x1,...,xn),(y1,...,yn)) სისტემის შესაბამისობის


გადაწყვეტილება (შესაბამისობა - match) ეწოდება ინდექსების არაცარიელ
სიმრავლეს, რომლებიც აკმაყოფილებენ პირობას

სადაც ყოველი j -თვის.

მაგალითი 12.5.4. ვთქვათ . განვიხილოთ პოსტის სისტემის


შესაბამისობა

(2,1,3,2,2) მიმდევრობა ამ სისტემის ამონახსნია, რადგან

განმარტება 12.5.6. პოსტის შესაბამისობის პრობლემა (Post correspondence problem)


ეწოდება ალგორითმის პოვნის პრობლემას, რომელიც პოსტის თითოეული
სისტემისათვის გაარკვევს არსებობს თუ არა ამ სისტემის ამონახსნი.

127
თეორემა 12.5.7. ვთქვათ . მაშინ არ არსებობს ალგორითმი, რომელიც
საშუალებას მოგვცემდა დაგვედგინა ალფავიტზე პოსტის ნებისმიერი სისტემის
შესაბამისობის შესახებ დაგვედგინა, აქვს თუ არა მას ამოხსნა. (სხვა სიტყვებით რომ
ვთქვათ, პოსტის შესაბამისობის პრობლემა გადაუჭრადია). დამტკიცება შესაძლებელია
იხილოთ [ХопМот, 9.4] -ში.

13. ალგორითმულად გადაჭრადი პრობლემები

13.1. შეუმოკლებელი გრამატიკები

განმარტება 13.1.1. წარმომქმნელ გრამატიკას ეწოდება

შეუმოკლებელი (noncontracting), თუ ყოველი წესისათვის

სრულდება უტოლობა.

თეორემა 13.1.2. არსებობს ალგორითმი, რომელიც საშუალებას იძლევა ნებისმიერი


შეუმოკლებელი G გრამატიკით და w სიტყვით გავარკვიოთ, სამართლიანია თუ არა,
რომ .

თეორემა 13.1.3. ყოველი კონტექსტური გრამატიკა არის შეუმოკლებელი. ყოველი


შეუმოკლებელი გრამატიკა ეკვივალენტურია რაიმე კონტექსტური გრამატიკისა.

მაგალითი 13.1.4. გრამატიკა

ეკვივალენტურია კონტექსტური გრამატიკისა 1.5.4 მაგალითიდან.

13.2. წრფივად შეზღუდული ავტომატები

განმარტება 13.2.1. ტიურინგის მანქანას ეწოდება წრფივად


შეზღუდული ავტომატი (linear bounded automaton), თუ არ არსებობს ისეთი
, , , და , რომ
და |xay| > |b0wb0|.
128
თეორემა 13.2.2. L ენა, რომელიც არ შეიცავს ცარიელ სიტყვას, წარმოიქმნება რაიმე
შეუმოკლებელი გრამატიკით მხოლოდ იმ შემთხვევაში, როცა არსებობს წრფივად
შეზღუდული ავტომატი ( ზოგად შემთხვევაში არადეტერმინირებული), რომელიც
დაუშვებს L ენას.

შენიშვნა 13.2.3. უცნობია, სამართლიანია თუ არა ამ თეორემის ანალოგი


დეტერმინირებული წრფივად შეზღუდული ავტომატებისათვის.

თეორემა 13.2.4. ენათა კლასი, წარმოქმნილი შეუმოკლებელი გრამატიკებით, ე.ი.


კონტექსტური ენების კლასი, ჩაკეტილია გაერთიანების, თანაკვეთის და დამატების
ოპერაციების მიმართ.

ჩაკეტილობა დამატების ოპერაციის მიმართ 1987 წელს ერთმანეთისაგან


დამოუკიდებლად დაამტკიცა ნეილ იმერმანმა (Neil Immerman) და რობერტ
სელეპჩენიმ (Robert Szelepcs) (იხ. [Imm, Sze]). ჩაკეტილობა გაერთიანების ოპერაციის
მიმართ ცხადია, ხოლო თანაკვეთა გამოისახება გაერთიანებისა და დამატების
საშუალებით.

13.3. სიტყვის გამოყვანის პრობლემა

თეორემა 13.3.1. არსებობს ალგორითმი, რომელიც საშუალებას იძლევა ნებისმიერი


კონტექსტურად - თავისუფალი G გრამატიკით გაირკვეს სამართლიანია თუ არა რომ
.

თეორემა 13.3.2. არსებობს ალგორითმი, რომელიც საშუალებას იძლევა ნებისმიერი


კონტექსტურად - თავისუფალი G გრამატიკით და w სიტყვით გაირკვეს სამართლიანია
თუ არა რომ .

13.4. ენის სიცარიელის პრობლემა

თეორემა 13.4.1. არსებობს ალგორითმი, რომელიც საშუალებას იძლევა ნებისმიერი


კონტექსტურად - თავისუფალი G გრამატიკით გაირკვეს სამართლიანია თუ არა რომ
.

დამტკიცება. G გრამატიკიდან საწყისი სიმბოლოს გარდა მოვახდინოთ ყველა


არასასარგებლო სიმბოლოს ელიმინაცია. თუ მიღებული გრამატიკა შეიცავს ერთ წესს
მაინც, მაშინ

129
13.5. ენის უსასრულობის პრობლემა

თეორემა 13.5.1. არსებობს ალგორითმი, რომელიც საშუალებას იძლევა ნებისმიერი


კონტექსტურად - თავისუფალი G გრამატიკით გაირკვეს უსასრულოა თუ არა L(G) ენა.

მაგალითი 13.5.2. განვიხილოთ კონტექსტურად - თავისუფალი G გრამატიკა 8.1.4.


მაგალითიდან. იმისათვის, რომ გავიგოთ არის თუ არა L(G)ენა უსასრულო, პირველ
რიგში გრამატიკა გავწმინდოთ უსარგებლო სიმბოლოებისაგან. შემდეგ კი ყველა -
წესებისაგან. რადგანაც და , შეიძლება ყველგან W შევცვალოთ Z -
ით. მიიღება შემდეგი გრამატიკა

რომელიც ეკვივალენტურია საწყისი G გრამატიკისა. ცხადია, რომ ეს გრამატიკა არ


შეიცავს "რეკურსიულ" არატერმინალურ სიმბოლოებს. შესაბამისად, L(G) ენა
სასრულია.

13.6. სასრული ავტომატების ეკვივალენტობის პრობლემა

თეორემა 13.6.1. არსებობს ალგორითმი, რომელიც საშუალებას იძლევა ნებისმიერი ორი


მარჯვენა წრფივი G1და G2 გრამატიკით გაირკვეს, სამართლიანია თუ არა,
რომ .

თეორემა 13.6.2. არსებობს ალგორითმი, რომელიც საშუალებას იძლევა ნებისმიერი ორი


მარჯვენა წრფივი G1და G2 გრამატიკით გაირკვეს, სამართლიანია თუ არა, რომ L(G1) =
L(G2).

130
14. ალგორითმულად გადაუჭრადი პრობლემები

14.1. კონტექსტურად - თავისუფალი ენების თანაკვეთა

განმარტება 14.1.1. განვიხილოთ ალფავიტი.


ვთქვათ , სადაც ყველა i- თვის.
ავღნიშნოთ -ით წრფივი გრამატიკა, სადაც

ავღნიშნოთ - ით ენა, წარმოქმნილი გრამატიკით.

ლემა 14.1.2. ენა არაცარიელია მაშინ და მხოლოდ მაშინ, როცა პოსტის


შესაბამისობის სისტემას გააჩნია ამონახსნი.

მაგალითი 14.1.3. განვიხილოთ პოსტის შესაბამისობის სისტემა

(ე.ი. n = 2, და ). ამ სისტემის ამონახსნებს


წარმოადგენს (1, 1, 2), (1, 1, 2, 1, 1, 2) მიმდევრობები და ა.შ.
ადვილადშეიძლება დავრწმუნდეთ, რომ

თეორემა 14.1.4. ვთქვათ . მაშინ არ არსებობს ალგორითმი, რომ ნებისმიერი


G1 და G2 კონტექსტურად- თავისუფალი გრამატიკებით ალფავიტზე დავადგინოთ,
სამართლიანია თუ არა, რომ .

ლემა 14.1.5. ენა უსასრულოა მაშინ და მხოლოდ მაშინ, როცა პოსტის


შესაბამისობის სისტემას გააჩნია ამონახსნი.

თეორემა 14.1.6. ვთქვათ . მაშინ არ არსებობს ალგორითმი, რომ ნებისმიერი


G1 და G2 კონტექსტურად- თავისუფალი გრამატიკებით ალფავიტზე დავადგინოთ,
სამართლიანია თუ არა, რომ .

131
14.2. ცალსახობის პრობლემა

თეორემა 14.2.1. ვთქვათ . მაშინ არ არსებობს ალგორითმი, რომელიც


საშუალებას მოგვცემს ნებისმიერი G კონტექსტურად- თავისუფალი
გრამატიკით ალფავიტზე დავადგინოთ, არის თუ არა G გრამატიკა ცალსახა.

14.3. კონტექსტურად - თავისუფალი ენის დამატება

ლემა 14.3.1. განვიხილოთ ალფავიტი. ენა კონტექსტურად-


თავისუფალი ენაა ნებისმიერი -თვის.

მაგალითი 14.3.2. ვთქვათ .


მაშინ ენა ალფავიტზე წარმოიქმნება შემდეგი
კონტექსტურად-თავისუფალი გრამატიკით:

შევნიშნოთ, რომ ნებისმიერი i -თვის.

უფრო მეტიც, ენა წრფივ ენას წარმოადგენს.

132
განმარტება 14.3.4. ვთქვათ ,
, , სადაც და ყველა i- თვის.

ავღნიშნოთ - ით ენა.

ლემა 14.3.5. ენა კონტექსტურად - თავისუფალია ნებისმიერი და -თვის.

დამტკიცება. .

ლემა 14.3.6. ენის დამატება არაცარიელია მაშინ და მხოლოდ მაშინ, როცა


პოსტის შესაბამისობის სისტემას გააჩნია ამონახსნი.

თეორემა 14.3.7. ვთქვათ . მაშინ არ არსებობს ალგორითმი, რომელიც


საშუალებას მოგვცემს ნებისმიერი G კონტექსტურად- თავისუფალი
გრამატიკით ალფავიტზე დავადგინოთ, სამართლიანია თუ არა, რომ

თეორემა 14.3.8. ვთქვათ . მაშინ არ არსებობს ალგორითმი, რომ ნებისმიერი


G1 და G2 კონტექსტურად- თავისუფალი გრამატიკებით ალფავიტზე დავადგინოთ,
სამართლიანია თუ არა, რომ L(G1) = L(G2).

თეორემა 14.3.9. ვთქვათ . მაშინ არ არსებობს ალგორითმი, რომ ნებისმიერი


G1 და G2 კონტექსტურად- თავისუფალი გრამატიკებით ალფავიტზე დავადგინოთ,
სამართლიანია თუ არა, რომ .

ლემა 14.3.10. ენის დამატება უსასრულოა მაშინ და მხოლოდ მაშინ, როცა


პოსტის შესაბამისობის სისტემას გააჩნია ამონახსნი.

თეორემა 14.3.11. ვთქვათ . მაშინ არ არსებობს ალგორითმი, რომელიც


საშუალებას მოგვცემს ნებისმიერი G კონტექსტურად- თავისუფალი

გრამატიკით ალფავიტზე დავადგინოთ, არის თუ არა სიმრავლე


უსასრულო.

133
14.4. ენის ავტომატურობის პრობლემა

ლემა 14.4.1. ვთქვათ ,


, სადაც , და ყველა i-თვის. მაშინ
ენა ავტომატურია მხოლოდ იმ შემთხვევაში, როცა პოსტის შესაბამისობის
სისტემას არ გააჩნია ამონახსნი.

თეორემა 14.4.2. ვთქვათ . მაშინ არ არსებობს ალგორითმი, რომელიც


საშუალებას მოგვცემს ნებისმიერი G კონტექსტურად - თავისუფალი
გრამატიკით ალფავიტზე დავადგინოთ, არის თუ არა L(G) ენა ავტომატური ენა.

14.5. კონტექსტურად თავისუფლების პრობლემა

განმარტება 14.5.1. ვთქვათ ,


, , სადაც და ყველა i -თვის.

ავღნიშნოთ -ით ენა.

ლემა 14.5.2. ენა კონტექსტურად - თავისუფალია ნებისმიერი და -თვის.

ლემა14.5.3. განვიხილოთ ალფავიტი.

ვთქვათ და , სადაც
, და ყველა i -

თვის. მაშინ ენა კონტექსტურად - თავისუფალია


მხოლოდ იმ შემთხვევაში, როცა პოსტის შესაბამისობის სისტემას არ გააჩნია
ამონახსნი.

თეორემა 14.5.4. ვთქვათ . მაშინ არ არსებობს ალგორითმი, რომ ნებისმიერი


G1 და G2 კონტექსტურად- თავისუფალი გრამატიკებით ალფავიტზე დავადგინოთ,

არის თუ არა ენა კონტექსტურად- თავისუფალი ენა.

134
თეორემა 14.5.6. ვთქვათ . მაშინ არ არსებობს ალგორითმი, რომ ნებისმიერი G
კონტექსტურად- თავისუფალი გრამატიკით ალფავიტზე დავადგინოთ, არის თუ არა

ენა კონტექსტურად- თავისუფალი ენა.

თეორემა 14.5.8. ვთქვათ . მაშინ არ არსებობს ალგორითმი, რომ ნებისმიერი G


კონტექსტურად- თავისუფალი გრამატიკით ალფავიტზე დავადგინოთ, არის თუ არა
L(G) ენა კონტექსტურად- თავისუფალი ენა.

კითხვარი თვითშემოწმებისათვის

1. როგორ ფუნქციას ეწოდება ნაწილობრივი ფუნქცია?


2. რა შემთხვევაში ეწოდება ნაწილობრივ ფუნქციას გამოთვლადი?
3. ჩამოაყალიბეთ ჩერჩ-ტიურინგის თეზისი.
4. როგორ ენას ეწოდება დაშვებადი ანუ რეკურსიული (decidable, recursive) რაიმე
ალფავიტზე?
5. როგორ ამოცანებს ეწოდება მასიური ამოცანები?
6. როგორ მასიურ ამოცანებს ეწოდება გამოცნობის ამოცანა (decision problem)?
7. რა იგულისხმება ალგორითმულ პრობლემაში?
8. როგორ პრობლემას ეწოდება ალგორითმულად გადაჭრადი? ალგორითმულად
გადაუჭრადი?
9. როდისაა ალგორითმულად გადაჭრადი გამოცნობის რომელიმე ამოცანა?
10. როგორი სახე აქვს წარმომქმნელ გრამატიკას ნორმალურ ფორმაში?
11. რას ეწოდება პოსტის შესაბამისობის პრობლემა?
12. ჩამოაყალიბეთ ალგორითმულად გადაჭრადი პრობლემები.
13. ჩამოაყალიბეთ ალგორითმულად გადაუჭრადი პრობლემები.

დანართი
ენები და დაპროგრამების სისტემები
დაპროგრამების ენები მიეკუთვნებიან ფორმალურ ენათა კლასს. მათი
დანიშნულებაა მონაცემთა (ინფორმაციის) აღწერა და მათი დამუშავება გამომთვლელ
მანქანაზე. დაპროგრამების ენების თეორიულ საფუძვლებს შეადგენენ ალგორითმული
135
სისტემები (რეკურსიული ფუნქციები, ნორმალური ალგორითმები და სხვ.) რომელთა
დანიშნულებაცაა ალგორითმების აღწერა.
პირველი დაპროგრამების ენა იყო მანქანური ენები, რომლებიც ძალიან დაბალი
დონის იყო. მათი დამახასიათებელი თავისებურება მდგომარეობდა ბრძანებების
ციფრულ კოდირებაში. ამიტომ მანქანურ ენაში არ არსებობდა განსხვავება მონაცემების
სიგა წარმოდგენასა და ბრძანებებისა, რომელთა საშუალებითაც აღიწერებიან
პროგრამები. უფრო მაღალი დონის ენებში ასეთი თავისებურება აღარაა.
განასხვავებენ დაპროგრამების ენების რამდენიმე დონეს, რომელთა შორისაა
ძირითადად მანქანურად-ორიენტირებული (ავტოკოდი), პროცედურულად
ორიენტირებული, პრობლემურად-ორიენტირებული ენები და საერთო დანიშნულების
ენები.
ავტოკოდები, (ანუ ენები ერთი-ერთზე [1:1]) გამოიყენება ბრძანებათა
მისამართებისა და ოპერაციათა კოდების შეცვლით მათი სიმბოლური აღნიშვნით,
ხოლო უფრო განვითარებულ (მაკროენებში) – გამომთვლელ მანქანებში ელემენტარული
ოპერაციების გაფართოებისათვის.
სიმბოლური კოდირების ენებმა გამოყენება ჰპოვეს მომდევნო თაობის მანქანებში,
რამაც გაამარტივა პროგრამირების პროცესი მეხსიერების განაწილების ავტომატიზაციის
ხარჯზე. სიმბოლური კოდირების ენები საბაზო ენებია ოპერაციულ სისტემებში. მათ
გამოიყენებენ პროგრამების აწყობაში, ამიტომაც მათ ასევე უწოდებენ ასემბლერულ
ენებს ანუ ამწყობ ენებს.
ამოცანების სპეციფიკამ განაპირობა შექმნილიყო პროცედურულად
ორიენტირებული ენები. ამ ენების განმასხვავებელი თავისებურება მდგომარეობს იმ
კლასის ობიექტების გამოყოფაში, რომლებიც ექვემდებარებიან დამუშავებას, რთული
გამოსახულებების (არითმეტიკული, ბულის, ტექსტური და სხვ.) გამოყენებაში,
ოპერატორებში, რომლებიც უზრუნველყოფენ პროგრამების ჩაწერის მოხერხებულობას
(ფუნქციების, ციკლური გამოთვლების, პროცედურების და სხვ.)
დაპროგრამების ენებს შორის, რომლებიც ორიენტირებულია გამოთვლითი და
სამენიერო ამოცანების კლასზე, უფრო ფართო გავრცელება ჰპოვა ენამ “ფორტრანმა”.
1960 წლისათვის არსებობდა ასზე მეტი სხვადასხვა ორიენტაციის დაპროგრამების
ენები და სისტემები. ამავე წელს შეიქმნა საერთაშორისო დაპროგრამების ენა ალგოლ-
60. პროგრამირებაში საერთო იდეების განვითარებაში არსებითი გავლენა მოახდინა
ალგოლ-60-ის სინტაქსის ფორმალურმა აღწერამ კონტექსტურად თავისუფალი ენების
საშუალებით.
იმ ენებს შორის, რომლებიც ეკონომიკური ინფორმაციის დასამუშავებლადაა
განუთვნილი, მთავარი ადგილი უჭირავს კობოლს. ენათა კლასს, რომლებიც
გათვალისწინებულია ფორმულების ანალიზური გარდაქმნისათვის,
დიფერენცირებისათვის, გამოსახულებათა ინტეგრებისათვის, ლინგვისტური
136
ტექსტების დამუშავებისათვის და ა.შ. მიეკუთვნება ენები: ფორმაკი, ფორმულა-ალგოლ,
სირიუსი და სხვ.
ჩანაწერებისა და სტრიქონების დამუშავებისათვის უფრო ცნობილია კომიტი,
სნაბოლი, იპლ-V, ლისპ, ლისპ-2 ენები. ამ კლასის ენები მოსახერხებელია ლინგვისტური
ტექსტების, ალგებრული გამოთვლების, ხელოვნური ინტელექტის კვლევის,
თეორემების დამტკიცების, ავტომატიზაციის დამუშავებასა და ანალიზში.
პროცედურულად ორიენტირებული ენების მეტად საჭირო კლასს წარმოადგენს
აგრეთვე ენები, რომლებიც განკუთვნილია საინფორმაციო-საცნობარო სისტემების
მომსახურეობისათვის, დისკრეტული და უწყვეტი სისტემების მოდელირებისათვის.
დაპროგრამების ენების შექმნა, რომლებიც ამოცანების ფორმალიზაციისა და მათი
ამოხსნის პრინციპებისთვის პრაქტიკულად იქნება ხელსაყრელი და მოსახერხებელი,
ამჟამად ერთ-ერთ ცენტრალურ ადგილს იკავებს დაპროგრამების თეორიასა და
პრაქტიკაში.

ავტომატის ცნება და მუშაობის პრინციპი


ავტომატის ცნება განიხილება ორ ასპექტში:

1. ავტომატი - მოწყობილობა, რომელიც ასრულებს რაღაც ფუნქციებს ადამიანის


უშუალო ჩარევის შედეგად. ავტომატი არის რეალური მოწყობილობა, რომელიც თუ
რატომ და როგორ მუშაობს, გასაგებია სულ მცირე იმ ადამიანთათვის მაინც, ვინც ის
დააპროექტა და დაამზადა. ავტომობილი, ტრაქტორი, თვითმფრინავი, ტელევიზორი,
ტელეფონი, შუქნიშანი - ავტომატებია. ამ ასპექტში ეგმ უნდა განვიხილოთ როგორც
ავტომატი, რომელიც მუშაობს ადამიანის მიერ შედგენილი პროგრამის მიხედვით.

2. ავტომატი - მათემატიკური ცნება, რომელიც აღნიშნავს რეალური ტექნიკური


მოწყობილობის მათემატიკურ მოდელს. ავტომატი არის აბსტრაქტული მოწყობილობა,
გაუგებარი თუ რატომ და რისთვის მუშაობს, და , საზოგადოდ, რატომ შეუძლია მას
მუშაობა. ამ ასპექტით ავტომატი არის „შავი ყუთი“, რომელსაც თეორიულად შეუძლია
ჩაატაროს რაიმე მოქმედებები. მათემატიკის აზრით კი აბსოლუტურად არაა
აუცილებელი იმის ცოდნა, თუ როგორ და რისთვის ასრულებს ამა თუ იმ მოქმედებას.

ნებისმიერ ავტომატს უნდა გააჩნდეს რაღაც რაოდენობის შესასვლელი, რაღაც


რაოდენობის გამოსასვლელი და რაღაც რაოდენობის შიგა მდგომარეობები.

სასრული ავტომატის განმარტება

137
ავტომატი არის რაიმე მოწყობილობის აბსტრაქტული მოდელი, რომელიც
ფუნქციონირებს დისკრეტულ დროში. იგი შემავალი სიგნალების (სტიმულების)
სასრულ მიმდევრობას გადაამუშავებს და გადააქცევს მას გამომავალი სიგნალების
(რეაქციების) სასრულ მიმდევრობად.

სასრული ავტომატის მუშაობის პროცესში ხდება მისი სასრული რაოდენობის


შიგა მდგომარეობების მიმდევრობითი ცვლა. ამავე დროს ავტომატის მდგომარეობა
დროის განსაზღვრულ მომენტში ცალსახად განისაზღვრება შემავალი და გამომავალი
სიგნალებით. ასეთი ავტომატები თანამედროვე გამოთვლითი ტექნიკისა და ყველა
შესაძლებელი ავტომატური კონტროლისა და მართვის დისკრეტული სისტემების
საფუძველს წარმოადგენენ.

ავტომატებთან, როგორც მექანიკურ მოწყობილობებთან დაკავშირებული


ზოგიერთი ისტორიული ფაქტი
1. გერმანელმა ფილოსოფოსმა და ალქიმიკოსმა ალბერტ დიდმა 1216 – 1246 წ.წ.
შექმნა „რკინის“ მსახური - ავტომატი, რომელიც სახლში მოახლის მოვალეობას
ასრულებდა.

2. ასტრონომმა იოჰან რეგიამონტანამ (1436-1476) შექმნა მექანიკური არწივი,


რომელიც თავის დახრითა და ფრთების რხევით ესალმებოდა რომის იმპერატორის
მაქსიმილიან II - ის ნიურბერგში შესვლას.

3. მექანიკოსი ჟან დე ვაკანსონი (1709 – 1782) მსოფლიოში პირველი ავტომატური


სართავი დაზგის ავტორია. მან შექმნა მექანიკური იხვი, ზუსტი ასლი თავისი ცოცხალი
ორეულისა, რომელიც ცურავდა, იწმენდდა ფრთებს, ყლაპავდა ხელის გულიდან
მარცვლებს. მის მიერ შექმნილი მექანიკური ფლეიტისტი კი ასრულებდა თერთმეტ
მუსიკალურ

4. პირველი პრიმიტიული არითმომეტრის კონსტრუქცია შეიმუშავა ბლეზ


პასკალმა 1641 წ. ამ აღმოჩენისაკენ მას უბიძგა მამამისის განუწყვეტელმა წვალებამ,
რომელიც საგადასახადო ინსპექტორად მუშაობდა და დღე და ღამე ასრულებდა დიდ
რიცხვით გამოთვლებს. არითმომეტრის გამოგონებით თვრამეტი წლის ბიჭმა მამა
გაათავისუფლა რთული გამოთვლებისაგან, ხოლო მსოფლიოს აჩუქა პირველი
კალკულიატორი, რომელიც ასრულებდა რიცხვების შეკრებასა და გამოკლებას.

138
5. პირველი შახმატის ავტომატი აგებულ იქნა 1890 წ. ესპანელი ინჟინრის ტორეს
კევედოს მიერ.

6. პირველი გამომთვლელი მანქანა ავტომატური მართვით შექმნა ჩარლზ ბაბაჯმა


1822წ. მან დააპროექტა არითმომეტრი, რომელსაც ჰქონდა დამამახსოვრებელი და
არითმეტიკული მოწყობილობა, რომლებიც შემდეგში გახდა თანამედროვე ეგმ - ის
აუცილებელი მოწყობილობა.

სავარჯიშოები

1. მოცემულია გამონათქვამები: “ცხელა ”, “წვიმა მოდის ”, “ჰაერი მშრალია ”.


შემდეგი გამონათქვამები გამოსახეთ სიმბოლოებით:
ა. “წვიმა მოდის და ცხელა”.
გ. “ჰაერი ნესტიანია ან ცხელა” .
დ. “წვიმა არ მოდის ან ჰაერი მშრალია”.

2. დავუშვათ, რომ გამონათქვამი “ცივა და ჰაერი ნესტიანია” - ჭეშმარიტია.


გამოიკვლიეთ წინამდებარე წინადადებების მნიშვნელობები.

3. ავღნიშნოთ -თი წინადადება “თვითმფრინავი დაფრინავს მაღლა” , ხოლო -თი


წინადადება – “თვითმფრინავი კრეფს სიმაღლეს”. გადავთარგმნოთ შემდეგი
გამოსახულებები: ა) ⋀ ბ) ⋀ ̅ გ) ̅ ⋀ ̅ დ) ⋁ ̅ ე) ̅̅̅̅̅̅̅
⋀ ვ) ̅̅̅̅̅̅̅
⋁ ზ) ̅̅̅̅̅̅̅̅
̅⋁̅

4. ვთქვათ აღნიშნავს “მე მაქვს ფირსაკრავი” , ხოლო - “მე მაქვს ფირფიტები”.


გადათარგმნეთ გამოსახულებები:

ა) ̅̅̅̅̅̅̅̅
̅⋁̅ ⋀ ̅ ბ) ̅̅̅̅̅̅̅
⋀ გ) ⋀̅ დ) ⋁̅

5. ქვემოთ მითითებული წინადადებებიდან იპოვეთ გამონათქვამები. მიუთითეთ მათი


ჭეშმარიტი მნიშვნელობა.
ა) რომელი საათია?
ბ) რიცხვი 1 არის უმცირესი მთელი დადებითი რიცხვი.
გ) თუ , მაშინ .
139
დ) უფრთხილდი ავტომობილს!
ე) სამხრეთ დაკოტა - სამხრეთი შტატია.

6. ჩამოთვალეთ ენის ყველა სიტყვა, თუ

{ } და { }.

7. ვთქვათ { }. ტოლია თუ არა

{ } და { } ენები?

8. ვთქვათ { }, { } და

{ } . რამდენ სიტყვას შეიცავს ენა ?

9. როგორი მთელი დადებითი რიცხვებისათვის არსებობს ალფავიტი,


და ენები, რომლებიც აკმაყოფილებენ | | |
| პირობებს?

10. ვთქვათ { } და { } იპოვე

11. ვთქვათ { } და

{ }

ჭეშმარიტია თუ არა, რომ ?

12. არსებობს თუ არა ისეთი ენა, რომ შესრულდეს

{ } პირობა?

13. არსებობს თუ არა ისეთი ენა რომ ?

14. არსებობს თუ არა ისეთი და ენები, რომ ( და არაა


თანაბარი სიმძლავრის?

15. არსებობს თუ არა ისეთი და ენები, რომ და არაა თანაბარი


სიმძლავრის?

16. აღწერეთ ენა, წარმოქმნილი გრამატიკით.

17. აღწერეთ ენა, წარმოქმნილი გრამატიკით.

18. აღწერეთ ენა, წარმოქმნილი გრამატიკით.

140
19. აღწერეთ ენა, წარმოქმნილი გრამატიკით.

20. აღწერეთ ენა, წარმოქმნილი გრამატიკით.

21. აღწერეთ ენა, წარმოქმნილი გრამატიკით.

22. ეკვივალენტურია თუ არა

გრამატიკა და

გრამატიკა?

23. ეკვივალენტურია თუ არა

გრამატიკა და

გრამატიკა?

24. მოცემულია დეტერმინირებული სასრული ავტომატი { } ალფავიტით.

c a, b a b

c b, c
𝑞 𝑞
a, c

a, b

1. გამოთვალეთ , სადაც ,
a) Q \ F b) c) F d)
2. გამოთვალეთ , სადაც ,
a) Q \ F b) c) F d)
3. გამოთვალეთ , სადაც ,
a) Q \ F b) c) d) F

141
25. მოცემულია დეტერმინირებული სასრული ავტომატი { } ალფავიტით.

a a
𝑞
𝑞
b a, b
𝑞

შემდეგი სიტყვებიდან რომელი ეკუთვნის ენას?

a) b) c) d) e)

26. მოცემულია დეტერმინირებული სასრული ავტომატი { } ალფავიტით.

𝑞
b a

b
𝑞 𝑞

a, b
𝑞

შემდეგი სიტყვებიდან რომელი ეკუთვნის ენას?

a) b) c) d) e)

142
27. მოცემულია დეტერმინირებული სასრული ავტომატი { } ალფავიტით.

𝑞
a, b a

b
𝑞 𝑞

a, b
𝑞

შემდეგი სიტყვებიდან რომელი ეკუთვნის ენას?

b) c) d) e)

28. რომელ კლასს ეკუთვნის

გრამატიკა?

29. რომელ კლასს ეკუთვნის

გრამატიკა?

30. იპოვეთ მარჯვენა წრფივი გრამატიკა, რომელიც წარმოქმნის

{ } ენას.

31. იპოვეთ მარჯვენა წრფივი გრამატიკა, რომელიც ეკვივალენტურია

გრამატიკის.

32. იპოვეთ მარჯვენა წრფივი გრამატიკა, რომელიც ეკვივალენტურია

143
გრამატიკის.

33. რომელ კლასს ეკუთვნის ენა

{ }

34. რომელ კლასს ეკუთვნის ენა

{ }

35. რომელ კლასს ეკუთვნის ენა

{ }

36. ვთქვათ . წრფივია თუ არა ენა ?

37. ვთქვათ . წრფივია თუ არა ენა ?

38. იპოვე წრფივი გრამატიკა, რომელიც წარმოქმნის , ენას,


სადაც L1 წარმოიქმნება გრამატიკით

39. იპოვე კონტექსტურად - თავისუფალი გრამატიკა ენისათვის,


სადაც L1 წარმოიქმნება გრამატიკით

ხოლო L2 ენა, გრამატიკით

144
40. იპოვე კონტექსტურად - თავისუფალი გრამატიკა ენისათვის,
სადაც L1 წარმოიქმნება გრამატიკით

ხოლო L2 ენა, გრამატიკით

41. არაცარიელია თუ არა ენა, რომელიც წარმოიქმნება შემდეგი გრამატიკით.

42. როგორი სახისაა გრამატიკა და ამ გრამატიკით გამოიყვანება თუ არა სიტყვა aab?

43. როგორი სახისაა გრამატიკა და ამ გრამატიკით გამოიყვანება თუ არა სიტყვა


aaaaaaaab ?

145
44. მოცემული გრამატიკა წარმოქმნის თუ არა ყველა სიტყვას {a,b}ალფავიტში?

45. ვთქვათ . განვიხილოთ გრამატიკა

ამ გრამატიკაში მიიღება თუ არა ccdcdcddccddcdcccabba სიტყვა?

46. არის თუ არა დაშვებადი ენა, წარმოქმნილი შემდეგი გრამატიკით

146
47. ეკუთვნის თუ არა aaaaabbbabb სიტყვა ენას, წარმოქმნილს გრამატიკით

48. ეკუთვნის თუ არა abababa სიტყვა ენას, წარმოქმნილს გრამატიკით

49. არის თუ არა უსასრულო ენა, რომელიც წარმოქმნილია შემდეგი გრამატიკით

147
50. ეკვივალენტურებია თუ არა

გრამატიკა და

გრამატიკა?

51. აღწერეთ ენა, წარმოქმნილი { }{ }{ }


გრამატიკით. რომელი კლასისაა ეს გრამატიკა? პასუხი დაასაბუთეთ.

52. აღწერეთ ენა, წარმოქმნილი { }{ }{ }


გრამატიკით. რომელი კლასისაა ეს გრამატიკა? პასუხი დაასაბუთეთ.

53. აღწერეთ ენა, წარმოქმნილი


გრამატიკით. რომელი კლასისაა ეს გრამატიკა? პასუხი დაასაბუთეთ.

54. აღწერეთ ენა, წარმოქმნილი


გრამატიკით. რომელი კლასისაა ეს გრამატიკა? პასუხი დაასაბუთეთ.

55. აღწერეთ ენა, წარმოქმნილი


გრამატიკით. რომელი კლასისაა ეს გრამატიკა? პასუხი დაასაბუთეთ.

56. აღწერეთ ენა, წარმოქმნილი


გრამატიკით. რომელი კლასისაა ეს გრამატიკა? პასუხი დაასაბუთეთ.
148
57. აღწერეთ ენა, წარმოქმნილი
გრამატიკით. რომელი კლასისაა ეს გრამატიკა? პასუხი დაასაბუთეთ.

58. აღწერეთ ენა, წარმოქმნილი


გრამატიკით. რომელი კლასისაა ეს გრამატიკა? პასუხი დაასაბუთეთ.

59. აღწერეთ ენა, წარმოქმნილი


გრამატიკით. რომელი კლასისაა ეს გრამატიკა? პასუხი დაასაბუთეთ.

60. ეკვივალენტურია თუ არა

გრამატიკა და

გრამატიკა?

61. ეკვივალენტურია თუ არა

გრამატიკა და

გრამატიკა?

62. იპოვეთ მარჯვენა წრფივი გრამატიკა, რომელიც წარმოქმნის

{ } ენას.

63. იპოვეთ მარჯვენა წრფივი გრამატიკა, რომელიც ეკვივალენტურია

გრამატიკის.

64. იპოვეთ მარჯვენა წრფივი გრამატიკა, რომელიც ეკვივალენტურია

გრამატიკის.

65. ვთქვათ მოცემულია მურის ( ) ავტომატი, სადაც


{ } { } { } ხოლო

{ }
{ },
{ }.
149
ა) ააგე მისი ეკვივალენტური მილის ავტომატი.
ბ) ეს ავტომატი სრულადაა განსაზღვრული თუ ნაწილობრივ?
გ) თუ ავტომატის შესასვლელზე მიეწოდა და სიტყვები,
რა სიტყვებს მივიღებთ გამოსასვლელზე?

66. ააგეთ გრამატიკა, რომელიც წარმოქმნის { } ენას.

67. ააგეთ გრამატიკა, რომელიც წარმოქმნის { } ენას.

68. ააგეთ გრამატიკა, რომელიც წარმოქმნის { } ენას.

69. მოცემულია და ალფავიტები და G გრამატიკა. ზოგადად როგორ ენას


წარმოქმნის ეს გრამატიკა?

{ } { } , S - აქსიომაა. G: S TT, T T T

70. მოცემულია და ალფავიტები და G გრამატიკა. ზოგადად როგორ ენას


წარმოქმნის ეს გრამატიკა?

{ } { } G: S p S p, S S

71. მოცემულია და ალფავიტები და G გრამატიკა. ზოგადად როგორ ენას


წარმოქმნის ეს გრამატიკა?

{ } { }, , S - აქსიომაა. G: S Ta, T S U S

72. მოცემულია რეგულარული გამოსახულება. ააგე ავტომატი, რომელიც გამოიცნობს


მოცემულ ენას.
{ }{ }
73. მოცემულია ავტომატის მდგომარეობებს შორის გადასვლის ცხრილი.
მდგომარეობა დამამთავრებელი მდგომარეობაა.
ა) იპოვე რეგულარული გამოსახულება, რომელსაც გამოიცნობს მოცემული ავტომატი.
ბ) ავტომატი სრულადაა განსაზღვრული თუ ნაწილობრივ? პასუხი დაასაბუთეთ.
გ) თუ ავტომატის შესასვლელზე მიეწოდა და სიტყვები,
რომელ მდგომარეობებში აღმოჩნდება ავტომატი?

150
74. მოცემულია რეგულარული გამოსახულება. ააგე ავტომატი, რომელიც გამოიცნობს
მოცემულ ენას.
{ }{ }

75. მოცემულია ავტომატის მდგომარეობებს შორის გადასვლის ცხრილი.


მდგომარეობა დამამთავრებელი მდგომარეობაა.
ა) იპოვე რეგულარული გამოსახულება, რომელსაც გამოიცნობს მოცემული ავტომატი.
ბ) ავტომატი სრულადაა განსაზღვრული თუ ნაწილობრივ? პასუხი დაასაბუთეთ.
გ) თუ ავტომატის შესასვლელზე მიეწოდა და სიტყვები,
რომელ მდგომარეობებში აღმოჩნდება ავტომატი?

76. მოცემულია რეგულარული გამოსახულება. ააგე ავტომატი, რომელიც გამოიცნობს


მოცემულ ენას.

{ } { } { }

77. მოცემულია ავტომატის მდგომარეობებს შორის გადასვლის ცხრილი.


მდგომარეობა დამამთავრებელი მდგომარეობაა.
ა) იპოვე რეგულარული გამოსახულება, რომელსაც გამოიცნობს მოცემული ავტომატი.
ბ) ავტომატი სრულადაა განსაზღვრული თუ ნაწილობრივ? პასუხი დაასაბუთეთ.
გ) თუ ავტომატის შესასვლელზე მიეწოდა და სიტყვები,
რომელ მდგომარეობებში აღმოჩნდება ავტომატი?

151

78. მოცემულია რეგულარული გამოსახულება. ააგე ავტომატი, რომელიც გამოიცნობს


მოცემულ ენას.
{ }{ } { }.

79. მოცემულია ავტომატის მდგომარეობებს შორის გადასვლის ცხრილი.


მდგომარეობა დამამთავრებელი მდგომარეობაა.
ა) იპოვე რეგულარული გამოსახულება, რომელსაც გამოიცნობს მოცემული ავტომატი.
ბ) ავტომატი სრულადაა განსაზღვრული თუ ნაწილობრივ? პასუხი დაასაბუთეთ.
გ) თუ ავტომატის შესასვლელზე მიეწოდა და სიტყვები,
რომელ მდგომარეობებში აღმოჩნდება ავტომატი?

80. ააგეთ გრამატიკა, რომელიც წარმოქმნის { } ენას, სადაც ის


სარკული ანასახია.

81. მოცემულია და ალფავიტები და G გრამატიკა. ზოგადად როგორ ენას


წარმოქმნის ეს გრამატიკა?

{ } { } G: S TT, T T

82. მოცემულია რეგულარული გამოსახულება. ააგე ავტომატი, რომელიც გამოიცნობს


მოცემულ ენას.
{ }{ } .

152
83. მოცემულია ავტომატის მდგომარეობებს შორის გადასვლის ცხრილი.
მდგომარეობა დამამთავრებელი მდგომარეობაა.
ა) იპოვე რეგულარული გამოსახულება, რომელსაც გამოიცნობს მოცემული ავტომატი.
ბ) ავტომატი სრულადაა განსაზღვრული თუ ნაწილობრივ? პასუხი დაასაბუთეთ.
გ) დასაშვებია თუ არა და სიტყვები მოცემული
ავტომატისათვის?

84. ააგეთ გრამატიკა, რომელიც წარმოქმნის { } ენას.

85. მოცემულია და ალფავიტები და G გრამატიკა. ზოგადად როგორ ენას


წარმოქმნის ეს გრამატიკა?

{ } { } G: S TT, T T T

86. მოცემულია რეგულარული გამოსახულება. ააგე ავტომატი, რომელიც გამოიცნობს


მოცემულ ენას.
{ } { } .

87. მოცემულია ავტომატის მდგომარეობებს შორის გადასვლის ცხრილი.


მდგომარეობა დამამთავრებელი მდგომარეობაა.
ა) იპოვე რეგულარული გამოსახულება, რომელსაც გამოიცნობს მოცემული ავტომატი.
ბ) ავტომატი სრულადაა განსაზღვრული თუ ნაწილობრივ? პასუხი დაასაბუთეთ.

153
88. მოცემულია რეგულარული გამოსახულებები: { } { }. იპოვეთ:

, { } , { }.
89. მოცემულია რეგულარული გამოსახულებები: { } { }. იპოვეთ:

, { } , { }, .
90. ააგეთ გრამატიკა, რომელიც წარმოქმნის { } ენას.

91. მოცემულია და ალფავიტები და G გრამატიკა. ზოგადად როგორ ენას


წარმოქმნის ეს გრამატიკა?

{ } { } G: S aS , .

92. მოცემულია რეგულარული გამოსახულება. ააგე ავტომატი, რომელიც გამოიცნობს


მოცემულ ენას.
{ } .

93. მოცემულია დეტერმინირებული სასრული ავტომატი { } ალფავიტით.

a a a,b
𝑞 𝑞
𝑞

b 𝑞 a,b

იპოვე რეგულარული გამოსახულება, რომელსაც გამოიცნობს მოცემული ავტომატი.

94. ააგეთ გრამატიკა, რომელიც წარმოქმნის { } ენას.

95. მოცემულია და ალფავიტები და G გრამატიკა. ზოგადად როგორ ენას


წარმოქმნის ეს გრამატიკა?

{ } { }, , S - აქსიომაა. G: S TT, T T

96. მოცემულია რეგულარული გამოსახულება. ააგე ავტომატი, რომელიც გამოიცნობს


მოცემულ ენას.
{ }{ } .
97. მოცემულია ავტომატი.

154
დაასახელეთ სიტყვები, რომელსაც გამოიცნობს ეს ავტომატი.

98. მოცემულია ავტომატი.

დაასახელეთ სიტყვები, რომელსაც გამოიცნობს ეს ავტომატი.

99. მოცემულია ავტომატი.

დაასახელეთ სიტყვები, რომელსაც გამოიცნობს ეს ავტომატი.

100. ვთქვათ { } და მოცემულია გრამატიკა

ა) არის თუ არა ეს გრამატიკა ავტომატური გრამატიკა?

ბ) კერძოდ როგორი სახისაა ეს გრამატიკა? ააგე მისი ეკვივალენტური გრამატიკა.

გ) ააგე სასრული ავტომატი, რომელიც გამოიცნობს ამ გრამატიკით


წარმოქმნილ ენას. მიუთითე სიმრავლეები და გადასვლის ფუნქცია.

დ) ააგე შესაბამისი ავტომატის გრაფი.

101. ვთქვათ { } და მოცემულია გრამატიკა

155
ა) როგორი სახისაა ეს გრამატიკა? ააგე მისი ეკვივალენტური გრამატიკა.

ბ) ააგე სასრული ავტომატი, რომელიც გამოიცნობს ამ გრამატიკით


წარმოქმნილ ენას. მიუთითე სიმრავლეები და გადასვლის ფუნქცია.

გ) ააგე შესაბამისი ავტომატის გრაფი.

102. ვთქვათ { } და მოცემულია გრამატიკა

ა) როგორი სახისაა ეს გრამატიკა? ააგე მისი ეკვივალენტური გრამატიკა.

ბ) ააგე სასრული ავტომატი, რომელიც გამოიცნობს ამ გრამატიკით


წარმოქმნილ ენას. მიუთითე სიმრავლეები და გადასვლის ფუნქცია.
გ) ააგე შესაბამისი ავტომატის გრაფი.

გამოყენებული ლიტერატურა
1. Peter Linz. An Introduction to Formal Languages and Automata. Fifth Edition. University of
California at Davis. JONES & BARTLETT LEARNING.
2. А. Е. Пентус, М. Р. Пентус. Математическая теория формальных языков.
http://www.intuit.ru/studies/courses/1064/170/lecture/4610.
4. Michael Sipser. Introduction to the Theory of Computation. Third Edition. Published by
Cengage Learning.
5. Hopcroft J. E ., Motwani R., Ullman J. D., Introduction to
Automata Theory, Languages, and Computation. Addison-Wesley, Boston, 2006.
6. М. Гросс, А. Лантен. Теория формальных граматик. М.”Наука”.
7. С. Гинзбург. Математическая теория контекстно-свободных языков. М.”Наука”. 1971
8. ინტერნეტში შესაბამისი მასალის ელექტრონული ვერსიები.

156

You might also like