رسم بياني للتبعية

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

تعريف

يعتمد أ على ب و ج ؛ ويعتمد ب على د

بالنظر إلى مجموعة من الأشياءS{\displaystyle S}وعلاقة متعديةRS×S{\displaystyle R\subseteq S\times S}مع(أ،ب)R{\displaystyle (a,b)\in R}عند نمذجة التبعية " أ يعتمد على ب " (" يحتاج أ إلى تقييم ب أولاً")، فإن مخطط التبعية هو رسم بيانيجي=(S،تي){\displaystyle G=(S,T)}معتيR{\displaystyle T\subseteq R}الاختزال المتعدي لـ R.

على سبيل المثال، لنفترض وجود آلة حاسبة بسيطة. تدعم هذه الآلة الحاسبة إسناد قيم ثابتة للمتغيرات وإسناد مجموع متغيرين فقط إلى متغير ثالث. إذا كانت لدينا عدة معادلات مثل " أ = ب + ج ؛ ب = ٥ + د ؛ ج = ٤؛ د = ٢"، فإنS={أ،ب،ج،د}{\displaystyle S=\{A,B,C,D\}}وR={(أ،ب)،(أ،ج)،(ب،د)،(أ،د)}{\displaystyle R=\{(A,B),(A,C),(B,D),(A,D)\}}يمكنك استنتاج هذه العلاقة مباشرةً: يعتمد المتغير A على المتغيرين B و C ، لأنه لا يمكنك جمع متغيرين إلا إذا كنت تعرف قيم كليهما. لذا، يجب حساب B قبل حساب A. وبما أن B يعتمد على D ليتم حسابه، فيجب أن يعتمد A أيضًا على D ليتم حسابه قبله (ومن هنا تأتي خاصية التعدي المذكورة أعلاه). من ناحية أخرى، تُعرف قيم C و D مباشرةً، لأنهما قيم عددية.

التعرف على التقييمات المستحيلة

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

لنفترض الآلة الحاسبة البسيطة من قبل. يحتوي نظام المعادلات " A = B ; B = D + C ; C = D + A ; D = 12; " على تبعية دائرية تتكون من A و B و C ، حيث يجب حساب B قبل A ، ويجب حساب C قبل B ، ويجب حساب A قبل C.

استخلاص ترتيب التقييم

الترتيب الصحيح للتقييم هو الترقيمن:Sشمال{\displaystyle n:S\rightarrow \mathbb {N} }من بين الكائنات التي تشكل عقد الرسم البياني للتبعية بحيث تتحقق المعادلة التالية:ن(أ)<ن(ب)(أ،ب)R{\displaystyle n(a)<n(b)\Rightarrow (a,b)\notin R}معأ،بS{\displaystyle a,b\in S}وهذا يعني أنه إذا كان الترقيم يرتب عنصرينأ{\displaystyle a}وب{\displaystyle b}لهذا السبب.أ{\displaystyle a}سيتم تقييمها قبلب{\displaystyle b}، ثمأ{\displaystyle a}يجب ألا يعتمد علىب{\displaystyle b}.

قد يكون هناك أكثر من ترتيب تقييم صحيح. في الواقع، يُعدّ الترقيم الصحيح ترتيبًا طوبولوجيًا ، وأي ترتيب طوبولوجي هو ترقيم صحيح. وبالتالي، فإن أي خوارزمية تستنتج ترتيبًا طوبولوجيًا صحيحًا تستنتج ترتيب تقييم صحيحًا.

لنفترض مجددًا استخدام الآلة الحاسبة البسيطة المذكورة أعلاه. بالنظر إلى نظام المعادلات " أ = ب + ج ؛ ب = ٥ + د ؛ ج = ٤؛ د = ٢"، فإن ترتيب التقييم الصحيح هو ( د ، ج ، ب ، أ ). مع ذلك، فإن ( ج ، د ، ب ، أ ) هو أيضًا ترتيب تقييم صحيح.

بنية المونويد

يتوافق الرسم البياني للاعتمادية غير الدورية مع أثر أحادي الأثر كما يلي: [ 1 ] : 12

  • وظيفةϕ:SΣ{\displaystyle \phi :S\to \Sigma }قم بتسمية كل رأس برمز من الأبجديةΣ{\displaystyle \Sigma }
  • هناك حافةأب{\displaystyle a\to b}أوبأ{\displaystyle b\to a}إذا وفقط إذا(ϕ(أ)،ϕ(ب)){\displaystyle (\phi (a),\phi (b))}يوجد في علاقة التبعيةد{\displaystyle D}.
  • يُعتبر الرسمان البيانيان متساويين إذا تطابقت تسمياتهما وحوافهما.

