아직 '암호' 의 기본기를 다루는 내용이다.
- Symbol : 단순 문자 (0,1,a,b,c, ...)
- String : 길이가 유한한 Symbol의 배열 (01010, ababc, 00a1b, ...)
- λ : 길이가 0인 String
- Alphabet : 길이가 유한한 Symbol 집합이고 Σ로 나타낸다. ({0,1}, {a,b,c, ..., z})
- Language : String들의 집합 ({λ, 0, 1, 01, 10, ...})
- Problem : 어떤 조건을 만족하는 Language
problem = language 이다.
problem(language)에 들어있는 원소 x는 그 problem의 정답이다.
problem x1: 입력은 짝수인가?
L1 = {00,10,010, 100, 110 …}
problem x2: 입력은 0으로 끝나는가?
L2 = {00,10,010, 100, 110 …}
L1 = L2
두 문제가 같으려면 두 문제의 정답집합이 같아야 한다.
Alphabet(Σ)은 길이가 유한한 Symbol 집합 -> Alphabet 집합의 크기는 로 표현
String은 위의 Alphabet의 원소들을 유한개 나열하여 나타낼 수 있는 문자열의 집합이고 로 나타낸다.
그렇다면 String의 크기는 로 나타남
Language(Problem)은 String의 부분집합이므로 |2^|Σ^∗||가 된다.
집합론에서 배웠듯이 countable의 power set이 되므로 language는 uncountable 무한집합이다.
DFA (deterministic finite automata)
DFA 는 다음으로 이루어져있다.
- Q : DFA상태들의 집합
- Σ : 입력받은 String
- q : 초기상태 (q∈Q)
- F : AC를 받는 상태들의 집합 (F∈Q, 여러개 가능)
- s : Transition Function
연습문제
Problem X4 : L4={x|x=0i1j,0≤i,j}L4={x|x=0i1j,0≤i,j}, 여기서 a2=aaa2=aa이다.
Problem X4를 AC하는 DFA는 존재하는가?
존재한다면 그 DFA를 그려보자!
L5의 이유:
아래거 다시 이해!
https://riroan.tistory.com/101
DFA M 이 적어도 n개 길이의 문자열을 accept 한다면, n+1개의 상태를 가져야해서 pigeonhole 원리에 의해 모순이다.
'수업 other > 암호학' 카테고리의 다른 글
[암호학] 집합론 (0) | 2024.10.02 |
---|---|
[암호학] Berry Paradox (0) | 2024.09.19 |