TCS에 대해 잘 모르는 분들을위한 TCS 서적 목록 [닫기]


10

automata 이론, 알고리즘, 복잡성 이론 등과 같은 입문 수준에서 TCS에 대해 더 배우고 싶은 사람에게 책을 추천해야하는 경우 관심이 있고 더 배우고 싶은 사람들에게 어떤 책을 추천 하시겠습니까? TCS이지만 노출되지 않았습니까?


2
CW 질문이어야한다고 생각합니다.
Gigili

1
이 질문을 관리하는 방법에 대한 이 메타 토론을 참조하십시오 .
Raphael

3
cstheory.SE는이 고급 목록을 너무
ULI


2
@Gigili No. CW로 사용되던 책 목록이지만 더 이상 수행되지 않습니다. 내가 링크 한 블로그 게시물을 읽으십시오.
Gilles 'SO- 악마 그만해'

답변:


9

기술적 세부 사항에 대해 자세히 다루지 않고 일반적인 소개를 원한다면 David Harel의 알고리즘 : 컴퓨팅의 정신을 제안 합니다. 그 후, 이것은 내가 가장 좋아하는 목록입니다.

  • Michael Sipser의 계산 이론 소개 : 오토마타 이론, 계산 가능성 및 복잡성에 대한 최고의 소개.
  • 알고리즘 기술적 증거보다는 직관에 강한 초점 알고리즘에 가장 직관적 소개 : S. 다스 굽타, CH 파파 디미트리 오우, 및 UV Vazirani에 의해.
  • Jon Bentley의 Programming Pearls : 이것은 알고리즘에 대한 교과서가 아니지만 실제 프로그래머를 자극하는 실제 문제를 해결하기 위해 알고리즘 설계 기술을 사용하는 방법을 아름답게 보여줍니다. :-) 프로그래밍에 대한 사전 지식이있는 경우 좋은 출발일 수 있습니다.

DPV가 아직 인쇄되지 않았습니다. 일반적으로 알려져 있습니까?
Raphael

이 답변의 점수로 인해 답변을 집계 답변에 포함했습니다 . 명확성을 위해 답변을 삭제하십시오.
Raphael

@Raphael DPV는 몇 년 동안 인쇄되어 왔지만 여전히 온라인에서 잘 구할 수 있습니다. 아마존과 같은 상업용 웹 사이트에 연결하지 않으려 고했습니다.
Dai

@ Dai : 알겠습니다. 당신이 링크하는 페이지는 "이것은 곧 우리 교과서에 나오는 두 번째 초안입니다."라고 말합니다.
Raphael

7

Clarke의 책은 TCS 배경이없는 사람에게는 너무 무겁습니다. 나는이 책을 이해하기 어려운 박사 과정 학생들을 알고있다.
다이

@ Dai, 당신 말이 맞을 것입니다. Baier의 Model Checking Principles of Model Checking
Daniil

논리 및 / 또는 오토마타의 기본 사항없이 모델 검사를 이해할 수 있습니까?
Raphael

1
드래곤 북은 확실히 좋은 참고 자료입니다. 이론적으로는 충분합니까? (정직하게 모르겠습니다)
Raphael

@Raphael "원칙"은 논리 (적어도 필요한 지식)와 오토마타에 대해 소개합니다. 꽤 큰 책이기도합니다. ~ 980 페이지입니다. The Dragon Book은 컴파일러가 이론적 인 영역이라고 생각하지 않습니까?
Daniil

6

알고리즘 분석에 필요한 수학을 위해서는 GKP를 권장합니다.

Graham, Knuth, Patashnik
콘크리트 수학 (기본) 알고리즘에 필요한 거의 모든 수학을 포괄적이고 고품질로 처리합니다. 이 책은 재미있는 읽기이며 풍부한 운동 (및 솔루션)을 포함합니다.


이 책을 읽으려고했지만 마음에 들지 않았습니다. 왜냐하면 모든 책이 매우 서투르고 밀집되어 있었기 때문입니다. 나는 단지 수학의 아름다움을 느끼지 못했습니다. 논리주의 또는 Dummit & Foote의 추상 대수학에 대한 Sipsers의 automata 이론 또는 Smullyan의 저서와 비교하십시오. 어쩌면 그저 나일지도 몰라
Daniil

