Kleenestjerne
I matematisk logikk og informatikk er kleenestjerna (òg kalla kleenetillukninga og kleeneoperatoren) ein unær operator på ei mengd symbol eller strengar. Operasjonen er ofte skriven som V* der V er mengda det er snakk om. Det er ofte brukt i regulæruttrykk og var òg der operatoren først vart introdusert i tydinga «null eller meir». Kleenestjerna er kalla opp etter den amerikanske matematikaren Stephen Kleene.
Viss V er ei mengd av symbol vil kleenestjerna av V vera mengda over alle strengar over alfabetet av symbolet inkludert den tomme strengen. Dette vert òg kalla språket over alfabetet av dei gjevne symbola.
Viss V er ei mengd av strengar vil V vera den minste mengda av V som inneheld den tomme strengen og som er lukka under operasjonen konkatenering.
Kleenestjerna over mengda V kan òg skildrast som mengda over alle strengar som vert genererte av å konkatenera vilkårlege element i V.
Formell definisjon
endreGjeve ei mengd V, la V vera følgjande mengd. I dette høvet språket av berre den tomme strengen.
,
Definer så følgjande mengd rekursivt og ein vil få tillukninga av denne mengda.
for kvar og ein
Døme
endreKleenestjerna av ei mengd av symbola a, b og c vil vera følgjande uendelege mengd.
{«a», «b», «c»}* = { ε, «a», «b», «c», «aa», «ab», «ac», «bad», «bb», «bc», «ca», «cb», «cc», «aaa», «aab», …}.
Kleenestjerna av ei mengd må ikkje vera uendeleg. Kleenestjerna av den tomme mengda er følgjande mengd
∅* = {ε}
Litteratur
endre- Hopcroft, John E.; Ullman, Jeffrey D. (1979). Introduction to Automata Theory, Languages, and Computation (1st utg.). Addison-Wesley.