لا توجد نسخ مراجعة من هذه الصفحة، لذا، قد لا يكون التزامها بالمعايير متحققًا منه.

تساوي القوى (UK: /ˌɪdɛmˈptəns/ ، US: /ˌdəm-/) هو خاصية لبعض العمليات في الرياضيات وعلوم الكمبيوتر حيث أنها يمكن أن تكون مطبقة عدة مرات دون تغيير النتيجة بعد التطبيق الأولي. ينشأ مفهوم العاطفة في عدد من الأماكن في الجبر المجرد (على وجه الخصوص، في نظرية أجهزة العرض ومشغلي الإغلاق) والبرمجة الوظيفية (حيث يرتبط بخاصية الشفافية المرجعية).

تشغيل / إيقاف الأزرار من القطار وجهة علامة لوحة التحكم. يعد الضغط على زر التشغيل (الأخضر) عملية غير فعالة ، حيث أن لها نفس التأثير سواء تم إجراؤها مرة واحدة أو عدة مرات. وبالمثل ، فإن الضغط على " إيقاف" يعتبر ضعيفًا.

تم تقديم المصطلح بواسطة Benjamin Peirce [1] في سياق عناصر الجبر التي تظل ثابتة عند رفعها إلى قوة عدد صحيح موجب، وتعني حرفيًا «(جودة امتلاك) نفس القوة»، من idem + القدرة (نفس + قوة).

تعريف

عدل

يقال إن العنصر x من الصهارة (M ، •) يكون ضعيفًا إذا: [2] [3]

xx = x.

إذا كانت جميع العناصر معطلة فيما يتعلق بـ • ، فعندئذ • يسمى idempotent. الصيغة ∀ x ، xx = x تسمى قانون idempotency لـ •.[4] [5]

أمثلة

عدل
  • الرقم الطبيعي 1 هو عنصر فاعل فيما يتعلق بالضرب (منذ 1 × 1 = 1)، وكذلك هو 0 (منذ 0 × 0 = 0)، ولكن لا يوجد رقم طبيعي آخر (على سبيل المثال 2 × 2 = 2 لا يحمل). للسبب الأخير، فإن مضاعفة الأعداد الطبيعية ليست عملية عديمة الفاعلية. بشكل أكثر رسمية، في أحادي الصيغة ( ، ×)، تكون العناصر المثالية 0 و 1 فقط.
  • في الصهارة (M ، •)، يكون عنصر الهوية e أو عنصر الامتصاص a ، إذا كان موجودًا، ضعيفًا. في الواقع، ee = e و aa = a .
  • في المجموعة (G ، •)، عنصر الهوية e هو العنصر الوحيد غير الفعال. في الواقع، إذا كانت x عنصرًا من G مثل xx = x ، فإن xx = xe وأخيراً x = e بضربها على اليسار في العنصر العكسي لـ x .
  • يعتبر أخذ التقاطع x y لمجموعتين x و y عملية متكافئة، لأن xx يساوي دائمًا x . هذا يعني أن قانون القدرة المثالية ∀ x ، x x = x صحيح. وبالمثل، فإن أخذ اتحاد مجموعتين هو عملية غير فعالة. بشكل رسمي، في الأحاديات (𝒫 (E)، ∪) و (𝒫 (E)، ∩) لمجموعة الطاقة للمجموعة E مع الاتحاد المحددوتقاطع المجموعة ∩ على التوالي، تكون جميع العناصر غير فعالة؛ ومن ثم فإن ∪ وهما عمليتان خاملتان على 𝒫 (E).
  • في الأشكال الأحادية ({0، 1} ، ∨) و ({0، 1} ، ∧) للمجال المنطقي مع الفصل المنطقيوالاقتران المنطقي ∧ على التوالي، تكون جميع العناصر عديمة الفعالية.
  • في الحلقة المنطقية، يكون الضرب خاملاً.
  • في شبه استوائية، تكون الإضافة معطلة.

وظائف عاطلة

عدل

