Computer for operations with functions
کمپیوٹر انجینئرنگ اور کمپیوٹر سائنس کے اندر، (ریاضیاتی) افعال کے ساتھ آپریشن کے لیے کمپیوٹر (معمول کے کمپیوٹر کے برعکس) ہارڈ ویئر کی سطح پر افعال کے ساتھ کام کرتا ہے (یعنی۔ ان کارروائیوں کو پروگرام کیے بغیر)۔ فنکشن کے ساتھ آپریشن کے لیے ایک کمپیوٹنگ مشین میخائل کارٹسیو نے 1967 میں پیش اور تیار کی تھی۔ اس کمپیوٹنگ مشین کی کارروائیوں میں افعال کا اضافہ، گھٹاؤ اور ضرب، افعال کا موازنہ، کسی فنکشن اور نمبر کے درمیان ایک جیسی کارروائیاں، فنکشن کو زیادہ سے زیادہ تلاش کرنا، غیر معینہ مدت تک انٹیگرل کا حساب لگانا، دو افعال کے مشتق کا قطعی انٹیگرل کا حساب لگانا، دو افعال کا مشتق، ایکس محور کے ساتھ کسی فنکشن کی شفٹ وغیرہ شامل تھے۔ اس کے فن تعمیر کے مطابق یہ کمپیوٹنگ مشین (جدید اصطلاحات کا استعمال کرتے ہوئے) ایک ویکٹر پروسیسر یا ایرے پروسیسر، ایک سنٹرل پروسیسنگ یونٹ (سی پی یو) تھی جو ایک انسٹرکشن سیٹ کو لاگو کرتی ہے جس میں ہدایات ہوتی ہیں جو ڈیٹا کی ایک جہتی صفوں پر کام کرتی ہیں جسے ویکٹر کہتے ہیں۔ اس میں یہ حقیقت استعمال کی گئی ہے کہ ان میں سے بہت سی کارروائیوں کی تشریح ویکٹروں پر معروف عمل کے طور پر کی جا سکتی ہے: افعال کا اضافہ اور گھٹاؤ-ویکٹروں کے اضافے اور گھٹاؤ کے طور پر، دو افعال مشتق کے ایک قطعی انٹیگرل کا حساب لگانا-جیسا کہ دو ویکٹروں کے ویکٹر پروڈکٹ کا حساب لگانا، ایکس محور کے ساتھ فنکشن شفٹ-جیسے محوروں کے بارے میں ویکٹر گردش وغیرہ۔ 1966 میں خمیلنیک نے فنکشن کوڈنگ کا طریقہ تجویز کیا تھا، یعنی۔ ایک "وردی" (مجموعی طور پر ایک فنکشن کے لیے) پوزیشنل کوڈ کے ذریعے فنکشن کی نمائندگی۔ اور اس طرح افعال کے ساتھ مذکور کارروائیاں منفرد کمپیوٹر کارروائیوں کے طور پر انجام دی جاتی ہیں جن میں ایسے کوڈ "واحد" ریاضی کی اکائی پر ہوتے ہیں۔ ایک متغیر افعال کے پوزیشنل کوڈ بنیادی خیال ایک انٹیجر نمبر کا پوزیشنل کوڈ فارم کے ایک مخصوص پوزیشنل نمبر سسٹم میں ہندسوں کا عددی اشارہ ہوتا ہے۔ اس طرح کے کوڈ کو "لکیری" کہا جا سکتا ہے۔ اس کے برعکس ایک متغیر فنکشن کے پوزیشنل کوڈ کی شکل ہوتی ہے: اور اس لیے یہ چپٹا اور "مثلث" ہوتا ہے، کیونکہ اس میں ہندسوں میں مثلث ہوتا ہے۔ مندرجہ بالا پوزیشنل نمبر کی قیمت اس رقم کی ہے، جہاں مذکورہ نمبر سسٹم کا ریڈکس ہے۔ ایک متغیر فنکشن کا پوزیشنل کوڈ فارم کے 'ڈبل' کوڈ سے مطابقت رکھتا ہے، جہاں ایک انٹیجر مثبت نمبر، لی گئی اقدار کی مقدار، اور دلیل کا ایک خاص فنکشن ہے۔ نمبروں کے پوزیشنل کوڈز کا اضافہ اسکیم کے مطابق اعلی ہندسوں میں کیری ٹرانسفر سے وابستہ ہے۔ ایک متغیر افعال کے پوزیشنل کوڈز کا اضافہ بھی اسکیم کے مطابق اعلی ہندسوں میں کیری ٹرانسفر سے وابستہ ہے: یہاں ایک ہی منتقلی بیک وقت دو اعلی ہندسوں پر کی جاتی ہے۔ R-nary مثلث کوڈ ایک مثلث کوڈ کو R-nary کہا جاتا ہے (اور اس کی نشاندہی کی جاتی ہے)، اگر اعداد سیٹ سے اپنی اقدار لیتے ہیں، جہاں اور۔ مثال کے طور پر، ایک مثلث کوڈ ایک سہ رخی کوڈ ہے، اگر، اور چوتھائی، اگر۔ R-nary مثلث کوڈوں کے لیے درج ذیل مساوات درست ہیں:، جہاں ایک صوابدیدی نمبر ہے۔ ایک صوابدیدی عدد حقیقی عدد موجود ہے۔ خاص طور پر۔ اس کے علاوہ فارم کا کوئی بھی فنکشن موجود ہے۔ مثلا۔ R-nary مثلث کوڈوں میں ایک ہندسوں کا اضافہ درج ذیل پر مشتمل ہوتا ہے: دیئے گئے ہندسے میں ان ہندسوں کا مجموعہ طے کیا جاتا ہے جو شامل کیے جا رہے ہیں اور دو کیری، بائیں سے اس ہندسے میں منتقل کیے جاتے ہیں، یعنی۔ یہ رقم اس فارم میں پیش کی جاتی ہے، جہاں، سمری کوڈ کے-ہندسوں میں لکھی جاتی ہے، اور دیئے گئے ہندسے سے لے کر-ہندسوں اور-ہندسوں میں لے جایا جاتا ہے۔ اس طریقہ کار کو (نمبروں کے ایک ہندسوں کے اضافے کے لیے بھی) ایک ہندسوں کے اضافے کی میز کے ذریعے بیان کیا جاتا ہے، جہاں شرائط کی تمام اقدار موجود ہونی چاہئیں اور کیری کی تمام اقدار رقم کے سڑنے پر ظاہر ہوتی ہیں۔ اس طرح کے ٹیبل کو ترکیب کیا جا سکتا ہے کیونکہ ذیل میں ہم نے ایک ہندسوں کے اضافے کا ٹیبل لکھا ہے: R-nary مثلث کوڈوں میں ایک ہندسوں کا گھٹاؤ ایک ہندسوں کے اضافے سے صرف اس حقیقت سے مختلف ہے کہ دیئے گئے ہندسوں میں قیمت کا تعین فارمولے کے ذریعے ہوتا ہے۔ R-nary مثلث کوڈوں میں پیرامیٹر R کے ذریعہ ایک ہندسوں کی تقسیم ارتباط کے استعمال پر مبنی ہے:، اس سے یہ پتہ چلتا ہے کہ ہر ہندسوں کی تقسیم دو سب سے کم ہندسوں میں ہوتی ہے۔ لہذا، اس عمل میں آنے والے ہندسوں کا نتیجہ اس ہندسے کو R سے تقسیم کرنے کے حصص کا مجموعہ ہے اور دو اعلی ترین ہندسوں سے لے جاتے ہیں۔ اس طرح، جب دیئے گئے ہندسے میں پیرامیٹر R سے تقسیم کیا جاتا ہے تو درج ذیل رقم کا تعین کیا جاتا ہے، اس رقم کو اس طرح پیش کیا جاتا ہے، جہاں، نتیجے میں کوڈ کے ہندسوں میں لکھا جاتا ہے، اور دیئے گئے ہندسوں سے لے کر ہندسوں اور ہندسوں میں منتقل کیا جاتا ہے۔ یہ طریقہ کار پیرامیٹر R کے ذریعہ ایک ہندسوں کی تقسیم کے جدول کے ذریعہ بیان کیا گیا ہے، جہاں اصطلاحات کی تمام اقدار اور کیری کی تمام اقدار، جو رقم کے سڑنے پر ظاہر ہوتی ہیں، موجود ہونی چاہئیں۔ اس طرح کے ٹیبل کو سنتھسائز کیا جا سکتا ہے کیونکہ ٹیبل کے نیچے ایک ہندسوں کی تقسیم کے لیے پیرامیٹر R کے ذریعے دیا جائے گا: R-nary مثلث کوڈز کا اضافہ اور گھٹاؤ (جیسا کہ پوزیشنل کوڈز آف نمبرز میں ہوتا ہے) بعد میں انجام دی گئی ایک ہندسوں کی کارروائیوں میں ہوتا ہے۔ ذہن میں رکھیں کہ ہر کالم کے تمام ہندسوں میں ایک ہندسوں کی کارروائیاں بیک وقت انجام دی جاتی ہیں۔ R-nary مثلث کوڈز کا ضرب۔ کسی کوڈ کو دوسرے کوڈ کے ہندسوں سے ضرب کرنا کوڈ کی شفٹ میں ہوتا ہے، یعنی۔ اس کے شفٹ کے کالم بائیں اور ایم صفوں میں ہیں۔ کوڈوں کا ضرب اور کوڈ کی بعد کی شفٹوں اور جزوی پروڈکٹ کے ساتھ منتقل شدہ کوڈ کے اضافے پر مشتمل ہوتا ہے (جیسا کہ نمبروں کے پوزیشن کوڈ میں ہوتا ہے)۔ R-nary مثلث کوڈوں کا مشتق۔ فنکشن کا مشتق، جس کی وضاحت اوپر کی گئی ہے۔ لہذا کسی فنکشن کے مثلث کوڈوں کی مشتق جزوی مشتق کے مثلث کوڈ کا تعین کرنے اور مشتق کے معروف مثلث کوڈ سے اس کے ضرب پر مشتمل ہوتی ہے۔ جزوی مشتق کے مثلث کوڈ کا تعین ارتباط پر مبنی ہے۔ مشتق طریقہ کار ایم کے-ہندسوں سے لے کر (ایم + 1، کے)-ہندسوں اور (ایم-1، کے)-ہندسوں کو منظم کرنے پر مشتمل ہوتا ہے، اور دیئے گئے ہندسوں میں ان کا مجموعہ اسی طرح کیا جاتا ہے جس طرح ایک ہندسوں کے اضافے میں کیا جاتا ہے۔ R-nary مثلث کوڈز کی کوڈنگ اور ڈیکوڈنگ۔ ایک فنکشن جس کی نمائندگی فارم کی سیریز کے ذریعہ کی جاتی ہے، انٹیجر کوفشنٹس کے ساتھ، R-nary مثلث کوڈ کے ذریعہ نمائندگی کی جا سکتی ہے، ان کوفشنٹس اور افعال کے لیے R-nary مثلث کوڈ ہوتے ہیں (جس کا ذکر سیکشن کے آغاز میں کیا گیا تھا)۔ دوسری طرف، R-nary مثلث کوڈ کی نمائندگی مذکورہ سیریز کے ذریعے کی جا سکتی ہے، کیونکہ فنکشن کی پوزیشن کی توسیع میں کسی بھی اصطلاح (اس کوڈ کے مطابق) کی نمائندگی اسی طرح کی سیریز کے ذریعے کی جا سکتی ہے۔ R-nary مثلث کوڈ کا کاٹنا۔ یہ "غیر"-صفر کالموں کی تعداد کو کم کرنے کے عمل کا نام ہے۔ کٹوتی کی ضرورت ہندسوں کے جال سے باہر کیریوں کے ابھرنے پر ظاہر ہوتی ہے۔ کٹوتی پیرامیٹر آر کے ذریعہ تقسیم پر مشتمل ہوتی ہے۔ کوڈ کے ذریعہ پیش کردہ سیریز کے تمام کوفیشنٹس کو R اوقات میں کم کیا جاتا ہے، اور ان کوفیشنٹس کے فریکشنل حصوں کو خارج کر دیا جاتا ہے۔ سیریز کی پہلی ٹرم کو بھی مسترد کر دیا گیا ہے۔ اس طرح کی کمی قابل قبول ہے اگر یہ معلوم ہو کہ افعال کا سلسلہ یکجا ہوتا ہے۔ کاٹنا بعد میں پیرامیٹر آر کے ذریعہ تقسیم کی ایک ہندسوں کی کارروائیوں پر مشتمل ہوتا ہے۔ قطار کے تمام ہندسوں میں ایک ہندسوں کی کارروائیاں بیک وقت انجام دی جاتی ہیں، اور نچلی قطار سے کیریوں کو خارج کر دیا جاتا ہے۔ اسکیل فیکٹر R-nary مثلث کوڈ کے ساتھ ایک اسکیل فیکٹر M ہوتا ہے، جو فلوٹنگ پوائنٹ نمبر کے ایکسپونینٹ کی طرح ہوتا ہے۔ عنصر M کوڈڈ سیریز کے تمام کوفشنٹس کو انٹیجر نمبروں کے طور پر ظاہر کرنے کی اجازت دیتا ہے۔ کوڈ ٹرنکیشن پر عنصر M کو R سے ضرب دی جاتی ہے۔ اضافی عوامل کے لیے M سیدھے ہوئے ہیں، ایسا کرنے کے لیے اضافی کوڈز میں سے ایک کو کاٹنا ضروری ہے۔ ضرب کے لیے عوامل M کو بھی ضرب دی جاتی ہے۔ بہت سے متغیرات کے افعال کے لیے پوزیشن کوڈ دو متغیرات کے افعال کے لیے پوزیشن کوڈ شکل 1 پر دکھایا گیا ہے۔ یہ فارم کے "ٹرپل" مجموعہ سے مطابقت رکھتا ہے::، جہاں ایک انٹیجر مثبت نمبر ہے، اعداد و شمار کی اقدار کی تعداد، اور-اسی کے مطابق دلائل کے کچھ افعال۔ شکل 1 پر نوڈس ہندسوں سے مطابقت رکھتے ہیں، اور حلقوں میں متعلقہ ہندسوں کے اشاریہ جات کی اقدار دکھائی گئی ہیں۔ دو متغیرات کے فعل کے پوزیشنل کوڈ کو "اہرام" کہا جاتا ہے۔ پوزیشن کوڈ کو R-nary کہا جاتا ہے (اور اس کی نشاندہی کی جاتی ہے)، اگر نمبر سیٹ سے اقدار کو فرض کرتے ہیں۔ کوڈز کے اضافے پر کیری چار ہندسوں تک پھیل جاتی ہے اور اسی وجہ سے۔ متعدد متغیرات سے فنکشن کے لیے ایک پوزیشنل کوڈ فارم کے مجموعے سے مطابقت رکھتا ہے، جہاں ایک انٹیجر مثبت نمبر، ہندسوں کی اقدار کی تعداد، اور دلائل کے کچھ افعال ہیں۔ کئی متغیرات کے فنکشن کے پوزیشنل کوڈ کو "ہائپرپرپرامائڈل" کہا جاتا ہے۔ شکل 2 میں سے مثال کے طور پر تین متغیرات کے فنکشن کا ایک پوزیشنل ہائپرپرپرامائڈل کوڈ دکھایا گیا ہے۔ اس پر نوڈس ہندسوں سے مطابقت رکھتے ہیں، اور حلقوں میں متعلقہ ہندسوں کے اشاریہ جات کی اقدار ہوتی ہیں۔ ایک پوزیشنل ہائپرپرپرامائڈل کوڈ کو R-nary کہا جاتا ہے (اور اس کی نشاندہی کی جاتی ہے)، اگر نمبر سیٹ سے اقدار کو فرض کرتے ہیں۔ کوڈ کے اضافے پر کیری ایک جہتی مکعب پر پھیلا ہوا ہے، جس میں ہندسوں پر مشتمل ہے، اور اسی وجہ سے۔ مزید دیکھیں ہارڈ ویئر ایکسلریشن ڈیجیٹل سگنل پروسیسر حوالہ جات انکوڈنگ سنٹرل پروسیسنگ یونٹ سوویت ایجادات منفرد قسم کے کمپیوٹر