W 1854 roku matematyk George Boole opublikował książkę argumentującą, że rozumowanie logiczne da się sprowadzić do algebry — że każde zdanie jest albo prawdziwe, albo fałszywe, a każdy sposób łączenia takich zdań sprowadza się do trzech operacji: ORAZ, LUB i NIE. W tamtym czasie brzmiało to jak czysta abstrakcja. Sto lat później stało się roboczym schematem dla każdego cyfrowego urządzenia na świecie, bo tranzystor okazał się zaskakująco dobrą fizyczną realizacją przełącznika prawda-lub-fałsz.
Od notacji matematycznej do fizycznego przełącznika
Tranzystor to, w najprostszym ujęciu, bramka sterowana napięciem — włączona albo wyłączona, prąd płynie albo nie, co odwzorowuje bezpośrednio prawdę i fałsz z ujęcia Boole'a. Połącz garść tranzystorów we właściwym układzie, a otrzymasz bramkę logiczną: bramka ORAZ zwraca prawdę tylko wtedy, gdy oba jej wejścia są prawdziwe; bramka LUB zwraca prawdę, gdy prawdziwe jest którekolwiek z wejść; bramka NIE po prostu odwraca swoje jedno wejście. Z nich inżynierowie wyprowadzają kolejne — NAND, NOR, XOR — ale jedna z nich, NAND, okazuje się szczególna: każdą inną bramkę, a co za tym idzie każdą obliczalną funkcję boolowską, jaka istnieje, da się zbudować z samych bramek NAND. Dlatego produkcja układów scalonych może opierać się na standaryzacji wokół wytwarzania ogromnych, powtarzających się siatek zasadniczo jednego komponentu.
Jak garść bramek staje się „dodaj te liczby” albo „czy ta twarz pasuje”
Połącz bramki we właściwym układzie, a otrzymasz obwód, który dodaje dwie cyfry binarne i poprawnie przenosi nadmiar — sumator pełny. Połącz łańcuchowo wystarczająco dużo sumatorów pełnych, a możesz dodawać liczby dowolnej wielkości. Ustaw tę logikę obok obwodów pamięci i obwodów sterujących, w skali miliardów tranzystorów na współczesnym układzie scalonym, a ten sam prymityw — prawda, fałsz, ORAZ, LUB, NIE — okaże się tym, co stoi pod arytmetyką, porównaniami i, przy dostatecznej liczbie warstw abstrakcji nałożonych na siebie, czymś, co wygląda jak rozpoznawanie twarzy albo przewidywanie kolejnego słowa w zdaniu. Bez względu na to, jak wyrafinowane wydaje się zachowanie na powierzchni, pod spodem to wciąż kaskady przełączników prawda-fałsz, aż do samego dna.
Czego wciąż nie jesteśmy pewni
Ten boolowski model to fundament, na którym działa każdy konwencjonalny komputer, ale warto precyzyjnie określić, gdzie on się kończy. Obliczenia kwantowe działają na naprawdę odmiennym prymitywie — kubicie, który utrzymuje superpozycję stanów zamiast ścisłego, ustalonego prawda lub fałsz — i nie jest to po prostu „mocniejsza logika boolowska” działająca szybciej. To całkowicie inny model obliczeniowy, naprawdę użyteczny dla wąskiego zbioru problemów, w których tę superpozycję da się wykorzystać, a nie szybsza, uniwersalna wersja telefonu w twojej kieszeni. Traktowanie komputerów kwantowych jako ulepszenia logiki klasycznej, zamiast innego narzędzia do innego zadania, to powszechne, ale realne nieporozumienie.
Ten temat mieści się w obszarze Logika Cyfrowa i Obwody Boolowskie, jednym z ośmiu tematów w Elektrotechnice, jednej z czterech dziedzin w Inżynierii, jednym z siedemnastu przedmiotów, z których może cię odpytać aplikacja.