책: Susanna Epp, "Discrete Mathematics with Applications", 5판 (2019년)
읽은 목적: 제 배경은 전자공학쪽인데, CS와 수학쪽에 관심이 있어서 그 쪽 관련 책들을
읽고 싶었고, 그래서 가장 만만하게 보였던 이산수학 책부터 읽음.
다만, 시간 관계상 챕터 뒤에 나오는 연습문제들은 대부분 제끼고, 어려워보이거나 흥미가
가는 문제만 몇 개 풀어봄. 대신, 본문과 본문내의 예제 문제들은 천천히 다 읽고 풀어봄.
각 챕터의 내용을 더 깊게 공부할 예정이므로 (아래 설명), 설명이 부족한 것 같거나 잘 이해가
안됐던 몇몇 부분은 이해 안하고 걍 넘김.
책 소개: 4판이 2010년에 출판되고 한동안 소식이 없다가 올해 초에 5판이 출판됨.
4판과 5판의 큰 차이점은 5판에 Regular Expression 챕터가 추가되었다는 것 같음.
개비쌈. 아마존 기준 250달러 가까이 함. 이게 요새 출판사들(Dover 제외)의 트렌드인 것 같음.
어차피 학생들이 책 사고나서는 중고로 되팔고 사고 하기 때문인지.. 200달러 넘게 책정하고
도서관 구비용으로 구입하는 것에서 이윤을 남기려나 봄..
대체적인 내용은 챕터별로
1. 간략적인 소개와 함께 Set, Relation 등에 대한 내용 설명
2. Statement와 논리적 관계 (and, or, ->, converse, inverse, contrapositive 등등)
3. Quantified statements
4. 기초적인 정수론
5. Sequence, mathematical induction, recursion
6. 집합론
7. 함수 (injective, surjective, one-to-one 등등)
8. Relations
9. 확률
10. 기초적인 그래프 이론
11. 알고리즘 complexity 분석
12. Regular expressions (Regex)와 Finite-State Automata
공부 방향: 이산수학에서 배우는 내용이 무엇인지 습득함. 그 후에는 각 분야별로 더 깊게 공부.
이 책을 다 읽고나서 앞으로 더 자세히 봐야겠다 싶은 생각이 든 책들의 분야는
집합론(+논리), 정수론, 확률론, 그래프 이론, 알고리즘 책들, Regex, Finite Automata
(이 중에서 이미 어느정도 공부한 분야도 있긴함)
그렇기 때문에 각 챕터 뒤에 나오는 연습문제들은 대충 훑고 넘어감. 그 책들 볼 때는
그 책들에서 나오는 연습문제들을 대부분 풀어볼 예정.
서평: Discrete Mathematics 하면 대개 Rosen의 책이나 Epp의 책을 추천하는 것 같음.
그래서 Epp을 골랐는데 (Rosen도 대충 훑어볼 예정), 혼자서 공부하기에 무리가 없을 정도로
잘 쓰여진 것 같음. 예제 문제들도 적당한 난이도로 구성되어 있음. 다만 새로 추가된 챕터 12의
Regex와 Finite Automata쪽이 좀 약해보였음. 약해보인다는건, 내용이 갑자기 어려워지는
부분이 있음. 다만, 어차피 이산수학은 더 깊은 내용으로 가기 위한 기초부분이므로, 그런 부분은
해당 과목 (Finite Automata)에서 체계적으로 공부하면 될 것 같음.
전체적으로 잘 쓰여진 책인 것 같음. CS쪽도 분야가 방대하기에 각 분야의 전문지식을 익히려면
더 심화된 책들을 많이 봐야겠지만, 이산수학이라는 과목의 교재로써는 적당한 것 같음.
다만, 수학 전공자들이 볼 필요는 없을 것 같음. 어차피 집합론/정수론/확률론/조합론(그래프)은
다들 전공으로 공부할 것이고, 알고리즘은 그 쪽 관련 전문책들이 워낙 많으니 (The Art of Programming이나
Introduction to Algorithms) 따로 보면 되고, Regex와 Finite Automata는 관심있는 사람들만 보면 될테니..
학부생이 학교 강의를 듣는다면, 대부분의 연습문제를 풀어보면 좋을 것 같음. 지루하게 반복되는
문제들도 보이지만, 대부분의 연습문제가 익힌 내용을 복습하고 확인하기에 알맞게 구성되어 있는것으로 보임.
간단히 복습중이고, 다 하면 Rosen의 책을 급속도로 읽은 후 소감을 올리겠음..
Rosen책 좋았던걸로 기억 벌써 그책본지 2년이 지나가는데 Rosen 이산이랑 정수책은 프로그래밍 연습문제가 많아서 cs전공자한테는 매력적이였어요. 물론 프로그래밍연습문제를 원한다면 rosen을 볼게 아니라 crls같은 cs 학부용 알고리즘책을 보는게 더 좋겠지만
개추 - dc App