ثم فإن السلسلة المكونة من تسميات الرؤوس مرتبة حسب ترتيب التقييم الصحيح تتوافق مع سلسلة التتبع.

العملية المونيدية(S12،R12)=(S1،R1)(S2،R2){\displaystyle (S_{12},R_{12})=(S_{1},R_{1})\bullet (S_{2},R_{2})}يأخذ الاتحاد المنفصلS12=S1S2{\displaystyle S_{12}=S_{1}\sqcup S_{2}}بالنسبة لمجموعات رؤوس رسمين بيانيين، يتم الحفاظ على الحواف الموجودة في كل رسم بياني، ويتم رسم حواف جديدة من الأول إلى الثاني حيث تسمح علاقة التبعية بذلك، [ 1 ] : 14

R12=R1R2{(أ،ب)|أS1بS2(ϕ(أ)،ϕ(ب))د}{\displaystyle R_{12}=R_{1}\sqcup R_{2}\sqcup \{(a,b)\mid a\in S_{1}\land b\in S_{2}\land (\phi (a),\phi (b))\in D\}}

العنصر المطابق هو الرسم البياني الفارغ.

أمثلة

تُستخدم مخططات التبعية في:

  • برامج التثبيت الآلية : تقوم هذه البرامج بفحص الشبكة بحثًا عن حزم البرامج المطلوبة التي لم يتم تثبيتها بعد. وتُحدد التبعية من خلال ترابط الحزم.
  • تتطلب برامج بناء البرمجيات، مثل Unix Make و Node npm install وphp composer و Twitter bower install و Apache Ant ، ​​معرفة الملفات التي تم تغييرها حتى يتم إعادة تجميع الملفات الصحيحة فقط.
  • في تكنولوجيا المترجمات وتنفيذ اللغات الرسمية :
  • تحليلات الرسوم البيانية الديناميكية: يقوم كل من GraphBolt [ 2 ] و KickStarter [ 3 ] بالتقاط تبعيات القيمة للحوسبة التزايدية عند تغيير بنية الرسم البياني.
  • الآلات الحاسبة في جداول البيانات . يجب أن تستنتج ترتيبًا صحيحًا للحسابات مشابهًا للترتيب المستخدم في المثال المذكور في هذه المقالة.
  • معايير نماذج الويب مثل XForms لمعرفة العناصر المرئية التي يجب تحديثها في حالة تغيير البيانات في النموذج.
  • ألعاب الفيديو، وخاصة ألعاب الألغاز والمغامرات ، والتي غالباً ما يتم تصميمها على شكل رسم بياني للعلاقات التابعة بين الإجراءات داخل اللعبة. [ 4 ]

تُعدّ مخططات التبعية أحد جوانب ما يلي:

انظر أيضاً

مراجع

  1. 1 2 مازوركيويتش، أنطوني (1995). "مقدمة في نظرية الأثر" (ملف PDF) . في روزنبرغ، ج.؛ ديكرت، ف. (محرران). كتاب الآثار . سنغافورة: وورلد ساينتيفيك. ISBN 981-02-2058-8تم الاطلاع عليه بتاريخ 18 أبريل 2021 .
  2. موغيلان ماريبان؛ كيفال فورا (2019). "GraphBolt: معالجة متزامنة مدفوعة بالتبعية للرسوم البيانية المتدفقة". في المؤتمر الأوروبي لأنظمة الحاسوب (EuroSys'19) . الصفحات 25:1–25:16. doi : 10.1145/3302424.3303974 . 
  3. كيفال فورا؛ راجيف غوبتا؛ غوتشينغ شو (2017). "كيكستارتر: حسابات سريعة ودقيقة على الرسوم البيانية المتدفقة عبر تقريبات مُقَصَّصة". في المؤتمر الدولي للدعم المعماري للغات البرمجة وأنظمة التشغيل (ASPLOS'17) . الصفحات 237-251 . doi : 10.1145/3093337.3037748 . 
  4. جيلبرت، رون. "مخططات اعتماد الألغاز" . غرامبي غيمر . تم الاسترجاع في 11 يناير 2020 .

للمزيد من القراءة