Tại sao F + F '= 1?


15

Tôi có hàm: f(x,y,z,w)=wx+yz

Tôi thấy chức năng bổ sung của nó là: f(x,y,z,w)=wy+wz+xy+xz

Tôi có để chứng minh rằng: f+f=1 nhưng tôi không thể nhìn thấy làm thế nào để làm điều đó.

Có vẻ như không có bất cứ thứ gì hủy bỏ nhau.

Biên tập

Theo đề xuất, tôi đã sử dụng định lý DeMorgan và tìm thấy điều này:

f+f=wx+yz+(w+y)+(w+z)+(x+y)+(y+z)

Nhưng nó vẫn có vẻ với tôi rằng không có gì mang lại cho tôi gần gũi hơn với việc thực hiện các là f+f=1


6
Gợi ý: Sử dụng Luật
DeMorgan

11
Hoặc f hoặc f 'phải là 1
Chu

4
Bạn chỉ có 4 đầu vào. Nếu không có gì khác, bạn chỉ cần viết ra một bảng sự thật.
Photon

2
Spehro đúng với số tiền, nhưng có, áp dụng DeMorgan như bước đầu tiên không giúp ích gì. Vì vậy, để mở rộng gợi ý của Spehro một chút: giải pháp liên quan đến việc thực hiện một số đại số cơ bản, bao gồm DeMorgan như một bước. Sử dụng đại số đơn giản + DeMorgan, bạn có thể biến hàm f 'thành một phủ định rõ ràng rõ ràng của f. Viết nguệch ngoạc ra một tờ giấy, tôi chỉ mất 4 bước để làm như vậy.
Ông Snrub

1
@ Mr.Snrub bước đầu tiên của "Tôi tìm thấy chức năng bổ sung của nó" phải là (wx + yz)
OrangeDog

Câu trả lời:


4

Vì Carl hỏi độc đáo. Điểm bắt đầu:

f(x,y,z,w)=wx+yz
f(x,y,z,w)=wy+wz+xy+xz'

Thực hiện các bước sau đây với f :

f(x,y,z,w)=w(y+z)+x(y+z)
f(x,y,z,w)=(w+x)(y+z)
DeMorgan:
f(x,y,z,w)=(wx)(yz)
DeMorgan, một lần nữa:
f(x,y,z,w)=(wx+yz)
Vì vậy, bây giờ là phía bên tay phải củaf chỉ là sự phủ định đơn giản của phía bên tay phải củaf. Đó là một chút chống khí hậu, kể từ bây giờ chúng ta chỉ dựa vào thực tế là bất kỳ biểu hiện x+x=1 , đó là những gì mọi người đã nói tất cả cùng về f+f=1 , nhưng ít nhất nó cung cấp một chút Giải thích Boolean-đại số cho lý do tại sao điều đó là đúng.


Tôi không hiểu làm thế nào bạn có được dòng thứ hai mà không đi qua câu trả lời cuối cùng của bạn. Câu trả lời cuối cùng của bạn là bước đầu tiên của tôi: đó chỉ là sự phủ định của cả hai bên.
C. Lange

Hai dòng đầu tiên là các công thức được đưa ra bởi OP. Họ là điểm khởi đầu, theo định nghĩa. Tôi hoàn toàn đồng ý rằng những thứ sau này có thể là một phần trong việc tạo ra hai công thức đầu tiên của OP. Nhưng chúng tôi không có thông tin đó; chúng tôi chỉ không thể xác nhận.
Ông Snrub

Hiểu - trên giả định rằng f ' được đưa ra trong câu hỏi như OP đã viết chúng ra. Sự hiểu biết của tôi là OP đã cố gắng mở rộng f ' và không biết đi đâu từ đó. fff
C. Lange

41

Vấn đề là, nó thực sự không quan trọng hàm f() thực sự là gì. Thực tế quan trọng là đầu ra của nó là một giá trị nhị phân duy nhất.

