<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>الرياضيات والتشفير والكم on kenji.blog</title><link>http://kenji.blog/ar/categories/%D8%A7%D9%84%D8%B1%D9%8A%D8%A7%D8%B6%D9%8A%D8%A7%D8%AA-%D9%88%D8%A7%D9%84%D8%AA%D8%B4%D9%81%D9%8A%D8%B1-%D9%88%D8%A7%D9%84%D9%83%D9%85/</link><description>Recent content in الرياضيات والتشفير والكم on kenji.blog</description><generator>Hugo -- gohugo.io</generator><language>ar</language><copyright>kenjinote</copyright><lastBuildDate>Sun, 06 Sep 2026 12:00:00 +0900</lastBuildDate><atom:link href="http://kenji.blog/ar/categories/%D8%A7%D9%84%D8%B1%D9%8A%D8%A7%D8%B6%D9%8A%D8%A7%D8%AA-%D9%88%D8%A7%D9%84%D8%AA%D8%B4%D9%81%D9%8A%D8%B1-%D9%88%D8%A7%D9%84%D9%83%D9%85/index.xml" rel="self" type="application/rss+xml"/><item><title>【فهم كامل بالمعادلات】 لماذا يُهزم «GNFS» الكلاسيكي الأقوى أمام الخوارزميات الكمية؟ نقلة نوعية في تحليل العوامل الأولية</title><link>http://kenji.blog/ar/p/gnfs-to-shors-algorithm-math-deepdive/</link><pubDate>Sun, 06 Sep 2026 12:00:00 +0900</pubDate><guid>http://kenji.blog/ar/p/gnfs-to-shors-algorithm-math-deepdive/</guid><description>&lt;img src="http://kenji.blog/p/gnfs-to-shors-algorithm-math-deepdive/quantum_vs_gnfs_eyecatch_1788616101508.jpg" alt="Featured image of post 【فهم كامل بالمعادلات】 لماذا يُهزم «GNFS» الكلاسيكي الأقوى أمام الخوارزميات الكمية؟ نقلة نوعية في تحليل العوامل الأولية" />&lt;p>تتم حماية أمن المعلومات في مجتمع الإنترنت الحديث بواسطة التشفير بالمفتاح العام، مثل تشفير RSA. يعتمد أساس أمان تشفير RSA على حقيقة أن &lt;strong>&amp;ldquo;التحليل إلى العوامل الأولية للأرقام المركبة الضخمة يمثل صعوبة بالغة من الناحية الحسابية&amp;rdquo;&lt;/strong> .&lt;/p>
&lt;p>في هذا المقال، سنكشف عن الآلية الرياضية لـ &lt;strong>&amp;ldquo;منخل حقل الأعداد العام&amp;rdquo;&lt;/strong> (GNFS)، وهو أقوى خوارزمية تحليل للعوامل الأولية للكمبيوتر الكلاسيكي، ونتعمق في سبب هزيمتها تمامًا بواسطة &lt;strong>&amp;ldquo;خوارزمية شور&amp;rdquo;&lt;/strong> التي اكتشفها بيتر شور. سوف نستكشف هذه النقلة النوعية بعمق باستخدام المعادلات الرياضية والرسوم التوضيحية المفاهيمية.&lt;/p>
&lt;hr>
&lt;h2 id="1-نهج-التحليل-إلى-العوامل-في-الحوسبة-الكلاسيكية-التطور-من-طريقة-فيرما-للتحليل-إلى-العوامل">1. نهج التحليل إلى العوامل في الحوسبة الكلاسيكية: التطور من طريقة فيرما للتحليل إلى العوامل
&lt;/h2>&lt;p>مشكلة التحليل إلى العوامل الأولية هي مشكلة إيجاد الأعداد الأولية $p, q$ بحيث يكون $N = p \times q$ لعدد مركب $N$ محدد.&lt;/p>
&lt;p>تتلخص الفكرة الأساسية في إيجاد $x, y$ غير بديهية تلبي معادلة التطابق التالية:&lt;/p>
$$ x^2 \equiv y^2 \pmod N $$
&lt;p>إذا قمنا بتعديل ذلك، نحصل على:&lt;/p>
$$ x^2 - y^2 \equiv 0 \pmod N $$
$$ (x - y)(x + y) \equiv 0 \pmod N $$
&lt;p>هنا، إذا كان $x \not\equiv \pm y \pmod N$، يمكننا الحصول على عامل غير بديهي لـ $N$ عن طريق حساب $\gcd(x-y, N)$ أو $\gcd(x+y, N)$. هذه الحقيقة هي أساس خوارزميات التحليل الحديثة مثل GNFS.&lt;/p>
&lt;hr>
&lt;h2 id="2-أقوى-الخوارزميات-الكلاسيكية-أعماق-منخل-حقل-الأعداد-العام-gnfs">2. أقوى الخوارزميات الكلاسيكية: أعماق &amp;ldquo;منخل حقل الأعداد العام&amp;rdquo; (GNFS)
&lt;/h2>&lt;p>يعد &lt;strong>&amp;ldquo;GNFS&amp;rdquo;&lt;/strong> أسرع خوارزمية تحليل للعوامل الأولية معروفة لأجهزة الكمبيوتر الكلاسيكية اليوم. يستغرق تعقيد الوقت الخاص بها وقتًا شبه أسي (Sub-exponential).&lt;/p>
&lt;h3 id="تعقيد-gnfs">تعقيد GNFS
&lt;/h3>&lt;p>بافتراض أن عدد أرقام $N$ هو $b = \log_2 N$، يمكن التعبير عن تعقيد GNFS على النحو التالي:&lt;/p>
$$ O\left( \exp \left( \left(\frac{64}{9} b\right)^{1/3} (\log b)^{2/3} \right) \right) $$
&lt;p>كما يتضح من هذه المعادلة، التعقيد ليس وقتًا كثير الحدود، بل &lt;strong>&amp;ldquo;وقت شبه أسي&amp;rdquo;&lt;/strong> أبطأ قليلاً من الدالة الأسية. ومع ذلك، مع زيادة عدد الخانات، سيزداد وقت الحساب بشكل فلكي.&lt;/p>
&lt;h3 id="الآلية-الرياضية-لـ-gnfs">الآلية الرياضية لـ GNFS
&lt;/h3>&lt;p>تتكون GNFS بشكل رئيسي من 4 خطوات:&lt;/p>
&lt;ol>
&lt;li>&lt;strong>اختيار كثيرات الحدود (Polynomial Selection)&lt;/strong>&lt;/li>
&lt;li>&lt;strong>الغربلة (Sieving)&lt;/strong>&lt;/li>
&lt;li>&lt;strong>تقليل المصفوفة (Matrix Reduction)&lt;/strong>&lt;/li>
&lt;li>&lt;strong>حساب الجذر التربيعي (Square Root)&lt;/strong>&lt;/li>
&lt;/ol>
&lt;h4 id="21-اختيار-كثيرات-الحدود-والحقل-الجبري">2.1. اختيار كثيرات الحدود والحقل الجبري
&lt;/h4>&lt;p>أولاً، نختار كثيرات الحدود غير القابلة للاختزال $f(x)$ و $g(x)$ بمعاملات صحيحة. يتم تعيينها ليكون لها جذر مشترك $m$ مقياس $N$. أي:&lt;/p>
$$ f(m) \equiv 0 \pmod N $$
$$ g(m) \equiv 0 \pmod N $$
&lt;p>عادة، يتم اختيار $g(x)$ ككثيرة حدود من الدرجة الأولى $g(x) = x - m$. إذا جعلنا جذر $f(x)$ هو $\alpha$, يتشكل &lt;strong>&amp;ldquo;حقل جبري&amp;rdquo;&lt;/strong> (Number Field) يسمى $\mathbb{Q}(\alpha)$. نقارن العمليات في حلقة $\mathbb{Q}(\alpha)$ مع العمليات في حلقة الأعداد الصحيحة العادية $\mathbb{Z}$ من خلال تشاكل $\phi: \alpha \mapsto m$.&lt;/p>
&lt;h4 id="22-الغربلة-sieving">2.2. الغربلة (Sieving)
&lt;/h4>&lt;p>بعد ذلك، نبحث عن عدد كبير من أزواج الأعداد الصحيحة الأولية نسبياً $(a, b)$. الهدف هو إيجاد أزواج بحيث تكون كلتا القيمتين التاليتين &lt;strong>&amp;ldquo;B-smooth&amp;rdquo;&lt;/strong> (تتكون فقط من عوامل أولية صغيرة نسبياً):&lt;/p>
&lt;ol>
&lt;li>$a - bm$ (القيمة على حلقة الأعداد الصحيحة)&lt;/li>
&lt;li>$b^d f(a/b)$ (يتوافق مع المعيار $N(a - b\alpha)$ في الحقل الجبري)&lt;/li>
&lt;/ol>
&lt;p>هنا، يتم استخدام طريقة بحث سريعة تسمى &lt;strong>&amp;ldquo;المنخل&amp;rdquo;&lt;/strong> (Sieve). يتيح ذلك استخراج أزواج $(a, b)$ بكفاءة والتي تلبي الشروط من بين عدد هائل من المرشحين.&lt;/p>
&lt;h4 id="23-تقليل-المصفوفة-linear-algebra-over-gf2">2.3. تقليل المصفوفة (Linear Algebra over GF(2))
&lt;/h4>&lt;p>من الأزواج المُجمَّعة $(a, b)$، نقوم بتشكيل متجهات أسية وإيجاد الفضاء الصفري الأيسر لمصفوفة متفرقة ضخمة على $\mathbb{F}_2$ (حقل بعناصر 0 و 1 فقط).&lt;/p>
&lt;p>نجد متجهاً للحل $v$ بحيث تصبح العلاقات $ \prod (a_i - b_i m) $ و $ \prod (a_i - b_i \alpha) $ كل منها مربعاً كاملاً. هذا ليس سوى حل لنظام من المعادلات الخطية:&lt;/p>
$$ M \mathbf{x} \equiv \mathbf{0} \pmod 2 $$
&lt;p>هنا، يتم استخدام خوارزميات الحساب العددي المتقدمة مثل خوارزمية Block Lanczos أو Block Wiedemann.&lt;/p>
&lt;h4 id="24-حساب-الجذر-التربيعي">2.4. حساب الجذر التربيعي
&lt;/h4>&lt;p>أخيراً، نأخذ الجذر التربيعي من كل من الحقل الجبري وحلقة الأعداد الصحيحة، ونستنتج العلاقة $x^2 \equiv y^2 \pmod N$. ثم، نحسب $\gcd(x-y, N)$ ونحصل على العامل.&lt;/p>
&lt;hr>
&lt;h2 id="3-اختراق-الحوسبة-الكمية-خوارزمية-شور">3. اختراق الحوسبة الكمية: &amp;ldquo;خوارزمية شور&amp;rdquo;
&lt;/h2>&lt;p>بينما يتطلب GNFS وقتاً شبه أسي، فإن &lt;strong>&amp;ldquo;خوارزمية شور&amp;rdquo;&lt;/strong> التي نشرها بيتر شور في عام 1994 يمكن أن تحل هذه المشكلة في &lt;strong>&amp;ldquo;وقت كثير الحدود&amp;rdquo;&lt;/strong> باستخدام كمبيوتر كمي.&lt;/p>
&lt;h3 id="تعقيد-خوارزمية-شور">تعقيد خوارزمية شور
&lt;/h3>&lt;p>إذا افترضنا أن عدد الكيوبت هو $O(\log N)$، فإن تعقيد الوقت يكون:&lt;/p>
$$ O((\log N)^3) $$
&lt;p>هذا يعني أنه لا يوجد انفجار أسي بالنسبة لعدد البتات. إنها نتيجة مذهلة حيث يمكن للأعداد المركبة الضخمة التي يتجاوز وقت حسابها في &lt;strong>&amp;ldquo;الحوسبة الكلاسيكية&amp;rdquo;&lt;/strong> عمر الكون، أن يتم حلها في غضون ساعات إلى أيام باستخدام &lt;strong>&amp;ldquo;الحوسبة الكمية&amp;rdquo;&lt;/strong> .&lt;/p>
&lt;h3 id="نظرة-عامة-على-خوارزمية-شور-الاختزال-إلى-مشكلة-إيجاد-الدورة">نظرة عامة على خوارزمية شور: الاختزال إلى مشكلة إيجاد الدورة
&lt;/h3>&lt;p>تختزل خوارزمية شور مشكلة التحليل إلى العوامل الأولية ببراعة إلى &lt;strong>&amp;ldquo;مشكلة إيجاد الدورة&amp;rdquo;&lt;/strong> .&lt;/p>
&lt;ol>
&lt;li>اختر عدداً صحيحاً عشوائياً $a$ أولي نسبياً مع $N$ (حيث $1 &lt; a &lt; N$).&lt;/li>
&lt;li>عرّف الدالة $f(x) = a^x \bmod N$.&lt;/li>
&lt;li>أوجد الدورة $r$ للدالة $f(x)$، أي أصغر عدد صحيح موجب $r$ بحيث $a^r \equiv 1 \pmod N$.&lt;/li>
&lt;li>إذا كان $r$ عدداً زوجياً، تحقق مما إذا كان $a^{r/2} \not\equiv -1 \pmod N$， واحسب $\gcd(a^{r/2} \pm 1, N)$ للحصول على العامل الأولي.&lt;/li>
&lt;/ol>
&lt;p>هذه الخطوة 3، أي &lt;strong>&amp;ldquo;اكتشاف الدورة $r$&amp;rdquo;&lt;/strong> ، هي عنق الزجاجة الذي يتطلب وقتاً أسياً على الكمبيوتر الكلاسيكي، لكن الكمبيوتر الكمي يحلها في لحظة باستخدام &lt;strong>&amp;ldquo;التراكب الكمي&amp;rdquo;&lt;/strong> و &lt;strong>&amp;ldquo;تحويل فورييه الكمي&amp;rdquo;&lt;/strong> (QFT).&lt;/p>
&lt;hr>
&lt;h2 id="4-تحويل-فورييه-الكمي-qft-واستخراج-الدورة">4. تحويل فورييه الكمي (QFT) واستخراج الدورة
&lt;/h2>&lt;p>دعونا نلقي نظرة فاحصة على العمليات الرياضية للحالات الكمية التي هي جوهر خوارزمية شور.&lt;/p>
&lt;h3 id="41-توليد-التراكب-الكمي">4.1. توليد التراكب الكمي
&lt;/h3>&lt;p>أولاً، قم بإعداد سجلي كم (Registers). يحتفظ السجل 1 بحالة التراكب للمدخل $x$، ويحتفظ السجل 2 بنتيجة الحساب للدالة $f(x)$. قم بتطبيق تحويل هادامار (Hadamard Transform) على الحالة الأولية $|0\rangle |0\rangle$ لإنشاء تراكب لجميع قيم $x$ الممكنة.&lt;/p>
$$ |\psi_1\rangle = \frac{1}{\sqrt{Q}} \sum_{x=0}^{Q-1} |x\rangle |0\rangle $$
&lt;p>
(حيث $Q$ هو قوة للعدد 2 تلبي $N^2 \le Q &lt; 2N^2$)&lt;/p>
&lt;p>بعد ذلك، استخدم وسيط كمي (Quantum Oracle) $U_f$ لحساب $f(x) = a^x \bmod N$ وتخزينه في السجل 2.&lt;/p>
$$ |\psi_2\rangle = U_f |\psi_1\rangle = \frac{1}{\sqrt{Q}} \sum_{x=0}^{Q-1} |x\rangle |a^x \bmod N\rangle $$
&lt;p>لنفترض الآن أنه تم قياس السجل 2 (من الناحية النظرية، حتى لو لم يتم قياسه، فإن البنية الرياضية هي نفسها). إذا تم ملاحظة قيمة معينة $y = a^{x_0} \bmod N$، فإن حالة السجل 1 ستنهار إلى تراكب لجميع $x$ التي تجعل $f(x) = y$. إذا افترضنا أن الدورة هي $r$، فإن مثل هذه الـ $x$ ستكون $x_0, x_0 + r, x_0 + 2r, \dots$&lt;/p>
$$ |\psi_3\rangle = \frac{1}{\sqrt{M}} \sum_{k=0}^{M-1} |x_0 + kr\rangle $$
&lt;p>
(حيث $M \approx Q/r$ هو عدد الحدود)&lt;/p>
&lt;p>تحتوي هذه الحالة على معلومات الدورة $r$، لكن القياس المباشر سينتج فقط $x_0 + kr$ عشوائية، ولن تُعرف الدورة $r$. هنا يأتي دور QFT.&lt;/p>
&lt;h3 id="42-تطبيق-تحويل-فورييه-الكمي-qft">4.2. تطبيق تحويل فورييه الكمي (QFT)
&lt;/h3>&lt;p>QFT هي عملية تطبق تحويل فورييه المتقطع على السعات للحالات الكمية. يُعرَّف تأثير QFT على الحالة $|x\rangle$ على النحو التالي:&lt;/p>
$$ \text{QFT} |x\rangle = \frac{1}{\sqrt{Q}} \sum_{y=0}^{Q-1} e^{2\pi i \frac{xy}{Q}} |y\rangle $$
&lt;p>عند تطبيق ذلك على $|\psi_3\rangle$، يحدث تداخل الطور (تداخل كمي).&lt;/p>
$$ |\psi_4\rangle = \text{QFT} |\psi_3\rangle = \frac{1}{\sqrt{MQ}} \sum_{y=0}^{Q-1} \sum_{k=0}^{M-1} e^{2\pi i \frac{(x_0 + kr)y}{Q}} |y\rangle $$
&lt;p>إذا قمنا بتوسيع المجموع في هذه المعادلة، يظهر الجزء التالي:&lt;/p>
$$ \sum_{k=0}^{M-1} e^{2\pi i \frac{kry}{Q}} $$
&lt;p>مجموع المتسلسلة الهندسية هذا يعزز بعضه البعض (تداخل بنّاء Constructive Interference) فقط عندما يكون $ry/Q$ قريباً من عدد صحيح، ويلغي بعضه البعض (تداخل هدّام Destructive Interference) في أوقات أخرى.&lt;/p>
&lt;p>لذلك، ستكون الحالة $|y\rangle$ المقاسة باحتمالية عالية عبارة عن عدد صحيح $y$ يلبي:&lt;/p>
$$ \frac{y}{Q} \approx \frac{c}{r} $$
&lt;p>(حيث $c$ هو أي عدد صحيح).&lt;/p>
&lt;h3 id="43-تحديد-الدورة-عن-طريق-توسيع-الكسر-المستمر">4.3. تحديد الدورة عن طريق توسيع الكسر المستمر
&lt;/h3>&lt;p>بعد الحصول على $y$ من خلال القياس، استخدم كمبيوتراً كلاسيكياً لإجراء &lt;strong>&amp;ldquo;توسيع الكسر المستمر&amp;rdquo;&lt;/strong> (Continued Fraction Expansion) على $y/Q$. يتيح ذلك حساب الكسر التقريبي $c/r$ للـ $y/Q$ واستخراج الدورة المحتملة $r$ من المقام بكفاءة عالية.&lt;/p>
&lt;hr>
&lt;h2 id="5-مقارنة-النماذج-المفاهيمية-والنقلة-النوعية">5. مقارنة النماذج المفاهيمية والنقلة النوعية
&lt;/h2>&lt;p>لفهم الاختلاف بين GNFS وخوارزمية شور بشكل بديهي، يوضح الرسم المفاهيمي باستخدام تدوين Mermaid.&lt;/p>
&lt;h3 id="رسم-مفاهيمي-لخوارزمية-شور-باستخدام-دارة-كمية">رسم مفاهيمي لخوارزمية شور باستخدام دارة كمية
&lt;/h3>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt"> 1
&lt;/span>&lt;span class="lnt"> 2
&lt;/span>&lt;span class="lnt"> 3
&lt;/span>&lt;span class="lnt"> 4
&lt;/span>&lt;span class="lnt"> 5
&lt;/span>&lt;span class="lnt"> 6
&lt;/span>&lt;span class="lnt"> 7
&lt;/span>&lt;span class="lnt"> 8
&lt;/span>&lt;span class="lnt"> 9
&lt;/span>&lt;span class="lnt">10
&lt;/span>&lt;span class="lnt">11
&lt;/span>&lt;span class="lnt">12
&lt;/span>&lt;span class="lnt">13
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">graph TD
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> A[الحالة الأولية: 0...0] --&amp;gt; B[تراكب جميع الحالات بتحويل هادامار]
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> B --&amp;gt; C[عملية الأس المعياري a^x mod N]
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> C --&amp;gt;|التشابك الكمي| D[الانهيار إلى حالة ذات دورية]
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> D --&amp;gt; E[تحويل فورييه الكمي QFT]
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> E --&amp;gt;|تضخيم الاحتمالية عبر التداخل| F[القياس: الحصول على y]
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> F --&amp;gt; G[المعالجة الكلاسيكية: الكسر المستمر]
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> G --&amp;gt; H[اكتشاف الدورة r]
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> H --&amp;gt; I[حساب العامل الأولي لـ N]
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> style A fill:#f9f,stroke:#333,stroke-width:2px
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> style E fill:#bbf,stroke:#333,stroke-width:2px
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> style I fill:#bfb,stroke:#333,stroke-width:2px
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;h3 id="جوهر-النقلة-النوعية">جوهر النقلة النوعية
&lt;/h3>&lt;p>يتخذ GNFS نهج &lt;strong>&amp;ldquo;البحث عن علاقات داخل الفضاء الرياضي (الحقل الجبري)&amp;rdquo;&lt;/strong> . ومع ذلك، نظراً لأن مساحة البحث تتسع أسيًا مع عدد الأرقام، يصبح فك التشفير مستحيلاً تقريباً لطول مفتاح يتجاوز 2048 بتاً باستخدام قدرة الحوسبة الكلاسيكية (حتى مع المعالجة المتوازية).&lt;/p>
&lt;p>من ناحية أخرى، تستفيد خوارزمية شور من &lt;strong>&amp;ldquo;الطبيعة الموجية للتداخل الكمي&amp;rdquo;&lt;/strong> . فهي تقيّم جميع مسارات الحساب في حالة التراكب في وقت واحد، وتلغي (تُضعف) الإجابات غير الضرورية باستخدام QFT، وتضخم فقط سعة الاحتمال للدورة الصحيحة. بذلك، لا يبحث هذا النهج في المساحة، بل يتبنى بعداً مختلفاً تماماً: &lt;strong>&amp;ldquo;جعل الإجابة الصحيحة تطفو على السطح&amp;rdquo;&lt;/strong> .&lt;/p>
&lt;h2 id="6-الخلاصة">6. الخلاصة
&lt;/h2>&lt;p>في هذا المقال، قارنا بعمق الخلفية الرياضية وهيكل الخوارزمية بين &lt;strong>&amp;ldquo;GNFS&amp;rdquo;&lt;/strong> الذي يمثل أقصى حدود الحوسبة الكلاسيكية، و &lt;strong>&amp;ldquo;خوارزمية شور&amp;rdquo;&lt;/strong> التي تُظهر قوة الحوسبة الكمية.&lt;/p>
&lt;p>في حين استخدم GNFS تقنيات رياضية مثل اختيار كثيرات الحدود وحسابات المصفوفات الضخمة لدفع التعقيد نحو وقت شبه أسي، حققت خوارزمية شور اختراقاً مباشراً إلى وقت كثير الحدود من خلال الجمع بين المبادئ الأساسية لميكانيكا الكم من التراكب والتداخل مع أداة رياضية (QFT).&lt;/p>
&lt;p>في الوقت الحالي، لا يوجد كمبيوتر كمي متسامح مع الأخطاء (FTQC) على نطاق عملي (آلاف الكيوبتات) قادر على تشغيل خوارزمية شور. ومع ذلك، فإن وجود هذه النقلة النوعية النظرية والرياضية هو بالتحديد السبب الأكبر وراء تسريع الانتقال إلى التشفير ما بعد الكمي (PQC: Post-Quantum Cryptography) في جميع أنحاء العالم اليوم.&lt;/p></description></item><item><title>ما هي أقوى رياضيات للبشرية 'غربال حقل الأعداد العام (GNFS)' التي تكسر تشفير الإنترنت؟</title><link>http://kenji.blog/ar/p/%E3%82%A4%E3%83%B3%E3%82%BF%E3%83%BC%E3%83%8D%E3%83%83%E3%83%88%E3%81%AE%E6%9A%97%E5%8F%B7%E3%82%92%E7%A0%B4%E3%82%8B%E4%BA%BA%E9%A1%9E%E6%9C%80%E5%BC%B7%E3%81%AE%E6%95%B0%E5%AD%A6%E4%B8%80%E8%88%AC%E6%95%B0%E4%BD%93%E7%AF%A9%E6%B3%95gnfs%E3%81%A8%E3%81%AF/</link><pubDate>Sat, 05 Sep 2026 02:09:08 +0900</pubDate><guid>http://kenji.blog/ar/p/%E3%82%A4%E3%83%B3%E3%82%BF%E3%83%BC%E3%83%8D%E3%83%83%E3%83%88%E3%81%AE%E6%9A%97%E5%8F%B7%E3%82%92%E7%A0%B4%E3%82%8B%E4%BA%BA%E9%A1%9E%E6%9C%80%E5%BC%B7%E3%81%AE%E6%95%B0%E5%AD%A6%E4%B8%80%E8%88%AC%E6%95%B0%E4%BD%93%E7%AF%A9%E6%B3%95gnfs%E3%81%A8%E3%81%AF/</guid><description>&lt;img src="http://kenji.blog/p/%E3%82%A4%E3%83%B3%E3%82%BF%E3%83%BC%E3%83%8D%E3%83%83%E3%83%88%E3%81%AE%E6%9A%97%E5%8F%B7%E3%82%92%E7%A0%B4%E3%82%8B%E4%BA%BA%E9%A1%9E%E6%9C%80%E5%BC%B7%E3%81%AE%E6%95%B0%E5%AD%A6%E4%B8%80%E8%88%AC%E6%95%B0%E4%BD%93%E7%AF%A9%E6%B3%95gnfs%E3%81%A8%E3%81%AF/gnfs_two_worlds_1788542142485.jpg" alt="Featured image of post ما هي أقوى رياضيات للبشرية 'غربال حقل الأعداد العام (GNFS)' التي تكسر تشفير الإنترنت؟" />&lt;h1 id="ما-هي-أقوى-رياضيات-للبشرية-غربال-حقل-الأعداد-العام-gnfs-التي-تكسر-تشفير-الإنترنت">ما هي أقوى رياضيات للبشرية &amp;ldquo;غربال حقل الأعداد العام (GNFS)&amp;rdquo; التي تكسر تشفير الإنترنت؟
&lt;/h1>&lt;p>الإنترنت الذي نستخدمه كل يوم. جميع اتصالاتنا، مثل رسائل LINE، ويوتيوب، والتسوق على أمازون، محمية بواسطة &amp;ldquo;التشفير&amp;rdquo;.
حالياً، التشفير الأكثر استخداماً في العالم هو &amp;ldquo;تشفير RSA&amp;rdquo;.&lt;/p>
&lt;p>جوهر حماية تشفير RSA بسيط للغاية. فهو يستفيد من الخاصية الرياضية القائلة بأن &lt;strong>&amp;ldquo;تحليل الأعداد الضخمة إلى عوامل أولية لا يمكن حله حتى بواسطة أجهزة الكمبيوتر&amp;rdquo;&lt;/strong> .
على سبيل المثال، بالنسبة للرقم &amp;ldquo;15&amp;rdquo;، نعلم على الفور أنه &amp;ldquo;3 × 5&amp;rdquo;، ولكن بمجرد أن يصبح الرقم مكوناً من &amp;ldquo;270 رقماً&amp;rdquo;، فإن الأمر سيستغرق مئات الملايين من السنين لحله حتى لو جمعنا جميع الحواسيب الخارقة في العالم.&lt;/p>
&lt;p>ومع ذلك، لم يقف علماء الرياضيات مكتوفي الأيدي. لاختراق هذا التشفير المنيع، ابتكرت البشرية خوارزمية سحرية (إجراء حسابي) تُسمى &lt;strong>&amp;ldquo;غربال حقل الأعداد العام (GNFS)&amp;rdquo;&lt;/strong> .&lt;/p>
&lt;p>في هذه المقالة، وبدون استخدام أي مصطلحات تقنية، وبناءً فقط على معرفة &lt;strong>رياضيات المدرسة الإعدادية (التحليل إلى عوامل أولية، المعادلات الجبرية، القاسم المشترك الأكبر)&lt;/strong> ، سنشرح خطوة بخطوة كيف تقوم &amp;ldquo;أقوى خوارزمية للبشرية&amp;rdquo; بكسر هذا التشفير!&lt;/p>
&lt;hr>
&lt;h2 id="الفصل-الأول-الهدف-من-فك-التشفير-هو-معادلة-الصف-الثالث-الإعدادي">الفصل الأول: الهدف من فك التشفير هو &amp;ldquo;معادلة الصف الثالث الإعدادي&amp;rdquo;
&lt;/h2>&lt;p>السلاح الأقوى لمواجهة تحليل الأعداد الضخمة إلى عوامل أولية هو هذه المعادلة التي نتعلمها في الصف الثالث الإعدادي.&lt;/p>
&lt;blockquote>
&lt;p>&lt;strong>$X^2 - Y^2 = (X + Y)(X - Y)$&lt;/strong>&lt;/p>
&lt;/blockquote>
&lt;p>قد تتساءل: &amp;ldquo;هاه، هل يمكن لمعادلة أساسية كهذه كسر التشفير؟&amp;rdquo; ومع ذلك، هذا هو المفتاح الرئيسي الذي يحل كل شيء.&lt;/p>
&lt;p>الهدف الأكبر لكسر التشفير هو، بالنسبة لعدد ضخم $N$، العثور على &lt;strong>&amp;ldquo;أعداد ($X$ و $Y$) بحيث يكون باقي قسمة $X^2$ و $Y^2$ على $N$ هو نفسه&amp;rdquo;&lt;/strong> .&lt;/p>
&lt;h3 id="لماذا-كسر-التشفير-ممكن-عندما-يكون-الباقي-متماثلا">لماذا كسر التشفير ممكن عندما يكون &amp;ldquo;الباقي متماثلاً&amp;rdquo;؟
&lt;/h3>&lt;p>لنفترض أن هناك عددين، $X^2$ و $Y^2$، لهما &amp;ldquo;نفس الباقي عند قسمتهما على $N$&amp;rdquo;.
الباقي المتماثل يعني أن ناتج الطرح &lt;strong>&amp;quot;$X^2 - Y^2$&amp;quot; سيكون قابلاً للقسمة تماماً على $N$ (مضاعف لـ $N$)&lt;/strong> .&lt;/p>
&lt;p>هنا، دعونا نفترض أن العدد الضخم $N$ المستخدم في التشفير يتكون من ضرب عددين أوليين سريين ($p$ و $q$) ($N = p \times q$).&lt;/p>
&lt;p>إذا قمنا بتحليل $X^2 - Y^2$ إلى عوامل، فسنحصل على &lt;strong>$(X - Y)(X + Y)$&lt;/strong> .
حقيقة أن هذا من مضاعفات $N$ تعني أنه في مكان ما في عملية الضرب هذه، يختبئ العددان الأوليان السريان $p$ و $q$.&lt;/p>
&lt;p>وهنا تحدث المعجزة.
الاحتمال الرياضي بأن ينفصل العددان الأوليان $p$ و $q$ إلى غرفتين مختلفتين، بحيث &lt;strong>&amp;ldquo;يذهب $p$ إلى غرفة $(X - Y)$&amp;rdquo; و &amp;ldquo;يذهب $q$ إلى غرفة $(X + Y)$&amp;rdquo;&lt;/strong> ، هو بالضبط &lt;strong>50٪ (النصف)&lt;/strong> .&lt;/p>
&lt;p>لنفترض أن العدد الأولي $p$ فقط هو الذي دخل غرفة $(X - Y)$. دعونا نحسب &lt;strong>&amp;ldquo;القاسم المشترك الأكبر (أكبر مكون مشترك)&amp;rdquo;&lt;/strong> بين $(X - Y)$ و $N$.&lt;/p>
&lt;ul>
&lt;li>محتوى $(X - Y)$ = $p \times$ عدد ما&lt;/li>
&lt;li>محتوى $N$ = $p \times q$
المكون المشترك الوحيد هنا هو &lt;strong>&amp;quot;$p$&amp;quot;&lt;/strong> !&lt;/li>
&lt;/ul>
&lt;p>بمعنى آخر، في اللحظة التي نحسب فيها القاسم المشترك الأكبر، سيتساقط العدد الأولي السري $p$، وسيتم كسر التشفير بالكامل. (&lt;em>يمكن حساب القاسم المشترك الأكبر في لحظة حتى على الهاتف الذكي باستخدام &amp;ldquo;خوارزمية إقليدس&amp;rdquo;&lt;/em>)&lt;/p>
&lt;p>&lt;strong>[ملاحظة سريعة: لماذا التربيع؟ ألا يمكن التكعيب أو المضاعفة؟]&lt;/strong>&lt;/p>
&lt;blockquote>
&lt;p>إذا استخدمنا &amp;ldquo;$2X - 2Y$&amp;quot;، سيصبح $2(X - Y)$، وستكون هناك غرفة واحدة فقط ولن نتمكن من فصل الأعداد الأولية. إذا استخدمنا &amp;ldquo;$X^3 - Y^3$&amp;quot;، ستصبح أحجام الغرف غير متوازنة، وستكون الحسابات ثقيلة بلا داعٍ. لفصل الأعداد الأولية بشكل مثالي، فإن &amp;ldquo;التربيع&amp;rdquo; الذي يقسمها إلى غرفتين جميلتين هو الخيار الأكثر كفاءة.&lt;/p>
&lt;/blockquote>
&lt;hr>
&lt;h2 id="الفصل-الثاني-كيف-نبحث-عن-x-و-y-لغز-جمع-بطاقات-الأعداد-الأولية">الفصل الثاني: كيف نبحث عن X و Y؟ &amp;ldquo;لغز جمع بطاقات الأعداد الأولية&amp;rdquo;
&lt;/h2>&lt;p>لقد عرفنا الهدف. ومع ذلك، إذا حاولنا البحث عشوائياً عن &amp;ldquo;$X^2$ و $Y^2$ اللذين لهما نفس الباقي&amp;rdquo;، فلن نجدهما حتى نهاية عمر الكون.
لذلك، ابتكر علماء الرياضيات طريقة عبقرية تسمى &lt;strong>&amp;ldquo;لغز جمع بطاقات الأعداد الأولية&amp;rdquo;&lt;/strong> .&lt;/p>
&lt;h3 id="الخطوة-1-غربلة-وجمع-غبار-الذهب-الأعداد-الناعمة-فقط">الخطوة 1: غربلة وجمع غبار الذهب (الأعداد الناعمة) فقط
&lt;/h3>&lt;p>أولاً، نقوم بإعداد عدد عشوائي $Z$، ونربّعه، ونحسب الباقي $W$ عند قسمته على $N$.
(عالم البواقي: $Z^2 = W$)&lt;/p>
&lt;p>نقوم بتحليل الباقي الناتج $W$ إلى عوامل أولية. هنا، فقط عندما يظهر &lt;strong>&amp;quot;$W$ الذي يتكون فقط من أعداد أولية صغيرة مثل 2، 3، 5، 7&amp;rdquo;&lt;/strong> ، نحتفظ بهذه المعادلة كـ &amp;ldquo;بطاقة رابحة&amp;rdquo;، ونتخلص منها إذا اختلط بها عدد أولي كبير.
يشبه الأمر استخدام الغربال في النهر للتخلص من الحجارة الكبيرة وجمع غبار الذهب فقط.&lt;/p>
&lt;h3 id="الخطوة-2-لغز-جعل-الجميع-بعدد-زوجي">الخطوة 2: لغز جعل الجميع بعدد &amp;ldquo;زوجي&amp;rdquo;
&lt;/h3>&lt;p>على سبيل المثال، لنفترض أننا جمعنا 3 بطاقات من غبار الذهب:&lt;/p>
&lt;ul>
&lt;li>البطاقة A: $Z_1^2 = 2^3 \times 3^1$&lt;/li>
&lt;li>البطاقة B: $Z_2^2 = 2^1 \times 5^1$&lt;/li>
&lt;li>البطاقة C: $Z_3^2 = 3^1 \times 5^1$&lt;/li>
&lt;/ul>
&lt;p>دعونا نضربها جميعاً معاً.
سيصبح الجانب الأيمن $(2^3 \times 3^1) \times (2^1 \times 5^1) \times (3^1 \times 5^1)$،
وبتبسيطه سنحصل على &lt;strong>&amp;quot;$2^4 \times 3^2 \times 5^2$&amp;rdquo;&lt;/strong> .&lt;/p>
&lt;p>والمثير للدهشة، أن عدد الأعداد الأولية أصبح &amp;ldquo;4، 2، 2&amp;rdquo;، &lt;strong>جميعها أعداد زوجية&lt;/strong> !
حقيقة أن جميعها زوجية تعني أنه إذا أخذنا نصف الكمية، فسنحصل على &amp;ldquo;تربيع لشيء ما&amp;rdquo;.
أي أن $(2^2 \times 3^1 \times 5^1)^2 = (60)^2$.&lt;/p>
&lt;p>وبما أن الجانب الأيسر هو $(Z_1 \times Z_2 \times Z_3)^2$, فقد حصلنا أخيراً على:
&lt;strong>$X = (Z_1 \times Z_2 \times Z_3)$&lt;/strong>
&lt;strong>$Y = 60$&lt;/strong>
وهكذا يكتمل الزوج الذي طال انتظاره لـ &amp;ldquo;$X^2 = Y^2$&amp;rdquo;!&lt;/p>
&lt;p>بالنسبة لأجهزة الكمبيوتر، فإن ألغاز حساب ما إذا كان عدد الأعداد الأولية &amp;ldquo;زوجياً أم فردياً (0 أو 1)&amp;rdquo; سهلة للغاية، لذلك يمكن لهذه الطريقة العثور على $X$ و $Y$ بسرعة فائقة.&lt;/p>
&lt;hr>
&lt;h2 id="الفصل-الثالث-جدار-اليأس-الذي-يقف-في-طريقنا">الفصل الثالث: جدار اليأس الذي يقف في طريقنا
&lt;/h2>&lt;p>قد تعتقد: &amp;ldquo;بهذا يمكن كسر أي تشفير!&amp;rdquo; &amp;hellip; ولكن تظهر مشكلة كبيرة.
إذا كان رقم التشفير $N$ يصل طوله إلى حوالي &amp;ldquo;100 رقم&amp;rdquo;، فيمكن لهذه الطريقة (وتسمى الغربال التربيعي) حله. ولكن عندما يصبح $N$ &amp;ldquo;200 رقم أو 300 رقم&amp;rdquo;، يصبح المتغير $W$ أثناء الحساب ضخماً للغاية.&lt;/p>
&lt;p>عندما تصبح الأعداد ضخمة للغاية، تتوقف &amp;ldquo;الأعداد المكونة فقط من أعداد أولية صغيرة (غبار الذهب)&amp;rdquo; عن الظهور تماماً. يصبح العثور عليها أصعب من العثور على عدسة لاصقة في الصحراء، ونفشل تماماً في جمع البطاقات لحل اللغز.&lt;/p>
&lt;p>وهنا تظهر أخيراً الأداة الأقوى للبشرية: &lt;strong>&amp;ldquo;غربال حقل الأعداد العام (GNFS)&amp;rdquo;&lt;/strong> .&lt;/p>
&lt;hr>
&lt;h2 id="الفصل-الرابع-الفكرة-الأقوى-للبشرية-لإنشاء-عالمين">الفصل الرابع: الفكرة الأقوى للبشرية لإنشاء &amp;ldquo;عالمين&amp;rdquo;
&lt;/h2>&lt;p>الفكرة العبقرية لـ GNFS هي: &lt;strong>&amp;ldquo;السبب في أن الأعداد تصبح ضخمة هو أننا نحسب في العالم الحقيقي فقط. إذاً، لنقم بإنشاء &amp;lsquo;عالم موازٍ&amp;rsquo; باستخدام كثيرات الحدود (العبارات الجبرية)، ولنقم بتقسيم عبء الحساب إلى قسمين&amp;rdquo;&lt;/strong> .&lt;/p>
&lt;h3 id="سحر-العبارات-الجبرية">سحر العبارات الجبرية
&lt;/h3>&lt;p>يقوم GNFS بتحويل العدد الضخم $N$ إلى عبارة جبرية باستخدام رقم أساسي $m$.
على سبيل المثال، إذا كان $N=100$، وكان $m=4$، فإن $100 = 4^3 + 2(4^2) + 4$.
باستخدام المتغير $x$، نحول هذا إلى المعادلة (في العالم الموازي): &lt;strong>$f(x) = x^3 + 2x^2 + x$&lt;/strong> .&lt;/p>
&lt;p>الشيء المثير للاهتمام في هذه المعادلة هو خاصيتها: &lt;strong>&amp;ldquo;إذا قمنا بتعويض الحرف $x$ بـ $m$ (4 في المثال أعلاه)، فيمكننا في أي وقت العودة (القفز) إلى رقم العالم الحقيقي $N$&amp;rdquo;&lt;/strong> .&lt;/p>
&lt;h3 id="البحث-عن-غبار-الذهب-في-كلا-العالمين-في-وقت-واحد">البحث عن غبار الذهب في كلا العالمين في وقت واحد
&lt;/h3>&lt;p>يقوم GNFS بإنشاء العديد من أزواج الأعداد الصحيحة العشوائية $(a, b)$، وينفذ العمليتين التاليتين في نفس الوقت:&lt;/p>
&lt;ol>
&lt;li>&lt;strong>العالم الحقيقي&lt;/strong>: $a - b \times m$&lt;/li>
&lt;li>&lt;strong>عالم الجبر&lt;/strong>: القيمة المحسوبة لـ $a - b \times x$ وفقاً لقواعد العبارات الجبرية&lt;/li>
&lt;/ol>
&lt;p>من خلال تقسيم المشكلة إلى عالمين، ينخفض حجم الأعداد التي يتم التعامل معها بشكل جذري (تصبح أخف وزناً). تخيل أنك تقوم بكسر صخرة عملاقة إلى حجرين صغيرين يسهل التعامل معهما.&lt;/p>
&lt;p>بعد ذلك، وباستخدام الغربال، نجمع فقط الأزواج العجيبة $(a, b)$ التي تكون &lt;strong>&amp;ldquo;في كل من العالم الحقيقي وعالم الجبر، مكونة فقط من أعداد أولية صغيرة (غبار الذهب)&amp;rdquo;&lt;/strong> . وهذا هو أصل اسم &amp;ldquo;غربال حقل الأعداد&amp;rdquo;.&lt;/p>
&lt;h3 id="لحظة-كسر-التشفير-أخيرا">لحظة كسر التشفير أخيراً
&lt;/h3>&lt;p>بمجرد جمع عشرات الملايين من &amp;ldquo;بطاقات غبار الذهب&amp;rdquo; من كلا العالمين، نستخدم حسابات المصفوفات الضخمة للحواسيب الخارقة للعثور على &amp;ldquo;التجميعة التي يصبح فيها عدد الأعداد الأولية زوجياً بالكامل&amp;rdquo;، تماماً كما فعلنا في الفصل الثاني.&lt;/p>
&lt;p>بمجرد العثور على التجميعة:&lt;/p>
&lt;ul>
&lt;li>نجعل العدد المربع الذي تم تشكيله في العالم الحقيقي هو &lt;strong>$X^2$&lt;/strong>&lt;/li>
&lt;li>ونجعل المعادلة المربعة التي تم تشكيلها في عالم الجبر هي &lt;strong>$Y(x)^2$&lt;/strong>&lt;/li>
&lt;/ul>
&lt;p>أخيراً، نقوم بتعويض $x$ في $Y(x)$ من عالم الجبر بـ $m$، لكي نقفز وندمجه مع العالم الحقيقي.
وعندها، وكأنه سحر رياضياتي، تتحقق بدقة الحالة التي &lt;strong>&amp;ldquo;يكون فيها باقي $X^2$ و $Y^2$ هو نفسه&amp;rdquo;&lt;/strong> !&lt;/p>
&lt;p>بعد ذلك، وكما هو موضح في الفصل الأول، إذا قمنا بحساب القاسم المشترك الأكبر لـ $X - Y$ و $N$، فإن تشفير RSA المنيع سينهار بصوت عالٍ، وستظهر الأعداد الأولية السرية.&lt;/p>
&lt;hr>
&lt;h2 id="الخاتمة-الرياضيات-لا-تنتهي">الخاتمة: الرياضيات لا تنتهي
&lt;/h2>&lt;p>قد تعتقد: &amp;ldquo;حسناً، باستخدام GNFS يمكننا كسر أي تشفير!&amp;rdquo;
ومع ذلك، فإن تشفير RSA لم يستسلم. ما يتم استخدامه في الإنترنت اليوم هو عدد ضخم وحشي يُسمى &amp;ldquo;RSA-2048 (حوالي 617 رقماً)&amp;rdquo;.&lt;/p>
&lt;p>بغض النظر عن كون GNFS أقوى خوارزمية للبشرية، يُقال إنه حتى لكسر رقم مكون من 270 رقماً (RSA-270)، فإن الأمر سيستغرق آلاف بل وعشرات الآلاف من السنين حتى لو تم ربط جميع أجهزة الكمبيوتر في العالم معاً. في الوقت الحالي، بياناتنا في LINE والبنوك في أمان.&lt;/p>
&lt;p>ولكن، ماذا سيحدث إذا ظهر &lt;strong>&amp;ldquo;السحر الذي يجد $X$ و $Y$ في لحظة لأي عدد ضخم&amp;rdquo;&lt;/strong> ؟
في الواقع، أقرب شيء لذلك قيد التطوير حالياً هو &lt;strong>&amp;ldquo;الكمبيوتر الكمي (خوارزمية شور)&amp;rdquo;&lt;/strong> . لقد ثبت رياضياً أنه باستخدام الخصائص الموجية لميكانيكا الكم، يمكننا تجاوز لغز جمع البطاقات المزعج وسحب الإجابة الصحيحة دفعة واحدة.&lt;/p>
&lt;p>معركة العقول التي لا نهاية لها بين صانعي التشفير (الدفاع) وصانعي خوارزميات كسر التشفير (الهجوم).
عندما تعلم أن &amp;ldquo;التحليل إلى العوامل الأولية&amp;rdquo; و&amp;quot;المعادلات الجبرية&amp;quot; التي تعلمناها في المدرسة الإعدادية هي في الواقع الأسلحة التي تتصادم بشراسة في الخطوط الأمامية للأمن العالمي، ألا تبدو دروس الرياضيات أكثر إثارة للاهتمام قليلاً؟&lt;/p>
&lt;p>قد تكون أنت من يقرأ هذا المقال هو من سيكتشف أقوى خوارزمية في المستقبل!&lt;/p>
&lt;hr>
&lt;p>&lt;em>(※يقوم هذا المقال بتبسيط الجاذبية الرياضية لفك التشفير لطلاب المدارس الإعدادية. في الواقع، يتم حساب GNFS الفعلي بصرامة باستخدام رياضيات جامعية متقدمة مثل مجموعات الفئات المثالية للحقول الجبرية والتشاكل (Homomorphism))&lt;/em>&lt;/p></description></item><item><title>حدسية كولاتز</title><link>http://kenji.blog/ar/p/collatz-conjecture/</link><pubDate>Tue, 15 Jul 2025 18:03:03 +0900</pubDate><guid>http://kenji.blog/ar/p/collatz-conjecture/</guid><description>&lt;img src="http://kenji.blog/p/%E3%82%B3%E3%83%A9%E3%83%83%E3%83%84%E4%BA%88%E6%83%B3/img.png" alt="Featured image of post حدسية كولاتز" />&lt;h1 id="هل-حقا-ينتهي-أي-رقم-بالعدد-1--اللعب-بحدسية-كولاتز">&amp;ldquo;هل حقًا ينتهي أي رقم بالعدد 1؟&amp;rdquo; ── اللعب بحدسية كولاتز
&lt;/h1>&lt;p>مرحبًا! أنا كينجي.&lt;/p>
&lt;p>سؤال مفاجئ: عندما تسمع &amp;ldquo;قاعدة تجعل أي رقم ينتهي في النهاية إلى 1&amp;rdquo;،
ألا يبدو ذلك غريبًا بعض الشيء؟&lt;/p>
&lt;blockquote>
&lt;p>على سبيل المثال، 19، أو 87، أو حتى 1000000.
إذا اتبعت قاعدة معينة وتلاعبت بالأرقام، لسبب ما تنتهي دائمًا عند &amp;ldquo;1&amp;rdquo;.&lt;/p>
&lt;/blockquote>
&lt;p>هذه القصة التي تشبه الحلم هي &lt;strong>حدسية كولاتز (Collatz Conjecture)&lt;/strong>.&lt;/p>
&lt;hr>
&lt;h2 id="في-البداية-ما-هي-حدسية-كولاتز">في البداية، ما هي حدسية كولاتز؟
&lt;/h2>&lt;p>أولاً، دعني أقدم لك القواعد.&lt;/p>
&lt;ul>
&lt;li>
&lt;p>البداية: اختر أي &lt;strong>عدد صحيح موجب&lt;/strong>&lt;/p>
&lt;/li>
&lt;li>
&lt;p>العملية:&lt;/p>
&lt;ul>
&lt;li>إذا كان زوجيًا → اقسمه على النصف (n → n / 2)&lt;/li>
&lt;li>إذا كان فرديًا → اضربه في 3 وأضف 1 (n → 3n + 1)&lt;/li>
&lt;/ul>
&lt;/li>
&lt;/ul>
&lt;p>إذا كررت هذا مرارًا وتكرارًا، فإن التوقع هو أن &lt;strong>أي رقم سيصل في النهاية إلى 1&lt;/strong>.&lt;/p>
&lt;p>على سبيل المثال، إذا بدأنا بـ &lt;code>6&lt;/code>:&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">6 → 3 → 10 → 5 → 16 → 8 → 4 → 2 → 1
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>أصبح &amp;ldquo;1&amp;rdquo; بالفعل. مرحبًا بعودتك!&lt;/p>
&lt;hr>
&lt;h2 id="لنجرب-ذلك-بالرموز-كولاتز-باستخدام-بايثون">لنجرب ذلك بالرموز: كولاتز باستخدام بايثون
&lt;/h2>&lt;p>حسنًا، في مثل هذه الحالات، من الأسرع تجربة الكود!
دعنا نطبع &amp;ldquo;متتالية كولاتز&amp;rdquo; باستخدام بايثون.&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt"> 1
&lt;/span>&lt;span class="lnt"> 2
&lt;/span>&lt;span class="lnt"> 3
&lt;/span>&lt;span class="lnt"> 4
&lt;/span>&lt;span class="lnt"> 5
&lt;/span>&lt;span class="lnt"> 6
&lt;/span>&lt;span class="lnt"> 7
&lt;/span>&lt;span class="lnt"> 8
&lt;/span>&lt;span class="lnt"> 9
&lt;/span>&lt;span class="lnt">10
&lt;/span>&lt;span class="lnt">11
&lt;/span>&lt;span class="lnt">12
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-python" data-lang="python">&lt;span class="line">&lt;span class="cl">&lt;span class="k">def&lt;/span> &lt;span class="nf">collatz&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">n&lt;/span>&lt;span class="p">):&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">steps&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="p">[&lt;/span>&lt;span class="n">n&lt;/span>&lt;span class="p">]&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">while&lt;/span> &lt;span class="n">n&lt;/span> &lt;span class="o">!=&lt;/span> &lt;span class="mi">1&lt;/span>&lt;span class="p">:&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">if&lt;/span> &lt;span class="n">n&lt;/span> &lt;span class="o">%&lt;/span> &lt;span class="mi">2&lt;/span> &lt;span class="o">==&lt;/span> &lt;span class="mi">0&lt;/span>&lt;span class="p">:&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">n&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="n">n&lt;/span> &lt;span class="o">//&lt;/span> &lt;span class="mi">2&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">else&lt;/span>&lt;span class="p">:&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">n&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="mi">3&lt;/span> &lt;span class="o">*&lt;/span> &lt;span class="n">n&lt;/span> &lt;span class="o">+&lt;/span> &lt;span class="mi">1&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">steps&lt;/span>&lt;span class="o">.&lt;/span>&lt;span class="n">append&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">n&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">return&lt;/span> &lt;span class="n">steps&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1"># مثال: لنبدأ بـ 19&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nb">print&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">collatz&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="mi">19&lt;/span>&lt;span class="p">))&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>عند التشغيل:&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">[19, 58, 29, 88, 44, 22, 11, 34, 17, 52, 26, 13, 40, 20, 10, 5, 16, 8, 4, 2, 1]
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>يصل إلى 1 بنجاح.
لقد اتخذ طريقًا التفافيًا طويلاً، لكنه وصل إلى خط النهاية في النهاية!&lt;/p>
&lt;p>بالمناسبة، حتى لو بدأنا بـ 29، فإنه يصل إلى 1 بنفس الطريقة.&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">pythonprint(collatz(29))
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>عند التشغيل:&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;span class="lnt">2
&lt;/span>&lt;span class="lnt">3
&lt;/span>&lt;span class="lnt">4
&lt;/span>&lt;span class="lnt">5
&lt;/span>&lt;span class="lnt">6
&lt;/span>&lt;span class="lnt">7
&lt;/span>&lt;span class="lnt">8
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">[27, 82, 41, 124, 62, 31, 94, 47, 142, 71, 214, 107, 322, 161, 484, 242,
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">121, 364, 182, 91, 274, 137, 412, 206, 103, 310, 155, 466, 233, 700, 350,
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">175, 526, 263, 790, 395, 1186, 593, 1780, 890, 445, 1336, 668, 334, 167,
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">502, 251, 754, 377, 1132, 566, 283, 850, 425, 1276, 638, 319, 958, 479,
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">1438, 719, 2158, 1079, 3238, 1619, 4858, 2429, 7288, 3644, 1822, 911,
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">2734, 1367, 4102, 2051, 6154, 3077, 9232, 4616, 2308, 1154, 577, 1732,
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">866, 433, 1300, 650, 325, 976, 488, 244, 122, 61, 184, 92, 46, 23, 70, 35,
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">106, 53, 160, 80, 40, 20, 10, 5, 16, 8, 4, 2, 1]
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>يستغرق الأمر 111 خطوة مذهلة!&lt;/p>
&lt;p>وعلاوة على ذلك، في بعض الأحيان يتضخم إلى أكثر من 9000 في الطريق.
هذا نمط يأخذ طريقًا التفافيًا ضخمًا قبل الوصول إلى خط النهاية.&lt;/p>
&lt;hr>
&lt;h2 id="إذن-ما-هو-الشيء-المذهل-في-النهاية">إذن، ما هو الشيء المذهل في النهاية؟
&lt;/h2>&lt;p>الشيء المذهل في هذه الحدسية هو،&lt;/p>
&lt;blockquote>
&lt;p>&lt;strong>على الرغم من أنها لم تُثبت، يبدو أنها تصل دائمًا إلى 1 بغض النظر عن الرقم الذي تستخدمه&lt;/strong>&lt;/p>
&lt;/blockquote>
&lt;p>هنا تكمن الروعة.&lt;/p>
&lt;p>ماذا؟ إذن، ماذا عن تريليون، أو كوادريليون&amp;hellip;؟&lt;/p>
&lt;p>لمن فكر في ذلك، أنت حاد الذكاء.
في الواقع، باستخدام أجهزة الكمبيوتر، تم التحقق من ذلك حتى &amp;ldquo;2 أُس 68&amp;rdquo;،
و &lt;strong>جميعها تصل إلى 1&lt;/strong>. أمر لا يصدق&amp;hellip;&lt;/p>
&lt;p>ولكن، &lt;strong>لم يُثبت نظريًا أن &amp;ldquo;كل شيء سيكون على هذا النحو&amp;rdquo;&lt;/strong>.
هذا ما يسمى &amp;ldquo;مشكلة غير محلولة&amp;rdquo; في عالم الرياضيات.&lt;/p>
&lt;hr>
&lt;h2 id="من-هو-السيد-كولاتز">من هو السيد كولاتز؟
&lt;/h2>&lt;p>والآن، بعد قراءة هذا الحد، قد تتساءل: &amp;ldquo;من هو كولاتز في المقام الأول؟&amp;rdquo;
سأقدمه لك بشكل صحيح!&lt;/p>
&lt;ul>
&lt;li>الاسم: &lt;strong>لوثار كولاتز (Lothar Collatz)&lt;/strong>&lt;/li>
&lt;li>الجنسية: ألماني&lt;/li>
&lt;li>سنة الميلاد: 1910 - 1990&lt;/li>
&lt;li>المسمى الوظيفي: عالم رياضيات (نشط في مجالات التحليل الدالي ونظرية الأعداد)&lt;/li>
&lt;/ul>
&lt;p>اقترح هذه الحدسية في عام 1937،
ومنذ ذلك الحين، لأكثر من 80 عامًا، &lt;strong>لم يتمكن أحد من إثباتها أو دحضها&lt;/strong>.&lt;/p>
&lt;p>بالمناسبة، هذه المشكلة بسيطة للغاية ولكنها عميقة جدًا،
حتى أن بول إيردوس (عالم الرياضيات الشهير) قال شيئًا كهذا.&lt;/p>
&lt;blockquote>
&lt;p>&amp;ldquo;الرياضيات ليست ناضجة بما يكفي للتعامل مع كولاتز بعد&amp;rdquo;&lt;/p>
&lt;/blockquote>
&lt;p>بمعنى آخر، النظرية هي أن رياضيات البشرية لم تلحق بعد بهذا اللغز&amp;hellip;&lt;/p>
&lt;hr>
&lt;h2 id="الصيغ-الرياضية-المعقدة-ليست-ضرورية">&amp;ldquo;الصيغ الرياضية المعقدة&amp;rdquo; ليست ضرورية
&lt;/h2>&lt;p>الشيء الجيد في حدسية كولاتز هو أنه يمكن لـ &lt;strong>أي شخص اللعب بها&lt;/strong>.&lt;/p>
&lt;p>كل ما تحتاجه هو ورقة وقلم.
إذا كتبت كودًا بلغة بايثون، يمكنك اختباره تلقائيًا.
ومع ذلك، &lt;strong>يتحدى علماء الرياضيات البارزون ذلك بجدية&lt;/strong>.&lt;/p>
&lt;p>ألا يبدو ذلك مثيرًا؟&lt;/p>
&lt;hr>
&lt;h2 id="مكافأة-كود-لاختبار-العديد-من-الأرقام-دفعة-واحدة">مكافأة: كود لاختبار العديد من الأرقام دفعة واحدة
&lt;/h2>&lt;p>سأقوم أيضًا بتضمين كود لاختبار العديد من الأرقام معًا.&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;span class="lnt">2
&lt;/span>&lt;span class="lnt">3
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-python" data-lang="python">&lt;span class="line">&lt;span class="cl">&lt;span class="k">for&lt;/span> &lt;span class="n">n&lt;/span> &lt;span class="ow">in&lt;/span> &lt;span class="nb">range&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="mi">1&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="mi">21&lt;/span>&lt;span class="p">):&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">steps&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="n">collatz&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">n&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nb">print&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="sa">f&lt;/span>&lt;span class="s2">&amp;#34;&lt;/span>&lt;span class="si">{&lt;/span>&lt;span class="n">n&lt;/span>&lt;span class="si">}&lt;/span>&lt;span class="s2">: &lt;/span>&lt;span class="si">{&lt;/span>&lt;span class="n">steps&lt;/span>&lt;span class="si">}&lt;/span>&lt;span class="s2"> (عدد الخطوات: &lt;/span>&lt;span class="si">{&lt;/span>&lt;span class="nb">len&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">steps&lt;/span>&lt;span class="p">)&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="mi">1&lt;/span>&lt;span class="si">}&lt;/span>&lt;span class="s2">)&amp;#34;&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>هذا سيخرج متتالية كولاتز للأرقام من &amp;ldquo;1 إلى 20&amp;rdquo; دفعة واحدة.&lt;/p>
&lt;hr>
&lt;h2 id="الخلاصة-هذا-العالم-غريب-حقا">الخلاصة: هذا العالم غريب حقًا
&lt;/h2>&lt;p>إذن، هذه هي حدسية كولاتز.&lt;/p>
&lt;ul>
&lt;li>على الرغم من أنها بسيطة جدًا&lt;/li>
&lt;li>لا يمكن لأحد إثباتها&lt;/li>
&lt;li>إنها مشكلة كبيرة في عالم الرياضيات&lt;/li>
&lt;/ul>
&lt;p>لقد كان وجودًا يبدو ككتلة من الغموض.&lt;/p>
&lt;p>حتى المبتدئين في البرمجة يمكنهم تجربتها، لذا يرجى اللعب بها!&lt;/p>
&lt;hr>
&lt;h2 id="روابط-موصى-بها-للمهتمين">روابط موصى بها (للمهتمين)
&lt;/h2>&lt;ul>
&lt;li>&lt;a class="link" href="https://ar.wikipedia.org/wiki/%d8%ad%d8%af%d8%b3%d9%8a%d8%a9_%d9%83%d9%88%d9%84%d8%a7%d8%aa%d8%b2" target="_blank" rel="noopener"
>ويكيبيديا: حدسية كولاتز&lt;/a>&lt;/li>
&lt;li>&lt;a class="link" href="https://arxiv.org/abs/1909.03562" target="_blank" rel="noopener"
>ورقة تيرينس تاو (باللغة الإنجليزية)&lt;/a>&lt;/li>
&lt;li>قد يكون من الممتع أيضًا إنشاء نسخة مرئية باستخدام بايثون! (سأفعل ذلك إذا كان هناك طلب)&lt;/li>
&lt;/ul>
&lt;hr>
&lt;p>إذا كنت ترغب في معرفة المزيد من القصص حول &amp;ldquo;الرياضيات الغامضة × البرمجة&amp;rdquo;،
لا تتردد في طلب &amp;ldquo;أخبرني المزيد&amp;rdquo;.
قريبًا، سأقدم لك فرضية ريمان، الأعداد الأولية، والمزيد!&lt;/p>
&lt;hr>
&lt;p>📮 النهاية!&lt;/p>
&lt;hr></description></item><item><title>تخمين P≠NP</title><link>http://kenji.blog/ar/p/pnp%E4%BA%88%E6%83%B3/</link><pubDate>Wed, 11 Sep 2024 02:22:39 +0900</pubDate><guid>http://kenji.blog/ar/p/pnp%E4%BA%88%E6%83%B3/</guid><description>&lt;h1 id="ملخص">ملخص
&lt;/h1>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">الفئة P هي فئة من المشكلات التي يمكن تحديدها في وقت متعدد الحدود على آلة تورينغ الحتمية، والفئة NP هي فئة من المشكلات حيث، عند إعطاء دليل على أن الإجابة هي نعم (يسمى شاهد)، يمكن التحقق من صحة الشاهد في وقت متعدد الحدود (وهذا ما يسمى بالتحقق). نظرًا لأن المشكلات التي يمكن تحديدها في وقت متعدد الحدود يمكن التحقق منها في وقت متعدد الحدود، فمن الواضح أن P⊆NP، ولكن ليس من الواضح ما إذا كانت P مجموعة فرعية حقيقية من NP. على الرغم من عدم وجود دليل حتى الآن، يعتقد العديد من الباحثين أن P≠NP. هذا التخمين بأن الفئة P والفئة NP ليسا متساويين يسمى &amp;#34;تخمين P≠NP&amp;#34;.
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>موقع مرجعي : &lt;a class="link" href="https://daigakudenki.com/np-hard/" target="_blank" rel="noopener"
>https://daigakudenki.com/np-hard/&lt;/a>&lt;/p></description></item><item><title>مقدمة في Mathematica</title><link>http://kenji.blog/ar/p/mathematica%E5%85%A5%E9%96%80/</link><pubDate>Thu, 25 Jul 2024 01:36:19 +0900</pubDate><guid>http://kenji.blog/ar/p/mathematica%E5%85%A5%E9%96%80/</guid><description>&lt;img src="http://kenji.blog/p/mathematica%E5%85%A5%E9%96%80/img.png" alt="Featured image of post مقدمة في Mathematica" />&lt;h1 id="مقدمة-في-mathematica">مقدمة في Mathematica
&lt;/h1>&lt;h2 id="حل-المعادلات">حل المعادلات
&lt;/h2>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">Solve[x^2 - 3 x + 2 == 0, x]
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>الخرج&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">{{x -&amp;gt; 1}, {x -&amp;gt; 2}}
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;h2 id="إيجاد-حلول-المعادلات-في-نطاق-الأعداد-الصحيحة">إيجاد حلول المعادلات في نطاق الأعداد الصحيحة
&lt;/h2>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">Solve[x^2 - 3 x + 2 == 0 &amp;amp;&amp;amp; 0 &amp;lt;= x &amp;lt;= 2, x, Integers]
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>الخرج&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">{{x -&amp;gt; 1}, {x -&amp;gt; 2}}
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;h2 id="حل-نظام-من-المعادلات">حل نظام من المعادلات
&lt;/h2>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">Solve[{x + y == 3, x - y == 1}, {x, y}]
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>الخرج&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">{{x -&amp;gt; 2, y -&amp;gt; 1}}
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;h2 id="حل-المتباينات">حل المتباينات
&lt;/h2>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">Reduce[x^2 - 3 x + 2 &amp;gt; 0, x]
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>الخرج&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">x &amp;lt; 1 || x &amp;gt; 2
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;h2 id="التفاضل">التفاضل
&lt;/h2>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">D[x^2, x]
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>الخرج&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">2 x
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;h2 id="التكامل">التكامل
&lt;/h2>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">Integrate[x^2, x]
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>الخرج&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">x^3/3
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;h2 id="إيجاد-النهاية">إيجاد النهاية
&lt;/h2>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">Limit[1/x, x -&amp;gt; 0]
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>الخرج&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">Infinity
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;h2 id="إيجاد-المتسلسلة">إيجاد المتسلسلة
&lt;/h2>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">Sum[1/n^2, {n, 1, Infinity}]
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>الخرج&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">π^2/6
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;h2 id="إنشاء-مصفوفة">إنشاء مصفوفة
&lt;/h2>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">m = {{1, 2}, {3, 4}}
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;h2 id="إيجاد-ضرب-المصفوفات">إيجاد ضرب المصفوفات
&lt;/h2>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">m . m
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>الخرج&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">{{7, 10}, {15, 22}}
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;h2 id="إيجاد-المصفوفة-المعكوسة">إيجاد المصفوفة المعكوسة
&lt;/h2>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">Inverse[m]
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>الخرج&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">{{-2, 1}, {1.5, -0.5}}
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;h2 id="إيجاد-القيم-الذاتية-والمتجهات-الذاتية">إيجاد القيم الذاتية والمتجهات الذاتية
&lt;/h2>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">Eigensystem[m]
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>الخرج&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">{{5, 0}, {{1, 1}, {1, -1}}}
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;h2 id="إيجاد-الضرب-النقطي-للمتجهات">إيجاد الضرب النقطي للمتجهات
&lt;/h2>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">{1, 2} . {3, 4}
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>الخرج&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">11
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;h2 id="إيجاد-الضرب-التقاطعي-للمتجهات">إيجاد الضرب التقاطعي للمتجهات
&lt;/h2>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">Cross[{1, 2, 3}, {4, 5, 6}]
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>الخرج&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">{-3, 6, -3}
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;h2 id="إيجاد-مقدار-المتجه">إيجاد مقدار المتجه
&lt;/h2>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">Norm[{1, 2, 3}]
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>الخرج&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">√14
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;h2 id="إيجاد-زاوية-المتجه">إيجاد زاوية المتجه
&lt;/h2>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">ArcCos[{1, 2} . {3, 4}/(Norm[{1, 2}] Norm[{3, 4}])]
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>الخرج&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">ArcCos[11/(√5 √25)]
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;h2 id="إيجاد-الإسقاط-المتجهي">إيجاد الإسقاط المتجهي
&lt;/h2>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">{1, 2} . {3, 4}/Norm[{3, 4}] {3, 4}/Norm[{3, 4}]
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>الخرج&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">{11/5, 22/5}
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;h2 id="إيجاد-دوران-المتجه">إيجاد دوران المتجه
&lt;/h2>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">RotationMatrix[π/2].{1, 0}
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>الخرج&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">{0, 1}
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;h2 id="إيجاد-انتقال-المتجه">إيجاد انتقال المتجه
&lt;/h2>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">TranslationTransform[{1, 2}][{3, 4}]
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>الخرج&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">{4, 6}
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;h2 id="إيجاد-تحجيم-المتجه">إيجاد تحجيم المتجه
&lt;/h2>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">ScalingTransform[{2, 3}][{1, 1}]
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>الخرج&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">{2, 3}
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;h2 id="إيجاد-انعكاس-المتجه">إيجاد انعكاس المتجه
&lt;/h2>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">ReflectionTransform[{1, 1}][{1, 1}]
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>الخرج&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">{0, 0}
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;h2 id="توليد-أرقام-عشوائية">توليد أرقام عشوائية
&lt;/h2>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">RandomReal[]
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>الخرج&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">0.123456
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;h2 id="توليد-أرقام-عشوائية-أعداد-صحيحة">توليد أرقام عشوائية (أعداد صحيحة)
&lt;/h2>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">RandomInteger[]
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>الخرج&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">123456
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;h2 id="توليد-أرقام-عشوائية-ضمن-نطاق">توليد أرقام عشوائية (ضمن نطاق)
&lt;/h2>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">RandomReal[{1, 10}]
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>الخرج&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">5.6789
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;h2 id="توليد-أرقام-عشوائية-أعداد-صحيحة-ضمن-نطاق">توليد أرقام عشوائية (أعداد صحيحة ضمن نطاق)
&lt;/h2>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">RandomInteger[{1, 10}]
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>الخرج&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">5
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;h2 id="توليد-أرقام-عشوائية-توزيع-محدد">توليد أرقام عشوائية (توزيع محدد)
&lt;/h2>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">RandomVariate[NormalDistribution[0, 1]]
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>الخرج&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">0.123456
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;h2 id="توليد-أرقام-عشوائية-توزيع-محدد-عدد-محدد">توليد أرقام عشوائية (توزيع محدد، عدد محدد)
&lt;/h2>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">RandomVariate[NormalDistribution[0, 1], 10]
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>الخرج&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">{0.123456, 0.234567, ..., 0.987654}
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;h2 id="توليد-أرقام-عشوائية-توزيع-عدد-وبذرة-محددة">توليد أرقام عشوائية (توزيع، عدد، وبذرة محددة)
&lt;/h2>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;span class="lnt">2
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">SeedRandom[12345]
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">RandomVariate[NormalDistribution[0, 1], 10]
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>الخرج&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">{0.123456, 0.234567, ..., 0.987654}
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;h2 id="تطبيق-دالة-على-عناصر-المصفوفة">تطبيق دالة على عناصر المصفوفة
&lt;/h2>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;span class="lnt">2
&lt;/span>&lt;span class="lnt">3
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">Map[Sqrt, {1, 4, 9}]
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">Sqrt /@ {1, 4, 9}
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">Map[#^(1/2)&amp;amp;, {1, 4, 9}]
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>الخرج&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">{1, 2, 3}
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;h2 id="تعريف-دالة-باستخدام-تعبير-لامبدا">تعريف دالة باستخدام تعبير لامبدا
&lt;/h2>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;span class="lnt">2
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">f = Function[x, x^2]
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">f[3]
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>الخرج&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">9
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;h2 id="تركيب-الدوال">تركيب الدوال
&lt;/h2>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;span class="lnt">2
&lt;/span>&lt;span class="lnt">3
&lt;/span>&lt;span class="lnt">4
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">f = Function[x, x^2]
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">g = Function[x, x + 1]
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">h = Function[x, f[g[x]]]
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">h[3]
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>الخرج&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">16
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;h2 id="الإشارة-إلى-نتيجة-الحساب-السابق">الإشارة إلى نتيجة الحساب السابق
&lt;/h2>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">% + 1
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>الخرج&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">17
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;h2 id="دوال-نقية">دوال نقية
&lt;/h2>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">(#+3)&amp;amp;[5]
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>الخرج&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">8
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;h2 id="استخراج-من-المصفوفة">استخراج من المصفوفة
&lt;/h2>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;span class="lnt">2
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">Select[{1, 2, 3, 4, 5}, EvenQ]
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">Select[{1, 2, 3, 4, 5}, Mod[#,2]==0&amp;amp;]
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>الخرج&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">{2, 4}
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div></description></item><item><title>ما هي مفارقة عيد الميلاد؟</title><link>http://kenji.blog/ar/p/%E3%83%90%E3%83%BC%E3%82%B9%E3%83%87%E3%82%A4%E3%83%91%E3%83%A9%E3%83%89%E3%83%83%E3%82%AF%E3%82%B9%E3%81%A8%E3%81%AF/</link><pubDate>Tue, 02 Apr 2024 01:20:50 +0900</pubDate><guid>http://kenji.blog/ar/p/%E3%83%90%E3%83%BC%E3%82%B9%E3%83%87%E3%82%A4%E3%83%91%E3%83%A9%E3%83%89%E3%83%83%E3%82%AF%E3%82%B9%E3%81%A8%E3%81%AF/</guid><description>&lt;img src="http://kenji.blog/p/%E3%83%90%E3%83%BC%E3%82%B9%E3%83%87%E3%82%A4%E3%83%91%E3%83%A9%E3%83%89%E3%83%83%E3%82%AF%E3%82%B9%E3%81%A8%E3%81%AF/img.png" alt="Featured image of post ما هي مفارقة عيد الميلاد؟" />&lt;h2 id="هل-تعرف-مفارقة-عيد-الميلاد">هل تعرف مفارقة عيد الميلاد؟
&lt;/h2>&lt;p>سأتحدث عن قصة غريبة قليلاً.
&amp;ldquo;احتمالية وجود أشخاص لهم نفس يوم الميلاد&amp;rdquo;، كم تعتقد أنه يجب أن يجتمع من الأشخاص لتصبح عالية؟&lt;/p>
&lt;p>على سبيل المثال، السنة فيها 365 يومًا، لذا إذا قيل لك &amp;ldquo;إذا اجتمع 23 شخصًا، فإن احتمالية أن يتطابق عيد ميلاد شخصين هي 50% أو أكثر&amp;rdquo;&amp;hellip; يبدو الأمر نوعًا ما مخالفًا للبديهة، أليس كذلك؟&lt;/p>
&lt;p>ولكن هذا &lt;strong>بالفعل 50% أو أكثر.&lt;/strong>&lt;/p>
&lt;hr>
&lt;h2 id="لماذا-يحدث-ذلك">لماذا يحدث ذلك؟
&lt;/h2>&lt;p>هذه الظاهرة تسمى &amp;ldquo;مفارقة عيد الميلاد&amp;rdquo;.
الاسم هو &amp;ldquo;مفارقة&amp;rdquo;، ولكن لها سبب رياضي سليم.&lt;/p>
&lt;p>إذا كان عدد الأشخاص &amp;ldquo;n&amp;rdquo;، فإن &lt;strong>احتمالية ألا يتطابق عيد ميلاد أحد&lt;/strong> يمكن حسابها بالمعادلة التالية:&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">P(لا يتطابق أحد) = 365/365 × 364/365 × 363/365 × ... × (365 - n + 1)/365
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>بطرح ذلك من 1، يظهر &amp;ldquo;احتمالية التطابق مع شخص ما&amp;rdquo;.&lt;/p>
&lt;hr>
&lt;h2 id="بالنظر-إلى-النتائج">بالنظر إلى النتائج&amp;hellip;
&lt;/h2>&lt;table>
&lt;thead>
&lt;tr>
&lt;th>عدد الأشخاص&lt;/th>
&lt;th>احتمالية وجود أشخاص لهم نفس يوم الميلاد&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td>10 أشخاص&lt;/td>
&lt;td>حوالي 11.7%&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>20 شخصًا&lt;/td>
&lt;td>حوالي 41.1%&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>23 شخصًا&lt;/td>
&lt;td>&lt;strong>حوالي 50.7% (هنا التركيز!)&lt;/strong>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>30 شخصًا&lt;/td>
&lt;td>حوالي 70.6%&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>70 شخصًا&lt;/td>
&lt;td>&lt;strong>مذهل حوالي 99.9%!&lt;/strong>&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;p>بمعنى آخر، بوجود &lt;strong>23 شخصًا&lt;/strong> فقط، هناك احتمال أكثر من النصف بأن يتطابق عيد ميلاد شخصين.
يبدو أنه يمكن تطبيقه في الفصول الدراسية في المدارس أو اجتماعات العمل أيضًا.&lt;/p>
&lt;hr>
&lt;h2 id="الخلاصة-التفاوت-بين-الحدس-والرياضيات-مثير-للاهتمام">الخلاصة: التفاوت بين الحدس والرياضيات مثير للاهتمام
&lt;/h2>&lt;p>&amp;ldquo;مفارقة عيد الميلاد&amp;rdquo; هي مثال مثير للاهتمام حيث يختلف حدسنا عن الاحتمالات الرياضية الفعلية.
إذا كنت تعرف هذه الأشياء، فقد تتمكن من إثارة الحماس في دردشة صغيرة أو مسابقة!&lt;/p>
&lt;hr>
&lt;h2 id="روابط-مفيدة">روابط مفيدة
&lt;/h2>&lt;ul>
&lt;li>&lt;a class="link" href="https://ja.wikipedia.org/wiki/%E8%AA%95%E7%94%9F%E6%97%A5%E3%81%AE%E3%83%91%E3%83%A9%E3%83%89%E3%83%83%E3%82%AF%E3%82%B9" target="_blank" rel="noopener"
>مفارقة عيد الميلاد (ويكيبيديا)&lt;/a>&lt;/li>
&lt;/ul></description></item><item><title>حل مشكلة البائع المتجول باستخدام Mathematica</title><link>http://kenji.blog/ar/p/%D8%AD%D9%84-%D9%85%D8%B4%D9%83%D9%84%D8%A9-%D8%A7%D9%84%D8%A8%D8%A7%D8%A6%D8%B9-%D8%A7%D9%84%D9%85%D8%AA%D8%AC%D9%88%D9%84-%D8%A8%D8%A7%D8%B3%D8%AA%D8%AE%D8%AF%D8%A7%D9%85-mathematica/</link><pubDate>Wed, 12 Oct 2022 19:05:58 +0900</pubDate><guid>http://kenji.blog/ar/p/%D8%AD%D9%84-%D9%85%D8%B4%D9%83%D9%84%D8%A9-%D8%A7%D9%84%D8%A8%D8%A7%D8%A6%D8%B9-%D8%A7%D9%84%D9%85%D8%AA%D8%AC%D9%88%D9%84-%D8%A8%D8%A7%D8%B3%D8%AA%D8%AE%D8%AF%D8%A7%D9%85-mathematica/</guid><description>&lt;img src="http://kenji.blog/p/mathematica%E3%81%A7%E5%B7%A1%E5%9B%9E%E3%82%BB%E3%83%BC%E3%83%AB%E3%82%B9%E3%83%9E%E3%83%B3%E5%95%8F%E9%A1%8C%E3%82%92%E8%A7%A3%E3%81%8F/img.png" alt="Featured image of post حل مشكلة البائع المتجول باستخدام Mathematica" />&lt;h1 id="حل-مشكلة-البائع-المتجول-باستخدام-mathematica">حل مشكلة البائع المتجول باستخدام Mathematica
&lt;/h1>&lt;h2 id="مشكلة">مشكلة
&lt;/h2>&lt;blockquote class="twitter-tweet">&lt;p lang="ja" dir="ltr">電車でこんな広告を見かけました😁📸 &lt;a href="https://t.co/iXEgvtXrpL">pic.twitter.com/iXEgvtXrpL&lt;/a>&lt;/p>&amp;mdash; 早稲田大学 早水桃子研究室 (@hayamizu_lab) &lt;a href="https://x.com/hayamizu_lab/status/1579806418982825984?ref_src=twsrc%5Etfw">October 11, 2022&lt;/a>&lt;/blockquote>
&lt;script async src="https://platform.x.com/widgets.js" charset="utf-8">&lt;/script>
&lt;h2 id="حل">حل
&lt;/h2>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">d=SparseArray[{{1,2}-&amp;gt;10,{2,1}-&amp;gt;10,{1,5}-&amp;gt;15,{5,1}-&amp;gt;15,{1,4}-&amp;gt;12,{4,1}-&amp;gt;12,{1,3}-&amp;gt;20,{3,1}-&amp;gt;20,{2,5}-&amp;gt;10,{5,2}-&amp;gt;10,{3,4}-&amp;gt;10,{4,3}-&amp;gt;10,{3,8}-&amp;gt;30,{8,3}-&amp;gt;30,{3,7}-&amp;gt;20,{7,3}-&amp;gt;20,{3,6}-&amp;gt;25,{6,3}-&amp;gt;25,{4,5}-&amp;gt;15,{5,4}-&amp;gt;15,{4,8}-&amp;gt;20,{8,4}-&amp;gt;20,{5,9}-&amp;gt;18,{9,5}-&amp;gt;18,{5,8}-&amp;gt;15,{8,5}-&amp;gt;15,{6,7}-&amp;gt;5,{7,6}-&amp;gt;5,{7,8}-&amp;gt;35,{8,7}-&amp;gt;35,{8,9}-&amp;gt;12,{9,8}-&amp;gt;12},{9,9},Infinity];
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>إنشاء مصفوفة باستخدام وظيفة SparseArray. يمثل كل عنصر المسافة بين المدن في صف وعمود هذا العنصر. على سبيل المثال، العنصر الأول &lt;code>{1,2}-&amp;gt;10&lt;/code> يعني أن المسافة بين 1 و 2 هي 10. العنصر قبل الأخير &lt;code>{9,9}&lt;/code> يشير إلى حجم المصفوفة، والعنصر الأخير &lt;code>Infinity&lt;/code> يعني أن طول المسار بين المدن غير المحددة لا نهائي. وبعبارة أخرى، يعني أنه لا يوجد مسار.&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">{len,tour}=FindShortestTour[{1,2,3,4,5,6,7,8,9},DistanceFunction-&amp;gt;(d[[#1,#2]]&amp;amp;)]
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>يمكنك بسهولة حل مشكلة البائع المتجول باستخدام وظيفة FindShortestTour. تمثل &lt;code>{1,2,3,4,5,6,7,8,9}&lt;/code> أرقام المدن. تمرر &lt;code>DistanceFunction-&amp;gt;(d[[#1,#2]]&amp;amp;)&lt;/code> المصفوفة d التي تمثل المسافات بين المدن.&lt;/p>
&lt;h2 id="انتاج">انتاج
&lt;/h2>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">{137, {1, 2, 5, 9, 8, 7, 6, 3, 4}}
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>المخرجات هي أقصر مسافة والمسار في ذلك الوقت. أقصر مسافة هي &lt;code>137&lt;/code>، والمسار هو &lt;code>1→2→5→9→8→7→6→3→4→1&lt;/code>. إذا تم تغيير الترتيب إلى ABC، فسيصبح &lt;code>A, B, E, I, H, G, F, C, D&lt;/code>.&lt;/p></description></item><item><title>لماذا أحب الرياضيات وأجهزة الكمبيوتر</title><link>http://kenji.blog/ar/p/%D9%84%D9%85%D8%A7%D8%B0%D8%A7-%D8%A3%D8%AD%D8%A8-%D8%A7%D9%84%D8%B1%D9%8A%D8%A7%D8%B6%D9%8A%D8%A7%D8%AA-%D9%88%D8%A3%D8%AC%D9%87%D8%B2%D8%A9-%D8%A7%D9%84%D9%83%D9%85%D8%A8%D9%8A%D9%88%D8%AA%D8%B1/</link><pubDate>Fri, 23 Sep 2022 01:56:52 +0900</pubDate><guid>http://kenji.blog/ar/p/%D9%84%D9%85%D8%A7%D8%B0%D8%A7-%D8%A3%D8%AD%D8%A8-%D8%A7%D9%84%D8%B1%D9%8A%D8%A7%D8%B6%D9%8A%D8%A7%D8%AA-%D9%88%D8%A3%D8%AC%D9%87%D8%B2%D8%A9-%D8%A7%D9%84%D9%83%D9%85%D8%A8%D9%8A%D9%88%D8%AA%D8%B1/</guid><description>&lt;img src="http://kenji.blog/p/%E3%81%AA%E3%81%9C%E6%95%B0%E5%AD%A6%E3%82%84%E8%A8%88%E7%AE%97%E6%A9%9F%E3%81%8C%E5%A5%BD%E3%81%8D%E3%81%AA%E3%82%93%E3%81%A0%E3%82%8D%E3%81%86/img.png" alt="Featured image of post لماذا أحب الرياضيات وأجهزة الكمبيوتر" />&lt;h2 id="فكرت-في-سبب-حبي-للرياضيات-وأجهزة-الكمبيوتر">فكرت في سبب حبي للرياضيات وأجهزة الكمبيوتر
&lt;/h2>&lt;h3 id="المساواة-للجميع">المساواة للجميع
&lt;/h3>&lt;p>بغض النظر عن الشخص أو موقفه أو مكانه، فإنها تعطي دائمًا نفس المخرجات لنفس المدخلات.&lt;/p>
&lt;h3 id="قواعد-واضحة">قواعد واضحة
&lt;/h3>&lt;p>القواعد محددة بوضوح، ولا يوجد أي عبثية أو ظلم.&lt;/p>
&lt;h3 id="الإجابات-والنظريات-المستنتجة-صحيحة-إلى-الأبد">الإجابات والنظريات المستنتجة صحيحة إلى الأبد
&lt;/h3>&lt;p>لا داعي للقلق من أن يتم تغيير الإجابة التي تم التوصل إليها لاحقًا.&lt;/p>
&lt;h3 id="هناك-مستوى-معتدل-من-الصعوبة">هناك مستوى معتدل من الصعوبة
&lt;/h3>&lt;p>هناك دائمًا مشاكل لم يتم حلها، ويمكنك دائمًا تحدي نفسك لحلها.&lt;/p></description></item></channel></rss>