回答
教科書Language Proof and Logic爲Odersky教授提到的普遍量詞和存在量詞提供了這些英語表達。
通用量詞∀
是用來表達普遍的索賠,那些我們用 quantifed短語,如一切,每一件事情,萬物和任何用英文表達。
存在量詞∃
是用來表達生存的權利,那些我們用英文表達使用這樣的短語東西,至少有一點,一個和的。
這些術語的提及可能與使用高階函數的集合相關或導致操作。在Scala中,從邏輯到代碼的轉換對於集合上的forall
和exists
操作是很自然的。這些與上面給出的普遍和存在定義類似。一些簡單的例子是有幫助的,以顯示這一點:
scala> val l = 1 to 10
l: scala.collection.immutable.Range.Inclusive = Range(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)
scala> l.forall(x => x > 0)
res0: Boolean = true
scala> l.forall(x => x > 1)
res1: Boolean = false
這兩個forall
聲明只是要求做這個集合中的所有元素符合標準。
scala> l.exists(x => x < 1)
res2: Boolean = false
scala> l.exists(x => x < 2)
res3: Boolean = true
這兩個exists
聲明只是要求做這個集合的任何元素符合標準。
爲了充分理解這個陳述,你可能需要研究一些邏輯。但這裏的基本要點如下:
「量詞」是如何給邏輯陳述中的變量賦予含義。如果我說「{關於x
}」,那其實並沒有太多意義。你必須知道x
是說是真是假。但是,如果我說「所有x
{一些有關x
}」量化變量x
或「存在一個x
這樣{一些有關x
}」,那麼我做一個單獨的語句是真或假。
在我說的是「{一些關於x
}」是真「爲所有x
」情況下,任何x
你可以挑選;這是普遍的量化。例如「對於所有x
,x
是偶數」是虛假陳述。
在「存在一個x
這樣說:」情況下,我說有這樣的x
一個可能的選擇使「{一些關於x
}」是真實的(我不是說選擇的是什麼,只是有一個)。這是存在量化。作爲一個例子,「存在x
這樣x
是偶數」是一個真實的陳述。
他們是在對偶「爲所有x
{一些有關x
}」指的是同樣的事情,「這是不正確的,存在一個x
這樣,這是不正確的{一些有關x
}」,也「存在x
,使得{關於x
}」的意思與「對於所有x
而言並不是真的,{關於x
}有關」)。如果你仔細想想,希望這看起來很直觀。
如果您告訴我們函數blah
和bladdy
是什麼,我們可以解釋它們與通用量詞和存在量詞的對應方式,這可能會更有助於幫助您理解講師的觀點。
- 1. 一階邏輯Prolog的匿名變量
- 2. 一階邏輯推理
- 3. 一階邏輯公式
- 4. 一階邏輯&序言
- 5. 一階邏輯引擎
- 6. 人工智能和一階邏輯
- 7. 用一階謂詞邏輯表示計數函數
- 8. propostional邏輯和判刑謂詞邏輯
- 9. 謂詞與一階邏輯中的函數
- 10. 正向推理一階邏輯(統一)
- 11. 謂詞邏輯和CNF
- 12. 幫助轉化爲一階邏輯
- 13. 將一階邏輯轉換爲CNF
- 14. 邏輯的階乘遞歸調用
- 15. 謂詞邏輯在Haskell
- 16. 開發一階邏輯和PDDL的原因
- 17. 如何使用量詞和邏輯運算
- 18. 使用Camlp4來解析一串通用和存在量詞
- 19. 業務邏輯的另一個詞?
- 20. 遏制的謂詞邏輯
- 21. 構建使用一階邏輯的分辨率證明
- 22. Java Vector3d和矢量邏輯
- 23. 一個完整的新手(書籍推薦)的一階邏輯?
- 24. 關鍵詞:一些和一個更高階的量化前
- 25. 量詞實例化和許多排序邏輯
- 26. 邏輯變量的內存大小
- 27. 如何用一階邏輯寫這個斷言?
- 28. 翻譯到謂詞邏輯與詞彙
- 29. Prolog一階邏輯 - 打印一個真值表
- 30. 這個一階邏輯語句的解釋?
很好的答案謝謝百萬 – 2013-04-05 10:26:54
當然可以。我認爲這些概念很簡單,這只是邏輯類中的很多形式術語。 – theJollySin 2013-04-05 15:08:46
您可能會對Wiki文章感到困惑,因爲它不是量詞的最佳來源。 +1爲量詞的答案 – 2013-04-05 19:33:54