컴퓨터 이론에서 "무한"언어 또는 "유한"언어라는 문구를 사용하는 것이 확실하지 않습니다.
문제의 근본 원인은 와 같은 언어 가 무한한 (하지만 셀 수있는) 문자열을 생성 할 수 있다는 점에서 무한하다는 것입니다. 그러나 여전히 유한 상태 자동 장치로 인식 할 수 있습니다.L={ab}∗
또 다른 문제는 공식 언어 이론이 "언어"라는 용어를 사용하는 방식이 다소 특이하다는 것입니다.
공식 언어 이론을 가진 사람들을 제외한이 세상의 모든 사람들에게 언어는 의사 소통에 사용되는 발언 시스템이므로 각 발언은 형식 ( 구문 )과 의미 ( 의미 ) 를 갖습니다 . 최소한 컴퓨터 과학에 사용되는 형식 언어 이론은 공식적으로 언어 구문 을 정의하는 가장 좋은 방법에 관한 문제에 전념합니다 . 그것은 언어의 구문 (발화의 모습)과 언어의 구문을 정의하는 데 사용되는 정규식과 같은 형식주의 (언어!) 사이의 관계에 관한 것입니다.
따라서 공식 언어 이론에서 '언어'는 단순히 '문자열 집합'으로 정의됩니다. 일반적으로 언어의 문자열에 의미를 할당하지 않습니다.
동시에 정규 표현식과 같은 언어를 설명하는 데 사용되는 형식은 이러한 의미로 언어를 형성합니다. 예를 들어 모든 정규 표현식은 문자열이므로 정규 표현식 세트는 언어입니다. 그러나 이러한 형식주의를 들어, 언어의 문자열은 할 의미가 있습니다 예를 들어, 모든 정규 표현식의 의미는 의미 언어입니다.
ab{ab}aba b{ a b }
{ a b }※※엘엘엘엘{ a b }※{ ϵ , a b , a b a b , a b a b a b , a b a b a b a b , … }. It is infinite, but using the operator ※유한 한 방식으로 설명 할 수 있습니다. { a b }※.
또한 정규 표현식을 사용하여이 언어를 설명 할 수 있습니다. ( a b )※. 모든 정규식과 마찬가지로이 문자열은 유한 문자열이지만 대부분의 정규식과 마찬가지로※ 연산자, 무한 언어를 설명합니다.
공식 언어의 텍스트가 다음과 같은 표현식을 사용할 때마다 ( a b )※ that denotes a language, ask yourself whether it is discussing the regular expression itself (e.g. how it is constructed, which language it denotes, etc.) or whether it merely uses the regular expression to refer to the language being denoted.
ab*
(Kleene star)는 문자열 조합을 0 개 이상 가질 수 있음을 의미 하기 때문에 무한ab
합니다. 여기에는 가능한 무한한 수의 문자열이 포함됩니다 : { "", ab ^ 1, ab ^ 2, ab ^ 3, ... , ab ^ n}. 그러나 실제로는 무한 문자열을 생성 할 수있는 방법이 없기 때문에이 언어를 인식하는 FSM을 작성할 수 있습니다. 기계에서 처리 할 때 모든 문자열은 유한해야하지만 언어 자체를 유한하게 만들지는 않습니다. 언어의 무한 성은 이론적입니다.