2013-04-04 21 views
28

Tôi đang tham gia một khóa học lập trình Scala. Tại một thời điểm người hướng dẫn nói:Số lượng phổ quát và tồn tại của Logic bậc 1

Chức năng blahbladdy là phổ quát và hiện sinh quantifiers của logic bậc nhất.

Ai đó có thể dịch "số lượng phổ biến và tồn tại của logic bậc 1" sang tiếng Anh, vui lòng?

Trả lời

39

Câu đó có đầy đủ các thuật ngữ. Bạn có thể tìm thấy mô tả của universal và định lượng logic here.

  1. A Universal Quantifier là một câu lệnh logic áp dụng cho tất cả các thành phần của tập hợp.
  2. An Existential Quantifier là một câu lệnh logic áp dụng cho ít nhất một phần tử của tập hợp.

Bạn cũng có thể xem here để có mô tả nhanh về first-order logic. Thuật ngữ này có nghĩa là để tách first-order từ higher-order logic:

  1. First-order câu lệnh lô gíc là những người bình thường; họ hành động trên các thành viên của một bộ.
  2. Higher-order báo cáo logic hoạt động trên các tuyên bố logic khác; nghĩ về chúng như meta-logic.
+1

câu trả lời tuyệt vời nhờ một triệu –

+1

Điều chắc chắn. Tôi nghĩ rằng các khái niệm là đủ dễ dàng, đó chỉ là rất nhiều biệt ngữ chính thức từ một lớp logic. – theJollySin

+2

bạn có thể bị nhầm lẫn với bài viết Wiki nó không phải là nguồn tốt nhất cho số lượng. 1 cho câu trả lời của bạn cho số lượng –

17

Sách giáo khoa Language Proof and Logic cung cấp các biểu thức tiếng Anh này cho các định lượng phổ quát và tồn tại mà giáo sư Odersky gọi.

Trình định lượng phổ biến & thiếu hiệu quả;

được sử dụng để thể hiện tuyên bố phổ quát, những người chúng ta thể hiện bằng tiếng Anh sử dụng cụm từ quantifed như tất cả mọi thứ , mỗi điều, tất cả mọi thứ, và bất cứ điều gì .

Các quantifier hiện sinh ∃

được sử dụng để thể hiện tuyên bố hiện sinh, những người chúng ta thể hiện bằng tiếng Anh sử dụng các cụm từ như một cái gì đó, ít nhất một điều, một, và một.

Việc đề cập đến các điều khoản này có thể liên quan hoặc dẫn đến hoạt động trên các bộ sưu tập sử dụng các hàm bậc cao hơn. Trong Scala, quá trình chuyển đổi từ logic sang mã là khá tự nhiên với các hoạt động forallexists trên một bộ sưu tập.Đây là tương tự với các định nghĩa phổ quát và tồn tại được đưa ra ở trên. Một số ví dụ đơn giản là hữu ích để hiển thị này:

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 

Hai forall báo cáo chỉ đơn giản là đang yêu cầu làm tất cả yếu tố của bộ sưu tập này đáp ứng các tiêu chí.

scala> l.exists(x => x < 1) 
res2: Boolean = false 

scala> l.exists(x => x < 2) 
res3: Boolean = true 

Hai exists báo cáo chỉ đơn giản là đang yêu cầu làm yếu tố bất kỳ bộ sưu tập này đáp ứng các tiêu chí.

2

Để đánh giá đầy đủ tuyên bố đó, bạn có thể phải nghiên cứu một số logic. Nhưng đây là ý chính cơ bản:

"Định lượng" là cách bạn đặt ý nghĩa cho các biến số trong các câu lệnh logic. Nếu tôi nói "{something about x}", điều đó thực sự không có nhiều ý nghĩa. Bạn sẽ phải biết những gì x là để nói cho dù đó là một tuyên bố đúng hay sai. Nhưng nếu tôi định lượng biến số x bằng cách nói "cho tất cả x {cái gì đó về x}" hoặc "có tồn tại x sao cho {something about x}" thì tôi đang thực hiện một tuyên bố đúng hoặc sai.

Trong "cho tất cả x" trường hợp tôi nói rằng "{điều gì đó về x}" là đúng đối với bất kỳ x bạn có thể chọn; đó là định lượng phổ quát. Ví dụ: "cho tất cả x, x là số chẵn" là một tuyên bố sai.

Trong "có tồn tại x sao cho" trường hợp tôi nói rằng có thể chọn cho x để "{something about x}" là đúng (tôi không nói lựa chọn đó là gì có một cái). Đây là định lượng tồn tại. Ví dụ: "tồn tại một số x sao cho x là số chẵn" là một tuyên bố đúng.

Họ là những cá nhân nộp thuế ở chỗ "cho tất cả x {điều gì đó về x}" có nghĩa là điều tương tự như "đó là không đúng sự thật rằng có tồn tại một x như vậy mà nó là KHÔNG đúng là {điều gì đó về x}", và cũng có thể "có tồn tại một số x sao cho {cái gì đó về x}" có nghĩa giống như "KHÔNG đúng cho tất cả x KHÔNG đúng là {cái gì đó về x}". Hy vọng rằng có vẻ hợp lý nếu bạn nghĩ về nó.

Nếu bạn cho chúng tôi biết các chức năng blahbladdy là gì, chúng tôi có thể giải thích cách thức chúng tương ứng với số lượng phổ dụng và tồn tại, có thể hữu ích hơn trong việc giúp bạn hiểu điểm của người hướng dẫn.

Các vấn đề liên quan