Formell grammatik

Från Wikipedia
Hoppa till: navigering, sök

En formell grammatik är ett regelsystem som beskriver ett språk i någon form uttömmande och utan undantag eller inbyggda motsägelser. De primära användningsområdena för en formell grammatik är bland annat inom matematiken, där de kan användas för att formulera bevis och garantera oemotsägbarhet och stringens, och inom datavetenskapen där de används till att definiera programspråk.

Egenskaper[redigera | redigera wikitext]

Till skillnad från grammatikor för naturliga språk (språk som talas människor emellan) beskriver alltså en formell grammatik ett resultat av ett logiskt definitionsarbete - ett formellt språk. Ett formellt språk består av symboler och regler för hur dessa symboler kan kombineras. Närmast till hands ligger att dra paralleller mellan symboler i formella språk och ords tillhörighet vad beträffar satsdelar och ordklasser i ett naturligt språk.

En grammatik för ett naturligt språk beskriver - så långt möjligt - ett språk som ofta har levt sitt eget liv under lång tid och påverkats både av tidens skiften och av diverse användningsområden - och felanvändningar. En grammatik för ett naturligt språk kan därför aldrig bli exakt och uttömmande, vilket en välgjord formell grammatik är.

Användningsområden[redigera | redigera wikitext]

De datorer vi använder idag har den inbyggda egenskapen att de förutsätter att de programspråk vi använder till att skapa program är fria från oregelbundenheter, oavgörbarheter och inre motsägelser, och sålunda också att dessa språk är formellt definierade.

Formella grammatikor beskrivs med fördel på så kallad BNF-notation. Man kan också beskriva en formell grammatik i termer av en tillståndsmaskin med ett ändligt antal tillstånd och övergångar, en så kallad Finite State-maskin.