في المونويد (E E ، ∘) للوظائف من مجموعة E إلى نفسها مع تكوين الوظيفة ∘ ، العناصر المثالية هي الوظائف f: EE بحيث أن ff = f ، بمعنى آخر مثل ذلك بالنسبة لجميع x في E ، f(f(x)) = f(x) (صورة كل عنصر في E هي نقطة ثابتة من f). فمثلا:

  • إن أخذ القيمة المطلقة abs (x) [6] لعدد صحيح x هي دالة ذاتية للسبب التالي: abs (abs (x)) = abs (x) صحيح لكل عدد صحيح x.[7] هذا يعني أن abs abs = abs [8] يحمل، أي أن القيمة المطلقة عنصر ثابت في مجموعة جميع الوظائف (من الأعداد الصحيحة إلى الأعداد الصحيحة) [9] فيما يتعلق بتكوين الوظيفة. لذلك، تفي القيمة المطلقة بالتعريف أعلاه لوظيفة قاصرة.

تشمل الأمثلة الأخرى:

إذا كانت مجموعة E ديه ن العناصر، فإننا يمكن تقسيمه إلى ك اختيار النقاط الثابتة nk نقاط غير ثابتة تحت و، وبعد ذلك ك ن - ك هو عدد وظائف جامدة مختلفة. ومن ثم، مع مراعاة جميع الأقسام الممكنة،

 

هو العدد الإجمالي للوظائف غير الفعالة الممكنة في المجموعة. يبدأ التسلسل الصحيح لعدد الدوال غير الفعالة كما هو موضح بالمجموع أعلاه لـ n = 0، 1، 2، 3، 4، 5، 6، 7، 8... يبدأ بـ 1، 1، 3، 10، 41، 196، 1057، 6322، 41393... (متسلسلة A000248 في OEIS) .

لا يتم الحفاظ على خاصية كونك عاطلاً ولا خاصية عدم القدرة في ظل تكوين الوظيفة.[10] كمثال للأول، f(x) = x mod 3 و g (x) = max (x ، 5) كلاهما غير fg ، لكن fg ليس كذلك، [11] على الرغم من أن gf يحدث.[12] كمثال لهذا الأخير، فإن وظيفة النفي ¬ في المجال المنطقي ليست ¬ ∘ ¬ ، ولكن ¬ ∘ ¬ هي. وبالمثل، فإن النفي الأحادي −( ) للأرقام الحقيقية ليس −( ) ∘ −( ) ، ولكن −( ) ∘ −( ) هو.

معنى علوم الكمبيوتر

عدل

في علوم الكمبيوتر، قد يكون لمصطلح تساوي القوى معنى مختلفًا اعتمادًا على السياق الذي يتم تطبيقه فيه:

  • في البرمجة الحتمية، يكون الروتين الفرعي ذو الآثار الجانبية خاملاً إذا ظلت حالة النظام كما هي بعد مكالمة واحدة أو عدة مكالمات، بمعنى آخر إذا كانت الوظيفة من مساحة حالة النظام لنفسها المرتبطة بالروتين الفرعي معطلة بالمعنى الرياضي المعطى في تعريف؛
  • في البرمجة الوظيفية، تكون الوظيفة الصرفة معطلة إذا كانت غير فعالة بالمعنى الرياضي الوارد في التعريف.

هذه خاصية مفيدة للغاية في العديد من المواقف، لأنها تعني أنه يمكن تكرار العملية أو إعادة المحاولة كلما لزم الأمر دون التسبب في تأثيرات غير مقصودة. مع العمليات غير النشطة، قد تضطر الخوارزمية إلى تتبع ما إذا كانت العملية قد أجريت بالفعل أم لا.

أمثلة في علوم الكمبيوتر

عدل

عادةً ما تكون الوظيفة التي تبحث عن اسم وعنوان العميل في قاعدة بيانات غير فعالة، لأن هذا لن يتسبب في تغيير قاعدة البيانات. وبالمثل، عادةً ما يكون تغيير عنوان العميل إلى XYZ غير فعال، لأن العنوان النهائي سيكون هو نفسه بغض النظر عن عدد مرات إرسال XYZ. ومع ذلك، فإن تقديم طلب للحصول على عربة تسوق للعميل لا يكون عديم الجدوى، لأن تشغيل المكالمة عدة مرات سيؤدي إلى تقديم العديد من الطلبات. يعد إلغاء الطلب غير صالح، لأن الطلب يظل ملغيًا بغض النظر عن عدد الطلبات المقدمة.

