Unit in the last place
کمپیوٹر سائنس اور عددی تجزیے میں، آخری جگہ پر موجود اکائی یا کم از کم درستگی (یو ایل پی) کی اکائی دو مسلسل فلوٹنگ پوائنٹ نمبروں کے درمیان فاصلہ ہے، یعنی، سب سے کم اہم ہندسہ (دائیں طرف کا ہندسہ) اس قدر کی نمائندگی کرتا ہے اگر یہ 1 ہے۔ اسے عددی حسابات میں درستگی کی پیمائش کے طور پر استعمال کیا جاتا ہے۔ تعریف ایک تعریف یہ ہے: ریڈیکس میں درستگی کے ساتھ، اگر، تو ایک اور تعریف، جو جان ہیریسن نے تجویز کی ہے، قدرے مختلف ہے: دو قریب ترین پھیلے ہوئے فلوٹنگ پوائنٹ نمبروں اور (یعنی، ان کے ساتھ اور) کے درمیان فاصلہ ہے، یہ فرض کرتے ہوئے کہ ایکسپونینٹ رینج اوپری حد نہیں ہے۔ یہ تعریفیں صرف ریڈکس کے دستخط شدہ اختیارات پر مختلف ہوتی ہیں۔ آئی ای ای ای 754 تفصیلات-جس کے بعد تمام جدید فلوٹنگ پوائنٹ ہارڈ ویئر-کی ضرورت ہوتی ہے کہ ابتدائی ریاضی کے عمل (1985 سے اضافہ، گھٹاؤ، ضرب، تقسیم، اور مربع جڑ، اور 2008 سے ایف ایم اے) کا نتیجہ صحیح طریقے سے گول ہو، جس کا مطلب ہے کہ جان ہیریسن کی تعریف کا استعمال کرتے ہوئے قریب ترین تک گول کرنے میں، گول نتیجہ ریاضیاتی طور پر درست نتیجہ کے 0.0 الپ کے اندر ہوتا ہے۔ اس کے برعکس، اس خاصیت کا مطلب یہ ہے کہ گول نتیجہ اور ریاضیاتی طور پر درست نتیجہ کے درمیان کا فاصلہ کم سے کم ہوتا ہے (لیکن آدھے راستے کے معاملات کے لیے، یہ مسلسل دو فلوٹنگ پوائنٹ نمبروں سے مطمئن ہوتا ہے)۔ معروف عددی کتب خانے بنیادی ماورائی افعال کو 0.5 اور تقریبا 1 الپ کے درمیان شمار کرتے ہیں۔ صرف چند لائبریریاں ان کا حساب 0.5 الپ کے اندر کرتی ہیں، یہ مسئلہ ٹیبل میکر کے مخمصے کی وجہ سے پیچیدہ ہے۔ مثال 1 ایک مثبت فلوٹنگ پوائنٹ نمبر ہونے دیں اور فرض کریں کہ فعال راؤنڈنگ موڈ گول سے قریب ترین ہے، یکساں سے منسلک ہے، ظاہر کیا گیا ہے۔ اگر، تب۔ بصورت دیگر، یا، کم سے کم اہم ہندسوں کی قیمت اور کے ایکسپوینٹ پر منحصر ہے۔ یہ ایک انٹرایکٹو پرامپٹ پر ٹائپ کیے گئے مندرجہ ذیل ہاسکل کوڈ میں ظاہر ہوتا ہے:> جب تک کہ (\x-> x = = x + 1) (+ 1) 0:: فلوٹ 1.6777216e7> it-1 1.6777215e7> it + 1 1.6777216e7 یہاں ہم ایک ہی درستگی میں 0 سے شروع کرتے ہیں اور بار بار 1 کا اضافہ کرتے ہیں جب تک کہ آپریشن کی قدر تبدیل نہ ہو۔ چونکہ واحد صحت سے متعلق نمبر کی اہمیت 24 بٹس پر مشتمل ہوتی ہے، اس لیے پہلا عدد جو بالکل قابل نمائندگی نہیں ہے وہ 224+1 ہے، اور یہ قدر 224 سے گول سے قریب ترین ہوتی ہے، اس کا تعلق یکساں سے ہوتا ہے۔ اس طرح نتیجہ 224 کے برابر ہے۔ مثال 2 جاوا میں درج ذیل مثال دو دوہری اقدار کو بریکٹ کرتے ہوئے تلاش کرکے فلوٹنگ پوائنٹ ویلیو کے طور پر لگ بھگ ہے: //π 20 اعشاریہ ہندسوں کے ساتھ بگ ڈیسیمل π = نیا بگ ڈیسیمل ("3.14159265358979323846") ؛// ڈبل فلوٹنگ پوائنٹ ڈبل p0 = π.doubleValue () ؛//-> 3.141592653589793 (ہیکس: 0x1.921fb54442d18p1)// p0 π سے چھوٹا ہے، لہذا ڈبل ڈبل p1 = Math.nextUp (p0) ؛//-> 3.141592653589793 6 (ہیکس: 0x1.921fb54442d19p1) کے طور پر نمائندگی کرنے والا اگلا نمبر تلاش کریں۔ //الپ (π) پی 1 اور پی 0 کے درمیان فرق ہے بگ ڈیسیمل الپ = نیا بگ ڈیسیمل (پی 1)۔ سبٹریکٹ (نیا بگ ڈیسیمل (پی 0)) ؛//-> 4.44089209850062616169452667236328125E-16// (یہ بالکل 2 * * (-51) ہے)// ایک ہی نتیجہ جب معیاری لائبریری فنکشن ڈبل الپ میتھ = Math.ulp (پی 0) ؛//> 4.440892098500626E-16 (ہیکس: 0x1.0p-51) مثال 3 پائیتھن میں ایک اور مثال، جو انٹرایکٹو پرامپٹ پر بھی ٹائپ کی جاتی ہے، یہ ہے:>> x = 1. اسی طرح مثال 1 کے مطابق، نتیجہ 253 ہے کیونکہ ڈبل صحت سے متعلق فلوٹنگ پوائنٹ فارمیٹ 53 بٹ کی اہمیت کا استعمال کرتا ہے۔ زبان کی حمایت C + + لائبریریاں افعال کو فروغ فراہم کرتی ہیں:: ریاضی:: فلوٹ _ نیکسٹ، بوسٹ:: ریاضی:: فلوٹ _ پریور، بوسٹ:: ریاضی:: نیکسٹفرٹ اور بوسٹ:: ریاضی:: فلوٹ _ ایڈوانس قریبی (اور دور) فلوٹنگ پوائنٹ ویلیوز حاصل کرنے کے لیے، اور بوسٹ:: ریاضی:: فلوٹ _ ڈسٹنس (a، b) دو ڈبلز کے درمیان فلوٹنگ پوائنٹ فاصلے کا حساب لگانے کے لیے۔ سی زبان کی لائبریری کسی دی گئی سمت میں اگلے فلوٹنگ پوائنٹ نمبر کا حساب لگانے کے لیے افعال فراہم کرتی ہے: فلوٹ کے لیے نیکسٹ آفٹرف اور نیکسٹ ٹوورڈف، نیکسٹ آفٹر اور نیکسٹ ٹوورڈ ڈبل کے لیے، نیکسٹ آفٹرل اور نیکسٹ ٹوورڈل لانگ ڈبل کے لیے، جس کا اعلان <math.h> میں کیا گیا ہے۔ یہ میکرو FLT _ Epsilon، DBL _ Epsilon، LDBL _ Epsilon بھی فراہم کرتا ہے، جو متعلقہ قسم میں 1 اور اگلے بڑے قابل نمائندگی نمبر کے درمیان مثبت فرق کی نمائندگی کرتے ہیں۔ ایک کا الپ)۔ جاوا معیاری لائبریری افعال فراہم کرتی ہے اور۔ انہیں جاوا 1.5 کے ساتھ متعارف کرایا گیا تھا۔ سوئفٹ اسٹینڈرڈ لائبریری نیکسٹ ڈاؤن اور نیکسٹ اپ انسٹنس پراپرٹیز کے ذریعے کسی دی گئی سمت میں اگلے فلوٹنگ پوائنٹ نمبر تک رسائی فراہم کرتی ہے۔ یہ سوئفٹ کی فلوٹنگ پوائنٹ اقسام کے لیے انسٹنس پراپرٹی الپ اور ٹائپ پراپرٹی الپ آف ون (جو کہ FLT _ Epsilon جیسے C میکرو سے مطابقت رکھتا ہے) بھی فراہم کرتا ہے۔ آئی ای ای ای 754 آئی ایس او/آئی ای سی 10967 بھی دیکھیں، حصہ 1 میں الپ فنکشن کی ضرورت ہوتی ہے۔ کم سے کم اہم بٹ (ایل ایس بی) مشین ایپسیلون راؤنڈنگ ایرر حوالہ جات ببلیوگرافی گولڈ برگ، ڈیوڈ (1991-03)۔ "فلوٹنگ پوائنٹ ریاضی کے بارے میں ہر کمپیوٹر سائنسدان کو کیا معلوم ہونا چاہیے" میں "راؤنڈنگ ایرر"۔ کمپیوٹنگ سروے، اے سی ایم، مارچ 1991۔ http://docs.oracle.com/cd/E19957-01/806-3568/ncg_goldberg.html#689 سے حاصل کیا گیا۔ کمپیوٹر ریاضی فلوٹنگ پوائنٹ