"Introduction to the Theory of Computation" Reading notes - Ch. 2

Chapter 2 is a generalized chapter 1, just like (G)NFA to DFA. 

Combining GNFA|Regular lang., readers should be able to understand PDA|Ctx-Free grammar without too much effort.. Yes, this is what you saw in your compiler classes. With (G)NFA existed, a stack is added for "recording extra info", so to make PushDown Automata more powerful than GNFA, because it "recording extra info" in that stack. 

Make a comparison btw. GNFA and PDA: GNFA is so simple that a lot info is simply "forgotten" after each movement - the visibility of GNFA is limited to "neighbor" states; but with a stack, we have memories of information from the past ! That means, the "linear" style of GNFA (I know, it could be a graph, but it is still directive) becomes a tree, a grammar tree. 

The big star of the 2 chapters: Pumping lemma. It is adopted to prove some language is NOT a Regular | Context-Free language. Essentially a pumping style (no, not gangnam style) reflects its corresponding gist of GNFA or Context-Free grammar: GNFA is essentially a linear (as above) procedure so its pumping is a linear pumping; while Ctx-Free pumping lemma is a recursive (stack like) type of pumping. Smart maths tricks are applied to the 3 conditions in these lemmas. Contradiction from Ch.0 is used as the proof strategy.

P.S. I don't like terminology in this field from the very beginning. Language? Grammar? They remind me of ETS - Educational Testing Service. The first big boss you conquered before your first flight ticket to US.

Anyway, Michael Sipser is an excellent teacher. He knows how students learn theory of computation. For sure he had assignments to his students, which part I totally skipped - don't blame me i have no plan to be a professor.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值