Transcript 0 - KAIST

한글 모아쓰기 automata
세종대왕과 컴퓨터를 연결하다
KAIST
전산학과
최광무
한글과 컴퓨터 역사(II)
• 한글 모아쓰기 오토마타
– 최광무, 한국과학원, 석사논문, 1978
• 한글자판에서 컴퓨터에 입력
– 세종대왕과 컴퓨터를 연결
• 한글 풀어쓰기 논쟁 종식
• 한글 프린터
– Line printer
• 두번 찍기
– 9벌식 dot matrix printer
• 초성(6=(수직+수평+복합)*(받침X+받침O)), 중성(2), 받침(1) 9가지 자
모 별 폰트
• 1970년대 말 상용화, 1980년 중반까지 사용
– 레이저 프린터
• 1980년 중반
• Postscript font, 글자 별 폰트
• 다양한 서체, 폰트…
한글 글자 만들기
•
초성
19자(=단자음(14) + 쌍자음(5))
초성(자음)
ㄱ, ㄴ, ㄷ, ㄹ, ㅁ, ㅂ, ㅅ, ㅇ, ㅈ, ㅊ, ㅋ, ㅌ, ㅍ, ㅎ,
ㄲ, ㄸ, ㅃ, ㅆ, ㅉ
•
중성(모음)
중성
21자(=단모음(10) + 복모음(11))
ㅏ, ㅑ, ㅓ, ㅕ, ㅗ, ㅛ, ㅜ, ㅠ, ㅡ, ㅣ
ㅘ,
ㅝ,
ㅙ,
ㅞ,
ㅐ, ㅒ, ㅔ, ㅖ, ㅚ,
ㅟ,
ㅢ
•
초성복용종성
初聲複用終聲
받침
28자(=1(받침이
없는경우; e) + 홅자음(14) + 겹자음(2) + 복자음(11))
받침(종성;
자음)
ㄱ, ㄴ, ㄷ, ㄹ, ㅁ, ㅂ, ㅅ, ㅇ, ㅈ, ㅊ, ㅋ, ㅌ, ㅍ, ㅎ, ㄲ, ㅆ
ㄳ, ㄵ,
ㄺ,
ㅄ,
ㄶ
ㄻ,
ㄼ, ㄽ, ㄾ, ㄿ, ㅀ
e
•
한글 자수 19 * 21 * 28 = 1,1172
–
–
한글: Super set이 존재하는 유일한 문자
복모음에 복자음 받침은 허용하지 않는다.(X궳)
•
•
–
19*11*11 = 2299
20% 정도 감소
Uni code
한글의 기본자모
(alphabet; vocabulary)
•
컴퓨터 나 핸드폰 자판에 나오는 자모
–
•
한글 오토마타의 입력
기본자모 24자의 경우(자음 14 + 모음 10)
–
–
ㄱ ㅏ ㄱ ㄱ ㄱ = 각꼬 or 갂고
ㄲ 과 ㄱ의 구분이 필요
•
•
•
최소 기본자모 26자(자음 14 + 모음 10 + ㄲ + ㅆ)
–
–
•
자음 14자 + 모음 10자 + 쌍자음 5자
한글 키보드 표준(정부) 33자
–
•
쌍자음 ㄲ 과 ㅆ 만을 받침에 허용
자음 14자 + 모음 10자 + ㄲ + ㅆ
표준 기본자모 29자(자모 24 + 쌍자음 5(ㄲ,ㄸ,ㅃ,ㅆ,ㅉ))
–
•
각꼬 = ㄱ ㅏ ㄱ ㄲ ㅗ
갂고 = ㄱ ㅏ ㄲ ㄱ ㅗ
자음 14자 + 모음 14자(ㅐㅒㅔㅖ) + 쌍자음 5자
휴대폰
–
–
삼성: 모음 3자(∙ㅡㅣ; 천지인)
LG: 모음 5자(ㅏㅗㅡㅣ∙)
매매모호한 경우의 해결책
• 예ㄱㅏㅂㅅㅇㅏ
– 값아
– 갑 ㅅㅇㅏ
• 해결책
– 1. 새로운 기본자모를 추가(ㅄ 혹은 ㅅㅇ)
• 현대한글은 ㄲ을 ㄱ+ㄱ과는 별도로 기본자모에 추가
– 2. 우선순위를 정한다
– 3. 글자 끋남 문자(시간초과 삼성 HP)을 추가
– 4. 종성에서 복자음을 허용하지 않는다
한글 오토마타 입력과 출력
• 입력(Σ): 기본 자모
– 한글 표준 자모
Σ29 = 자음19 ∪ 모음10
• 자음19 = {ㄱ, ㄴ, …, ㅎ, ㄲ, …, ㅉ}
• 모음10 = {ㅏ, ㅑ, …, ㅡ, ㅣ}
– 컴퓨터 자판
Σ33 = 자음19 ∪ 모음14
• 모음14 = {ㅏ, ㅑ, …, ㅡ, ㅣ, ㅐ, ㅒ, ㅔ, ㅖ}
– 삼성핸드폰
Σ11 = 자음7 ∪ v3 ∪ {시간초과(x)}
• 자음7 = {ㄱ,ㄴ,ㄷ,ㅂ,ㅅ,ㅈ,ㅇ}
• 모음3 = {∙, ㅡ, ㅣ}
– LG핸드폰
Σ12 = 자음6 ∪ 모음4 ∪ {획추가(+), 쌍자음(*)}
• 자음7 = {ㄱ,ㄴ,ㄹ,ㅁ,ㅅ,ㅇ}
• 모음6 = {ㅏ, ㅗ,ㅡ,ㅣ}
• 출력(Δ): 초성 + 중성 + 받침
– Δ68 = 초성19 ∪ 중성21 ∪ 받침28
• 초성19 = {ㄱ, ㄴ, …, ㅎ, ㄲ, …, ㅉ}
• 중성21 = {ㅏ, …, ㅣ, ㅐ,ㅒ,ㅔ,ㅖ,ㅢ,ㅘ,ㅙ,ㅚ,ㅝ,ㅞ,ㅟ}
• 받침28 = {ε,ㄱ, ㄴ, …, ㅎ, ㄲ,ㅆ,ㄳ, …, ㅄ}
오토마타 만들기 준비
•
입력 자모의 분류
–
–
•
앞으로 할 일이 같으면 같은(종류의) 자모이다.
서로 다른 상태(state) 수를 줄인다.
입력 모음의 분류
–
–
–
입력
모음10 = {ㅏ,ㅑ,ㅓ,ㅕ,ㅗ,ㅛ,ㅜ,ㅠ,ㅡ,ㅣ}
출력
중성21 = {ㅏ,ㅑ,ㅓ,ㅕ,ㅗ,ㅛ,ㅜ,ㅠ,ㅡ,ㅣ,ㅐ,ㅒ,ㅔ,ㅖ,ㅢ,ㅘ,ㅙ,ㅚ,ㅝ,ㅞ,ㅟ}
입력 모음(모음10) 의 분류
1.
2.
3.
4.
–
•
{ㅛ,ㅠ,ㅣ}
{ㅏ,ㅑ,ㅓ,ㅕ,ㅡ}
{ㅗ}
{ㅜ}
받침을 위하여
입력
자음19 = {ㄱ,ㄴ,ㄷ,ㄹ,ㅁ,ㅂ,ㅅ,ㅇ,ㅈ,ㅊ,ㅋ,ㅌ,ㅍ,ㅎ,ㄲ,ㄸ,ㅃ,ㅆ,ㅉ}
출력
받침28 = {ε,ㄱ,ㄴ,ㄷ,ㄹ,ㅁ,ㅂ,ㅅ,ㅇ,ㅈ,ㅊ,ㅋ,ㅌ,ㅍ,ㅎ,ㄲ,ㅆ,ㄳ,ㄵ,ㄶ,ㄺ,ㄻ,ㄼ,ㄽ,ㄾ,ㄿ,ㅀ,ㅄ}
입력 자음(자음19) 의 분류
1.
2.
3.
4.
5.
–
다른 모음이 추가 되지 않는다
ㅣ만이 추가된다.(ㅐ,ㅒ,ㅔ,ㅖ,ㅢ)
ㅏ(ㅘ),ㅏ+ㅣ(ㅙ),ㅣ(ㅚ)가 추가된다.
ㅓ(ㅘ),ㅓ+ㅣ(ㅞ),ㅣ(ㅟ)가 추가된다.
{ㅛ,ㅠ,ㅣ} ∪ {ㅏ,ㅑ,ㅓ,ㅕ,ㅡ} ∪ {ㅗ} ∪ {ㅜ} = 모음v10.
{ㅛ,ㅠ,ㅣ} ∩ {ㅏ,ㅑ,ㅓ,ㅕ,ㅡ} ∩ {ㅗ} ∩ {ㅜ} = Φ.
입력 자음의 분류
–
–
–
중성을 위하여
{ㄸ,ㅃ,ㅉ}
{ㄷ,ㅁ,ㅅ,ㅇ,ㅈ,ㅊ,ㅋ,ㅌ,ㅍ,ㅎ,ㄲ,ㅆ}
{ㄱ,ㅂ}
{ㄴ}
{ㄹ}
받침에
받침에
받침에
받침에
받침에
오지
오고
오고
오고
오고
않는다
다름 자음이 추가 되지 않는다.
ㅅ이 추가된다.(ㄳ,ㅄ)
ㅈ,ㅎ이 추가된다.(ㄵ,ㄶ)
ㄱ,ㅁ,ㅂ,ㅅ,ㅌ,ㅍ,ㅎ이 추가된다.(ㄺ,ㄻ,ㄼ,ㄽ,ㄾ,ㄿ,ㅀ)
{ㄸ,ㅃ,ㅉ} ∪ {ㄷ,ㅁ,ㅅ,ㅇ,ㅈ,ㅊ,ㅋ,ㅌ,ㅍ,ㅎ,ㄲ,ㅆ} ∪ {ㄱ,ㅂ} ∪ {ㄴ} ∪ {ㄹ} = 자음19.
{ㄸ,ㅃ,ㅉ} ∩ {ㄷ,ㅁ,ㅅ,ㅇ,ㅈ,ㅊ,ㅋ,ㅌ,ㅍ,ㅎ,ㄲ,ㅆ} ∩ {ㄱ,ㅂ} ∩ {ㄴ} ∩ {ㄹ} = Φ.
한글 모아쓰기 오토마타
(Σ29= 자음19 c∪ㄱ,ㅂ모음10ㅅ)
ㅗ
{ㅗ}
자음19={ㄱ,ㄴ,…,ㅎ,
ㄲ,…,ㅉ}
S
c
V
모음10={ㅏ,ㅑ, …,
ㅡ,ㅣ}
ㅗ
ㅜ
v
v
ㅏ ㅣ
c-{ㅅ}
c
ㅜ
{ㅜ}
ㅏ,ㅑ
ㅓ,ㅕ,ㅡ
ㅓ
ㅣ
ㅣ
V
f
{ㅛ,ㅠ,ㅣ,
ㅚ,ㅟ,
ㅐ,ㅒ,ㅔ,ㅖ,ㅢ,ㅙ,ㅞ}
ㅈ,ㅎ
ㄴ
{ㄱ,ㅂ}
{ㄳ,ㅄ}
{ㄴ}
{ㄵ,ㄶ}
c-{ㅈ,ㅎ}
{ㅏ,ㅑ,ㅓ,ㅕ,ㅡ,
ㅘ, ㅝ}
ㅛ,ㅠ,ㅣ
ㄴ
v
c
ㅏ
ㄱ
c
ㄹ
ㄱ,ㅁ,ㅂ,ㅅ,
{ㄹ}
ㅌ,ㅍ,ㅎ
ㅚ,ㄹ
v
c-{ㄱ,ㅁ,…,ㅎ}
ㄷ,ㅁ,ㅅ,ㅇ,ㅈ,
ㅊ,ㅋ,ㅌ,ㅍ,ㅎ,
ㄲ,ㅆ
v
ㄸ,ㅃ,ㅉ
c
L
{ㄺ,ㄻ,ㄼ,ㄽ
ㄾ,ㄿ,ㅀ}
{ㄷ,ㅁ,ㅅ,ㅇ,ㅈ,
ㅊ,ㅋ,ㅌ,ㅍ,ㅎ,
2 ㄲ,ㅆ}
{ε}
9벌식 한글 폰트
• 9벌식 한글 프린터 폰트(10ⅹ15 dot matrix)
– 초성 6가지/자 * 19자 = 114가지
1.
2.
3.
4.
5.
6.
가형
고형
과형
각형
곡형
곽형
초성:
초성:
초성:
초성:
초성:
초성:
가,
고,
과,
각,
곡,
곽,
개,
교,
괘,
객,
굑,
괙,
갸,
구,
괴,
갹,
국,
괵,
걔,
규,
궈,
걕,
귝,
궉,
거,
그
궤,
걱,
극
궥,
게, 겨, 계, 기
귀, 긔
겍, 격, 곅, 긱
귁, 긕
– 중성 2가지/자 * 21자 = 42가지
1. 아,애,야,얘,어,에,여,예,오,와,왜,외,우,워,웨,위,유,의,이
2. 악,액,약,얙,억,엑,역,옉,오,왁,왝,왹,욱,웍,웩,윅,육,읙,익
– 받침 1가지/자 * 27자 = 27가지
• 총 9벌, 183가지 한글 자모 폰트
– 10*15*183*약40% = 1,0980 bit = 1372.5 byte = 1.34 KB
학생과 학문, 의사소통
•
학생(學生)
–
정의
•
–
왜 공부하는가?
•
•
–
모르지 않는 학생(호기심이 없는 학생)
모르는데 아는 척하고 질문도 안 하는 학생
초중고, 대학에서는 선생이 아는(가르치는) 사람이나, 대학원에서는 교수도 역시 학생(배우는 사람)이다.
•
•
물어본다(질문을 한다).
불량학생
•
•
–
몰라서 (돈 벌려고, 좋은 배우자를 만나려고X) 배우는(공부하는) 사람
모르면?
•
–
모르니까
모르는 것은 학생의 정의로서 학생 고유의 권리이자 의무이다.(학생권리선언)
또 다시 정의
•
–
공부하는 사람
현고학생부군신위(顯考學生府君神位)
학문의 대화는 언어(모국어)로 한다.
–
–
–
–
의사소통은 모국어로 하는 것이다.
자연과학이나 전산학의 경우 만국공통이고 엄밀한 수학언어가 애매모호한 자연언어(모국어)를 대신 할
수도 있지만 기본적 소통 방법은 역시 모국어이다.
그러나 인문사회과학의 의사소통 왕도는 모국어이다.
학문의 의사소통을 외국어로 하는 것은 모국어가 없는 야만인이나 자신의 모국어를 부끄러워하는 사대주
의자들이 가진 문화이다.
•
•
예) 조선시대 유학자들, 현재 영어강의를 주장하는 사람들
반례) 한글을 만드신 세종대왕
한글 모아쓰기 automata
컴퓨터 자판(Σ33=자음
∪모음
)
ㄱ,ㅂ 19 ㅅ
14
c
ㅗ
ㅗ ㅏ,ㅐ,ㅣ
v
K
c-{ㅅ}
{ㅗ}
자음19={ㄱ,ㄴ,…,ㅎ,ㄲ,…ㅉ}
S
c
V
ㅜ
v
모음14={ㅏ,…ㅣ,ㅐ,…,ㅖ}
c
ㅜ ㅓ,ㅔ,ㅣ
ㅈ,ㅎ
ㄴ
v
N
{ㅜ}
ㄱ,ㅁ,ㅂ,ㅅ,
ㅌ,ㅍ,ㅎ
c
ㅡ
{ㅡ }
ㅡ
ㅛ,ㅠ,ㅣ
ㅏ,ㅑ,ㅓ,ㅕ
ㅐ,ㅒ,ㅔ,ㅖ
ㅣ
Vf
c-{ㅈ,ㅎ}
ㄹ
ㅐ, ㅒ, ㅔ, ㅖ,
ㅚ,
v R c-{ㄱ,ㅁ,…,ㅎ}
c
{ㅛ,ㅠ,ㅣ,ㅏ,ㅑ,ㅓ,ㅕ,
ㅐ,ㅒ,ㅔ,ㅖ,
ㅘ,ㅙ,ㅚ,ㅝ,ㅞ,ㅟ, ㅢ}
ㄷ,ㅁ,ㅅ,ㅇ,ㅈ,
ㅊ,ㅋ,ㅌ,ㅍ,ㅎ,
ㄲ,ㅆ
v
ㄸ,ㅃ,ㅉ
L2
c
한글 모아쓰기 automata 변형
컴퓨터 자판(Σ33=자음
∪모음
)
ㄱ,ㅂ 19 ㅅ
14
c
ㅗ
ㅗ
{ㅗ}
자음19={ㄱ,ㄴ,…,ㅎ,ㄲ,…ㅉ}
S
c
V
v
ㅜ
ㅐ,ㅣ
ㅏ
v
c
ㅜ
{ㅜ}
ㅔ,ㅣ
ㅓ
ㅏ,ㅑ,ㅓ,ㅕ
모음14={ㅏ,…ㅣ,ㅐ,…,ㅖ} ㅡ
ㅏ
{ㅏ,ㅑ,ㅓ, ㅕ,ㅡ
ㅘ, ㅝ}
ㅛ,ㅠ,ㅣ
ㅐ,ㅒ,ㅔ,ㅖ
K
c-{ㅅ}
ㅈ,ㅎ
ㄴ
v
N
ㄱ,ㅁ,ㅂ,ㅅ,
ㅌ,ㅍ,ㅎ
c
ㅣ
Vf
c-{ㅈ,ㅎ}
ㄹ
ㅐ, ㅒ, ㅔ, ㅖ,
ㅚ,
v R c-{ㄱ,ㅁ,…,ㅎ}
c
{ㅛ,ㅠ,ㅣ,ㅐ,ㅒ,ㅔ,ㅖ,
ㅙ,ㅚ,ㅞ,ㅟ,ㅢ,
ㅐ,ㅒ,ㅔ,ㅒ,ㅙ,ㅞ }
ㄷ,ㅁ,ㅅ,ㅇ,ㅈ,
ㅊ,ㅋ,ㅌ,ㅍ,ㅎ,
ㄲ,ㅆ
v
ㄸ,ㅃ,ㅉ
L2
c
한글 모아쓰기 오토마타 간략도
현대 한글
Vfin1 c
v1 V 1
in
자음19={ㄱ,ㄴ,…,ㅎ,ㄲ,…ㅉ}
S
c
V
c2
c2O
L1
c2X
V1
v
…
…
v
…
c1
VK
vn V n
in
c0
Vfinm
c
L2
v
c
ㅢ
한글 모아쓰기 오토마타 간략도
초성에 복자음을 허용하는 경우
Vfin1 c
v1 V 1
in
자음19={ㄱ,ㄴ,…,ㅎ,ㄲ,…ㅉ}
S
c
V
c2
c2O
L1
c2X
V1
v
…
…
v
…
c1
VK
vn V n
in
c0
Vfinm
c
L2
v
c
ㅢ
간략도에서 중성
•
State 설명
–
Vin: 첫 번째 모음을 하나 받았다.
•
–
V: 중성을 완성하기 위한 중간 state들
•
–
•
Vin ∩ Vfin ≠ Φ, Vin ∩ V ≠ Φ, Vfin ∩ V = Φ.
Vin = Vfin = {ㅗ, ㅜ,ㅏ, Vf},
•
V = {}.
L(ㅏ) = {ㅏ,ㅑ,ㅓ,ㅕ,ㅡ,ㅘ,ㅝ}
L(Vf) = {ㅛ,ㅠ,ㅣ,ㅚ,ㅟ,ㅐ,ㅒ,ㅔ,ㅖ,ㅢ,ㅙ,ㅞ}
컴퓨터 자판
–
Vin = Vfin = {ㅗ, ㅜ, ㅡ, Vf},
•
•
받침이나 초성을 만들기 위하여 자음을 기다린다.
표준 자모
–
•
모음을 기다린다. 중성이 완성되지 않았다.(자음은 올 수 없다)
Vfin: 중성이 완성된 state들
•
–
중성을 완성하기 위하여 모음을 기다린다.
V = {}.
L(ㅡ) = {ㅡ}
L(Vf) = {ㅏ,ㅑ,ㅓ,ㅕ, ㅛ,ㅠ,ㅣ,ㅐ,ㅒ,ㅔ,ㅖ,ㅘ,ㅙ,ㅚ,ㅝ,ㅞ,ㅟ,ㅢ}
컴퓨터 자판 변형
–
Vin = Vfin = {ㅗ, ㅜ,ㅏ, Vf},
•
•
–
V = {}.
L(ㅏ) = {ㅏ,ㅑ,ㅓ,ㅕ,ㅡ,ㅘ,ㅝ}
L(Vf) = {ㅐ,ㅒ,ㅔ,ㅖ,ㅛ,ㅠ,ㅣ,ㅐ,ㅒ,ㅔ,ㅖ,ㅢ,ㅚ,ㅙ, ㅟ,ㅞ,ㅙ,ㅞ}
두 가지 방법으로 중성을 칠 수 있다
•
•
•
•
•
•
ㅐ
ㅒ
ㅔ
ㅖ
ㅙ
ㅞ
=
=
=
=
=ㅗ+ㅐ=
=ㅜ+ㅔ=
ㅐ
ㅒ
ㅔ
ㅖ
ㅙ
ㅞ
=
=
=
=
=
=
ㅏ
ㅑ
ㅓ
ㅕ
ㅗ
ㅜ
+
+
+
+
+
+
ㅣ
ㅣ
ㅣ
ㅣ
ㅏ+ㅣ
ㅓ+ㅣ
간략도에서 받침
•
문자 설명
–
c2: 받침이 자음 두 개인 경우 첫 번째 자음
•
•
예: {ㄱ, ㄴ, ㄹ, ㅂ}
c2O: c2와 합쳐서 받침이 되는 두 번째 자음
–
•
c2X: c2와 합쳐도 받침이 안 되는 자음: c2X = c - c2O
–
•
–
•
c = c2O ∪ c2X, c2O ∩ c2X = Φ
예: {ㄷ, ㅁ, ㅅ, …, ㅎ, ㄲ, ㅆ}
c0: 받침에 올 수 없는 자음
•
–
예: c2가 ㄹ이면 cㄹX = {ㄴ, ㄷ, ㄹ, …,ㅋ, ㄲ, …, ㅉ}
c1: 받침이 자음 한 개인 경우
•
–
예: c2가 ㄹ이면 cㄹO = {ㄱ, ㅁ, ㅂ, ㅅ, ㅌ, ㅍ, ㅎ}
예: {ㄸ, ㅃ, ㅉ}
c = c2 ∪ c1 ∪ c0 , c2 ∩ c1 = c1 ∩ c0 = c0 ∩ c2 = Φ
State 설명
–
Vfin: 중성은 끝났다.
•
–
L1: 복받침이 시작될 수 있는 자음(c2)을 받았다.
•
•
•
–
자음(초성, 받침)을 기다린다.
L2 :
•
•
모음(v)이 나오면: c2은 초성
복받침을 못 만드는 자음(c2X)이 나오면: c2는 받침 c2X는 초성
복받침을 만드는 자음(c2O)이 나오면: (c2 는 받침 c2O은 초성 ) 혹은 (c2 + c2O는 복받침)
받침이 될 수도 있는 자음 하나(c1)나 두개 (c2 + c2O) 를 받았다.
모음(v)이 나오면: (c1은 초성) 또는 (c2는 받침 c2O 는 초성)
자음(c)이 나오면: (c1은 받침) 또는 (c2 + c2O는 복받침 c는 초성)
받침을 위한 8 가지 주요행동
•
•
•
Vfin →C2 L1: Bfr1 := 현재심볼(c2)
Vfin →C1 L : Bfr1 := 현재심볼(c1)
Vfin →C0 V : 받침이 없고(ε); 현재심볼(c0)은 초성
•
•
•
L1 →v Vin: 이전 문자는 받침이 없고(ε); Bfr1(c2)은 초성; 현재심볼(v)은 모음
L1 →C2X V: Bfr1(c2)은 받침; 현재심볼(c2X)은 초성
L1 →C2O L: Bfr2 := 현재심볼(c2O); Bfr2가 존재한다고 한다
•
L2 →v Vin: if ∃Bfr2 → Bfr1(c2)은 받침; Bfr2(c2O)은 초성
| ∕∃Bfr2 → Bfr1(c1)은 초성 fi;
현재심볼 (v)은 모음
L2 →C V: if ∃Bfr2 → Bfr1(c2)과 Bfr2(c2O)가 합쳐서 받침
| ∕∃Bfr2 → Bfr1(c1)은 받침 fi;
현재심볼(c)은 초성
•
어떻게 프로그램 하나?
1) 입력 := 다음입력가져오기(입력의나열)
2) 다음상태 := 상태표[현재상태, 입력]
3) 분기 :
- 다음상태가 없다: 프로그램종료(실패)
- 다음상태가 있다: 계속 진행
4)
5)
6)
7)
다음행동 := 행동표[현재상태, 입력)
행동하기(다음행동)
현재상태 := 다음상태
분기:
–(현재상태=목적지) 그리고 ( |남은입력나열|=0 ) : 프로그램종료(성공)
–(현재상태≠목적지) 그리고 ( |남은입력나열|>0 ) : 1)로 이동
–(현재상태≠목적지) 그리고 ( |남은입력나열|=0 ) : 프로그램종료(실패)
과학자는 누구인가
• 수신제가 치국평천하(修身齊家 治國平天下)
– 대학(大學) 2장
• 격물치지 성의정심(格物致知 誠意正心)
– 역시 대학(大學) 2장에 수신제가… 앞에 나오는 두 번 나오는 댓 구(對句)
• 격물후 치지하고, 치지후 성의하고, …, 치국후 평천하하라
• 평천하하려면 우선 치국하고, 치국하려면 … , 수신하려면 …
성의정심하고, 성의정심하려면 우선 격물치지하라
• 격물치지의 공부
– 과학과학공학도
– 세상 무서운 줄 아는 공부
• 성의정심의 공부
– 인문사회과학도
– 사람귀한 줄 아는 공부
• 공자가 바라본 올바른 지도자
– 격물치지(자연과학, 전산학) 공부한 후
성의정심(이문사회학) 공부도 한 사람
– 세상이 무섭다는 것을 알고 사람이 귀하다는 것도 아는 지도자
삼성 핸드폰 중성 오토마타
ㅡ
모음3={ ∙,ㅡ,ㅣ}
∙
∙
∙
∙∙
ㅡ
ㅣ
ㅗ
ㅓ
ㅣ
ㅣ
ㅣ
∙
ㅡ
ㅡ
∙
ㅣ
ㅣ
ㅣ
∙
ㅜ
ㅣ
상태(state): 23개
처음 상태: 3개
중간 상태: 2개
끝나는 상태 21개
ㅛ
ㅕ
ㅚ
ㅣ
∙
ㅖ
ㅘ
ㅣ
ㅙ
ㅔ
ㅠ
ㅟ
ㅣ
ㅝ
ㅣ
ㅞ
앞으로 할 일이 같으면 같은 상태다
ㅛ=ㅖ=ㅙ=ㅔ=ㅞ=ㅟ=ㅢ=ㅒ=ㅐ
ㅢ
ㅏ
∙
ㅣ
ㅑ
ㅐ
ㅣ
ㅒ
상태: 15개
처음 상태: 3개
끝나는 상태 13개
삼성 핸드폰 중성 오토마타 변형
상태 수를 줄인다
ㅡ
모음3={ ∙,ㅡ,ㅣ}
∙
∙
∙
∙∙
ㅡ
ㅣ
ㅗ
ㅓ
ㅣ
ㅣ
ㅡ
∙
ㅜ
ㅚ
ㅣ
∙
ㅘ
ㅣ
ㅠ
ㅣ
ㅝ
ㅖ
ㅙ
ㅣ
∙
ㅡ
ㅕ
ㅛ
ㅣ
ㅣ
모음 상태: 15개
ㅔ 처음 상태: 3개
중간 상태: 2개
ㅞ 끝나는 상태 13개
ㅟ
ㅣ
ㅣ
ㅣ
∙
ㅏ
∙
ㅣ
ㅑ
ㅢ
ㅣ
ㅐ
ㅒ
ㅛ
LG 핸드폰 중성 오토마타
+
모음5={ㅏ,ㅗ,ㅡ,ㅣ} ㅓ
∪ {+}
ㅏ
ㅏ
ㅕ
ㅣ
ㅖ
ㅣ
+
ㅏ
ㅔ
ㅑ ㅣ
ㅒ
ㅣ
ㅜ
ㅓ
ㅗ
ㅝ
ㅣ
ㅞ
+,ㅣ
ㅗ
ㅗ
ㅐ
ㅏ
ㅠ,ㅟ
ㅘ
ㅣ
ㅙ
+,ㅣ
ㅡ
ㅣ
ㅡ
ㅛ,ㅚ
ㅣ
ㅢ
ㅣ
ㅣ
모음 상태: 10개
처음 상태: 4개
끝나는 상태 10개
삼성 핸드폰
중성 오토마타 간략도
ㅕ
∙
ㅗ
∙
자음19={ㄱ,ㄴ,…,ㅎ,ㄲ,…ㅉ}
ㅚ
c
ㅘ
S
V
v
ㅡ
ㅡ
∙∙
ㅓ
모음3 ={ ∙,ㅡ,ㅣ}
ㅣ
ㅡ
ㅣ
c
c
c
c2O
L1
c2X
c
c
v
c1
L2
c
c0
…
ㅛ
c2
c
v
c
ㅢ
자음이 너무 많다
• 자음 수를 적당히 줄이고 없는 자음은 반복하자
• 자음7 = {ㄱ,ㄴ,ㄷ,ㅂ,ㅅ,ㅈ,ㅇ}
• 1번
2번 반복
3번반복
–
–
–
–
–
–
–
ㄱ
ㄴ
ㄷ
ㅂ
ㅅ
ㅈ
ㅇ
ㄱ+ㄱ
ㄴ+ㄴ
ㄷ+ㄷ
ㅂ+ㅂ
ㅅ+ㅅ
ㅈ+ㅈ
ㅇ+ㅇ
=
=
=
=
=
=
=
ㅋ
ㄹ
ㅌ
ㅍ
ㅎ
ㅊ
ㅁ
ㄱ+ㄱ+ㄱ = ㄲ
ㄷ+ㄷ+ㄷ
ㅂ+ㅂ+ㅂ
ㅅ+ㅅ+ㅅ
ㅈ+ㅈ+ㅈ
=
=
=
=
ㄸ
ㅃ
ㅆ
ㅉ
• 그러나 같은 분류의 자음이 종성과 초성에 연속해서 나타나면
– 사이에 글자가 끝이라는 기호(EOC; X)가 필요
– 예 학교 = ㅎ ㅏ ㄱ X ㄱ ㅛ
삼성 핸드폰 초성
ㄱ
자음7={ㄱ,ㄴ,ㄷ,
ㅂ,ㅅ,ㅈ,ㅇ}
ㄴ
ㄷ
S
c
ㅂ
ㅅ
ㅈ
ㅇ
ㄱ
ㄴ
ㄷ
ㅂ
ㅅ
ㅈ
ㅇ
ㄱ
v
ㄴ
v
ㄷ
v
ㅂ
v
ㅅ
v
ㅈ
v
ㅇ
v
ㄱ
ㅋ
v
ㄹ
ㄴ
v
ㅌ
ㅍ
ㅎ
ㄷ
v
ㄲ
ㄱ
v
∙
ㄷ
ㄸv
ㅂ
ㅂ
ㅃv
ㅅ
ㅅ
ㅆv
ㅈ
ㅈ
v
v
v
ㅊ
v
ㅁ
ㅇ
v
상태: 5*3+2*2=19개
처음 상태: 7개
ㅉ
ㅡ
ㅣ
LG 핸드폰 초성
c8={ㄱ,ㄴ,ㄹ,ㅁ,ㅅ
ㅇ} ∪ {+, *}
ㄴ
ㄱ
ㄱ
*
v
ㄲ
+
+
ㅋ
+
+
v
v
ㄹ
ㄸ
v
ㅌ
+
v
v
ㅂ
+
+
*
ㅃ
v
+
+
*
ㅆ
v
ㅈ
v
v
*
ㅉ
v
v
ㅊ
v
v
ㅗ
ㅇ
ㅅ
v
ㅍ
v
ㅏ
ㅁ
+
*
ㅅ
ㅁ
v
ㄷ
+
c
ㄹ
ㄴ
상태: 5*3+2*2=19개
처음 상태: 8개
S
ㅡ
ㅣ
ㅇ
v
+
ㅎ
+
v
LG 핸드폰 초성
*
ㄱ
ㄴ
자음8={ㄱ,ㄴ,ㄹ,ㅁ,ㅅ
ㅇ} ∪ {+, *}
S
ㄹ
c
ㅁ
ㅅ
ㄱ
ㄴ
ㄹ
ㅁ
ㅅ
*
ㅆ
ㅇ
ㅇ
+
v
+
v
ㄷ
ㅃ
v
+
v
+
v
+
+
v
+
v
*
ㅂ
ㅈ
ㄸ
ㄲ
v
ㅌ
+
v
v
+
v
+
v
상태: 5*3+2*2=19개
처음 상태: 7개
ㅏ
ㅗ
v
*
*
v
v
ㅋ
*
ㅍ
+
v
ㅊ
+
v
ㅡ
ㅣ
ㅉ
v
ㅎ
+
v
삼성 핸드폰 받침(1)
ㄱ
ㄱ
(ㅂ)
Vf
ㄱ
ㅋ
c-{ㄱ,ㅅ}
v
c-{ㅅ}
v
ㅅ
ㅅ
ㄱㅎ
v
ㄴ
ㄴㅎ
v
c-{ㅅ}
ㅈ
ㄴㅈ
ㄷ
(ㅅ,ㅈ v
ㅇ)
ㄴㅊ
c-{ㅈ}
ㄷ
ㄷ
v
v
v
x
v
ㅂ
ㅂ
v
v
v
ㅅ
ㅅ
ㅅ
ㄹㅅ
ㅈ
v
v
v
c-{ㅅ}
v
ㄹㅎ c-{ㅅ} ㄹㅆ
v
ㅇ ㄹㅁ c-{ㅇ}
ㄹㅇ
v
x
ㄷ
c-{ㄷ}
v
ㅂ ㄹㅂ c-{ㅂ} ㄹㅍ c-{ㅂ} ㄹㅃ
ㅇ
ㄴㅉ
ㅌ
ㄷ
ㄸ
c-{ㄷ}
v
ㄹㄲ
v
ㄷ ㄹㅌ
ㄷ ㄹㄸ
c-{ㄷ}
ㄹㄷ
v
ㄴㅆ
v
v
x
ㅅ
ㄱ
ㄹㄱ c-{ㄱ} ㄹㅋ
ㄷ
ㄹ
v
초
x
ㄱ
ㄴ
ㄴㅅ
v
v
v
ㅅ
중
ㄱ
ㅅ
ㄱㅆ
v
ㄴ
vㅈ
c
c-{ㄱ}
x
ㄴ
v
ㄲ
v
c-{ㄴ,ㅅ,ㅈ}
S
ㄱ
c-{ㄱ}
ㄱㅅ
자음8={ㄱ,ㄴ,ㄷ,
ㅂ,ㅅ,ㅈ,ㅇ, x}
c
ㄱ
ㅅ
x
x
삼성 핸드폰 받침(2)
ㅂ
ㅂ
ㅂ
ㅅ
ㅂ
ㅍ
c-{ㅂ,ㅅ}
v
ㅂ
v
v
ㅅ
c-{ㅅ}
Vf
ㅂㅎ
v
v
ㅅ
ㅂㅆ
v
x
ㅅ
ㅅ
c
v
ㅅ
c-{ㅅ}
v
c-{ㅅ}
ㅎ
중
ㅈ
v
ㅈ
v
ㅈ
c-{ㅈ}
v
ㅊ
c-{ㅈ}
x
초
v
S
c
ㅇ
ㅇ
v
ㅇ
ㅇ
c-{ㅇ}
v
ㅁ
받침 상태: 45개
c-{ㅅ}
L1 상태: 5*3+2*2=19개
ㅆ
L2 상태: 8*3+2=26개
처음 상태: 7개
ㅅ
x
ㅈ
ㅅ
ㅅ
ㅂㅅ
자음8={ㄱ,ㄴ,ㄷ,
ㅂ,ㅅ,ㅈ,ㅇ, x}
ㅃ
c-{ㅂ}
c-{ㅈ}
x
x
ㅈ
v
ㅉ
삼성 핸드폰 받침 간략도(Σ11)
자음8={ㄱ, ㄴ,ㄷ,ㅂ,ㅅ,ㅈ,ㅇ, x}
모음3={∙,ㅡ ,ㅣ}
ㄱ
ㄴ
c1
∙
ㄷ
S
c
L11
v
v
ㅂ
ㅅ
ㅡ
c
c1
c2O
c1
L12
L13
v
v
c-c1-c2O c-c1
x
x
c2O
ㅣ
c2
c2
ㅈ
ㅇ
v
c
x
c1
v
c2
L23
L22
L21
v
c-c2
x
초성
모음
받침
전체
v
상태:
상태:
상태:
상태:
19개
15개
45개
79개
삼성 핸드폰 받침II - 초성우선
ㄱ
ㄱ
ㄱ
자음8={ㄱ, ㄴ,ㄷ,ㅂ,
ㅅ,ㅈ,ㅇ, x}
모음3={∙,ㅡ ,ㅣ}
ㅅ
ㅋ
c-{ㄱ,ㅅ}
ㅅ
v
ㄲ
c-{ㄱ}
v
ㄴ
ㅈ
ㅅ
ㄹㄷ
ㄴ
(ㄵ)
ㅅ (ㄶ)
c-{ㄴ,ㅈ,ㅅ} ㄴㅅ
Vf
ㅅ
ㅂ
v
v
S
c
x
c-{ㅂ}
v
ㅃ
(ㄿ)
ㅂ ㄹㅂ c-{ㅂ}
ㅅv
ㅈ
v
v
v
ㅂ
(ㄼ) (ㅀ)
ㄹㅅ c-{ㅅ}
ㅅ
(ㄽ) (ㄻ)
c-{ㅂ}
ㄷ
c-{ㄷ}
v
ㅌ
c-{ㄷ}
v
ㄹㅇ
ㅇ
ㄸ
ㅅ
ㅅ
v
초
v
ㄷ
ㄷ
중
ㅍ
c-{ㅂ,ㅅ}
v
ㄹ
v
(ㅄ)
ㅂ
ㅂ
ㄱ ㄷ
ㅇ
v
c
ㄷ (ㄾ)
(ㄺ)
v
(ㄳ)
ㄴ
ㄴ
c-{ㄱ}
ㅅ
c-{ㅅ}
v
ㅎ
c-{ㅅ}
ㅊ
c-{ㅈ}
ㅁ
c-{ㅇ}
v
ㅆ
v
ㅉ
ㅈ
ㅈ
v
ㅈ
v
ㅇ
ㅇ
c-{ㅈ}
ㅇ
v
c-{ㅇ}
v
c-{ㅅ}
받침 상태: 24개
L1 상태: 19개
L2 상태: 5개
처음 상태: 7개
c
v
L2
x
삼성 핸드폰 받침 II(초성우선)
ㄱ
자음8={ㄱ, ㄴ,ㄷ,ㅂ,ㅅ,ㅈ,ㅇ, x} ㄱ
ㄱ
모음3={∙,ㅡ ,ㅣ}
v
ㄴ
ㄴ
∙
S
ㅅ
v
ㅡ
ㄴ
c
ㅂ
ㅣ
19개
15개
24개
58개
ㅂ
ㅂ ㄹㅂ c-{ㅂ}
ㅅv
ㅇ
v
ㅂ
ㅍ
c-{ㅂ}
v
ㅃ
ㅈ
v
c-{ㅂ}
v
v
ㅅ
ㄹㅅ c-{ㅅ}
ㄹㅇ
ㅇ
ㄷ
c-{ㄷ}
v
ㅌ
c-{ㄷ}
ㅎ
c-{ㅅ}
ㅊ
c-{ㅈ}
ㅁ
c-{ㅇ}
v
ㄸ
v
ㅆ
v
ㅉ
ㅅ
ㅅ
v
상태:
상태:
상태:
상태:
ㄹ
v
ㄷ
ㄷ
v
ㅇ
ㄱ ㄷ
ㅅ
c-{ㅂ,ㅅ}
v
ㄷ
ㄹㄷ
ㄴ
ㅈ
ㅅ
ㅅ
ㅂ
c-{ㄱ}
v
v
ㅈ
초성
모음
받침
전체
ㄲ
c-{ㄱ}
v
c-{ㄴ,ㅈ,ㅅ} ㄴㅅ
ㄷ
ㅂ
ㅋ
ㄴ
ㄱ
c
ㅅ
c-{ㄱ,ㅅ}
ㅅ
c-{ㅅ}
v
c-{ㅅ}
ㅈ
ㅈ
v
ㅇ
v
ㅈ
c-{ㅈ}
ㅇ
ㅇ
v
c-{ㅇ}
v
c
v
L
x
삼성 핸드폰 받침 II - 초성우선
간략도(Σ
)
11
자음 ={ㄱ, ㄴ,ㄷ,ㅂ,ㅅ,ㅈ,ㅇ, x}
8
모음3={∙,ㅡ ,ㅣ}
ㄱ
ㄴ
c1
∙
ㄷ
S
c
L11
v
v
ㅂ
ㅅ
ㅡ
c
c1
c2O
L12
L13
v
v
c-c1-c2O c-c1
x
x
c2O
ㅣ
ㅈ
c2
ㅇ
v
c
x
c1
v
c1
L22
L21
v
c2
L23
v
c-c2
x
초성 상태:
모음 상태:
받침 상태:
전체 상태:
19개
15개
24개
59개
삼성과 LG 핸드폰에서 중성
• 삼성 핸드폰 자판
– Vin = {∙, ㅡ, ㅣ }
V = {∙, ∙∙}
– Vfin = {ㅡ,ㅣ,ㅗ,ㅓ,ㅜ,ㅏ,ㅕ,ㅚ,ㅠ,ㅑ,ㅘ,ㅝ,Vf}
• L(Vf) = {ㅢ, ㅛ,ㅔ,ㅟ,ㅐ,ㅖ,ㅒ,ㅙ,ㅞ}
• LG 핸드폰 자판
– Vin = {ㅏ,ㅗ,ㅡ,ㅣ,∙}
V = {}
– Vfin = {ㅏ,ㅓ,ㅗ,ㅜ, ㅡ,ㅣ,ㅑ,ㅕ,ㅘ,ㅝ,Vf}
• L(Vf) = {ㅐ,ㅔ, ㅛ,ㅚ,ㅟ,ㅠ,ㅢ,ㅒ,ㅐ,ㅙ,ㅞ}
LG 핸드폰 모아쓰기 오토마타
Σ12 = 자음6 ∪ 모음4 ∪ s2
Vfin1 c
c2
v
자음6={ㄱ,ㄴ,ㄹ,ㅁ,ㅅ,ㅇ} 1 Vin1
S
c
V
L1
c2X
V1
v
…
v
…
c1
모음4 ={ㅏ,ㅗ,ㅡ,ㅣ}
s2={+,*}
c2O
L
VK
vn V n
in
c0
Vfinm
c
v
c
ㅢ
결론
•
•
•
•
한글 타자기와 프린터 역사
한글 제자 원리
학생과 학문, 언어
한글 모아쓰기 오토마타
– 최광무 KAIS 석사논문(1978)
• 컴퓨터에서 한글 이용이 본격화
• 세종대왕과 컴퓨터의 연결
– 현재는 휴대폰, 아이나비등 다양한 정보기기
• 과학자가 더 해야 할 공부
• 다양한 입력 자모(Σ)에 대한 오토마타들
– 표준자판, 컴퓨터자판
– 삼성, LG 핸드폰 자판
추천도서
• 동양고전
– 대학, 중용, 논어, 맹자
– 도덕경, 장자, 반야심경
• 국내소설도 좋은 소설 많다
– 박경리, 조정래, 최인훈, 이청준, 조세희, 윤흥길
– 토스토에프스키,
• 최근 추천도서
– 번역의 탄생, 이희재, 교양인, 2009(\1,5130).
• 올바른 모국어와 영어를 쓰는 기회