Chứng minh luật của DeMorgan


21

Sử dụng mười suy luận của Hệ thống khấu trừ tự nhiên chứng minh luật của DeMorgan .

Các quy tắc khấu trừ tự nhiên

  • Giới thiệu phủ định: {(P → Q), (P → ¬Q)} ⊢ ¬P

  • Loại bỏ tiêu cực: {(¬P → Q), (¬P → ¬Q)} ⊢ P

  • Và giới thiệu: {P, Q} ⊢ P ʌ Q

  • Và loại bỏ: P ʌ Q ⊢ {P, Q}

  • Hoặc Giới thiệu: P ⊢ {(P ∨ Q),(Q ∨ P)}

  • Hoặc loại bỏ: {(P ∨ Q), (P → R), (Q → R)} ⊢ R

  • Giới thiệu Iff: {(P → Q), (Q → P)} ⊢ (P ≡ Q)

  • Loại bỏ Iff: (P ≡ Q) ⊢ {(P → Q), (Q → P)}

  • Nếu giới thiệu: (P ⊢ Q) ⊢ (P → Q)

  • Nếu loại bỏ: {(P → Q), P} ⊢ Q

Cấu trúc bằng chứng

Mỗi tuyên bố trong bằng chứng của bạn phải là kết quả của một trong mười quy tắc được áp dụng cho một số đề xuất xuất phát trước đó (không có logic tròn) hoặc giả định (được mô tả bên dưới). Mỗi quy tắc hoạt động trên một số mệnh đề ở phía bên trái của (toán tử hệ quả logic) và tạo ra bất kỳ số lượng các đề xuất nào từ phía bên phải. Nếu Giới thiệu hoạt động hơi khác so với phần còn lại của các toán tử (được mô tả chi tiết bên dưới). Nó hoạt động trên một tuyên bố đó là kết quả hợp lý của một tuyên bố khác.

ví dụ 1

Bạn có các tuyên bố sau:

{(P → R), Q}

Bạn có thể sử dụng và giới thiệu để thực hiện:

(P → R) ʌ Q

Ví dụ 2

Bạn có các tuyên bố sau:

{(P → R), P}

Bạn có thể sử dụng If Elimination để thực hiện:

R

Ví dụ 3

Bạn có các tuyên bố sau:

(P ʌ Q)

Bạn có thể sử dụng And Elimination để thực hiện:

P

hoặc để thực hiện:

Q

Tuyên truyền giả định

Bạn có thể bất cứ lúc nào giả định bất kỳ tuyên bố nào bạn muốn. Bất kỳ tuyên bố nào xuất phát từ các giả định này sẽ "phụ thuộc" vào chúng. Các tuyên bố cũng sẽ phụ thuộc vào các giả định mà các tuyên bố của họ dựa vào. Cách duy nhất để loại bỏ các giả định là Nếu Giới thiệu. Đối với Nếu giới thiệu, bạn bắt đầu với một Tuyên bố Qphụ thuộc vào một tuyên bố Pvà kết thúc bằng (P → Q). Tuyên bố mới phụ thuộc vào mọi giả định Qphụ thuộc vào ngoại trừ giả định P. Tuyên bố cuối cùng của bạn nên dựa vào không có giả định.

Cụ thể và tính điểm

Bạn sẽ xây dựng một bằng chứng cho mỗi hai luật của DeMorgan chỉ bằng 10 suy luận của Tính toán khấu trừ tự nhiên.

Hai quy tắc là:

¬(P ∨ Q) ≡ ¬P ʌ ¬Q

¬(P ʌ Q) ≡ ¬P ∨ ¬Q

Điểm của bạn là số lượng suy luận được sử dụng cộng với số lượng giả định được thực hiện. Tuyên bố cuối cùng của bạn không nên dựa vào bất kỳ giả định nào (nghĩa là phải là một định lý).

Bạn có thể tự do định dạng bằng chứng của bạn khi bạn thấy phù hợp.

Bạn có thể mang bất kỳ Lemmas nào từ bằng chứng này sang bằng chứng khác mà không mất phí.

Bằng chứng mẫu

Tôi sẽ chứng minh rằng (P and not(P)) implies Q

(Mỗi điểm đạn là +1 điểm)

  • Giả định not (Q)

  • Giả định (P and not(P))

  • Sử dụng và loại bỏ trên dẫn (P and not(P))xuất{P, not(P)}

  • Sử dụng và giới thiệu Pnot(Q)rút ra(P and not(Q))

  • Sử dụng và loại bỏ trên tuyên bố vừa xuất phát để thực hiện P