나는 두 번째 Daniil입니다. 이론가들을위한 훌륭한 도구 모음입니다 . 그러나 초보자에게는 즐기기에는 너무 건조하고 기술적입니다. 나는 그들 자신의 영혼을 가지고있는 것 같아서 위에서 언급 한 책을 정말 좋아합니다. 그들은 누군가가 당신에게 이야기하고 재미있는 이야기를하는 것처럼 읽습니다.
Dai

불행히도, 구조적 유도, 합동, 도메인 이론 및 이론 B 스타일 TCS에 필요한 모든 것을 다루지는 않습니다.
Dave Clarke

@DaveClarke : 맞습니다. 나는 수학 수학 책에 그 중 어느 것도 포함될 것이라고 확신하지 못합니다. 그러나 GKP는 cs-math book이어야합니다. 논리도 포함되어 있지 않으므로 약간의 문구를 바꿔야합니다.
Raphael

2
@DaveClarke 이론 B 수학에 관한 책을 추천 해 주시겠습니까?
Daniil

5

알고리즘 4. 에디션 R. Sedgewick

알고리즘 분석 소개 P. Flajolet, R. Sedgewick

Automata 이론, 언어 및 계산 소개 JE Hopcroft, JD Ullman, (R. Motwani)
1979 년 초판에는 2001 년 초판에서 누락 된보다 이론적 인 결과가 있습니다. 세 번째 Ed를 아직 보지 않았습니다.

공식 언어 이론 소개 MA Harrison
그것은 1978 년에 왔지만 여전히 목록에서보고 싶습니다.

Logicomix : 진실에 대한 서사적 검색 A. Doxiadis, CH Papadimitriou
완전히 대단하기 때문에!

다시 1979
Garey and Johnson의 컴퓨터 및 다루기 힘든 : NP- 완전성 이론에 대한 가이드

나는 목록에 TAoCP를 갖고 싶지만 Don Knuth의 세심한 접근 방식이 "입문"으로 간주 될 수있는 것이 아니라고 걱정합니다. 슬프게도 ...


Logicomix는 분명히 보석이며 다른 사람들은 그렇지 않다고 말하지 않습니다.
Dave Clarke

나는 Logicomix가 Logicians를 "미친"종류의 사람들로 묘사 한 방식을 정말로 좋아하지 않습니다. 올바른 방식으로 설명 될 때 논리의 아이디어는 지구에 이르기까지 매우 단순하고 단순하지만 실제로는 "미친"것이 아닙니다.
Dai

1
@Dai 예를 들어 Gödel, Wittgenstein, Nash 등과 같은 특별한 사람들의 삶을 살펴보십시오. 그들은 매우 훌륭했습니다.
uli

그 중 어느 것이 실제로 초보자 용입니까?
Raphael

@Raphael IMHO 그들 모두, 그렇지 않으면 여기에 게시하지 않았을 것입니다. 일부는 가파른 학습 곡선을 가질 수 있지만 괜찮습니다.
uli

4

TCS 분야에 완전히 익숙하지 않다면 Sipser의 계산 이론 소개 는 확실히 시작하기에 가장 좋은 책입니다. 나는 다른 소개 책을 읽었으며 그 중 어느 것도 Sipser의 문제를 가져 오는 방법에 가깝지 않습니다.

다른 더 구체적이고 좋은 이론적 책은 다음과 같습니다.


위에서 이미 언급했습니다.
Dave Clarke

@DaveClarke 지금 편집하면서했던 것처럼 더 많은 리소스를 목록에 추가 할 계획 이었지만 다시 언급함으로써 Sipser의 책이 얼마나 훌륭한 지 강조하고 싶었 습니다! :-)
codd

1
피어스의 책은 보석입니다. 나는 박사 학위를 냈을 때 주변에 있었으면 좋겠다.
Dave Clarke

@DaveClarke 저는 현재 고문의 추천을 받아 학사 학위 논문으로 사용하고 있으며 매우 인상적입니다!
codd

1
참조 해 주셔서 감사합니다. 오늘 나중에 살펴 보겠습니다. 나는 당신이 KUL의 교수임을 알고 있습니다. 저는 내년에 Secure Software (Veilige 소프트웨어)를 공부하기 위해오고 있습니다. 정말 작은 세상.
codd

3

