形式语言与自动机 02 Preliminaries

Preliminaries

SETS

  • Union
  • Intersection
  • Difference
  • Complement 补

A ‾ ‾ = A \overline{\overline{A}} = A A=A

A ∪ B ‾ = A ‾ ∩ B ‾ \overline{A \cup B} = \overline{A} \cap \overline{B} AB=AB

A ∩ B ‾ = A ‾ ∪ B ‾ \overline{A\cap{B}} = \overline{A} \cup \overline{B} AB=AB

Empty, Null Set

空集 ∅ \emptyset

Subset and Proper Subset

Disjoint Sets

A ∩ B = ∅ A\cap B = \emptyset AB=

Set Cardinality 集合的势

∣ A ∣ |A| A 表示集合A中的元素个数

Powersets 幂集

S = a , b , c S = {a,b,c} S=a,b,c

P ( S ) = 2 S = S = { ∅ , { a } , { b } , { c } , { a , b } , { a , c } , { b , c } , { a , b , c } } P(S) = 2^S = S = \{ \emptyset , \{ a \}, \{ b \} , \{ c \} , \{a,b \},\{a,c\},\{b,c\},\{a,b,c\} \} P(S)=2S=S={,{a},{b},{c},{a,b},{a,c},{b,c},{a,b,c}}

Observation $ |2^S| = 2^{|S|}$

笛卡尔乘积

∣ A × B ∣ = ∣ A ∣ × ∣ B ∣ |A\times B| = |A| \times |B| A×B=A×B

FUNCTIONS

A − > B A -> B A>B

  • If A = domain

    then f is a total function

    otherwise f is a partial function

  • f : A -> B is a bijection 双射

    • f is total
    • for all a and a’ in A, a != a’ implies f(a) != f(a’)
    • for all b in B, there is a in A with f(a) = b

Big O Notation

Ω ( n ) \Omega(n) Ω(n) 下界

O ( n ) O(n) O(n) 上界

θ ( n ) \theta(n) θ(n)

rate of growth

RELATIONS

Given two sets, A and B, a relation R is any subset of A x B, in orther words, R ⊆ A × B R\subseteq A \times B RA×B

Equivalence Classes

  • Reflexive: x R x
  • Symmetric: x R y -> y R x
  • Transitive: x R y and y R z -> x R z

等价关系

等价类

  • partial order 偏序关系

    reflexive, transitive and antisymmetric

  • total order 全序关系

  • linear order 线性关系

GRAPHS

  • walk
  • path 无重复边
  • simple path 无重复节点
  • cycle 环
  • simple cycle 仅根节点重复

  • 可达性

Trees

root,leaf,height

PROOF TECHNIQUES

  • 数学归纳
  • 反证法
  • 鸽巢原理 (Pigeon Hole Principle)

Languages

  • A language is a set of strings
  • String: A sequence of letters/symbols
    • Examples: “cat”,“dog”…
    • Symbols are defined over an alphabet:

Alphabets and Strings

String Operations

  • Connection
  • Reverse

String length

  • Length: The length of a string x is the number of symbols contained in the string x, denoted by |x|

    w = a 1 a 2 a 3 . . . a n → ∣ w ∣ = n w = a_1 a_2 a_3...a_n \rightarrow |w| = n w=a1a2a3...anw=n

The Empty String

  • A string with no letters: λ \lambda λ or ϵ \epsilon ϵ
  • Observations: ∣ λ ∣ = 0 |\lambda| = 0 λ=0

λ w = w λ = w \lambda w = w \lambda = w λw=wλ=w

Substring

Prefix and Suffix (x = ysz)

Another Operation

w n = w w w . . . w w^n = www...w wn=www...w (n个w)

( a b b s ) 2 = a b b a a b b a (abbs)^2 = abbaabba (abbs)2=abbaabba

w 0 = λ w^0 = \lambda w0=λ

Solve equation 011x = x011

  • If x = λ x = \lambda x=λ ,then ok.

  • If ∣ x ∣ = 1 |x| = 1 x=1,then no solution.

  • If ∣ x ∣ = 2 |x| = 2 x=2,then no solution.

  • If ∣ x ∣ ≥ 3 |x| \ge 3 x3,then x = 011y . Hence,

    011x = 011y011. So, x = y011.

    Hence, 011y = y011.

  • x = ( 011 ) k f o r k ≥ 0 x = (011)^k \quad for \quad k \ge 0 x=(011)kfork0

