Limbaj formal

De la Wikipedia, enciclopedia liberă.
Salt la navigare Salt la căutare

Prin limbaj formal , în matematică , logică , informatică și lingvistică , înțelegem un set de șiruri construite pe unalfabet , adică pe un set de obiecte practic simple care se numesc caractere, simboluri sau litere. De multe ori se presupune că alfabetul pe care este construit limba este un set finit.

Istorie

Primul limbaj formal despre care știm este introdus de Gottlob Frege în Begriffsschrift (1879), tradus în italiană ca „Ideografie” și pe care subtitlul îl definește ca „un limbaj în formulele gândirii pure, în imitarea celei aritmetice”.

Teoria limbajelor formale s-a născut în anii 1950 în domeniul lingvisticii, ca mod de a înțelege regularitățile limbilor naturale.

Descriere

Caracteristici

În mod formal, un limbaj L este definit ca , unde este (unde asteriscul indică steaua lui Kleene ) reprezintă ansamblul tuturor secvențelor finite ( șiruri sau cuvinte) care pot fi formate cu alfabetul . Un limbaj poate fi de cardinalitate finită , infinită sau zero . Este important să rețineți că limba goală (notată cu ) diferă de limba compusă exclusiv de șirul tăcut (sau cuvânt gol ), notat cu și , sau .

De exemplu, având în vedere alfabetul unele limbi posibile pe acest alfabet sunt:

  • Limbajul gol
  • (limba constând numai din șirul gol)
  • (limbaj finit)
  • (limbaj infinit definit de o expresie regulată )

În general, vom spune că un model formal care poate recunoaște și genera toate și numai șirurile unui limbaj formal acționează ca o definiție a limbajului respectiv. Conform celor două abordări principale ale definiției limbajelor formale, un model poate fi concretizat într-o gramatică formală (abordare generativă) sau într-un automat (abordare de recunoaștere).

Definiția formal language

Un limbaj formal poate fi definit într-o mare varietate de moduri echivalente:

Exemple de limbaje formale

Deși unele exemple de limbaje formale au fost definite mai sus, este posibil să se exprime unele limbaje formale pe În felul următor:

  • Limba tuturor șirurilor care conțin același număr de a și b ;
  • Setul tuturor cuvintelor de pe sau setul gol;
  • Setul de șiruri ale formei cu n număr prim ;
  • Setul de programe într-un anumit limbaj de programare care se dovedesc a fi corecte din punct de vedere sintactic;
  • Setul de intrări care determină oprirea unei anumite mașini Turing

Operațiuni asupra limbajelor formale

Este posibil să se definească unele operații unare sau binare pentru a genera un nou limbaj din limbaje de date. Lasa-i sa fie și două limbi pe un alfabet dat.

  • este concatenarea sau juxtapunerea celor două limbi. Se compune din mulțimea tuturor siruri de caractere vw astfel încât Și .
  • este intersecția dintre și . Se compune din setul tuturor șirurilor , adică toate șirurile conținute în ambele că în .
  • este uniunea dintre și . Se compune din setul tuturor șirurilor , adică toate șirurile care aparțin cel puțin uneia dintre cele două limbi.
  • este complementul limbajului . Se compune din toate corzile , adică toate șirurile de pe alfabet care nu sunt conținute în .
  • este coeficientul corect al din . Se compune din toate șirurile v pentru care există un w în șir astfel încât .
  • este vedeta lui Kleene . Se compune din limbaj , adică toate șirurile de formă astfel încât . Atâta timp cât șirul se schimbă .
  • este reflexia . De sine Și , limba L conține toate șirurile , adică toate șirurile reflectate de .
  • Amestecarea sau amestecarea de și constă din toate șirurile care pot fi scrise în formă astfel încât .

Una dintre cele mai frecvente probleme legate de limbile formale se referă la problema apartenenței . Având un șir w și un limbaj L, verificați dacă este o problemă care implică atât teoria calculabilității, cât și teoria complexității .

Bibliografie

Elemente conexe

Alte proiecte

linkuri externe

Teoria automatelor : limbaje formale și gramatici formale
Ierarhia Chomsky Gramatica formală Limba Automat minim
Tipul-0 (nelimitat) Recursiv enumerabil Mașină Turing
(nelimitat) Recursiv Decider
Tipul 1 Context dependent Context dependent Automat liniar
Tipul 2 Fără context Fără context Automat cu baterie ND
Tipul 3 Regulat Regulat Stări finite
Fiecare categorie de limbă sau gramatică este un subset adecvat al categoriei imediat deasupra acesteia.
Controlul autorității Tesauro BNCF 5999 · LCCN (EN) sh85050802 · GND (DE) 4017848-1 · BNF (FR) cb11967270h (dată) · NDL (EN, JA) 00.576.869