1. ∆ηµήτρης Ψούνης – ΠΛΗ30, ∆ιαγώνισµα 5 1
ΠΛΗ30 - ∆ΙΑΓΩΝΙΣΜΑ 5
ΘΕΜΑ 1: (Μονάδες 20/20)
(Α) Να ταξινοµηθούν οι ακόλουθες συναρτήσεις κατά αύξουσα τάξη µεγέθους:
( ) nnnn
nn
nn
nnnf
nnnnf
nnnnnf
nnnf
3log
4
log2log
3
22
2
1
log)(
log)(
loglog)(
loglogloglog)(
2
+=
+=
+=
+=
Ο συµβολισµός log παριστάνει λογάριθµο µε βάση το 2. . Η συνάρτηση f έχει την ίδια τάξη µεγέθους (ίδιο ρυθµό
αύξησης) µε την g (f ≡ g), αν f = Θ(g) (ισοδύναµα Θ(f) = Θ(g)). Η συνάρτηση f έχει µικρότερη τάξη µεγέθους
(µικρότερο ρυθµό αύξησης) από την g (f < g), αν f = o(g).
2. ∆ηµήτρης Ψούνης – ΠΛΗ30, ∆ιαγώνισµα 5 2
(Β) Για την επίλυση ενός προβλήµατος έχουµε στη διάθεσή µας τέσσερις αλγόριθµους:
Ο αλγόριθµος Α για να επιλύσει ένα πρόβληµα µεγέθους n, επιλύει αναδροµικά ένα υποπρόβληµα µεγέθους
3n/11 και ένα υποπρόβληµα µεγέθους 5n/7 και συνδυάζει τις λύσεις τους σε χρόνο n.
Ο αλγόριθµος Β για να επιλύσει ένα πρόβληµα µεγέθους n, επιλύει αναδροµικά δέκα υποπροβλήµατα µεγέθους
n/3 το καθένα και συνδυάζει τις λύσεις τους σε χρόνο n3
.
Ο αλγόριθµος Γ για να επιλύσει ένα πρόβληµα µεγέθους n, επιλύει αναδροµικά πενήνταένα υποπρόβληµα
µεγέθους n/4 το καθένα και εξάγει την τελική λύση σε χρόνο
5 4
n
Ο αλγόριθµος ∆ για να επιλύσει ένα πρόβληµα µεγέθους n, επιλύει αναδροµικά ένα υποπρόβληµα µεγέθους n-2
και εξάγει την τελική λύση σε χρόνo 3n
Να βρεθούν οι ασυµπτωτικοί χρόνοι επίλυσης του προβλήµατος για κάθε αλγόριθµο και να επιλέξετε τον
ταχύτερο αλγόριθµο.
Θεώρηµα Κυριαρχίας: Έστω η αναδροµική εξίσωση T(n) = aT(n/b) + f(n), όπου a≥1, b>1 είναι σταθερές, και
f(n) είναι µια ασυµπτωτικά θετική συνάρτηση. Τότε διακρίνονται οι ακόλουθες τρεις περιπτώσεις:
log log
( ) ( ), ( )b ba a
(1) αν f n O n για κάποια σταθερά ε>0, τότε T(n) = nεεεε−−−−
= Θ= Θ= Θ= Θ
log log
( ) ( ), ( log )b ba a
(2) αν f n n τότε T(n) = n n= Θ Θ= Θ Θ= Θ Θ= Θ Θ
log
( ) ( ), ,
( ( )).
b a
0
0
(3) αν f n n για κάποια σταθερά ε>0, και αν υπάρχει σταθερά n τέτοια
n
ώστε, για κάθε n n , af cf(n) για κάποια σταθερά c<1, τότε T(n) = f n
b
εεεε++++
= Ω= Ω= Ω= Ω
≥ ≤ Θ≥ ≤ Θ≥ ≤ Θ≥ ≤ Θ
3. ∆ηµήτρης Ψούνης – ΠΛΗ30, ∆ιαγώνισµα 5 3
ΘΕΜΑ 2: (Μονάδες 20/20)
(1) Εξετάστε αν:
)(log.
)(logOlog3.
)(logln.Α
log nn
nn
nn
nn
Θ=Γ
=Β
= ω
(2) ∆ίνεται το πρόβληµα Π και ένας αλγόριθµος Α που το λύνει, ο οποίος λύνει ένα πρόβληµα µεγέθους n,
επιλύοντας ένα πρόβληµα µεγέθους 2n/3 και ένα πρόβληµα µεγέθους 5n/6 και συνδυάζει τις λύσεις σε χρόνο
n3
. Να υπολογίσετε τον ασυµπτωτικό χρόνο εκτέλεσης του προβλήµατος.
4. ∆ηµήτρης Ψούνης – ΠΛΗ30, ∆ιαγώνισµα 5 4
ΘΕΜΑ 3: (Μονάδες 20/20)
∆ίδεται η κανονική έκφραση:: 011∗
0∗ ∗
(Α) ∆ώστε Μη Ντετερµινιστικό ΠΑ που αναγνωρίζει τις συµβολοσειρές της γλώσσας.
(Β) ∆ώστε το ισοδύναµο Ντετερµινιστικό ΠΑ
(Γ) ∆ώστε Κανονική Γραµµατική για το ντετερµινιστικό ΠΑ του ερωτήµατος Β
5. ∆ηµήτρης Ψούνης – ΠΛΗ30, ∆ιαγώνισµα 5 5
2. Ποια από τις παρακάτω γλώσσες είναι κανονική και ποια όχι; Για να αποδείξετε ότι κάποια
από τις γλώσσες δεν είναι κανονική χρησιµοποιέιστε το λήµµα της άντλησης. Για να αποδείξετε
ότι είναι κανονική δώστε την αντίστοιχη κανονική έκφραση.
A = {0n+3
14
| n<4}
Β = ∈ 0,1 ∗| ό 0
Γ = ∈ 0,1 ∗| ό 0 ό
∆ = {0n+1
100m
| n∈ , m∈ }
Το Λήµµα Άντλησης για Κανονικές Γλώσσες:
Έστω µια άπειρη κανονική γλώσσα. Τότε υπάρχει ένας αριθµός ! (µήκος άντλησης) τέτοιος ώστε κάθε " ∈ µε |#| $ ! να
µπορεί να γραφεί στην µορφή " % &'( όπου για τις συµβολοσειρές &, ' και ( ισχύει:
|&'| ) !
' * +
&',
( ∈ για κάθε φυσικό , $ -
6. ∆ηµήτρης Ψούνης – ΠΛΗ30, ∆ιαγώνισµα 5 6
ΘΕΜΑ 4: (Μονάδες 20/20)
Ποια από τις παρακάτω γλώσσες είναι χωρίς συµφραζόµενα και ποια δεν είναι;
L1 = { ∈ 0,1 ∗
| έχει ίσα 0 και 1 και είναι παλινδροµική}.
L2 = {can
bn
c| n≥0}
(A) Για την γλώσσα που είναι χωρίς συµφραζόµενα:
(1) ∆ώστε Γραµµατική Χωρίς Συµφραζόµενα που παράγει τις συµβολοσειρές της.
(2) ∆ώστε ντετερµινιστικό αυτόµατο στοίβας που αναγνωρίζει τις συµβολοσειρές της:
a. Περιγράψτε άτυπα τη λειτουργία του Μ.
b. ∆ώστε την πλήρη περιγραφή του Μ (σύνολο καταστάσεων, αλφάβητα εισόδου και στοίβας,
αρχική κατάσταση, αρχικό σύµβολο στοίβας, συνάρτηση µετάβασης και σύνολο τελικών
καταστάσεων). Για την περιγραφή της συνάρτησης µετάβασης µπορείτε να χρησιµοποιήσετε
πίνακα.
7. ∆ηµήτρης Ψούνης – ΠΛΗ30, ∆ιαγώνισµα 5 7
(Β) Για την γλώσσα που δεν είναι χωρίς συµφραζόµενα,δώστε τυπική απόδειξη µε το 2ο
λήµµα άντλησης:
Το Λήµµα Άντλησης για Γλώσσες Ανεξάρτητες Συµφραζοµένων
Έστω . µια άπειρη γλώσσα ανεξάρτητη συµφραζοµένων. Τότε υπάρχει ένας αριθµός / (µήκος άντλησης)
τέτοιος ώστε κάθε s ∈ . µε |s| $ / να µπορεί να γραφεί στην µορφή 1 % 23 45 όπου για τις συµβολοσειρές
2, 3, , 4 και 5 ισχύει:
|3 4| ) /
|34| 6 0
237
47
5 ∈ . για κάθε φυσικό 8 $ 0
8. ∆ηµήτρης Ψούνης – ΠΛΗ30, ∆ιαγώνισµα 5 8
ΘΕΜΑ 5: (Μονάδες 20/20)
Α: Έστω αλφάβητο Σ={0,1} και η γλώσσα: . % 9
:;9<=
>9<=| / $ 0 . Να κατασκευάσετε µηχανή Turing T µε
αλφάβητο Σ0={0,1,#,$,Υ,Ν} που θα αποφασίζει την γλώσσα L. H µηχανή θα ξεκινά µε σχηµατισµό #w# για
κάποιο ∈ ?∗
.
∆ώστε άτυπη περιγραφή της παραπάνω µηχανής Turing (τον αλγόριθµο διαχείρισης της ταινίας της) και σην
συνέχεια τυπική περιγραφή µέσω γραφήµατος ΤΜ.
Β: ∆ίνεται η γλώσσα L={M | υπάρχει συµβολοσειρά µε την οποία η Μ τερµατίζει}. ∆είξτε ότι η L δεν είναι
επιλύσιµη δεδοµένου ότι η γλώσσα L’={M | H M τερµατίζει µε είσοδο aab} δεν είναι επιλύσιµη.
9. ∆ηµήτρης Ψούνης – ΠΛΗ30, ∆ιαγώνισµα 5 9
ΘΕΜΑ 6: (Μονάδες 20/20)
Ποιες από τις παρακάτω προτάσεις είναι (Α) Σωστές, (β) Λάθος, (Γ) Αληθές αν P=NP (∆) Αληθές αν P≠NP
∆ίδεται ότι το πρόβληµα Π είναι NP-Complete:
1. To Π δεν επιλύεται σε πολυωνυµικό χρόνο
2. Το Π επιλύεται σε πολυωνυµικό χρόνο.
3. Το Π επιλύεται σε εκθετικό χρόνο.
4. Το Π λύνεται σε µη ντετερµινιστικό πολυωνυµικό χρόνο.
5. Το Π ανάγεται στο 3SAT και αντίστροφα
6. Υπάρχει αναγωγή από το Π στο πρόβληµα PATH
7. Υπάρχει αναγωγή από το PATH στο πρόβληµα Π