PĐề xuất mới này khác với đề xuất khác mà chúng ta rút ra trước đó. Cụ thể là nó phụ thuộc vào các giả định not(Q)(P and not(P)). Trong khi đó, tuyên bố ban đầu chỉ dựa vào (P and not(P)). Điều này cho phép chúng tôi làm:

  • Nếu Giới thiệu về Pgiới thiệu not(Q) implies P(vẫn phụ thuộc vào (P and not(P))giả định)

  • Sử dụng và giới thiệu trên not(P)not(Q)(từ bước 3) để rút ra(not(P) and not(Q))

  • Sử dụng và loại bỏ trên tuyên bố vừa xuất phát để thực hiện not(P) (bây giờ phụ thuộc vào not(Q))

  • Nếu giới thiệu về not(P)giới thiệu mớinot(Q) implies not(P)

  • Bây giờ chúng tôi sẽ sử dụng loại bỏ phủ định trên not(Q) implies not(P)not(Q) implies Pđể rút raQ

Điều này Qchỉ phụ thuộc vào giả định (P and not(P))để chúng tôi có thể hoàn thành bằng chứng với

  • Nếu giới thiệu về Qdẫn xuất(P and not(P)) implies Q

Bằng chứng này đạt tổng điểm 11.


7
Mặc dù sự đồng thuận về meta là rõ ràng, nhưng không phải ai cũng sẽ nhìn thấy nó, vì vậy đây chỉ là để làm nổi bật rằng chơi golf bằng chứng là về chủ đề .
trichoplax

2
Tôi nghĩ bạn nên giải thích cấu trúc của bằng chứng và (biểu tượng cũng không hiển thị cho tôi trên thiết bị di động).
xnor

3
Tôi nghĩ rằng những lời giải thích chắc chắn có ích. Những gì tôi thấy hữu ích nhất sẽ là một ví dụ hiệu quả và ghi được của một số bằng chứng đơn giản bao gồm If-Giới thiệu và các giả định, tốt nhất là lồng nhau. Có lẽ của contrapositive?
xnor

1
Trong ví dụ của bạn, tôi tin rằng hai giả định đầu tiên sẽ phải được lật lại; nơi nào nó nói rằng (P ⊢ (Q ⊢ R)) ⊢ (Q ⊢ (P ⊢ R))(trong trường hợp này, ¬Q ⊢ ((P ʌ ¬P) ⊢ P)để (P ʌ ¬P) ⊢ (¬Q ⊢ P)được sử dụng).
LegionMammal978

1
Bạn có được phép chứng minh nhiều điều trong một "bối cảnh giả định" không, và sau đó trích xuất nhiều câu lệnh hàm ý, để tiết kiệm bao nhiêu "dòng giả định" là cần thiết? ví dụ (assume (P/\~P); P,~P by and-elim; (assume ~Q; P by assumption; ~P by assumption); ~Q->P by impl-intro; ~Q->~P by impl-intro; Q by neg-elim); P/\~P->Q by impl-introđể đạt điểm 9?
Daniel Schepler

Câu trả lời:


6

Điểm: 81

Mỗi dòng nên có giá trị 1 điểm. Luật của De Morgan được tìm thấy tại các tuyên bố (3) và (6). Các nhãn trong ngoặc biểu thị (các) câu lệnh trước đó một dòng phụ thuộc vào nếu chúng không nằm trước ngay lập tức.

(a) assume P {
    (aa) P ^ P
    (ab) P
    (ac) P v Q
} (a1) P -> P
  (a2) P -> P v Q
