امروزه بههیچعنوان نمیتوانیم منکر تأثیر شگرف ریاضیات بر توسعه و پیشرفت تکنولوژی شویم؛ چون ابتدا ریاضی بهعنوان ابزاری جهت شناخت بیشتر این جهان است و در اولویت بعد، مطالعهی ریاضی بسیار لذتبخش است، حتی اگر استفادهی مستقیمی از مباحث آن نشود. در این مقاله به شاخهای از ریاضیات میپردازیم که میتوان آن را پایهی پیدایش کامپیوترها دانست.
نکتهی بسیار جالب این است که در برهههای خاصی از تاریخ، هر یک از شاخههای ریاضی شروع به مطرحشدن میکند؛ بهطوریکه در ابتدا هیچ کاربرد خاصی در آن یافت نمیشود ولی پس از مدتی پایهی یک اتفاق مهم میشود.
«و»، «یا» و «نقض»
جبر بولی یا همان Boolean Algebra ترکیبی از منطق و جبر است که در ابتدا بهوسیلهی جورج بول ابداع شد و پسازآن منطقدانهایی باعث رشد و تکامل این شاخه از جبر شدند.
منطق بهتنهایی فقط با صحیح و غلط بودن گزارهها سروکار دارد. جملهی «گوگل، آیفون را تولید میکند» گزاره ای غلط و جملهی «ما در قرن بیستویک میلادی قرار داریم» گزاره ای صحیح است. اینها جملاتی هستند که صحیح یا غلط بودن آنها برای ما نامشخص است و جذابیت و کاربرد این موضوع در جایی مشخص میشود که این گزارهها باهم ترکیب میشوند.
«سامسونگ یک شرکت کرهای است و سری گلکسی متعلق به این شرکت است» عبارتی است که از دو جملهی جدا به وجود آمده که میان آنها حرف «و» وجود دارد. این عبارت کاملاً صحیح است؛ چون هر قسمت جدا بهتنهایی صحیح است.
جبر بولی و شکلهای دیگر منطق گزارهای، بر پایهی گزارههای مرکبی هستند که از چند گزارهی ساده با رابطهای منطقی تشکیل شدهاند. صحیح یا غلط بودن این گزارههای مرکب بستگی بهدرستی یا نادرستی هر یک از اجزا و نوع رابطی که بین گزارههای کوچکتر استفاده میشود، دارد. برای مثال اگر گزارهی الف و گزارهی ب هر دو درست باشند، آنگاه میتوانیم بگوییم گزارهی «الف و ب» یک گزارهی مرکب صحیح است و اگر یکی یا هرکدام از آنها غلط باشد، گزارهی مرکب «الف و ب» نادرست است.
جورج بول این نکته را نیز شناسایی کرد که روابط بین گزارهها با استفاده از منطق، شباهت زیادی با پایه و اساس جبر و حساب دارد. در جبر، متغیرها با استفاده از اعمال اصلی که در حساب وجود دارد، باهم ترکیب میشوند و یک معادله به دست میآید.
در جبر منطقی بول، متغیرها که همان گزارهها هستند، با استفاده از رابطهای منطقی -«و»، «یا» و «نقض»- با یکدیگر ترکیب میشوند و یک گزارهی مرکب به وجود میآید. میتوان گزارهی «X و Y صحیح است» را به X×Y = 1 و «X یا Y نادرست است» را به معادلهی X + Y = 0 تشبیه کرد.
جبر بولی استفاده از این نوع موارد گفتهشده را آسان میسازد و منطقدانان با استفاده از قواعد خاص این نوع جبر میتوانند بهراحتی بهدرستی یک گزارهی مرکب پی ببرند. جبر بولی قواعد زیادی دارد که به دلیل مفصل بودن این قواعد، نمیتوانم آنها را برای شما توضیح دهم.
۱۰۰ سال پس از پیدایش جبر بولی
شاید با تمامی مطالب بالا، دچار سردرگمی شده باشید و ندانید که این موضوعات چه ربطی به کامپیوتر دارد؟! در ادامهی مطلب میتوانید با جذابیت بیشتری داستان طولانی جبر بولی و به سبب آن، پیدایش کامپیوترها را مطالعه نمایید.
منطق همیشه سعی کرده است تا از ریاضیات و فلسفه بهطور یکسان کمک بگیرد و به عبارتی یک پای خود را روی فلسفه و پای دیگر خود را روی ریاضیات بگذارد. منطق میخواهد برای استدلال کردن هم دلایل خود را ارائه دهد و درست بودن یک موضوع را از راههای ابتدایی اثبات کند. در همین حین، جبر بولی و منطق گزارهای در ابتدای راه پیدایش و بلوغ خود، بهشدت متکی به ریاضیات محض بودند و حتی کاربردهای آنها از شاخههایی مانند حساب دیفرانسیل و انتگرال هم کمتر بود.
بهطور قابلملاحظه و در حدود یک قرن پس از پدیدار شدن منطق جبری، ریاضیدانان و دانشمندان کاربردهای فراوانی برای منطق پیدا کردند و پسازاین اتفاقات، حالا یک شاخه از ریاضیات تبدیل به قلب تجارت جهانی شده است.
جبر بولی -گیرندهی مقادیر صحیح و نادرست، تغییردهندهی آنها با استفاده از قواعد خاص منطقی و مشخصکنندهی صحیح یا ناصحیح بودن یک گزارهی مرکب- همان پایهی بنیادی کامپیوتر و زندگی دیجیتال امروزی است.
یکی از اولین کاربردهای جبر بولی در سال ۱۹۳۷، در پایاننامهی آقای کلود شانون رؤیت شد. کلود شانونی که در یکی از شناختهشدهترین ریاضیدانان و مهندسان قرن بیستم بود. شانون ۲۱ سال داشت که پایاننامه کارشناسی ارشد خود را نوشت. این رساله پژوهشی که «تحلیل نمادین مدارهای رلهای و قطع و وصل» نام داشت، از مهمترین پایاننامههای قرن بیستم در درجه کارشناسی ارشد به شمار میآید. شانون پی برد که سوییچهای موجود در شبکههای رلهای، مانند شبکهی تلفن یا حتی یک کامپیوتر اولیه، میتواند بهراحتی مقدار صحیح را برای «روشن بودن» و مقدار ناصحیح را برای خاموش بودن به کار بگیرد. برای درک بهتر میتوانید یک چندراهی برق را در نظر بگیرید که جریان برق در آن به کلیدی بستگی دارد که علامت صفر و یک روی آن است. صفر یعنی خاموش بودن یا به معنای بهتر ناصحیح بودن و یک یعنی روشن بودن یا همان صحیح بودن.
ابداع شانون توانست طراحی شبکههای سوییچ را بسیار آسان سازد؛ بهطوریکه بهجای سروکار داشتن مستقیم با اتصالات شبکه، آنها را با فنها یا همان قواعد جبر بولی کنترل کرد که میتوانست سود زیادی در بر داشته باشد.
این ارتباط بین جبر بولی و سوییچهای الکتریکی را میتوان از منظر دیگری در پردازندهها یا همان CPUها دید. سیپییو دارای تعداد بسیار بالایی دروازهی منطقی است که این دروازههای منطقی همان نمودهای فیزیکی و مادهای عملگرها و رابطهای منطقی هستند. دروازهها یا گیتهای منطقی، هرکدام میتوانند یک یا چند مقدار یا متغیر دریافت کنند؛ یعنی مقادیر الکتریکی که معادل متغیرهای بولی هستند. یک سیم با ولتاژ بالا میتواند مقدار «صحیح» داشته باشد و یک سیم با ولتاژ پایین میتواند مقداری «ناصحیح» داشته باشد. سپس این ولتاژ با عبور از گیت منطقی و تحت تأثیر خواص الکتریکی نیمهرسانا، تبدیل به ولتاژی میشود که برای کامپیوتر شناختهشده است.
برای مثال گیت «و» دو ورودی میگیرد. اگر هر دو ورودی ولتاژ بالا باشند، خروجی هم ولتاژ بالا خواهد بود و اگر یکی یا هردوی ورودیها ولتاژ پایین باشد، خروجی هم ولتاژ پایین خواهد بود.
کنار هم قرار گرفتن صحیح این گیتها، امکان اجرای نرمافزارهای کامپیوتری را فراهم میسازد و سیپییو هم وظیفهی خود میداند تا بهطور صحیح و طبق خواستهی نرمافزار به اجرای دستورات و عمل بپردازد.
در مراحل بعدی، جبر بولی به پایههای ریاضیات باز خواهد گشت و مقادیر صحیح و ناصحیح به صفر و یکها تبدیل میشوند؛ همان مبنای دودویی (باینری) که در آن عدد یک نشاندهندهی مقدار صحیح و عدد صفر نیز نشاندهندهی مقدار ناصحیح است. سپس همین اعداد بازهم وارد مداراتی میشوند که پردازشهای نهایی در آنها صورت میگیرد و درنهایت شاهد کارایی کامپیوتر خواهیم بود.
دیدید که برخی توسعهها در ریاضی محض میتواند دههها یا قرنها نیز موردتوجه قرار بگیرد و کاربردهای فراوانی داشته باشد.