Το λεμόνι άντλησης (για CFLs):
Εάν το L είναι μια γλώσσα χωρίς περιβάλλοντα, τότε υπάρχει μια σταθερή * p * (το μήκος άντλησης) έτσι ώστε οποιαδήποτε συμβολοσειρά * w * σε l με | w | ≥ *p *μπορεί να γραφτεί ως *w =uvxyz *, πού:
1. | VXY | ≤ *p *
2. | Vy | ≥ 1
3. Για όλους *i *≥ 0, *uv
Η στρατηγική απόδειξης είναι να βρούμε μια συμβολοσειρά *w *στη γλώσσα έτσι ώστε ανεξάρτητα από το πώς το αποσυντίθουμε σε *uvxyz *ικανοποιώντας τις συνθήκες του λεμμά, η άντλησή του (αυξάνοντας *i *) θα παράγει μια συμβολοσειρά που δεν είναι *στη γλώσσα. Αυτό έρχεται σε αντίθεση με το λεμμά, αποδεικνύοντας ότι η γλώσσα δεν είναι απαλλαγμένη από το περιβάλλον.
Παραδείγματα:
Ας απεικονίσουμε με μερικά παραδείγματα γλωσσών και πώς να αποδείξουμε ότι δεν είναι χωρίς περιεχόμενο χρησιμοποιώντας το λεμμά αντλίας:
1. L₁ ={a
1. Αυτό σημαίνει ότι ισχύει το λεμόνι άντλησης.
2. Επιλέξτε μια συμβολοσειρά W: Ας επιλέξουμε *W =A
3. άντληση: Επειδή | VXY | ≤ *p *, *vxy *μπορεί να εκτείνεται το πολύ δύο από τα τμήματα (aaa ... bbb ... ccc ...). Υπάρχουν τρεις δυνατότητες:
* Το VXY περιέχει μόνο Α και Β: Η άντληση θα αλλάξει τον αριθμό των Α και/ή του Β χωρίς να αλλάξει τον αριθμό των C, με αποτέλεσμα μια συμβολοσειρά όχι στο L₁.
* Το VXY περιέχει μόνο B και C's: Παρόμοια με τα παραπάνω, ο αριθμός των Β και/ή C θα αλλάξει δυσανάλογα.
* Το VXY περιέχει μόνο Α: Η άντληση θα επηρεάσει μόνο τον αριθμό των Α.
4. αντίφαση: Σε όλες τις περιπτώσεις, η άντληση παράγει μια συμβολοσειρά όχι στο L₁. Αυτό έρχεται σε αντίθεση με τον ισχυρισμό της άντλησης Lemma ότι *uv
5. Συμπέρασμα: Επομένως, το L₁ δεν είναι χωρίς περιβάλλον.
2. L₂ ={a
1.
2. Επιλέξτε μια συμβολοσειρά W: Ας *w =a
3. άντληση: Και πάλι, | VXY | ≤ *p *. Οι δυνατότητες είναι παρόμοιες με το L₁:Εάν το * VXY * περιέχει μόνο Α και Β, η άντληση θα αλλάξει τον αριθμό των Α και Β χωρίς να αλλάζει αναλογικά τον αριθμό των C.
4. αντίφαση: Η άντληση θα οδηγήσει σε χορδές όχι στο L₂.
5. Συμπέρασμα: Το L₂ δεν είναι απαλλαγμένο από το περιβάλλον.
3. L₃ ={WW | w ∈ {a, b}*} (Η γλώσσα των χορδών που είναι η συγκόλληση μιας συμβολοσειράς με τον εαυτό του)
1.
2. Επιλέξτε μια συμβολοσειρά W: Ας *w =a
3. άντληση: Επειδή | VXY | ≤ *p *, *vxy *δεν μπορεί να διασχίσει τη μέση της χορδής (δεν μπορεί να εκτείνεται και τα δύο μισά του `ww`). Εάν το * VXY * είναι εξ ολοκλήρου στο πρώτο ημίχρονο, η άντληση θα εξισορροπήσει τα δύο μισά.
4. αντίφαση: Η αντλημένη συμβολοσειρά δεν θα είναι στο L₃.
5. Συμπέρασμα: Το L₃ δεν είναι απαλλαγμένο από το περιβάλλον.
Σημαντικές εκτιμήσεις:
* Επιλογή της δεξιάς συμβολοσειράς *W *: Αυτό είναι κρίσιμο. Η συμβολοσειρά πρέπει να επιλεγεί προσεκτικά για να εκμεταλλευτεί τους περιορισμούς που επιβάλλονται από το | VXY | ≤ *p *. Συχνά, οι χορδές με επαναλαμβανόμενα μοτίβα είναι χρήσιμα.
* Διαχείριση όλων των περιπτώσεων: Πρέπει να εξετάσετε όλους τους πιθανούς τρόπους για να αποσυντεθείτε * w * σε * uvxyz * ικανοποιώντας τις συνθήκες του λεμμά και να δείξετε ότι η άντληση οδηγεί σε μια αντίφαση σε κάθε περίπτωση.
* Το μήκος άντλησης * P * είναι αυθαίρετο: Δεν χρειάζεται να γνωρίζετε την αξία του *p *; Η απόδειξη λειτουργεί για οποιοδήποτε *p *.
Με την προσεκτική εφαρμογή αυτών των βημάτων, μπορείτε να χρησιμοποιήσετε το Lemma αντλίας για να δείξετε ότι πολλές γλώσσες δεν είναι απαλλαγμένες από το περιβάλλον. Θυμηθείτε ότι το λεμόνι άντλησης παρέχει μόνο μια μέθοδο για την απόδειξη των γλωσσών * δεν είναι * χωρίς περιβάλλον. Δεν μπορεί να χρησιμοποιηθεί για να αποδείξει ότι μια γλώσσα * είναι * χωρίς περιβάλλον.
Πνευματικά δικαιώματα © Γνώση Υπολογιστών Όλα τα δικαιώματα κατοχυρωμένα