ومع ذلك، فإن تركيبة الطرق الخاملة أو الإجراءات الفرعية ليست بالضرورة معطلة إذا غيرت طريقة لاحقة في التسلسل قيمة تعتمد عليها طريقة سابقة - لا يتم إغلاق العاطفة في ظل التكوين . على سبيل المثال، لنفترض أن القيمة الأولية للمتغير هي 3 وهناك تسلسل يقرأ المتغير، ثم يغيره إلى 5، ثم يقرأه مرة أخرى. كل خطوة في التسلسل غير فعالة: كلا الخطوتين في قراءة المتغير ليس لهما آثار جانبية وتغيير متغير إلى 5 سيكون له نفس التأثير دائمًا بغض النظر عن عدد مرات تنفيذه. ومع ذلك، فإن تنفيذ التسلسل بالكامل مرة واحدة ينتج عنه الإخراج (3، 5)، ولكن تنفيذه مرة ثانية ينتج الناتج (5، 5)، وبالتالي فإن التسلسل ليس خاملاً.

في بروتوكول Hypertext Transfer Protocol (HTTP)، يعتبر تساوس القوى والأمان من السمات الرئيسية التي تفصل بين أفعال HTTP . من بين أفعال HTTP الرئيسية، يجب تنفيذ الحصول والوضع والحذف بطريقة خاملة وفقًا للمعيار، ولكن لا يلزم تنفيذ POST.[13] يسترجع GET موردًا؛ يخزن PUT المحتوى في مورد؛ وحذف يحذف مورد. كما في المثال أعلاه، قراءة البيانات ليس لها عادة أي آثار جانبية، لذلك فهي غير فعالة (في الواقع لا تملك). عادةً ما يكون تخزين وحذف مجموعة معينة من المحتوى غير فعال طالما أن الطلب يحدد موقعًا أو معرفًا يحدد هذا المورد بشكل فريد وهذا المورد فقط مرة أخرى في المستقبل. عمليات PUT و DELETE ذات المعرفات الفريدة تختزل إلى حالة التخصيص البسيطة إلى متغير غير قابل للتغيير إما بقيمة أو قيمة خالية، على التوالي، وتكون معطلة لنفس السبب؛ تكون النتيجة النهائية دائمًا هي نفسها نتيجة التنفيذ الأولي، حتى لو اختلفت الاستجابة.

عادة ما يؤدي انتهاك شرط التعريف الفريد في التخزين أو الحذف إلى انتهاك القدرة على العمل. على سبيل المثال، تخزين أو حذف مجموعة معينة من المحتوى دون تحديد معرّف فريد: طلبات POST ، التي لا تحتاج إلى أن تكون غير فعالة، غالبًا لا تحتوي على معرّفات فريدة، لذلك يتم تفويض إنشاء المعرّف إلى نظام الاستلام الذي ينشئ بعد ذلك رقم قياسي جديد مطابق. وبالمثل، قد تؤدي طلبات الوضع والحذف ذات المعايير غير المحددة إلى نتائج مختلفة اعتمادًا على حالة النظام - على سبيل المثال، طلب حذف أحدث سجل. في كل حالة، ستؤدي عمليات الإعدام اللاحقة إلى تعديل حالة النظام بشكل أكبر، لذا فهي ليست عديمة الفعالية.

في معالجة تدفق الأحداث، يشير تساوي القوى إلى قدرة النظام على إنتاج نفس النتيجة، حتى إذا تم استلام نفس الملف أو الحدث أو الرسالة أكثر من مرة.

في بنية تخزين التحميل، تكون التعليمات التي قد تتسبب في حدوث خطأ في الصفحة غير صحيحة. لذلك في حالة حدوث خطأ في الصفحة، يمكن لنظام التشغيل تحميل الصفحة من القرص ثم إعادة تنفيذ التعليمات المعيبة. في المعالج حيث لا تكون مثل هذه التعليمات عديمة الكفاءة، يكون التعامل مع أخطاء الصفحة أكثر تعقيدًا.[14] [15]