TCS의 이론 B 부분을 다루는 좋은 책들 :

  • CS의 논리 : 컴퓨터 과학의 논리 : 시스템에 대한 모델링 및 추론 Michael Huth와 Mark Ryan.
    컴퓨터 과학의 다양한 논리 사용에 대한 광범위한 내용. 약 3 학년 학부 수준.

  • 람다 미적분학 : 람다-계산기 및 결합기. J. Roger Hindley와 Jonathan P. Seldin 의 소개 .
    프로그래밍 언어의 기초에 필수적인 성분 인 람다 미적분학을 소개합니다. 약 3 학년 학부 수준.

  • 도메인 이론 으로 이어짐 : BA 캠브리지 대학교 출판사, Davey, BA 및 Priestley의 Lattices and Order 소개 (2 판) . (2002).
    특히 시맨틱으로 작업하려는 경우 매우 유용한 주제를 다룹니다. 다른 주제보다 조금 더 수학적이지만 초기 장은 확실히 고급 학부 수준입니다.

  • 시맨틱 스 : 애플리케이션과 시맨틱 : Hanne Riis Nielson과 Flemming Nielson 의 전채 .
    프로그래밍 언어 의미론에 대한 정말 좋은 소개. 특정 형식론에 깊이 들어가기보다는 광범위한 프레젠테이션을 제공하며 의미론에 대한 다른 책에서는 일반적으로 고려되지 않은 응용 프로그램을 포함합니다. 2 학년 학부생에게 유용 할 수 있습니다.


나는 평판을 얻은 사람들조차 아무도 모릅니다. 그래서 나는 그들이 좋은 것이라고 말할 수는 없습니다 (나는 당신의 말을 받아들이려는 경향이 있음에도 불구하고). : /
라파엘

1
각 책에 대한 설명을 추가했습니다. 모두 좋다.
Dave Clarke

3

점수가 5 점 이상인 답변이 포함 된 집계 답변입니다. 채팅 에서 내용을 토론하십시오 .

알고리즘 및 데이터 구조

  • Cormen, Leiserson, Rivest, Stein의 알고리즘 소개 (2009 년 3 월)
    기본 알고리즘과 데이터 구조 및 분석에 대한 포괄적 인 처리는 너무 깊이 파고 들지 않습니다.
  • 알고리즘 : Dasgupta, Papadimitriou, Vazirani (2006)
    기술 증명보다 직관에 더 중점을 둔 알고리즘에 대한 가장 직관적 인 소개.

계산 및 복잡성

  • Sipser 의 계산 이론 소개 (2005 년 2 판)
    오토마타 이론, 계산 가능성 및 복잡성에 대한 최고의 소개.

공식 언어 및 오토마타

응용 이론


이것은 질문에 대한 답이 아니거나 의도 된 것이라면 좋은 대답이 아닙니다. TCS를 시작한 사람이이 책을 모두 읽어야합니까? 그렇지 않다면 어떻게 선택할 것입니까? 규칙에 의해,이 대답은 가능성이 포함 성장할 수 있음을 유의하십시오 수백 권의 책을
질 'SO-정지 존재 악마'

@Raphael 다른 사람에게 자신의 답변을 삭제하도록 요청하는 것이 예의입니까? 일반적으로 질문하는 사람은 자신의 질문 텍스트를 수정하여 자신이 좋아하는 답변을 집계하는 작업을 수행 할 수 있지만 다른 사람이 자신의 게시물을 삭제하여 자신의 답변을 작성하도록 강요 한 사람은 없습니다. 이 CSS 스택 교환은 이러한 자기애 적 행동으로 인해 이상해졌습니다.
Dai

@Raphael : CW로 만드는 것은 누군가 자신의 답변을 삭제하도록 요구하는 것이 옳지 않습니다. 그것은 내가 온라인으로 무료로 출판 할 책 / 설문지 (Survey / survey paper)를 작성하겠다고 말하는 것과 같다. 그래서 나는 논문을 인용 한 모든 저자들에게 혼란을 피하기 위해 자신의 논문을 쓰라고 요청한다.
Dai

@Raphael CC 라이센스의 어느 곳에도 다른 사람이 내 작업을 중단하도록 요청한 곳이 없습니다. SE에 어떤 종류의 판타지가 있는지는 모르겠지만 Wikipedia는 아닙니다. 나는 당신이이 웹 사이트를 "보통"하기 위해 열심히 일하고 있지만, 다른 사람의 언론과 사생활의 자유를 존중하고 위 / 아래 투표로 나머지를 돌 보도록하십시오. cs SE의 목표는 cstheory SE보다 초보자에게 더 친근한 포럼을 제공하는 것이지만 여기에서 제안한 미세한 수준의 관리로 인해 훨씬 ​​악화되었습니다.
Dai

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.