The * Operation

$\sum ^* : $ the set of all possible strings from alphabet $ \sum$

Example:

∑ = { a , b } \sum = \{a,b\} ={a,b}

∑ ∗ = { λ , a , b , a a , a b , b a , b b , a a a . . . } \sum^* = \{ \lambda, a,b, aa,ab,ba,bb,aaa...\} ={λ,a,b,aa,ab,ba,bb,aaa...}

The + Operation

∑ + = ∑ ∗ − { λ } \sum ^+ = \sum ^ * - \{ \lambda \} +={λ}

Languages

A language is a set of strings, is any subset of ∑ ∗ \sum^*

Note that: ∅ = { } ≠ λ \emptyset = \{ \} \ne {\lambda} ={}=λ

Operations on Languages

Reverse

L R = { w R : w ∈ L } L^R = \{ w^R:w\in L \} LR={wR:wL}

Concatenation

L 1 L 2 = { x y : x ∈ L 1 , y ∈ L 2 } L_1 L_2 = \{ xy: x\in L_1, y \in L_2 \} L1L2={xy:xL1,yL2}

Anothor Operation

L n = L L . . . L L^n = LL...L Ln=LL...L

Special case: L 0 = { λ } L^0 = \{ \lambda \} L0={λ}

Star-Closure(Kleene *)

$L^* = L^0 \cup L^1 \cup L^2 … L^n $

L + = L ∗ − { λ } L^+ = L^* - \{ \lambda \} L+=L{λ}

补充

证明1:

R ∪ ( S ∩ T ) = ( R ∪ S ) ∩ ( R ∪ T ) R\cup(S\cap T) = (R \cup S) \cap (R \cup T) R(ST)=(RS)(RT)

b e g i n : begin: begin:

当:

E : = R ∪ ( S ∩ T ) F : = ( R ∪ S ) ∩ ( R ∪ T ) E := R\cup (S \cap T) \quad F:= (R\cup S) \cap(R \cup T) E:=R(ST)F:=(RS)(RT)

x ∈ R ∪ ( S ∩ T ) x \in R \cup(S\cap T) xR(ST)

x ∈ R o r x ∈ ( S ∩ T ) x\in R \quad or \quad x\in (S\cap T) xRorx(ST)

x ∈ R ∪ S a n d x ∈ R ∪ T x\in R\cup S \quad and \quad x\in R \cup T xRSandxRT

x ∈ ( R ∪ S ) ∩ ( R ∪ T ) x\in (R\cup S) \cap (R \cup T) x(RS)(RT)

仅当:

bulabula…

e n d end end

证明2:

不存在整数对a和b,使得 a m o d    b = b m o d    a a \mod b = b \mod a amodb=bmoda

当需要处理成双的对象时,利用对称性常常有可能简化对象之间的关系,例如假设a<b(不要忘记了a = b)

更一般的整数归纳法

  1. 利用多个基础情形,对于某个 j > i j \gt i j>i,证明 S ( i ) , S ( i + 1 ) . . . S ( j ) S(i),S(i+1)...S(j) S(i),S(i+1)...S(j)

  2. 证明 S ( n + 1 ) S(n+1) S(n+1)时,利用所有命题

    S ( i ) , S ( i + 1 ) , . . . S ( n ) S(i),S(i+1),...S(n) S(i),S(i+1),...S(n)

    而不是只利用 S ( n ) S(n) S(n)

  • 结构归纳法
  • 互归纳

证明3 判定一个给定的串是否属于某个具体语言的提问

如果 ∑ \sum 是字母表, L L L ∑ \sum 上的语言,问题 L L L就是:给定 ∑ ∗ \sum^* 中的一个串 ω \omega ω ,判定串 ω \omega ω是否属于L

"问题"的定义的一个可能不令人满意的方面是:人们常常不认为问题是判定问题(以下是否为真),而是认为是计算或者变换某个输入的请求(找出完成任务的最佳方法)

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值