(1) assume ~P ^ ~Q {
    (1a) assume P v Q {
        (1aa) assume Q {
            (1aaa) assume ~P {
                (1aaaa) Q ^ Q [1aa]
                (1aaab) Q
                (1aaac) ~Q [1]
            } (1aaa1) ~P -> Q
              (1aaa2) ~P -> ~Q
            (1aab) P
        } (1aa1) Q -> P
        P [1a, a1, 1aa1]
        ~P [1]
    } (1a1) P v Q -> P
      (1a2) P v Q -> ~P
    (1b) ~(P v Q)
} (11) ~P ^ ~Q -> ~(P v Q)
(2) assume ~(P v Q) {
    (2a) ~(P v Q) ^ ~(P v Q)
    (2b) assume P {
        (2aa) ~(P v Q) [2a]
    } (2b1) P -> ~(P v Q)
    (2c) ~P [a2, 2b1]
    (2d) assume Q {
        (2da) ~(P v Q) [2a]
        (2db) P v Q
    } (2d1) Q -> ~(P v Q)
      (2d2) Q -> P v Q
    (2e) ~Q
    (2f) ~P ^ ~Q
} (21) ~(P v Q) -> ~P ^ ~Q
(3) ~(P v Q) == ~P ^ ~Q [11, 21]
(4) assume ~P v ~Q {
    (4a) assume ~P {
        (4aa) assume P ^ Q {
            (4aaa) P
            (4aab) ~P ^ ~P [4a]
            (4aac) ~P
        } (4aa1) P ^ Q -> P
          (4aa2) P ^ Q -> ~P
        (4ab) ~(P ^ Q)
    } (4a1) ~P -> ~(P ^ Q)
    (4b) assume ~Q {
        (4ba) assume P ^ Q {
            (4baa) Q
            (4bab) ~Q ^ ~Q [4b]
            (4bac) ~Q
        } (4ba1) P ^ Q -> Q
          (4ba2) P ^ Q -> ~Q
        (4bb) ~(P ^ Q)
    } (4b1) ~P -> ~(P ^ Q)
    (4c) ~(P ^ Q) [4, 4a1, 4b1]
} (41) ~P v ~Q -> ~(P ^ Q) 
(5) assume ~(P ^ Q) {
    (5a) assume ~(~P v ~Q) {
        (5aa) ~(~P v ~Q) ^ ~(P ^ Q) [5, 5a]
        (5ab) assume ~P {
            (5aba) ~P v ~Q
            (5abb) ~(~P v ~Q) [5aa]
        } (5ab1) ~P -> ~P v ~Q
          (5ab2) ~P -> ~(~P v ~Q)
        (5ac) P
        (5ad) assume ~Q {
            (5ada) ~P v ~Q
            (5adb) ~(~P v ~Q) [5aa]
        } (5ad1) ~Q -> ~P v ~Q
          (5ad2) ~Q -> ~(~P v ~Q)
        (5ae) Q
        (5af) P ^ Q [5ac, 5ae]
        (5ag) ~(P ^ Q) [5aa]
    } (5a1) ~(~P v ~Q) -> P ^ Q
      (5a2) ~(~P v ~Q) -> ~(P ^ Q)
    (5b) ~P v ~Q
} (51) ~(P ^ Q) -> ~P v ~Q
(6) ~(P ^ Q) == ~P v ~Q [41, 51]

4

Điểm: 59

Giải trình

Tôi sẽ sử dụng một cấu trúc giống như cây để làm bằng chứng vì tôi thấy phong cách này khá dễ đọc. Mỗi dòng được chú thích bằng số lượng quy tắc được sử dụng, ví dụ: "Ví dụ 1" trong thử thách sẽ được biểu diễn dưới dạng cây này (phát triển từ dưới lên trên):

AIntro

Lưu ý các ẩn số A, B và cũng là giả định Γ - vì vậy đây không phải là định lý. Để giải thích cách chứng minh một định lý, chúng ta hãy giả sử A và sử dụng giới thiệu Or như sau:

Ôi

Bây giờ điều này vẫn phụ thuộc vào giả định A nhưng chúng ta có thể rút ra một định lý bằng cách áp dụng một giới thiệu If:

IIntro

Vì vậy, chúng tôi có thể lấy được các định lý ⊢ Một → ( AB ) trong tổng cộng 3 bước (1 giả định & 2 quy tắc áp dụng).

Với điều này, chúng ta có thể tiếp tục chứng minh một vài quy tắc mới giúp chúng ta chứng minh Luật DeMorgan.

Quy tắc bổ sung

Trước tiên chúng ta hãy rút ra Nguyên tắc bùng nổ và biểu thị nó bằng PE trong các bằng chứng tiếp theo:

PE

Từ đó, chúng tôi rút ra một dạng khác của nó: AAX - chúng tôi sẽ gọi nó là CPE :

PE

Chúng ta sẽ cần một thuật ngữ khác trong đó thuật ngữ phủ định (¬) là một giả định và gọi nó là CPE - :

NCPE