Một thực tế cơ bản trong đại số Boolean là phần bù của giá trị nhị phân là đúng bất cứ khi nào giá trị đó là sai. Điều này được gọi là luật loại trừ giữa . Vì vậy, ORing một giá trị với phần bù của nó luôn luôn đúng và ANDing một giá trị với phần bù của nó luôn luôn là sai.

Thật tuyệt khi bạn có thể lấy được hàm cụ thể f() , nhưng điều đó thực sự không liên quan đến câu hỏi thực tế!


1
Điều này được gọi là luật loại trừ giữa .
BallpointBen

@BallpointBen: Cảm ơn! Tôi đã thêm nó vào câu trả lời của tôi.
Dave Tweed

13

Tất cả các câu trả lời trước là chính xác, và rất sâu sắc. Nhưng một cách đơn giản hơn để tiếp cận điều này có thể là hãy nhớ rằng trong đại số boolean, tất cả các giá trị phải là 0 hoặc 1.

Vì vậy, ... hoặc F là 1, thì F 'là 0 hoặc ngược lại: F là 0 và F' là 1. Nếu sau đó bạn áp dụng hàm OR boolean: F + F ', bạn sẽ luôn có một của cả hai điều khoản 1, vì vậy kết quả sẽ luôn là 1.


11

Câu trả lời của tôi tương tự như câu trả lời của Dave Tweed, nghĩa là tôi đã đưa nó lên một mức độ chính thức hơn. Tôi rõ ràng đã trả lời sau, nhưng tôi đã quyết định đăng nó vì ai đó có thể thấy cách tiếp cận này thú vị.


Mối quan hệ mà bạn đang cố gắng chứng minh là độc lập với cấu trúc của hàm f vì thực tế, đó là một tautology . Để giải thích những gì tôi muốn nói, tôi đề nghị một cuộc biểu tình cho một vị tướng, hình thành một cách chính xác, Boolean biểu P trong một số tùy ý của các biến Boolean, nói nN , y1,,yn , nơi yi{0,1} cho tất cả i=1,,n .
Chúng ta có P(y1,,yn){0,1} và xem xét hai bộ sau các giá trị Boolean chon chiều vector Boolean(y1,,yn)

