{{위키데이터 속성 추적}}
[[컴퓨터 과학]]에서 '''선형유한 자동 기계'''(linear bounded automaton, '''LBA''')는 계산 능력을 제한한 [[튜링 기계]]의 일종이다.

== 동작 ==
선형유한 자동 기계는 다음 세 가지 조건을 만족하는 [[비결정론적 튜링 기계]]이다.
* 입력 문자 중에 왼쪽 끝 표시와 오른쪽 끝 표시의 역할을 하는 2개의 특별 기호가 있다.
* 끝 표시 위에 다른 기호를 덮어쓸 수 없다.
* 왼쪽 끝 표시보다 왼쪽으로 가거나 오른쪽 끝 표시보다 오른쪽으로 갈 수 없다.<ref name="Hopcroft.Ullman.1979">{{서적 인용| author1=John E. Hopcroft| author2=Jeffrey D. Ullman| title=Introduction to Automata Theory, Languages, and Computation| year=1979| publisher=Addison-Wesley| isbn=978-0-201-02988-8| url-access=registration| url=https://archive.org/details/introductiontoau00hopc}}</ref>{{rp|225}}
즉, 일반적인 튜링 기계처럼 무한한 길이의 테이프 위에서 계산하지 못하고, 테이프에서 입력 내용과 양쪽 끝 표시를 포함하는 부분 안에서만 계산할 수 있다.

이보다 덜 제한적인 또다른 정의가 있다.
* 튜링 기계와 마찬가지로, 선형유한 자동 기계는 다음 요소로 구성된다.
** 칸들로 이루어진 테이프. 테이프의 각 칸에는 유한한 알파벳에서 나온 기호 하나를 기록할 수 있다.
** 테이프 헤드. 테이프 헤드는 좌우로 움직이면서 칸에 있는 기호를 읽거나 다른 기호를 덮어쓸 수 있다.
** 유한한 수의 상태. 현재 상태와 헤드가 읽은 기호에 따라 기계의 다음 동작이 정해진다.
* 튜링 기계와 달리, 선형유한 자동 기계가 사용할 수 있는 테이프의 길이는 입력의 길이에 대한 일차함수로 제한된다. ‘선형유한’이라는 이름은 여기서 나온 것이다.<ref name="Hopcroft.Ullman.1979"/>{{rp|225}}

이러한 제한 때문에 선형유한 자동 기계는 무한한 테이프 길이를 가정하는 튜링 기계에 비해 현실의 [[컴퓨터]]와 더 비슷하다.

[[선형 가속 정리]] 때문에 위의 두 가지 정의는 사실 똑같은 계산 능력을 지닌다.<ref name="Hopcroft.Ullman.1979"/>{{rp|225}}

== 선형유한 자동 기계와 문맥 의존 언어 ==
선형유한 자동 기계는 [[문맥 의존 언어]]에 대응하는 기계이다.<ref name="Hopcroft.Ullman.1979"/>{{rp|225-226}} 문맥 의존 언어를 만드는 [[형식 문법]]에 대한 제약은 하나뿐으로, 어떤 생성 규칙도 문자열을 더 짧은 문자열로 바꿔선 안 된다는 것이다. 따라서 문맥 의존 언어에 속한 문자열의 도출 과정에서는 그 문자열보다 더 긴 중간 단계가 나타나지 않는다. 이러한 문법은 선형유한 자동 기계와 일대일 대응하므로, 선형유한 자동 기계가 어느 문자열을 인식하는 데는 이 문자열을 입력할 테이프 공간보다 더 많은 공간이 필요하지 않다.

== 역사 ==
1960년에 [[존 마이힐]]은 오늘날 결정론적 선형유한 자동 기계라 불리는 개념을 도입했다.<ref>{{보고서 인용| author=John Myhill | title=Linear Bounded Automata | institution=Wright Patterson AFB, Wright Air Development Division, Ohio | type=WADD Technical Note | number=60-165  | date=June 1960 }}</ref> 1963년에 [[피터 랜드웨버]]는 결정론적 선형유한 자동 기계가 수용하는 언어들이 문맥 의존 언어임을 증명했다.<ref>{{저널 인용| author=P.S. Landweber | title=Three Theorems on Phrase Structure Grammars of Type 1 | journal=Information and Control | volume=6 | number=2 | pages=131–136 | year=1963 | doi=10.1016/s0019-9958(63)90169-4| doi-access=free }}</ref> 1964년에 [[구로다 시게유키]]는 보다 일반적인 개념인 (비결정론적) 선형유한 자동 기계의 개념을 도입하고, 랜드웨버의 증명이 비결정론적 LBA에도 적용될 수 있다고 지적했으며, 비결정론적 LBA가 수용하는 언어들의 집합이 정확히 문맥 의존 언어들의 집합과 같음을 증명했다.<ref>{{저널 인용| author=Sige-Yuki Kuroda | authorlink=구로다 시게유키 |title=Classes of languages and linear-bounded automata | journal=Information and Control | volume=7 | number=2 | pages=207–223 | date=Jun 1964 | doi=10.1016/s0019-9958(64)90120-2| doi-access=free }}</ref><ref>{{서적 인용|author=Willem J. M. Levelt| title=An Introduction to the Theory of Formal Languages and Automata|url=https://books.google.com/books?id=tFvtwGYNe7kC&pg=PA126|year=2008|publisher=John Benjamins Publishing|isbn=978-90-272-3250-2|pages=126–127}}</ref>

== LBA 문제 ==
구로다가 1964년 논문에서 제기한 두 가지 문제는 이후 “LBA 문제”라는 이름으로 유명해졌다. 첫번째 LBA 문제는 일반적인 LBA와 결정론적 LBA가 수용하는 언어들의 집합이 같냐는 것이었다. [[계산 복잡도 이론]]의 용어로는 다음과 같이 간단히 나타낼 수 있다.
:'''첫번째 LBA 문제''': '''[[NSPACE]]'''(O(n)) = '''[[DSPACE]]'''(O(n))인가?
두번째 LBA 문제는 LBA가 수용하는 언어들의 집합이 여집합 연산에 대해 닫혀 있냐는 것이었다.
:'''두번째 LBA 문제''': '''[[NSPACE]]'''(O(n)) = '''co-[[NSPACE]]'''(O(n))인가?
구로다가 지적했듯이, 두번째 LBA 문제의 답이 ‘거짓’이라면 첫번째 문제의 답도 ‘거짓’이다. 그러나 20년 뒤에 증명된 [[이머만-셀레프체니 정리]]에 따라 두번째 문제의 답은 ‘참’으로 드러났다.<ref>{{인용| last = Immerman | first = Neil | authorlink = 닐 이머만 | doi = 10.1137/0217058 | issue = 5 | journal = SIAM Journal on Computing | mr = 961049 | pages = 935–938 | title = Nondeterministic space is closed under complementation | url = http://www.cs.umass.edu/~immerman/pub/space.pdf | volume = 17 | year = 1988}}</ref><ref>{{인용| last = Szelepcsényi | first = Róbert | journal = Acta Informatica | pages = 279–284 | title = The method of forcing for nondeterministic automata | volume = 26 | issue = 3 | year = 1988}}</ref> 현재까지도 첫번째 LBA 문제는 해결되지 않았다. [[사비치의 정리]]에 따라 '''NSPACE'''(O(n)) ⊆ '''DSPACE'''(O(n<sup>2</sup>))이라는 사실은 알려져 있다.<ref>{{서적 인용|last1= Arora |first1= Sanjeev |last2= Barak |first2= Boaz |url= http://www.cs.princeton.edu/theory/complexity/ |title= Complexity Theory: A Modern Approach |publisher= Cambridge University Press |date= 2009 |isbn= 978-0-521-42426-4 }}</ref>

== 각주 ==
{{각주}}

== 외부 ==
* [https://web.archive.org/web/20070205070159/http://www.cs.uky.edu/~lewis/texts/theory/automata/lb-auto.pdf Linear Bounded Automata] by [https://web.archive.org/web/20070109012311/http://www.cs.uky.edu/~lewis/ Forbes D. Lewis]
* [http://www.cs.uiowa.edu/~fleck/PartIIIxpar/sld006.htm Linear Bounded Automata] slides, part of [http://www.cs.uiowa.edu/~fleck/PartIIIxpar/ Context-sensitive Languages] by [http://www.cs.uiowa.edu/~fleck Arthur C. Fleck]
* [http://www.seas.upenn.edu/~cit596/notes/dave/chomsky2.html Linear-Bounded Automata] {{웨이백|url=http://www.seas.upenn.edu/~cit596/notes/dave/chomsky2.html |date=20210118173653 }}, part of Theory of Computation syllabus, by David Matuszek

{{형식언어 및 형식문법}}

[[분류:오토마타 이론]]