Wednesday, September 28, 2005

ตรรกศาสตร์: ความ "เข้าใจ" ของคน

เอาแต่เพลงมาใส่เดี๋ยวจะเบื่อกัน สลับไปเป็นตรรกศาสตร์บ้างนะ

ก็ ที่จะเอามาให้ดูกันครั้งนี้คือ เรื่องของ "ความเข้าใจ" ของคนหนะ ว่ามันต่างกับคอมพิวเตอร์ยังไง ทำไมบางทีเราถึงรู้สึกว่า คอมพิวเตอร์มันไม่สามารถ "เข้าใจ" อะไรได้

สมมติว่า เรามีภาษาอันดับหนึ่งต่อไปนี้
Predicate Symbol: P
Function Symbol: f
Variable Symbol: a, b, c, d
Predicate Set:
1. ∀a∀b∀c[P(a, b) → P(f(a, c), f(c, b))]
2. ∀a∀b∀c[(P(a, b) ∧ P(b, c)) → P(a, c)]
เราจะพิสูจน์ว่า

∀a∀b∀c∀d[(P(a, b) ∧ P(c, d)) → P(f(a, c), f(b, d))]

... เห็นสัญลักษณ์แล้วก็เหงื่อตกเลย แต่จริง ๆ ทำได้ไม่ยากหรอก ลองเริ่มจาก สมมติค่าคงที่ A B C D แทนลงไปในตัวแปร (เพราะมันเป็น ∀ แสดงว่า ใส่อะไรลงไปมันก็ต้องเป็นจริง)

P(A, B) ∧ P(C, D)

เอา P(A, B) ไปแทนค่าใน 1 แบบนี้... (a = A, b = B, c = C)

P(A, B) → P(f(A, C), f(C, B))
จะได้ว่า P(f(A, C), f(C, B))

จากนั้น เอา P(C, D) ไปใส่ใน 1 เหมือนกัน... (a = C, b = D, c = B)

P(C, D) → P(f(C, B), f(B, D))
จะได้ว่า P(f(C, B), f(B, D))

คราวนี้ เอาไปแทนใน 2 (a = f(A, C), b = f(C, B), c = f(B, D)) ก็จะได้ว่า

(P(f(A, C), f(C,B)) ∧ P(f(C, B), f(B, D))) → P(f(A, C), f(B, D))

ซึ่ง ฝั่งซ้ายของ "→" เป็นจริง ดังนั้น

P(f(A, C), f(B, D)) เป็นจริง

ก็เลยสรุปได้ว่า

∀a∀b∀c∀d[(P(a, b) ∧ P(c, d)) → P(f(a, c), f(b, d))] เป็นจริง

แต่ ... ลองเปลี่ยนหน้าตาสัญลักษณ์เราซักหน่อยซิ...
Predicate Symbol: =
Function Symbol: +
Variable Symbol: a, b, c, d
Predicate Set:
1. ∀a∀b∀c[a = b → a + c = c + b]
2. ∀a∀b∀c[(a = b ∧ b = c) → a = c]
ข้อสรุปเรากลายเป็น

∀a∀b∀c∀d[a = b ∧ c = d → a + c = b + d]

ดูแล้ว "เข้าใจ" มากขึ้นมั้ย? แล้วลองดูอีกอย่าง
Predicate Symbol: >
Function Symbol: +
Variable Symbol: a, b, c, d
Predicate Set:
1. ∀a∀b∀c[a > b → a + c > c + b]
2. ∀a∀b∀c[(a > b ∧ b > c) → a > c]
แล้วก็ อีกแบบ (อันนี้เป็นจริงเฉพาะจำนวนบวกนะ)
Predicate Symbol: ≤
Function Symbol: ⋅
Variable Symbol: a, b, c, d
Predicate Set:
1. ∀a∀b∀c[a ≤ b → a⋅c ≤ c⋅b]
2. ∀a∀b∀c[(a ≤ b ∧ b ≤ c) → a ≤ c]
จะเห็นว่า จริง ๆ แล้ว เรา "เข้าใจ" ไอ้เครื่องหมายพวกนี้แตกต่างกัน แต่สำหรับคอมพิวเตอร์ มันเหมือนกันหมด

"ความเข้าใจ" ของเรา ทำให้เราคิดอะไรได้เร็วขึ้น แต่โปรแกรมคอมพิวเตอร์ทุกวันนี้ ไม่มี "ความเข้าใจ" ตรงนี้ ดังนั้น ถึงแม้คอมพิวเตอร์จะคิดได้เร็วแค่ไหน ขอบเขตความรู้ของมัน ก็ยังถูกตีกรอบด้วย "Axiom" ที่เราโปรแกรมให้ แต่มนุษย์มีความสามารถที่จะสร้าง Axiom เหล่านี้ขึ้นมาได้จากการสังเกต การคาดเดา ฯลฯ หรือที่เราเรียกรวม ๆ ว่า "ความคิดสร้างสรรค์"

ถ้าเมื่อไหร่มีโปรแกรมคอมพิวเตอร์ที่ประมวลผลกรณี P กับ f ช้ากว่ากรณีของเครื่องหมาย "+" กับ "=" แล้วล่ะก็ คอมพิวเตอร์ที่คิดได้อย่างมนุษย์ก็คงใกล้แล้วหละ (ไม่ได้หมายถึง ใส่คำสั่งให้มัน delay เพิ่มขึ้นอะนะ แต่หมายถึงช้าโดยธรรมชาติ)

แต่โดยส่วนตัว ผมว่า ทำไม่ได้อยู่ดีแหละ ... จักรวาลนี้อาจจะเป็นเซตของ Axiom ที่เล็กที่สุด ที่สามารถทำให้เกิด "ความคิดสร้างสรรค์" ได้ก็ได้

5 Comments:

At 9/28/2005 8:41 PM, Blogger JoopIE said...

ไม่เข้าใจโว้ย

 
At 9/28/2005 8:59 PM, Blogger Tunococ said...

อ่าว ไม่เข้าใจหรอ

 
At 9/28/2005 10:34 PM, Blogger peam said...

เข้าใจเข้าใจมากขึ้นนะ

 
At 9/28/2005 10:35 PM, Blogger Tunococ said...

555 ... อานะพี่

 
At 9/29/2005 12:20 AM, Anonymous Anonymous said...

ยังไม่ได้อ่าน ก็ไม่คิดว่าจะเข้าใจได้แล้วว่ะ 555

 

Post a Comment

<< Home