Từ hai quy tắc chúng ta vừa xuất phát ( CPECPE - ), chúng ta có thể rút ra một quy tắc quan trọng Double Negation :

ĐN

Điều tiếp theo cần làm là chứng minh một cái gì đó giống như Modus Tollens - do đó MT :

MT

Bổ đề

Bổ đề A

Bổ đề A1

Chúng tôi sẽ cần quy tắc sau hai lần:

LA1

Bổ đề A

Bằng cách khởi tạo bổ đề vừa được chứng minh hai lần, chúng ta có thể chỉ ra một hướng tương đương, chúng ta sẽ cần nó trong bằng chứng cuối cùng:

LA

Bổ đề B

Để hiển thị hướng khác, chúng tôi sẽ cần thực hiện hai lần một số nội dung khá lặp đi lặp lại (đối với cả hai đối số AB trong ( AB )) - điều này có nghĩa là ở đây tôi có thể đánh golf thêm bằng chứng ..

Bổ đề B1 '

LB1_

Bổ đề B1

LB1

Bổ đề B2 '

LB2_

Bổ đề B2

LB2

Bổ đề B

Cuối cùng là kết luận của B1B2 :

LB

Bằng chứng thực tế

Khi chúng tôi đã chứng minh hai tuyên bố này:

  • Bổ đề A : ⊢ ( AB ) → ( A ʌ B )
  • Bổ đề B : ⊢ ¬ ( AB ) → ( A ʌ B )

Chúng ta có thể chứng minh tương đương đầu tiên (¬ ( AB ) ≡ ¬ A ʌ B )) như sau:

P1

Và với quy tắc vừa được chứng minh cùng với Iff-Elimination, chúng ta cũng có thể chứng minh sự tương đương thứ hai:

P2

Không chắc chắn về điểm số - nếu tôi làm đúng, hãy cho tôi biết nếu có gì sai.

Giải trình

Nguồn

Nếu ai đó muốn nguồn tex (cần mathpartir ):

