30 lines
1.1 KiB
Markdown
30 lines
1.1 KiB
Markdown
---
|
|
title: "Cyclic language"
|
|
chunk: 1/1
|
|
source: "https://en.wikipedia.org/wiki/Cyclic_language"
|
|
category: "reference"
|
|
tags: "science, encyclopedia"
|
|
date_saved: "2026-05-05T11:32:26.009151+00:00"
|
|
instance: "kb-cron"
|
|
---
|
|
|
|
In computer science, more particularly in formal language theory, a cyclic language is a set of strings that is closed with respect to repetition, root, and cyclic shift.
|
|
|
|
|
|
== Definition ==
|
|
If A is a set of symbols, and A* is the set of all strings built from symbols in A, then a string set L ⊆ A* is called a formal language over the alphabet A.
|
|
The language L is called cyclic if
|
|
|
|
∀w∈A*. ∀n>0. w ∈ L ⇔ wn ∈ L, and
|
|
∀v,w∈A*. vw ∈ L ⇔ wv ∈ L,
|
|
where wn denotes the n-fold repetition of the string w, and vw denotes the concatenation of the strings v and w.
|
|
|
|
|
|
== Examples ==
|
|
For example, using the alphabet A = {a, b }, the language
|
|
|
|
is cyclic, but not regular.
|
|
However, L is context-free, since M = { an1bn1 an2bn2 ... ank bnk : ni ≥ 0 } is, and context-free languages are closed under circular shift; L is obtained as circular shift of M.
|
|
|
|
|
|
== References == |