From 00aa8a52bc6a4c5afce2b8ccc4c9fa050680fc0a Mon Sep 17 00:00:00 2001 From: Noah Date: Tue, 14 Jan 2025 17:56:21 +0100 Subject: [PATCH 1/9] =?UTF-8?q?ADD=20Multiplicit=C3=A9=20in=20th=C3=A9or?= =?UTF-8?q?=C3=A8me=20fondamentale=20de=20l'alg=C3=A8bre=20in=20Complex?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- 1_complex.jl | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/1_complex.jl b/1_complex.jl index 79c174f..1f6d6a8 100644 --- a/1_complex.jl +++ b/1_complex.jl @@ -86,7 +86,23 @@ md"Tout polynome ``a_0 + a_1 x + a_2 x^2 + \cdots + a_n x^n`` de degré ``n`` a md"### La multiplicité" # ╔═╡ 64777fee-6b30-417a-a705-279c710b67cf -md"TODO" +md"## Propriété des paires conjuguées + +Si \( P(x) \) a des coefficients réels et qu'une racine complexe \( z = a + ib \) (avec \( a, b \in \mathbb{R} \)) est une solution, alors la racine conjuguée \( \overline{z} = a - ib \) est également une solution. + +### Multiplicité + +La multiplicité d'une racine \( z \) est définie comme le nombre de fois où \( z \) apparaît comme solution de \( P(x) = 0 \). +Cela revient à l'exposant du facteur \( (x - z) \) dans la décomposition factorielle du polynôme. Par exemple, si : +\[ +P(x) = (x - z)^m \cdot Q(x), +\] +où \( Q(z) \neq 0 \), alors \( z \) est une racine de multiplicité \( m \). + +### Cas des paires conjuguées + +Si \( z = a + ib \) est une racine de multiplicité \( m \), alors la racine conjuguée \( \overline{z} = a - ib \) possède également une multiplicité \( m \). +" # ╔═╡ 0ea1f264-d98e-4773-9ffd-5a070b7afc1b md"### Le cas quadratique" From a83de61cbc161e063574d69f6daedeefe001ad0e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Beno=C3=AEt=20Legat?= Date: Wed, 15 Jan 2025 09:53:50 +0100 Subject: [PATCH 2/9] factorisation --- 1_complex.jl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/1_complex.jl b/1_complex.jl index 1f6d6a8..f471d55 100644 --- a/1_complex.jl +++ b/1_complex.jl @@ -93,7 +93,7 @@ Si \( P(x) \) a des coefficients réels et qu'une racine complexe \( z = a + ib ### Multiplicité La multiplicité d'une racine \( z \) est définie comme le nombre de fois où \( z \) apparaît comme solution de \( P(x) = 0 \). -Cela revient à l'exposant du facteur \( (x - z) \) dans la décomposition factorielle du polynôme. Par exemple, si : +Cela revient à l'exposant du facteur \( (x - z) \) dans la factorisation du polynôme. Par exemple, si : \[ P(x) = (x - z)^m \cdot Q(x), \] From f31707f37ea59295f215f08b40c64babe8d5a55d Mon Sep 17 00:00:00 2001 From: Noah Date: Wed, 15 Jan 2025 14:14:18 +0100 Subject: [PATCH 3/9] =?UTF-8?q?Correction=20th=C3=A9or=C3=A8me=20de=20B?= =?UTF-8?q?=C3=A9zout=20sur=20le=20PGCD(a,B)=20et=20prouver=20que=20l'?= =?UTF-8?q?=C3=A9galit=C3=A9=20ax+by=3DC=20implique=20que=20gcd(a,b)=20div?= =?UTF-8?q?ise=20c?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- 6_number.jl | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/6_number.jl b/6_number.jl index 9189230..0c53aae 100644 --- a/6_number.jl +++ b/6_number.jl @@ -48,8 +48,10 @@ md""" """ # ╔═╡ 7bad8c6c-45c7-402f-ad59-6857e9268901 -qa(md"Comment prouver que l'égalité ``ax + by = c`` implique que ``\text{gcd}(x, y)`` divise ``c`` ?", +qa(md"Comment prouver que l'égalité ``ax + by = c`` implique que ``\text{gcd}(a, b)`` divise ``c`` ?", md""" + L'égalité \(ax + by = c\) implique que \(\text{pgcd}(a, b)\) divise \(c\), car \(c\) est une combinaison linéaire de \(a\) et \(b\), et toute combinaison linéaire de \(a\) et \(b\) est un multiple du \(\text{pgcd}(a, b)\). + """,) # ╔═╡ cd481f6c-66f4-4ebf-9769-c3edc24f403b From d2cec8c4d87b2509c113c99b8812e4c783d63a58 Mon Sep 17 00:00:00 2001 From: Noah Date: Wed, 15 Jan 2025 14:41:37 +0100 Subject: [PATCH 4/9] =?UTF-8?q?Th=C3=A9or=C3=A8me=20de=20B=C3=A9zout=20cor?= =?UTF-8?q?rection=20Pgcd(x,y)->Pgcd(a,b)=20+=20preuve=20que=20Pgcd(a,b)?= =?UTF-8?q?=20divise=20c=20c=3D=20ax+by?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- 1_complex.jl | 48 +++++++++++++++++++++++++++++++++--------------- 1 file changed, 33 insertions(+), 15 deletions(-) diff --git a/1_complex.jl b/1_complex.jl index f471d55..76a7662 100644 --- a/1_complex.jl +++ b/1_complex.jl @@ -82,27 +82,45 @@ md"## Le théorème fondamental de l'algèbre" # ╔═╡ 585e40db-66b5-45fc-8720-291810566ce4 md"Tout polynome ``a_0 + a_1 x + a_2 x^2 + \cdots + a_n x^n`` de degré ``n`` a ``n`` racines complexes (ce qui n'exclut pas que certaines d'entre elles aient une partie imaginaire nulle et donc soient réelles)." -# ╔═╡ 58046703-4f7d-4668-9c4a-6875aec3f383 -md"### La multiplicité" - # ╔═╡ 64777fee-6b30-417a-a705-279c710b67cf -md"## Propriété des paires conjuguées - -Si \( P(x) \) a des coefficients réels et qu'une racine complexe \( z = a + ib \) (avec \( a, b \in \mathbb{R} \)) est une solution, alors la racine conjuguée \( \overline{z} = a - ib \) est également une solution. - +md""" ### Multiplicité -La multiplicité d'une racine \( z \) est définie comme le nombre de fois où \( z \) apparaît comme solution de \( P(x) = 0 \). -Cela revient à l'exposant du facteur \( (x - z) \) dans la factorisation du polynôme. Par exemple, si : -\[ +Une valeur ``z`` est une racine du polynôme ``P(x)`` si ``P(z) = 0``. +Si ``z`` est également une racine de la dérivée, c'est à dire ``P'(z) = 0`` alors ``z`` est une racine double. +En général, ``z`` est une racine de multiplicité ``m`` si ``P(z) = P'(z) = \cdots = P^{(m)}(z) = 0`` où ``P^{(k)}`` est la dérivée ``m``ième de ``P``. + +De façon équivalente, ça revient à l'exposant du facteur ``(x - z)`` dans la factorisation du polynôme. Par exemple, si : +```math P(x) = (x - z)^m \cdot Q(x), -\] -où \( Q(z) \neq 0 \), alors \( z \) est une racine de multiplicité \( m \). +``` +où ``Q(z) \neq 0``, alors ``z`` est une racine de multiplicité ``m``. -### Cas des paires conjuguées +### Propriété des paires conjuguées + +Si ``z = a + ib`` est une racine de multiplicité ``m``, alors la racine conjuguée ``\overline{z} = a - ib`` possède également une multiplicité ``m``. +""" -Si \( z = a + ib \) est une racine de multiplicité \( m \), alors la racine conjuguée \( \overline{z} = a - ib \) possède également une multiplicité \( m \). -" +# ╔═╡ bcbcd169-7cb1-4b68-9ac9-d8bd421f59a4 +qa( + html"Preuve", + md""" +Comme les coefficients ``a_i`` sont réel, ils sont leur propre conjugués donc ``\overline{a_i} = a_i``. +Si ``P^{(k)}(z) = 0``, on a donc: +```math +\begin{align} +P^{(k)}(\bar{z}) +& = a_0 + a_1\bar{z} + a_2\bar{z}^2 + \cdots + a_d\bar{z}^d\\ + & = a_0 + a_1\bar{z} + a_2\overline{z^2} + \cdots + a_d\overline{z^d}\\ +& = \overline{\overline{a_0} + \overline{a_1}z + \overline{a_2}z^2 + \cdots + \overline{a_d}z^d}\\ +& = \overline{a_0 + a_1z + a_2z^2 + \cdots + a_dz^d}\\ +& = \overline{P(z)} += \bar{0} += 0. +\end{align} +``` +""", +) # ╔═╡ 0ea1f264-d98e-4773-9ffd-5a070b7afc1b md"### Le cas quadratique" From 7ab0b0550e4efdb9b5db729aa22ff659f57c4f70 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Beno=C3=AEt=20Legat?= Date: Wed, 15 Jan 2025 14:53:14 +0100 Subject: [PATCH 5/9] resolve conflict --- 1_complex.jl | 4 ---- 1 file changed, 4 deletions(-) diff --git a/1_complex.jl b/1_complex.jl index aa54443..558bc0d 100644 --- a/1_complex.jl +++ b/1_complex.jl @@ -80,11 +80,7 @@ qa( md"## Le théorème fondamental de l'algèbre" # ╔═╡ 585e40db-66b5-45fc-8720-291810566ce4 -<<<<<<< HEAD -md"Tout polynome ``a_0 + a_1 x + a_2 x^2 + \cdots + a_n x^n`` de degré ``n`` a ``n`` racines complexes (ce qui n'exclut pas que certaines d'entre elles aient une partie imaginaire nulle et donc soient réelles)." -======= md"Tout polynome ``a_0 + a_1 x + a_2 x^2 + \cdots + a_n x^n`` de degré ``n`` a ``n`` racines complexes (ce qui n'exclut pas que certaines d'entre elles aient une partie imaginaire nulle et donc soient réelles). Dans cette liste de ``n`` racines, certaines apparaissent plusieurs fois. Mais qu'est-ce que ça signifie qu'une racine soit racine plusieurs fois ?" ->>>>>>> 46b72a8e8b4728c74c4890996f39a78bf4cb8fd7 # ╔═╡ 64777fee-6b30-417a-a705-279c710b67cf md""" From a1dfd5c75144b5d07d164bf6f22e0a7f0daccd40 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Beno=C3=AEt=20Legat?= Date: Wed, 15 Jan 2025 14:53:45 +0100 Subject: [PATCH 6/9] Missing newline --- 2_fourier.jl | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/2_fourier.jl b/2_fourier.jl index e375c7f..aded3c0 100644 --- a/2_fourier.jl +++ b/2_fourier.jl @@ -2730,8 +2730,9 @@ version = "1.4.1+1" # ╠═0e9e8c6e-83ff-4c4c-b9d1-19a0593a3cba # ╠═5e5ff9b1-0a78-4e9c-9c90-4fb80b0dbe21 # ╠═0d9e0a31-b229-4d06-92c9-0136404399da + # ╠═f80595c3-6bbb-4b62-b03b-1c80cecaf7f9 # ╠═792723a3-0011-422e-bbf4-798624913780 # ╠═b0a265b8-e3fd-4a6c-b813-904d18ea83e7 # ╟─00000000-0000-0000-0000-000000000001 -# ╟─00000000-0000-0000-0000-000000000002 \ No newline at end of file +# ╟─00000000-0000-0000-0000-000000000002 From 3b1a841ebcac1e3e7676c02b3eebe1eab32b5a9a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Beno=C3=AEt=20Legat?= Date: Wed, 15 Jan 2025 14:54:13 +0100 Subject: [PATCH 7/9] Extra newline --- 2_fourier.jl | 1 - 1 file changed, 1 deletion(-) diff --git a/2_fourier.jl b/2_fourier.jl index aded3c0..74d1675 100644 --- a/2_fourier.jl +++ b/2_fourier.jl @@ -2730,7 +2730,6 @@ version = "1.4.1+1" # ╠═0e9e8c6e-83ff-4c4c-b9d1-19a0593a3cba # ╠═5e5ff9b1-0a78-4e9c-9c90-4fb80b0dbe21 # ╠═0d9e0a31-b229-4d06-92c9-0136404399da - # ╠═f80595c3-6bbb-4b62-b03b-1c80cecaf7f9 # ╠═792723a3-0011-422e-bbf4-798624913780 # ╠═b0a265b8-e3fd-4a6c-b813-904d18ea83e7 From 12b03bd669a21ed9b0e5ba086fd1fd9f25f0e98b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Beno=C3=AEt=20Legat?= Date: Wed, 15 Jan 2025 14:58:24 +0100 Subject: [PATCH 8/9] More elementary proof --- 6_number.jl | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/6_number.jl b/6_number.jl index 0c53aae..7e316e0 100644 --- a/6_number.jl +++ b/6_number.jl @@ -50,8 +50,8 @@ md""" # ╔═╡ 7bad8c6c-45c7-402f-ad59-6857e9268901 qa(md"Comment prouver que l'égalité ``ax + by = c`` implique que ``\text{gcd}(a, b)`` divise ``c`` ?", md""" - L'égalité \(ax + by = c\) implique que \(\text{pgcd}(a, b)\) divise \(c\), car \(c\) est une combinaison linéaire de \(a\) et \(b\), et toute combinaison linéaire de \(a\) et \(b\) est un multiple du \(\text{pgcd}(a, b)\). - +Soit ``g = \text{gcd}(a, b)``. Par définition, il existe ``\alpha, \beta`` tels que ``a = \alpha g`` et ``b = \beta g``. +On a alors ``c = ax + by = (\alpha x + \beta y) g`` ce qui implique que ``c`` est un multiple de ``g``. """,) # ╔═╡ cd481f6c-66f4-4ebf-9769-c3edc24f403b From 678680b7060dd27770786f1837401c69e31667db Mon Sep 17 00:00:00 2001 From: Noah Date: Wed, 15 Jan 2025 15:40:46 +0100 Subject: [PATCH 9/9] =?UTF-8?q?ajout=20des=20complexit=C3=A9s=20des=20algo?= =?UTF-8?q?rithme?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- 7_graph.jl | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/7_graph.jl b/7_graph.jl index 5964e73..906dfa1 100644 --- a/7_graph.jl +++ b/7_graph.jl @@ -844,7 +844,7 @@ Modifier l'implémentation pour utiliser cette formule. Est-ce plus rapide ? Pou """ # ╔═╡ d8d21aa6-36b8-4498-82e5-5fcbbd9dbe46 -qa(md"Quelle est la complexité de cet algorithme ?", md"???") +qa(md"Quelle est la complexité de cet algorithme ?", md"\( O(V + E) \)") # ╔═╡ 46192b0c-e856-4e96-94bc-d691d201b391 qa(md"Trouve-t-il le plus court chemin ?", md"Non, l'algorithme DFS a d'autres utilité comme le calcul de composantes fortement connexes ou tri topologique mais pas le calcul de plus court chemin. Un exception est le calcul de plus cours chemin dans un DAG. On peut alors le calculer en top-down avec memoïsation ce qui ressemble à un DFS.") @@ -853,13 +853,13 @@ qa(md"Trouve-t-il le plus court chemin ?", md"Non, l'algorithme DFS a d'autres u md"L'algorithme BFS résoud le problème de shortest path dans un graphe dirigé dont tous les poids sont 1." # ╔═╡ 18e81794-8275-4f90-a18a-8052aaf34bc6 -qa(md"Quelle est la complexité de l'algorithme BFS ?", md"???") +qa(md"Quelle est la complexité de l'algorithme BFS ?", md"\( O(V + E) \)") # ╔═╡ 2b1634c2-71fd-4fc3-afda-04721bef791d md"L'algorithme de Dijkstra résoud le problème de shortest path dans un graph dirigé quand tous les poids sont positifs." # ╔═╡ f34ffdae-4c4f-4358-9b7d-4125e82e781d -qa(md"Quelle est la complexité de l'algorithme Dijkstra ?", md"???") +qa(md"Quelle est la complexité de l'algorithme Dijkstra ?", md"\( O((V + E) \log V) \)") # ╔═╡ e37ed884-1fd7-4fbe-ac7f-9931d595b3d3 qa(md"Un fois qu'un noeud `v` est retourné par `dequeue!`, peut-il encore satisfaire `d < dist[next]` pour `v == next` par la suite ?", md"Non, les noeuds suivant retournés par `dequeue!` auront une valeur dans `dist` plus élevée donc `d` sera encore plus élevé donc on aura `d > d[v]` durant le reste de l'algorithme.")