In the following a rule \textbf{XYZ'} will denote the rule XYZ's second last
step, for example \textbf{PE'} will be $ A \land \lnot A \vdash X $.

\section*{Principle of Explosion [PE]}

\begin{mathpar}
  \inferrule*[Left=$\to$-Intro,Right=10]
    {\inferrule*[Left=$\lnot$-Elim,Right=9]
      {\inferrule*[Left=$\to$-Intro,Right=4]
        {\inferrule*[Left=$\land$-Elim,Right=3]
          {\inferrule*[Left=Axiom,Right=2]
            { }
            { A \land \lnot A, \lnot X \vdash A \land \lnot A }
          }
          { A \land \lnot A, \lnot X \vdash A }
        }
        { A \land \lnot A \vdash \lnot X \to A } \\
       \inferrule*[Right=$\to$-Intro,Left=4]
          {\inferrule*[Right=$\land$-Elim,Left=3]
            {\inferrule*[Right=Axiom,Left=2]
              { }
              { A \land \lnot A, \lnot X \vdash A \land \lnot A }
            }
            { A \land \lnot A, \lnot X \vdash \lnot A }
          }
        { A \land \lnot A \vdash \lnot X \to \lnot A }
      }
      { A \land \lnot A \vdash X }
    }
    { \vdash (A \land \lnot A) \to X }
\end{mathpar}

\section*{Conditioned PE [CPE]}

\begin{mathpar}
  \inferrule*[Left=$\to$-Intro,Right=5]
  {\inferrule*[Left=$\to$-Elim,Right=4]
    {\inferrule*[Left=$\land$-Intro,Right=3]
      {\inferrule*[Left=Axiom,Right=1]
        { } { A \vdash A } \\
       \inferrule*[Right=Axiom,Left=1]
        { } { \lnot A \vdash \lnot A }
      }
      { A, \lnot A \vdash A \land \lnot A } \\
     \inferrule*[Right=PE,Left=0]
      { } { \vdash (A \land \lnot A) \to X }
    }
    { A, \lnot A \vdash X }
  }
  { A \vdash \lnot A \to X }
\end{mathpar}

to get \textbf{CPE$^-$}:

\begin{mathpar}
  \inferrule*[Left=$\to$-Intro,Right=1]
    {\inferrule*[Left=CPE',Right=0]
      { }
      { A, \lnot A \vdash X }
    }
    { \lnot A \vdash A \to X }
\end{mathpar}

\section*{Double Negation [DN]}

\begin{mathpar}
  \inferrule*[Left=$\equiv$-Intro,Right=5]
    {\inferrule*[Left=$\to$-Intro,Right=2]
      {\inferrule*[Left=$\lnot$-Elim,Right=1]
        {\inferrule*[Left=CPE$^-$,Right=0]
          { }
          { \lnot\lnot A \vdash \lnot A \to X } \\
          \inferrule*[Right=CPE$^-$,Left=0]
          { }
          { \lnot\lnot A \vdash \lnot A \to \lnot X }
        }
        { \lnot\lnot A \vdash A }
      }
      { \vdash \lnot\lnot A \to A } \\ \\ \\
      \inferrule*[Left=$\to$-Intro,Right=2]
        {\inferrule*[Left=$\lnot$-Intro,Right=1]
          {\inferrule*[Left=CPE,Right=0]
            { }
            {  A \vdash \lnot A \to X } \\
            \inferrule*[Right=CPE,Left=0]
            { }
            { A \vdash \lnot A \to \lnot X }
          }
          { A \vdash \lnot\lnot A }
        }
        { \vdash A \to \lnot\lnot A }
    }
    { \vdash \lnot\lnot A \equiv A  }
\end{mathpar}

\section*{Modus Tollens [MT]}

\begin{mathpar}
  \inferrule*[Left=$\to$-Intro,Right=6]
    {\inferrule*[Left=$\lnot$-Intro,Right=5]
      {\inferrule*[Left=Axiom,Right=1]
       { }
       { A \to \lnot B \vdash A \to \lnot B } \\
       \inferrule*[Right=$\to$-Intro,Left=3]
         {\inferrule*[Right=Axiom,Left=2]
           { }
           { A, B \vdash B }
         }
         { B \vdash A \to B }
       }
      { A \to \lnot B, B \vdash \lnot A }
    }
    { A \to \lnot B \vdash B \to \lnot A }
\end{mathpar}

\section*{Lemma A}

\textbf{Lemma A1}:

\begin{mathpar}
  \inferrule*[Left=$\to$-Intro,Right=9]
    {\inferrule*[Left=$\lor$-Elim,Right=8]
       { \inferrule*[Left=CPE,Right=3]
          {\inferrule*[Left=$\land$-Elim,Right=2]
            {\inferrule*[Left=Axiom,Right=1]
              { }
              { A \land B \vdash A \land B }
            }
            { A \land B \vdash B}
          }
          { A \land B \vdash \lnot B \to X } \\
         \inferrule*[Right=CPE,Left=3]
          {\inferrule*[Right=$\land$-Elim,Left=2]
            {\inferrule*[Right=Axiom,Left=1]
              { }
              { A \land B \vdash A \land B }
            }
            { A \land B \vdash A }
          }
          { A \land B \vdash \lnot A \to X } \\ \\ \\
         \inferrule*[Right=Axiom,Left=1]
          { }
          { \lnot A \lor \lnot B \vdash \lnot A \lor \lnot B }
       }
       { A \land B, \lnot A \lor \lnot B \vdash X }
    }
    { \lnot A \lor \lnot B \vdash (A \land B) \to X }
\end{mathpar}

\textbf{Lemma A}:

1
Theo như tôi có thể nói, hệ thống bằng chứng khấu trừ tự nhiên ở đây không cho phép chứng minh một tuyên bố một lần với các biến đề xuất chung, và sau đó khởi tạo nó. Vì vậy, mỗi lần bạn có một khởi tạo khác nhau về một trong những bổ đề của bạn về các biến PQ, bạn sẽ phải tính riêng các bước của nó trong tổng số cuối cùng. (Nói cách khác, hệ thống bằng chứng không trực tiếp cho phép chứng minh các bổ đề "bậc hai" như "cho tất cả các mệnh đề A và B A/\B -> B/\A", sau đó sử dụng nó để chứng minh cả hai P/\(Q/\R) -> (Q/\R)/\P(P/\Q)/\R -> R/\(P/\Q).)
Daniel Schepler

@DanielSchepler: Có nhưng không có phụ thuộc vòng tròn và trong quy tắc có ghi Bạn có thể mang bất kỳ Bổ đề nào từ bằng chứng này sang bằng chứng khác mà không mất phí. , vậy là sẽ ổn thôi. Chỉnh sửa : Trong thực tế nếu điều đó không được phép, tôi chắc chắn câu hỏi này sẽ chỉ có một câu trả lời đủ điều kiện.
ბიმო

Tôi đã giải thích rằng với ý nghĩa đơn giản là bạn có thể có một số bằng chứng phổ biến về một tập hợp các công thức cụ thể được chia sẻ giữa các bằng chứng của hai tuyên bố cuối cùng.
Daniel Schepler

1

Điểm: 65

Luật de Morgan là dòng 30 và dòng 65.

(Tôi chưa thực hiện bất kỳ nỗ lực cụ thể nào để đánh gôn này, ví dụ để xem liệu có một số bằng chứng lặp đi lặp lại có thể được tóm tắt ngay từ đầu không.)

 1. assume ~(P\/Q)
 2.   assume P
 3.     P\/Q  by or-introl, 2
 4.   P -> P\/Q  by impl-intro, 2, 3
 5.   P -> ~(P\/Q)  by impl-intro, 2, 1
 6.   ~P  by neg-intro, 4, 5
 7.   assume Q
 8.     P\/Q  by or-intror, 7
 9.   Q -> P\/Q  by impl-intro, 7, 8
10.   Q -> ~(P\/Q) by impl-intro, 7, 1
11.   ~Q  by neg-intro, 9, 10
12.   ~P /\ ~Q  by and-intro, 6, 11
13. ~(P\/Q) -> ~P/\~Q  by impl-intro, 1, 12
14. assume ~P /\ ~Q
15.   ~P, ~Q  by and-elim, 14
16.   assume P \/ Q
17.     assume P
18.     P -> P  by impl-intro, 17, 17
19.     assume Q
20.       assume ~P
21.       ~P -> Q  by impl-intro, 20, 19
22.       ~P -> ~Q  by impl-intro, 20, 15
23.       P  by neg-elim, 21, 22
24.     Q -> P  by impl-intro, 19, 23
25.     P  by or-elim, 16, 18, 24
26.   P\/Q -> P  by impl-elim, 16, 25
27.   P\/Q -> ~P  by impl-elim, 16, 15
28.   ~(P\/Q)  by neg-intro, 26, 27
29. ~P/\~Q -> ~(P\/Q)  by impl-intro, 14, 28
30. ~(P\/Q) <-> ~P/\~Q  by iff-intro, 13, 29
31. assume ~(P/\Q)
32.   assume ~(~P\/~Q)
33.     assume ~P
34.       ~P\/~Q  by or-introl, 33
35.     ~P -> ~P\/~Q  by impl-intro, 33, 34
36.     ~P -> ~(~P\/~Q)  by impl-intro, 33, 32
37.     P  by neg-elim, 35, 36
38.     assume ~Q
39.       ~P\/~Q  by or-intror, 38
40.     ~Q -> ~P\/~Q  by impl-intro, 38, 39
41.     ~Q -> ~(~P\/~Q)  by impl-intro, 38, 32
42.     Q  by neg-elim, 40, 41
43.     P /\ Q  by and-intro, 37, 42
44.   ~(~P\/~Q) -> P /\ Q  by impl-intro, 32, 43
45.   ~(~P\/~Q) -> ~(P /\ Q)  by impl-intro, 32, 31
46.   ~P \/ ~Q  by neg-elim, 44, 45
47. ~(P/\Q) -> ~P\/~Q  by impl-intro, 31, 46
48. assume ~P\/~Q
49.   assume ~P
50.     assume P/\Q
51.       P, Q  by and-elim, 50
52.     P/\Q -> P  by impl-intro, 50, 51
53.     P/\Q -> ~P  by impl-intro, 50, 49
54.     ~(P/\Q)  by neg-intro, 52, 53
55.   ~P -> ~(P/\Q)  by impl-intro, 49, 54
56.   assume ~Q
57.     assume P/\Q
58.       P, Q  by and-elim, 57
59.     P/\Q -> Q  by impl-intro, 57, 58
60.     P/\Q -> ~Q  by impl-intro, 57, 56
61.     ~(P/\Q)  by neg-intro, 59, 60
62.   ~Q -> ~(P/\Q)  by impl-intro, 56, 61
63.   ~(P/\Q)  by or-elim, 48, 55, 62
64. ~P\/~Q -> ~(P/\Q)  by impl-intro, 48, 63
65. ~(P/\Q) <-> ~P\/~Q  by iff-intro, 47, 64
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.