Y={(y1,,yn){0,1}n|P(y1,,yn)=1}Y¯={(y1,,yn){0,1}n|P(y1,,yn)=0}
Những bộ là một phân vùng của tập hợp đầy đủ các giá trị đầu vào vector Boolean có thể giả định, tức làYY¯={0,1}nYY¯=(bộ trống), do đó
P(y1,,yn)={0if (y1,,yn)Y¯1if (y1,,yn)YP(y1,,yn)={1if (y1,,yn)Y¯0if (y1,,yn)Y
do đó chúng tôi luôn có
P+P=1(y1,,yn){0,1}n


11

Tất cả các câu trả lời tốt cung cấp sự biện minh cần thiết theo cách này hay cách khác. Vì nó là một tautology, thật khó để tạo ra một bằng chứng không chỉ dẫn đến "nó là như vậy!". Có lẽ phương pháp này giúp giải quyết nó từ một góc độ khác, rộng hơn:

Mở rộng cả hai câu lệnh để bao gồm các trường hợp dư thừa của chúng và loại bỏ các trường hợp lặp lại:

𝑓=𝑤𝑥+𝑦𝑧  =wx(yz+yz+yz+yz) + yz(xw+xw+xw+xw)  =wxyz+wxyz+wxyz+wxyz + yzxw+yzxw+yzxw+yzxw  =wxyz+wxyz+wxyz+wxyz + yzxw+yzxw+yzxw

𝑓=𝑤𝑦+𝑤𝑧+𝑥𝑦+𝑥𝑧   =wy(xz+xz+xz+xz) + 𝑤𝑧(xy+xy+xy+xy) +         xy(wz+wz+wz+wz) + x𝑧(wy+wy+wy+wy)   =wyxz+wyxz+wyxz+wyxz + 𝑤𝑧xy+𝑤𝑧xy+𝑤𝑧xy+𝑤𝑧xy +         xywz+xywz+xywz+xywz + x𝑧wy+x𝑧wy+x𝑧wy+x𝑧wy   =wyxz+wyxz+wyxz+wyxz + 𝑤𝑧xy+𝑤𝑧xy +         xywz+xywz + x𝑧wy

Tôi đã giữ các thuật ngữ theo thứ tự nhất quán để làm cho đạo hàm rõ ràng hơn, nhưng chúng có thể được viết theo thứ tự abc để rõ ràng hơn. Trong mọi trường hợp, vấn đề là f ORS bảy trường hợp 4-bit, và f ORS chín, biệt trường hợp 4-bit. Họ cùng nhau HOẶC tất cả mười sáu trường hợp 4 bit, vì vậy giảm xuống 1 .


4
+1 đây là câu trả lời duy nhất đang trả lời cho ý định thực sự của câu hỏi OP, đó là thực hiện một số đại số Boolean hơn là đưa ra các lập luận lý thuyết. Nhưng theo nhận xét của tôi về OP, lưu ý rằng một giải pháp thanh lịch hơn tồn tại; vấn đề này có thể được giải quyết mà không cần thêm vào trong các trường hợp dư thừa.
Ông Snrub

Tôi rất muốn thấy điều đó là tốt. Đó là, nếu bạn có thời gian và sự hào phóng để làm điều đó
Carl

8

F + F '= 1 có nghĩa là bạn phải chỉ ra rằng bất kể trạng thái của 4 đầu vào, HOẶC kết quả của 2 luôn luôn dẫn đến 1,

Một vài phút trong excel cho thấy nó thực sự là trường hợp. Bạn có thể sử dụng "KHÔNG ()" để đảo ngược giữa 0 và 1 trong excel.

F = W * X + Y * Z

F '= W' * Y '+ W' * Z '+ X' * Y '+ X' * Z '

Về lý do tại sao đây là trường hợp, Nếu bạn muốn F là sai, ví dụ: đặt W và Y ở mức thấp, bạn chỉ cần đặt F 'đúng. Nếu bạn làm X và Z thấp, bạn cũng biến F "thành thật, tương tự cho việc hoán đổi các cặp.

nhập mô tả hình ảnh ở đây


2
"F + F '= 1 có nghĩa là bạn phải chứng minh rằng bất kể trạng thái của 4 đầu vào, HOẶC kết quả của 2 luôn luôn dẫn đến 1". Không, nó không. Nó chỉ có nghĩa là bạn phải chỉ ra rằng bất kể đầu ra (chỉ có thể có hai khả năng) và đầu ra tương ứng của phần bù của nó, mối quan hệ giữ. Các đầu vào là không liên quan, như là chức năng. Bảng chân lý duy nhất cần thiết là bảng hiển thị mối quan hệ giữa đầu ra của hàm và đầu ra của bất kỳ thứ gì đủ điều kiện là bổ sung của nó.
Chris Stratton

@ChrisStratton, điều đó phụ thuộc vào câu hỏi là chỉ ra rằng OR của hàm và phần bù của nó luôn là 1 (là tầm thường theo định nghĩa của phần bù) hoặc cho thấy hàm F 'thực sự là phần bù của F. From Từ ngữ của OP, tôi nghĩ họ có vấn đề 2 phần. Phần A: tìm hàm bổ sung. Phần B: cho thấy rằng nó thực sự là phần bổ sung.
Photon

0

+

 A | B | A + B
---------------
 0 | 0 |   0
 1 | 0 |   1
 0 | 1 |   1
 1 | 1 |   1
 A | A′| A + A′
----------------
 0 | 1 |   1
 1 | 0 |   1

f.f+f=1

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.