Lema de pompare ( lema de creștere , lema de pompare ; lema de pompare în engleză ) este o afirmație importantă a teoriei automatelor , permițând în multe cazuri să se verifice dacă un anumit limbaj este automat . Deoarece toate limbile finite sunt automate, este logic să faceți această verificare numai pentru limbi infinite. Termenul „pompare” din titlul lemei reflectă posibilitatea repetării repetate a unui subșir în orice șir de lungime adecvată în orice limbaj de automată infinită.
Există, de asemenea, o lemă de creștere pentru limbile fără context , o declarație și mai generală este lema de creștere pentru limbile indexate .
Pentru un limbaj automat infinit peste un alfabet , există un număr natural , astfel încât pentru orice cuvânt de lungime cel puțin există cuvinte astfel încât , și pentru fiecare număr întreg nenegativ șirul este un cuvânt al limbii .
Notarea în cuantificatori:
.Fie ca un limbaj automat să conțină un număr infinit de lanțuri și să presupunem că este recunoscut de un automat finit determinist cu stări . Pentru a verifica concluzia lemei, alegem un lanț arbitrar al acestui limbaj care are lungimea .
Dacă automatul finit recunoaște , atunci lanțul este permis de acest automat, adică în automat există o cale de lungime de la starea inițială la una dintre stările finale, marcată cu simboluri de lanț . Această cale nu poate fi simplă, trebuie să treacă exact prin stare, în timp ce automatul are stări. Aceasta înseamnă că această cale trece de cel puțin două ori prin aceeași stare a automatului , adică există un ciclu cu o stare care se repetă pe această cale. Să fie aceasta o stare care se repetă .
Să împărțim lanțul în trei părți, astfel încât , unde este sublanțul care se transferă de la stat înapoi la stat și este sublanțul care se transferă de la stare la starea finală. Rețineți că ambele și pot fi goale, dar subșirul nu poate fi gol. Dar atunci este evident că automatul trebuie să permită și lanțul , deoarece subșirul repetat urmează din nou calea ciclică de la la , precum și lanțul și oricare dintre forme .
Acest raționament constituie dovada lemei de pompare.
O altă formă a acestei leme, care uneori este mai convenabil de aplicat pentru a demonstra că o anumită limbă nu este automată, pentru o limbă peste un alfabet este următoarea - dacă cazul este valabil:
atunci limbajul este neautomat.
Pentru a demonstra că o limbă nu este automată, se poate folosi și faptul că intersecția limbilor obișnuite este regulată. Astfel, este problematică aplicarea directă a lemei de pompare la limbajul structurilor regulate de paranteze din alfabet , dar intersecția sa cu limbajul dă limbajul , a cărui non-automaticitate rezultă trivial din lema de pompare.