عند إعادة تنسيق الإخراج، من المتوقع أن تكون الطباعة الجيدة غير فعالة. بعبارة أخرى، إذا كان الإخراج «جميلًا» بالفعل، فلا يجب أن تفعل شيئًا للطابعة الجميلة.[بحاجة لمصدر] [ بحاجة لمصدر ] في البنية الموجهة للخدمة (SOA)، يمكن إعادة عملية تنسيق متعددة الخطوات تتكون بالكامل من خطوات غير فعالة دون آثار جانبية في حالة فشل أي جزء من هذه العملية.

غالبًا ما يكون للعديد من العمليات غير الفعالة طرق «لاستئناف» عملية ما إذا تمت مقاطعتها - وهي طرق تنتهي بشكل أسرع بكثير من البدء من جديد من البداية. على سبيل المثال، استئناف نقل الملفات، ومزامنة الملفات، وإنشاء بنية برمجية، وتثبيت تطبيق وكل تبعياته مع مدير الحزم، إلخ.

أمثلة تطبيقية

عدل
 
زر المشاة النموذجي هو مثال على نظام فاعل

تتضمن الأمثلة التطبيقية التي قد يواجهها العديد من الأشخاص في حياتهم اليومية أزرار اتصال المصعد وأزرار المشاة.[16] يؤدي التنشيط الأولي للزر إلى نقل النظام إلى حالة الطلب، حتى يتم تلبية الطلب. عمليات التنشيط اللاحقة للزر بين التنشيط الأولي والطلب المستوفى ليس لها أي تأثير، ما لم يكن النظام مصممًا لضبط الوقت لتلبية الطلب بناءً على عدد عمليات التنشيط.

انظر أيضًا

عدل

المراجع

عدل
  1. ^ Polcino & Sehgal (2002), p. 127.
  2. ^ Valenza، Robert (2012). Linear Algebra: An Introduction to Abstract Mathematics. Berlin: Springer Science & Business Media. ص. 22. ISBN:9781461209010. مؤرشف من الأصل في 2020-11-27. An element s of a magma such that ss = s is called idempotent.
  3. ^ Doneddu, Alfred (1976). Polynômes et algèbre linéaire (بالفرنسية). Paris: Vuibert. p. 180. Archived from the original on 2020-11-27. Soit M un magma, noté multiplicativement. On nomme idempotent de M tout élément a de M tel que a2 = a.
  4. ^ George Grätzer (2003). General Lattice Theory. Basel: Birkhäuser. Here: Sect.1.2, p.5.
  5. ^ Garrett Birkhoff (1967). Lattice Theory. Colloquium Publications. Providence: Am. Math. Soc. ج. 25.. Here: Sect.I.5, p.8.
  6. ^ A more common notation for this is  , but it is harder to read when expressions are nested.
  7. ^ In fact, this equation holds for all rational، real and even complex numbers, too.
  8. ^ This is an equation between functions. Two functions are equal if their domains and ranges agree, and their output values agree on their whole domain.
  9. ^ This set of functions is formally denoted as .
  10. ^ If f and g commute, i.e. if fg = gf, then idempotency of both f and g implies that of fg, since (fg) ∘ (fg) = (ff) ∘ (gg) = fg, using the associativity of composition.
  11. ^ e.g. f(g(7)) = f(7) = 1, but f(g(1)) = f(5) = 2 ≠ 1
  12. ^ also showing that commutation of f and g is not a شرط ضروري وشرط كاف for idempotency preservation
  13. ^ IETF, Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content "نسخة مؤرشفة". مؤرشف من الأصل في 2017-05-25. اطلع عليه بتاريخ 2020-11-27.{{استشهاد ويب}}: صيانة الاستشهاد: BOT: original URL status unknown (link). See also HyperText Transfer Protocol.
  14. ^ جون أوستورهوت. "Demand Paging". نسخة محفوظة 13 مايو 2020 على موقع واي باك مشين.
  15. ^ Marc A. de Kruijf. "Compiler construction of idempotent regions and applications in architecture design". 2012. p. 10. نسخة محفوظة 27 نوفمبر 2020 على موقع واي باك مشين.
  16. ^ https://web.archive.org/web/20110523081716/http://www.nclabor.com/elevator/geartrac.pdf For example, this design specification includes detailed algorithm for when elevator cars will respond to subsequent calls for service

قراءة متعمقة

عدل