在数理逻辑和计算机科学中,克林闭包(或称克林星、克林算子)是一种一元运算,可以是对字符串集或符号或字符集的运算。在数学中,它通常被称为自由幺半群构造。Kleene星对集合V的应用写为V*。它被广泛用于正则表达式,这是斯蒂芬·克莱恩(Stephen Kleene)引入它来描述某些自动机的上下文,在这里它意味着“零次或多次重复”。
(仅由空字符串组成的语言)
之后递归地定义集合:
则克林闭包
的定义为:{"ab","c"} = { ε, "ab", "c", "abab", "abc", "cab", "cc", "ababab", "ababc", "abcab", "abcc", "cabab", "cabc", "ccab", "ccc", ...}.
{"a", "b", "c"} = { ε, "a", "b", "c", "aa", "ab", "ac", "ba", "bb", "bc", "ca", "cb", "cc", "aaa", "aab", ...}.
∅ = {ε}.