作者A1Yoshi (我是妖西)
看板logic
標題Re: [請益] 邏輯蘊含與實質蘊含
時間Sat Mar 17 05:18:21 2007
※ 引述《teves (teves)》之銘言:
: 對不起我這串看了很久還是看不太懂orz
: 目前我這樣理解請教一下對不對
: 邏輯蘊含是指在所有可能情形下,前句蘊含後句
: 這個所有可能情形就是指所有"真值給定函數"T
: T()可輸入一子句,輸出該子句的真值
: 而像這樣的T函數有無限多個
: 我的想像是,T就像是所有的平行世界,有無限多個
: 而如果要把邏輯蘊含當成函數,就要把所有的T輸入進去
: 所以輸入是無限長,不合法
: 但是因為如果輸入的是p->q
: 因為在所有的平行世界中
: T(p)跟T(q)的結果其實都各只有兩種(True或False)
: 所以可以化簡成輸入這2*2=4種T函數就好了
: 這樣邏輯蘊含就是函數
: 也就是somedoubt所謂的"限定定義域"
T有兩個變元。如果說某條件句只包含兩個原子句,則需要輸入的T
就只有四種:
(T, T) (T, F) (F, T) (F, F)
我不知道s 所謂限定定義域到底是限定誰的定義域。不過,顯然實
質蘊含做為真值函數如果要能跑,它也不需要考慮句子裡面根本不
包含的原子句的真假值,也就是說,我在判斷p→q以實質運來理解
時的真假值,我不必考慮r, s, t等其它原子句的真假值。
如果實質蘊含跑的時候可以這樣跑,為什麼邏輯蘊含做真值函數解
的時候,卻要考慮所有的T?T有無限多,沒錯,但這些無限多裡面
,若今天只考慮和p、q有關的,則只有四類。而我們要判斷僅包含
p、q的句子是否前件邏輯蘊含後件,我們也僅需要知道這四類T。
今天句子是p→q,我只要考慮和p、q有關的所有真值組合就好,我
為什麼要care其它,比方說r、s、t等原子句在所有可能世界的真
假值?
我覺得s 寫的讓我無法理解的地方就在那兒。為什麼邏輯蘊含做為
真值函數,輸入要包括那些與p、q無關的句子的真假值?
: 而Yoshi是覺得當初"所有可能性",其實本來就是只有這樣的4種
: 所以可以當成函數
我沒有說一定只能有四種而已。試想這樣的句子:
((P&Q)&R) → R
你若畫真值表會出現八列。而8 怎麼算出來的呢?根據整個句子所
包含的原子句的種類數來的:
2^3 = 8
針對這例子,原子句的種類有三種。
我的想法是,針對任何特定的條件句,因為前後件的句子都是有限
的,整個條件句內包含的原子句的種類也是有限的,所以真值表的
列數會是有限的且受原子句的數目所決定。
而這種決定關係可以轉成函數。
只要多幾個函數,我們就可以從Ta(p), Ta(q)得到該句是否前件邏
輯蘊含後件。
我的想法是,s 一開始所提出的反對理由,那些如果是問題則Ta本身
就會有問題,用Ta來定義的實質蘊含也當然也承接這些問題。
而如果我們做一些限定使得Ta不會有那些問題,則,我認為邏輯蘊含
被當作某種真值函數來理解,也跟著沒有問題。
--
PTT2 自然就是美 => 百慕達群島 => 漩渦 =>
PinkParties
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 87.194.73.179
1F:推 somedoubt:限定真值給定函數的定義域只是為了讓邏輯蘊含可以被設想 03/17 07:56
2F:→ somedoubt:為函數,它不是真值函數的理由在於"p邏輯蘊含q"這樣的 03/17 07:59
3F:→ somedoubt:複雜語句的真值不能由p及q給定的真值決定。它的輸入項是 03/17 08:00
4F:→ somedoubt:"p→q"丟進所有真值給定函數跑出來的結果。 03/17 08:02