--- /srv/reproducible-results/rbuild-debian/r-b-build.sbibq2A4/b1/giac_1.6.0.41+dfsg1-1_arm64.changes +++ /srv/reproducible-results/rbuild-debian/r-b-build.sbibq2A4/b2/giac_1.6.0.41+dfsg1-1_arm64.changes ├── Files │ @@ -1,7 +1,7 @@ │ │ - 39ef52dda649ea66551955e642a898c7 10613236 doc optional giac-doc_1.6.0.41+dfsg1-1_all.deb │ + f2fdceb40dca4d00a26edbf84c817319 10613832 doc optional giac-doc_1.6.0.41+dfsg1-1_all.deb │ 12ef568186f81f1de98523885e3fbd08 5931996 libdevel optional libgiac-dev_1.6.0.41+dfsg1-1_arm64.deb │ 0f391942e0fb45e45a92ead0257b675e 46072756 debug optional libgiac0-dbgsym_1.6.0.41+dfsg1-1_arm64.deb │ 71b5a7a8fd500f2ea8c671eb7f7b73c8 5125100 libs optional libgiac0_1.6.0.41+dfsg1-1_arm64.deb │ - d9e8187f9c9c9332b1cfc6ef833b6299 9973960 debug optional xcas-dbgsym_1.6.0.41+dfsg1-1_arm64.deb │ - 703637d5ec5d5aa4066cea2882334bb3 1256040 science optional xcas_1.6.0.41+dfsg1-1_arm64.deb │ + b35a0ab76a003bf021fa9b02f2eed130 9975108 debug optional xcas-dbgsym_1.6.0.41+dfsg1-1_arm64.deb │ + 55fedcd70f9e07e9b6f392696e27ad02 1253784 science optional xcas_1.6.0.41+dfsg1-1_arm64.deb ├── giac-doc_1.6.0.41+dfsg1-1_all.deb │ ├── file list │ │ @@ -1,3 +1,3 @@ │ │ -rw-r--r-- 0 0 0 4 2020-12-19 14:42:07.000000 debian-binary │ │ --rw-r--r-- 0 0 0 43856 2020-12-19 14:42:07.000000 control.tar.xz │ │ --rw-r--r-- 0 0 0 10569188 2020-12-19 14:42:07.000000 data.tar.xz │ │ +-rw-r--r-- 0 0 0 43804 2020-12-19 14:42:07.000000 control.tar.xz │ │ +-rw-r--r-- 0 0 0 10569836 2020-12-19 14:42:07.000000 data.tar.xz │ ├── control.tar.xz │ │ ├── control.tar │ │ │ ├── ./md5sums │ │ │ │ ├── ./md5sums │ │ │ │ │┄ Files differ │ ├── data.tar.xz │ │ ├── data.tar │ │ │ ├── file list │ │ │ │ @@ -1915,15 +1915,15 @@ │ │ │ │ -rw-r--r-- 0 root (0) root (0) 0 2020-12-19 14:42:07.000000 ./usr/share/giac/doc/es/html_mtt │ │ │ │ -rw-r--r-- 0 root (0) root (0) 0 2020-12-19 14:42:07.000000 ./usr/share/giac/doc/es/html_vall │ │ │ │ -rw-r--r-- 0 root (0) root (0) 5223 2020-12-19 14:42:07.000000 ./usr/share/giac/doc/es/keywords │ │ │ │ -rw-r--r-- 0 root (0) root (0) 2267 2020-12-19 14:42:07.000000 ./usr/share/giac/doc/es/xcasex │ │ │ │ -rw-r--r-- 0 root (0) root (0) 33039 2020-12-19 14:42:07.000000 ./usr/share/giac/doc/es/xcasmenu │ │ │ │ drwxr-xr-x 0 root (0) root (0) 0 2020-12-19 14:42:07.000000 ./usr/share/giac/doc/fr/ │ │ │ │ -rw-r--r-- 0 root (0) root (0) 1314973 2020-12-19 14:42:07.000000 ./usr/share/giac/doc/fr/algo.html │ │ │ │ --rw-r--r-- 0 root (0) root (0) 1625797 2020-12-19 14:42:07.000000 ./usr/share/giac/doc/fr/algo.pdf │ │ │ │ +-rw-r--r-- 0 root (0) root (0) 1625761 2020-12-19 14:42:07.000000 ./usr/share/giac/doc/fr/algo.pdf │ │ │ │ -rw-r--r-- 0 root (0) root (0) 5341 2020-12-19 14:42:07.000000 ./usr/share/giac/doc/fr/keywords │ │ │ │ -rw-r--r-- 0 root (0) root (0) 929 2020-12-19 14:42:07.000000 ./usr/share/giac/doc/giac.js │ │ │ │ -rw-r--r-- 0 root (0) root (0) 42616 2020-12-19 14:42:07.000000 ./usr/share/giac/doc/giac.tex │ │ │ │ -rw-r--r-- 0 root (0) root (0) 42678 2020-12-19 14:42:07.000000 ./usr/share/giac/doc/giacfr.tex │ │ │ │ -rw-r--r-- 0 root (0) root (0) 1072 2020-12-19 14:42:07.000000 ./usr/share/giac/doc/giacworker.js │ │ │ │ -rw-r--r-- 0 root (0) root (0) 2113587 2020-12-19 14:42:07.000000 ./usr/share/giac/doc/graphtheory-user_manual.pdf │ │ │ │ -rw-r--r-- 0 root (0) root (0) 3058 2020-12-19 14:42:07.000000 ./usr/share/giac/doc/hevea.sty │ │ │ │ @@ -2090,15 +2090,15 @@ │ │ │ │ -rw-r--r-- 0 root (0) root (0) 12949 2020-12-19 14:42:07.000000 ./usr/share/giac/examples/Exemples/prog/conformal.xws │ │ │ │ -rw-r--r-- 0 root (0) root (0) 4279 2020-12-19 14:42:07.000000 ./usr/share/giac/examples/Exemples/prog/exemple.xws │ │ │ │ -rw-r--r-- 0 root (0) root (0) 6007 2020-12-19 14:42:07.000000 ./usr/share/giac/examples/Exemples/prog/gauss_jordan.xws │ │ │ │ drwxr-xr-x 0 root (0) root (0) 0 2020-12-19 14:42:07.000000 ./usr/share/giac/examples/Exemples/spects/ │ │ │ │ -rw-r--r-- 0 root (0) root (0) 8807 2020-12-19 14:42:07.000000 ./usr/share/giac/examples/Exemples/spects/pagerank.xws │ │ │ │ -rw-r--r-- 0 root (0) root (0) 76242 2020-12-19 14:42:07.000000 ./usr/share/giac/examples/Exemples/spects/spec_proie.xws │ │ │ │ -rw-r--r-- 0 root (0) root (0) 11863 2020-12-19 14:42:07.000000 ./usr/share/giac/examples/Exemples/spects/tpi.xws │ │ │ │ --rw-r--r-- 0 root (0) root (0) 24535 2020-12-19 14:42:07.000000 ./usr/share/giac/examples/Makefile │ │ │ │ +-rw-r--r-- 0 root (0) root (0) 24533 2020-12-19 14:42:07.000000 ./usr/share/giac/examples/Makefile │ │ │ │ -rw-r--r-- 0 root (0) root (0) 6621 2020-12-19 14:42:07.000000 ./usr/share/giac/examples/Makefile.am │ │ │ │ -rw-r--r-- 0 root (0) root (0) 24109 2020-12-19 14:42:07.000000 ./usr/share/giac/examples/Makefile.in │ │ │ │ drwxr-xr-x 0 root (0) root (0) 0 2020-12-19 14:42:07.000000 ./usr/share/giac/examples/arit/ │ │ │ │ -rw-r--r-- 0 root (0) root (0) 738 2020-12-19 14:42:07.000000 ./usr/share/giac/examples/arit/codage.cas │ │ │ │ -rw-r--r-- 0 root (0) root (0) 631 2020-12-19 14:42:07.000000 ./usr/share/giac/examples/arit/estpremier │ │ │ │ -rw-r--r-- 0 root (0) root (0) 385 2020-12-19 14:42:07.000000 ./usr/share/giac/examples/arit/horner │ │ │ │ -rw-r--r-- 0 root (0) root (0) 1352 2020-12-19 14:42:07.000000 ./usr/share/giac/examples/arit/inpg.cas │ │ │ ├── ./usr/share/giac/doc/en/cas.ps │ │ │ │ @@ -11,15 +11,15 @@ │ │ │ │ %%EndComments │ │ │ │ %%BeginDefaults │ │ │ │ %%ViewingOrientation: 1 0 0 1 │ │ │ │ %%EndDefaults │ │ │ │ %DVIPSWebPage: (www.radicaleye.com) │ │ │ │ %DVIPSCommandLine: /usr/bin/dvips -o cas.ps cas.dvi │ │ │ │ %DVIPSParameters: dpi=600 │ │ │ │ -%DVIPSSource: TeX output 2024.01.06:2005 │ │ │ │ +%DVIPSSource: TeX output 2024.01.07:2217 │ │ │ │ %%BeginProcSet: tex.pro 0 0 │ │ │ │ %! │ │ │ │ /TeXDict 300 dict def TeXDict begin/N{def}def/B{bind def}N/S{exch}N/X{S │ │ │ │ N}B/A{dup}B/TR{translate}N/isls false N/vsize 11 72 mul N/hsize 8.5 72 │ │ │ │ mul N/landplus90{false}def/@rigin{isls{[0 landplus90{1 -1}{-1 1}ifelse 0 │ │ │ │ 0 0]concat}if 72 Resolution div 72 VResolution div neg scale isls{ │ │ │ │ landplus90{VResolution 72 div vsize mul 0 exch}{Resolution -72 div hsize │ │ │ ├── ./usr/share/giac/doc/en/cascmd_en.ps │ │ │ │ @@ -35,16 +35,16 @@ │ │ │ │ 00000220: 5649 5053 436f 6d6d 616e 644c 696e 653a VIPSCommandLine: │ │ │ │ 00000230: 202f 7573 722f 6269 6e2f 6476 6970 7320 /usr/bin/dvips │ │ │ │ 00000240: 2d6f 2063 6173 636d 645f 656e 2e70 7320 -o cascmd_en.ps │ │ │ │ 00000250: 6361 7363 6d64 5f65 6e2e 6476 690a 2544 cascmd_en.dvi.%D │ │ │ │ 00000260: 5649 5053 5061 7261 6d65 7465 7273 3a20 VIPSParameters: │ │ │ │ 00000270: 6470 693d 3630 300a 2544 5649 5053 536f dpi=600.%DVIPSSo │ │ │ │ 00000280: 7572 6365 3a20 2054 6558 206f 7574 7075 urce: TeX outpu │ │ │ │ -00000290: 7420 3230 3234 2e30 312e 3036 3a32 3030 t 2024.01.06:200 │ │ │ │ -000002a0: 350a 2525 4265 6769 6e50 726f 6353 6574 5.%%BeginProcSet │ │ │ │ +00000290: 7420 3230 3234 2e30 312e 3037 3a32 3231 t 2024.01.07:221 │ │ │ │ +000002a0: 370a 2525 4265 6769 6e50 726f 6353 6574 7.%%BeginProcSet │ │ │ │ 000002b0: 3a20 7465 782e 7072 6f20 3020 300a 2521 : tex.pro 0 0.%! │ │ │ │ 000002c0: 0a2f 5465 5844 6963 7420 3330 3020 6469 ./TeXDict 300 di │ │ │ │ 000002d0: 6374 2064 6566 2054 6558 4469 6374 2062 ct def TeXDict b │ │ │ │ 000002e0: 6567 696e 2f4e 7b64 6566 7d64 6566 2f42 egin/N{def}def/B │ │ │ │ 000002f0: 7b62 696e 6420 6465 667d 4e2f 537b 6578 {bind def}N/S{ex │ │ │ │ 00000300: 6368 7d4e 2f58 7b53 0a4e 7d42 2f41 7b64 ch}N/X{S.N}B/A{d │ │ │ │ 00000310: 7570 7d42 2f54 527b 7472 616e 736c 6174 up}B/TR{translat │ │ │ ├── ./usr/share/giac/doc/en/casinter.ps │ │ │ │ @@ -8,15 +8,15 @@ │ │ │ │ %%DocumentFonts: NimbusRomNo9L-Regu NimbusMonL-Regu NimbusRomNo9L-Medi │ │ │ │ %%+ CMEX10 CMMI10 CMR10 CMSY10 CMR7 CMSY7 CMMI7 CMMI5 │ │ │ │ %%DocumentPaperSizes: Letter │ │ │ │ %%EndComments │ │ │ │ %DVIPSWebPage: (www.radicaleye.com) │ │ │ │ %DVIPSCommandLine: /usr/bin/dvips -o casinter.ps casinter.dvi │ │ │ │ %DVIPSParameters: dpi=600 │ │ │ │ -%DVIPSSource: TeX output 2024.01.06:2005 │ │ │ │ +%DVIPSSource: TeX output 2024.01.07:2217 │ │ │ │ %%BeginProcSet: tex.pro 0 0 │ │ │ │ %! │ │ │ │ /TeXDict 300 dict def TeXDict begin/N{def}def/B{bind def}N/S{exch}N/X{S │ │ │ │ N}B/A{dup}B/TR{translate}N/isls false N/vsize 11 72 mul N/hsize 8.5 72 │ │ │ │ mul N/landplus90{false}def/@rigin{isls{[0 landplus90{1 -1}{-1 1}ifelse 0 │ │ │ │ 0 0]concat}if 72 Resolution div 72 VResolution div neg scale isls{ │ │ │ │ landplus90{VResolution 72 div vsize mul 0 exch}{Resolution -72 div hsize │ │ │ ├── ./usr/share/giac/doc/fr/algo.pdf │ │ │ │ ├── pdftotext {} - │ │ │ │ │┄ error from `pdftotext {} -`: │ │ │ │ │┄ Syntax Error (161): Unknown operator 'pagesize' │ │ │ │ │┄ Syntax Error (163): Unknown operator 'width' │ │ │ │ │┄ Syntax Error (173): Unknown operator 'pt' │ │ │ │ │┄ Syntax Error (175): Unknown operator 'height' │ │ │ │ │┄ Syntax Error (179): Unknown operator 'pt' │ │ │ │ │ @@ -2996,29 +2996,29 @@ │ │ │ │ │ 55 │ │ │ │ │ │ │ │ │ │ Comment générer des clefs │ │ │ │ │ On choisit p et q en utilisant le test de Miller-Rabin. Par exemple │ │ │ │ │ p:=nextprime(randint(10^150));q:=nextprime │ │ │ │ │ (randint(10^200));n:=p*q; │ │ │ │ │ │ │ │ │ │ -70879806254815478494234862381809516151156179882881559668467809365401400595888232016273013392 │ │ │ │ │ +14927412351234593650795740691682815222695163993068168955890327092996445034508733172517120398 │ │ │ │ │ On choisit un couple de clefs privée-publique en utilisant l’identité de Bézout │ │ │ │ │ (ou inverse modulaire). Par exemple │ │ │ │ │ E:=65537; gcd(E,(p-1)*(q-1));d:=iegcd(E, │ │ │ │ │ (p-1)*(q-1))[0]; │ │ │ │ │ │ │ │ │ │ -65537, 1, −42671061233277999903509963471038800083401155978026273029413140133486741766678635877 │ │ │ │ │ +65537, 1, 1110393589991248427284244657069808258785348287232258585593058658567738181384613329580 │ │ │ │ │ Ici, on a pris E de sorte que l’exponentiation modulaire rapide à la puissance E │ │ │ │ │ nécessite peu d’opérations arithmétiques (17), comparé au calcul de la puissance │ │ │ │ │ d, ceci permet de faire l’opération “publique” plus rapidement (encodage ou vérification d’une signature) si le microprocesseur a peu de ressources (par exemple │ │ │ │ │ puce d’une carte bancaire). │ │ │ │ │ a:=randint(123456789);b:=powmod(a,E,n);c:=powmod │ │ │ │ │ (b,d,n); │ │ │ │ │ │ │ │ │ │ -32672179, 117758714047686020165140851327987940556743556832174569060463828083725641202610082511 │ │ │ │ │ +40603840, 822336418987080479783199776349019909031090021305402937360001192044591844767670648040 │ │ │ │ │ Sur quoi repose la sécurité de RSA. │ │ │ │ │ — Difficulté de factoriser n. │ │ │ │ │ Si on arrive à factoriser n, tous les autres calculs se font en temps polynomial en ln(n) donc la clef est compromise. Il faut bien choisir p et q pour │ │ │ │ │ que certains algorithmes de factorisation ne puissent pas s’appliquer. Par │ │ │ │ │ exemple choisir │ │ │ │ │ │ │ │ │ │ p:=nextprime(10^100):;q:=nextprime(10^101 │ │ │ │ │ @@ -3262,23 +3262,23 @@ │ │ │ │ │ 1. À quelle vitesse votre logiciel multiplie-t-il des grands entiers (en fonction │ │ │ │ │ du nombre de chiffres) ? On pourra tester le temps de calcul du produit de │ │ │ │ │ a(a + 1) où a = 10000!, a = 15000!, etc. . Même question pour des polynômes en une variable (à générer par exemple avec symb2poly(randpoly(n)) │ │ │ │ │ ou avec poly1[op(ranm(.))]). │ │ │ │ │ n:=100; p:=symb2poly(randpoly(n)):; time(p*p); │ │ │ │ │  │ │ │ │ │  │ │ │ │ │ -100, "Done", 2.6 × 10−5 , 2.52517518 × 10−5 │ │ │ │ │ +100, "Done", 2.0 × 10−5 , 1.98217098 × 10−5 │ │ │ │ │ 2. Comparer le temps de calcul de an (mod m) par la fonction powmod et │ │ │ │ │ la méthode prendre le reste modulo m après avoir calculé an . │ │ │ │ │ a:=123; n:=456; m:=789; time(powmod(a,n,m │ │ │ │ │ )); time(irem(a^n,m)); │ │ │ │ │  │ │ │ │ │   │ │ │ │ │  │ │ │ │ │ -123, 456, 789, 1.1 × 10−6 , 1.08197781 × 10−6 , 3.4 × 10−6 , 3.28175524 × 10−6 │ │ │ │ │ +123, 456, 789, 5.5 × 10−7 , 7.8482619 × 10−7 , 3.2 × 10−6 , 4.233285 × 10−6 │ │ │ │ │ Programmez la méthode rapide et la méthode lente. Refaites la comparaison. Pour la méthode rapide, programmer aussi la version itérative utilisant │ │ │ │ │ la décomposition en base 2 de l’exposant : on stocke dans une variable │ │ │ │ │ 0 │ │ │ │ │ 1 │ │ │ │ │ k │ │ │ │ │ locale b les puissances successives a2 (mod m), a2 (mod m), ..., a2 │ │ │ │ │ (mod m), ..., on forme an (mod n) en prenant le produit modulo m de │ │ │ │ │ @@ -3309,15 +3309,15 @@ │ │ │ │ │ (c) l’inverse modulaire en ne calculant que ce qui est nécessaire dans l’algorithme de Bézout │ │ │ │ │ (d) les restes chinois │ │ │ │ │ 6. Construire un corps fini de cardinal 128 (GF), puis factoriser le polynôme │ │ │ │ │ x2 − y où y est un élément quelconque du corps fini. Comparer avec la │ │ │ │ │ √ │ │ │ │ │ valeur de y. │ │ │ │ │ GF(2,7); │ │ │ │ │ -GF (2, k 7 + k 5 + k 2 + k + 1, [k, K, g] , undef) │ │ │ │ │ +GF (2, k 7 + k 6 + k 3 + k + 1, [k, K, g] , undef) │ │ │ │ │ 7. Utiliser la commande type ou whattype ou équivalent pour déterminer │ │ │ │ │ la représentation utilisée par le logiciel pour représenter une fraction, un │ │ │ │ │ nombre complexe, un flottant en précision machine, un flottant avec 100 │ │ │ │ │ décimales, la variable x, l’expression sin(x) + 2, la fonction x->sin(x), │ │ │ │ │ une liste, une séquence, un vecteur, une matrice. Essayez d’accéder aux │ │ │ │ │ parties de l’objet pour les objets composites (en utilisant op par exemple). │ │ │ │ │ a:=sin(x)+2; type(a); a[0]; a[1] │ │ │ │ │ @@ -3388,15 +3388,15 @@ │ │ │ │ │ 3.14. EXERCICES SUR TYPES, CALCUL EXACT ET APPROCHÉ, ALGORITHMES DE BASES63 │ │ │ │ │ 14. Que se passe-t-il si on essaie d’appliquer l’algorithme de la puissance rapide pour calculer (x + y + z + 1)k par exemple pour k = 64 ? Calculer le │ │ │ │ │ nombre de termes dans le développement de (x + y + z + 1)n et expliquez. │ │ │ │ │ │ │ │ │ │ time(normal((x+y+z+1)^30)); a:=normal((x+y+z+1 │ │ │ │ │ )^15):; time(normal(a*a)); │ │ │ │ │ │ │ │ │ │ -[0.0055, 0.0052301901] , "Done", [0.011, 0.010594709] │ │ │ │ │ +[0.0032, 0.00699579736] , "Done", [0.011, 0.0206562983] │ │ │ │ │ │ │ │ │ │ 15. Programmation de la méthode de Horner │ │ │ │ │ Il s’agit d’évaluer efficacement un polynôme │ │ │ │ │ │ │ │ │ │ P (X) = an X n + ... + a0 │ │ │ │ │ │ │ │ │ │ en un point. On pose b0 = P (α) et on écrit : │ │ │ │ │ @@ -5672,15 +5672,15 @@ │ │ │ │ │ une localisation certifiée des racines complexes. │ │ │ │ │ Q:=randpoly(5); M:=companion(Q); P,S:=schur(M):; S │ │ │ │ │  │ │ │ │ │ │ │ │ │ │ 0 │ │ │ │ │  1 │ │ │ │ │  │ │ │ │ │ -x5 +55x4 +99x3 −39x2 +26x−97,  │ │ │ │ │ +x5 −62x4 −65x3 +45x2 −89x+12,  │ │ │ │ │  0 │ │ │ │ │  0 │ │ │ │ │ 0 │ │ │ │ │ │ │ │ │ │ 0 │ │ │ │ │ 0 │ │ │ │ │ 1 │ │ │ │ │ @@ -5691,67 +5691,71 @@ │ │ │ │ │ 0 │ │ │ │ │ 0 │ │ │ │ │ 1 │ │ │ │ │ 0 │ │ │ │ │ │ │ │ │ │  │ │ │ │ │  │ │ │ │ │ -0.88969515467064 │ │ │ │ │ -0 97 │ │ │ │ │ - 1.5731032587762 × 10−20 │ │ │ │ │ -0 −26  │ │ │ │ │ +0.20082443755689 │ │ │ │ │ +−0.875763 │ │ │ │ │ +0 −12 │ │ │ │ │ + 0.71755272968286 │ │ │ │ │ +0.4778745 │ │ │ │ │ +0 89  │ │ │ │ │  │ │ │ │ │  │ │ │ │ │  │ │ │ │ │ -0.0 │ │ │ │ │ -0 39  │ │ │ │ │ -, │ │ │ │ │ -"Done", │ │ │ │ │ - │ │ │ │ │  │ │ │ │ │ - │ │ │ │ │ - −1.4950449111858 × 10−23 5.7 │ │ │ │ │ -0 −99 │ │ │ │ │ -1 −55 │ │ │ │ │ -−2.2352018066199 × 10−25 −9. │ │ │ │ │ +0.0 │ │ │ │ │ +1.8513327018 │ │ │ │ │ +0 −45  , "Done",  │ │ │ │ │ + │ │ │ │ │ +0.0 │ │ │ │ │ +0. │ │ │ │ │ +0 65  │ │ │ │ │ +1 62 │ │ │ │ │ +0.0 │ │ │ │ │ +6.2761632871 │ │ │ │ │ │ │ │ │ │ P*S*trn(P); P*trn(P); │ │ │ │ │ 1. cela se fait par une méthode itérative appelée algorithme de Francis. On pose A0 , la forme de │ │ │ │ │ Hessenberg de M , puis on factorise An = QR par des symétries de Householder ou des rotations │ │ │ │ │ de Givens et on définit An+1 = RQ, le calcul de An+1 en fonction de An se fait sans expliciter la │ │ │ │ │ factorisation QR │ │ │ │ │ │ │ │ │ │ 102 │ │ │ │ │ │ │ │ │ │ CHAPITRE 7. LOCALISATION DES RACINES │ │ │ │ │ │ │ │ │ │ -1.5520517843436 × 10−16 │ │ │ │ │ -1.2729211162493 × 10−15 │ │ │ │ │ +6.2223904906463 × 10−16 │ │ │ │ │ +−2.74014812478 × 10−16 │ │ │ │ │ +7.9209851099606 × 10−16 │ │ │ │ │ +−16 │ │ │ │ │  │ │ │ │ │ 0.99999999999999 │ │ │ │ │ -−2.2153363577393 × 10−15 │ │ │ │ │ +−1.8413989239722 × 10 │ │ │ │ │ +1.6045955415089 × 10−15 │ │ │ │ │  │ │ │ │ │ - −4.0834877923948 × 10−15 │ │ │ │ │ + 7.8797855284745 × 10−16 │ │ │ │ │ 0.99999999999999 │ │ │ │ │ +−7.4800562656476 × 10−16 │ │ │ │ │  │ │ │ │ │ - −3.6656615710755 × 10−16 −1.493127372594 × 10−16 │ │ │ │ │ -5.959884152205 × 10−18 │ │ │ │ │ -−1.6749527936981 × 10−17 │ │ │ │ │ - │ │ │ │ │ - │ │ │ │ │ -−1.3347022745485 × 10−15 │ │ │ │ │ -−2.4556503772908 × 10−16 │ │ │ │ │ -−1.3527174941902 × 10−15 │ │ │ │ │ + −1.6358468106883 × 10−15 −6.0762903238389 × 10−16 │ │ │ │ │ 0.99999999999999 │ │ │ │ │ -−5.6955728825007 × 10−17 │ │ │ │ │ +−15 │ │ │ │ │ +−14 │ │ │ │ │ +−3.4757426342744 × 10 │ │ │ │ │ +2.2665049506356 × 10 │ │ │ │ │ +−7.3870538261861 × 10−14 │ │ │ │ │ + │ │ │ │ │ │ │ │ │ │ l:=proot(Q); z:=exact(l[0]); evalf(degree │ │ │ │ │ (Q)*Q(x=z)/Q’(x=z),20) │ │ │ │ │ │ │ │ │ │ -[−53.122372755579, −2.4077907860421, −0.17976580652467 − 0.90557512407653i, −0.179 │ │ │ │ │ +[−1.8418535220983, 0.14271878113606, 0.33934948307972 − 0.78052368212881i, 0.3393494 │ │ │ │ │ │ │ │ │ │ On peut aussi utiliser l’arithmétique d’intervalles pour essayer de trouver │ │ │ │ │ un petit rectangle autour d’une racine approchée qui est conservé par la │ │ │ │ │ méthode de Newton g(x) = x − f (x)/f 0 (x), le théorème du point fixe de │ │ │ │ │ Brouwer assure alors qu’il admet un point fixe qui n’est autre qu’une racine │ │ │ │ │ de g. │ │ │ │ │ │ │ │ │ │ @@ -16051,15 +16055,15 @@ │ │ │ │ │ f(t):=exp(-t^2); n:=1000; a:=0; b:=2.0;l:=ranv │ │ │ │ │ (n,uniformd,a,b):; │ │ │ │ │ 2 │ │ │ │ │ │ │ │ │ │ t 7→ e−t , 1000, 0, 2.0, "Done" │ │ │ │ │ │ │ │ │ │ (b-a)*sum(apply(f,l))/n; int(f(t),t,a,b); │ │ │ │ │ -0.881355551869, 0.882081390762 │ │ │ │ │ +0.863961907378, 0.882081390762 │ │ │ │ │ La convergence en fonction de n est assez lente, on peut l’observer en faisant plusieurs estimations : │ │ │ │ │ │ │ │ │ │ I:=seq(2*sum(apply(f,ranv(n,uniformd,a,b │ │ │ │ │ )))/n,500); │ │ │ │ │ │ │ │ │ │ 20.11. MÉTHODES PROBABILISTES. │ │ │ │ │ │ │ │ │ │ @@ -16089,15 +16093,15 @@ │ │ │ │ │ │ │ │ │ │ 2 │ │ │ │ │ │ │ │ │ │ par exemple ici │ │ │ │ │ │ │ │ │ │ 2*sqrt(int(f(t)^2,t,0,2.)/2-(1/2*int(f(t │ │ │ │ │ ),t,0,2.))^2)/sqrt(n); stddevp(I); │ │ │ │ │ -0.0217983295084, 0.0221434185657 │ │ │ │ │ +0.0217983295084, 0.0224117976455 │ │ │ │ │ mais on ne fait pas ce calcul en pratique (puisqu’il faudrait calculer une intégrale), │ │ │ │ │ √ │ │ │ │ │ on estime l’écart-type σ/ n de la loi normale par l’écart-type de l’échantillon des │ │ │ │ │ estimations stddevp(I). │ │ │ │ │ │ │ │ │ │ histogram(I,0,0.01); plot(normald(mean(I │ │ │ │ │ ),stddevp(I),x),x=0.8..1) │ │ │ │ │ @@ -16111,15 +16115,15 @@ │ │ │ │ │ │ │ │ │ │ 2 │ │ │ │ │ │ │ │ │ │ t 7→ e−t , 1000, 0, 2.0, "Done" │ │ │ │ │ │ │ │ │ │ fl:=apply(f,l):;m:=(b-a)*mean(fl);s:=(b-a │ │ │ │ │ )*stddevp(fl)/sqrt(n);[m-2s,m+2s] │ │ │ │ │ -"Done", 0.886512431803, 0.021714199071, [0.843084033661, 0.929940829945] │ │ │ │ │ +"Done", 0.858349299321, 0.0220134828323, [0.814322333657, 0.902376264986] │ │ │ │ │ Cette méthode converge donc beaucoup moins vite que les quadratures, en dimension 1. Mais elle se généralise très facilement en dimension plus grande en │ │ │ │ │ conservant la même vitesse de convergence alors que le travail nécessaire pour une │ │ │ │ │ méthode de quadrature croit comme une puissance de la dimension, et ne nécessite pas de paramétrer des domaines d’intégration compliqués (il suffit par exemple │ │ │ │ │ d’utiliser la méthode du rejet pour avoir un générateur uniforme dans un domaine │ │ │ │ │ inclus dans un cube). │ │ │ │ │ │ │ │ │ │ 264 │ │ │ │ │ @@ -20051,25 +20055,25 @@ │ │ │ │ │ On retrouve ce cas pour une petite perturbation d’une matrice diagonale, par exemple │ │ │ │ │ │ │ │ │ │ n:=500;A:=2*idn(n)+1e-4*ranm(n,n,uniformd,-1,1 │ │ │ │ │ ):;b:=seq(1,n):; │ │ │ │ │ 500, "Done", "Done" │ │ │ │ │ │ │ │ │ │ time(c:=linsolve(A,b)); │ │ │ │ │ -[0.18, 0.183778148] │ │ │ │ │ +[0.105, 0.179065436] │ │ │ │ │ │ │ │ │ │ time(d:=jacobi(A,b,1e-12,50)); │ │ │ │ │ -[0.14, 0.126419639] │ │ │ │ │ +[0.054, 0.067424848] │ │ │ │ │ │ │ │ │ │ 318 │ │ │ │ │ │ │ │ │ │ CHAPITRE 22. ALGÈBRE LINÉAIRE │ │ │ │ │ │ │ │ │ │ maxnorm(d-c) │ │ │ │ │ -8.17124146124 × 10−13 │ │ │ │ │ +7.81597009336 × 10−13 │ │ │ │ │ Pour n assez grand, la méthode de Jacobi devient plus rapide. Cela se vérifie encore │ │ │ │ │ plus vite si A est une matrice creuse. │ │ │ │ │ Pour Gauss-Seidel, le calcul de M −1 n’est pas effectué, on résoud directement │ │ │ │ │ le système triangulaire M xn+1 = b + N xn soit │ │ │ │ │ (D + L)xn+1 = b − U xn │ │ │ │ │ Gauss-Seidel est moins adapté à la parallélisation que Jacobi. On adapte le programme précédent │ │ │ │ │ seidel(A,b,N,eps):={ │ │ │ │ │ @@ -23047,26 +23051,26 @@ │ │ │ │ │ │ │ │ │ │ exp(a); │ │ │ │ │ 1 + h + h8 order_size (h) │ │ │ │ │ Pour travailler avec un autre corps de base, il suffit de donner des coefficients dans │ │ │ │ │ ce corps. Si la caractéristique du corps est assez grande, les fonctions usuelles sont │ │ │ │ │ aussi applicables. │ │ │ │ │ GF(11,3); │ │ │ │ │ -GF (11, k 3 + k 2 + 3k − 2, [k, K, g] , undef) │ │ │ │ │ +GF (11, k 3 + 4k 2 + k + 3, [k, K, g] , undef) │ │ │ │ │ │ │ │ │ │ 24.8. SÉRIES FORMELLES. │ │ │ │ │ │ │ │ │ │ 363 │ │ │ │ │ │ │ │ │ │ a:=ln(1+g*h+O(h^6)); │ │ │ │ │  │ │ │ │ │  │ │ │ │ │  │ │ │ │ │  │ │ │ │ │ -(g) h+ 5 · g 2 h2 + (−4 · g 2 − g − 3) h3 + (−5 · g 2 − 4 · g − 5) h4 + (−3 · g 2 + 3 · g − 3) h5 +h6 order_size │ │ │ │ │ +(g) h+ 5 · g 2 h2 + (−5 · g 2 − 4 · g − 1) h3 + (−g 2 − 3 · g − 3) h4 + (−3 · g 2 − 5 · g + 2) h5 +h6 order_size │ │ │ │ │ exp(a); │ │ │ │ │ 1 + (g) h + h6 order_size (h) │ │ │ │ │ Les opérations sur les séries sont implémentées sans optimisation particulière, │ │ │ │ │ leur utilisation principale dans Xcas étant le calcul de développement de Taylor ou │ │ │ │ │ asymptotique sur Q. │ │ │ │ │ │ │ │ │ │ 364CHAPITRE 24. DÉVELOPPEMENT DE TAYLOR, ASYMPTOTIQUES, SÉRIES ENTIÈRES, FON │ │ │ │ │ @@ -23500,32 +23504,32 @@ │ │ │ │ │ g;r:=powmod(g,7,p); │ │ │ │ │ 3, 2187 │ │ │ │ │ puis en prenant la puissance 2n−k -ième de r on obtient une racine 2k -ième de 1 qui │ │ │ │ │ permettra de multiplier deux polynômes dont la somme des degrés est strictement │ │ │ │ │ inférieure à 2k , par exemple pour a et b de degrés 5 et 7, on prendra k = 4 │ │ │ │ │ a:=randpoly(5,[]); b:=randpoly(7,[]);w:=powmod │ │ │ │ │ (r,2^16,p); │ │ │ │ │ -[1, −23, 88, −68, 88, 58] , [1, 35, 54, −13, −56, 35, −53, 39] , 5712452 │ │ │ │ │ +[1, 69, −24, 93, 26, 11] , [1, 26, 45, 81, −96, 44, 38, 86] , 5712452 │ │ │ │ │ on allonge a et b avec des 0 pour les amener à la taille 16 = 2k │ │ │ │ │ ar:=[op(a),op(seq(0,(16-size(a))))];br:= │ │ │ │ │ [op(b),op(seq(0,(16-size(b))))] │ │ │ │ │ -[1, −23, 88, −68, 88, 58, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] , [1, 35, 54, −13, −56, 35, −53, 39, 0, 0, 0, 0, 0, 0, 0, 0] │ │ │ │ │ +[1, 69, −24, 93, 26, 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] , [1, 26, 45, 81, −96, 44, 38, 86, 0, 0, 0, 0, 0, 0, 0, 0] │ │ │ │ │ on calcule les transformées de Fourier rapide de a et b │ │ │ │ │ A:=fft(ar,w,p); B:=fft(br,w,p); │ │ │ │ │ │ │ │ │ │ -[144, 5480324, 1661238, 6245988, 4674456, 3710481, 863844, 7210893, 210, 5891685, 3475508, 3291208, 266557 │ │ │ │ │ +[176, 1175082, 1100857, 461850, 621533, 2993437, 6537168, 531608, 7339863, 1311271, 6839975, 2692979, 6718 │ │ │ │ │ puis on fait le produit terme à terme et on applique la transformée de Fourier inverse │ │ │ │ │ C:=irem(A.*B,p); c:=ifft(C,w,p); │ │ │ │ │ │ │ │ │ │ -[6048, 789982, 4495721, 4732781, 3751350, 3141600, 4419305, 3648764, 7308533, 1337269, 1545702, 3018858, 3 │ │ │ │ │ +[39600, 4069173, 3935333, 7206026, 2212344, 505183, 6408655, 2376888, 42330, 1881397, 1657785, 6844441, 51 │ │ │ │ │ On peut comparer avec le produit calculé par Xcas │ │ │ │ │ a*b; │ │ │ │ │ -[1, 12, −663, 1757, 2703, −355, 1880, 10134, −13623, 6868, −5286, 358, 2262] │ │ │ │ │ +[1, 95, 1815, 2655, 6857, −3652, 14367, −4675, 7509, 1558, 9470, 2654, 946] │ │ │ │ │ smod(c,p); │ │ │ │ │ -[1, 12, −663, 1757, 2703, −355, 1880, 10134, −13623, 6868, −5286, 358, 2262, 0, 0, 0] │ │ │ │ │ +[1, 95, 1815, 2655, 6857, −3652, 14367, −4675, 7509, 1558, 9470, 2654, 946, 0, 0, 0] │ │ │ │ │ Bien entendu les tailles de a et b prises ici en exemple sont trop petites pour que │ │ │ │ │ l’algorithme soit efficace. │ │ │ │ │ │ │ │ │ │ 370 │ │ │ │ │ │ │ │ │ │ CHAPITRE 25. LA TRANSFORMÉE DE FOURIER DISCRÈTE. │ │ │ ├── ./usr/share/giac/examples/Makefile │ │ │ │ @@ -288,15 +288,15 @@ │ │ │ │ PATH_SEPARATOR = : │ │ │ │ PDFLATEX = /usr/bin/pdflatex │ │ │ │ POSUB = po │ │ │ │ RANLIB = ranlib │ │ │ │ SAMPLERATE_LIBS = │ │ │ │ SED = /bin/sed │ │ │ │ SET_MAKE = │ │ │ │ -SHELL = /bin/bash │ │ │ │ +SHELL = /bin/sh │ │ │ │ STRIP = strip │ │ │ │ USE_INCLUDED_LIBINTL = no │ │ │ │ USE_NLS = yes │ │ │ │ VERSION = 1.6.0 │ │ │ │ XGETTEXT = /usr/bin/xgettext │ │ │ │ XMKMF = │ │ │ │ X_CFLAGS = ├── xcas_1.6.0.41+dfsg1-1_arm64.deb │ ├── file list │ │ @@ -1,3 +1,3 @@ │ │ -rw-r--r-- 0 0 0 4 2020-12-19 14:42:07.000000 debian-binary │ │ -rw-r--r-- 0 0 0 1672 2020-12-19 14:42:07.000000 control.tar.xz │ │ --rw-r--r-- 0 0 0 1254176 2020-12-19 14:42:07.000000 data.tar.xz │ │ +-rw-r--r-- 0 0 0 1251920 2020-12-19 14:42:07.000000 data.tar.xz │ ├── control.tar.xz │ │ ├── control.tar │ │ │ ├── ./md5sums │ │ │ │ ├── ./md5sums │ │ │ │ │┄ Files differ │ ├── data.tar.xz │ │ ├── data.tar │ │ │ ├── ./usr/bin/icas │ │ │ │┄ File has been modified after NT_GNU_BUILD_ID has been applied. │ │ │ │ ├── readelf --wide --notes {} │ │ │ │ │ @@ -1,8 +1,8 @@ │ │ │ │ │ │ │ │ │ │ Displaying notes found in: .note.gnu.build-id │ │ │ │ │ Owner Data size Description │ │ │ │ │ - GNU 0x00000014 NT_GNU_BUILD_ID (unique build ID bitstring) Build ID: fed986042d802e60b4fe2b66a9027f97c0d2fee3 │ │ │ │ │ + GNU 0x00000014 NT_GNU_BUILD_ID (unique build ID bitstring) Build ID: c2712e65890cd686dcca661916909aa96abe98dd │ │ │ │ │ │ │ │ │ │ Displaying notes found in: .note.ABI-tag │ │ │ │ │ Owner Data size Description │ │ │ │ │ GNU 0x00000010 NT_GNU_ABI_TAG (ABI version tag) OS: Linux, ABI: 3.7.0 │ │ │ │ ├── strings --all --bytes=8 {} │ │ │ │ │ @@ -2745,15 +2745,15 @@ │ │ │ │ │ vector([%.14g,%.14g],[%.14g,%.14g],color=%i):; │ │ │ │ │ vector: Bad argument type │ │ │ │ │ scatterplot(%s,%s,color=%i):; │ │ │ │ │ linear_regression_plot(%s,%s,color=%i):; │ │ │ │ │ scatterplot: Bad argument type │ │ │ │ │ ?Keyboard interrupt │ │ │ │ │ numpy.py │ │ │ │ │ -MicroPython v1.12 on 2024-01-06 │ │ │ │ │ +MicroPython v1.12 on 2024-01-07 │ │ │ │ │ FATAL: uncaught NLR %p │ │ │ │ │ ../py/gc.c │ │ │ │ │ MP_STATE_MEM(gc_pool_start) >= MP_STATE_MEM(gc_finaliser_table_start) + gc_finaliser_table_byte_len │ │ │ │ │ VERIFY_PTR(ptr) │ │ │ │ │ ATB_GET_KIND(block) == AT_HEAD │ │ │ │ │ ATB_GET_KIND(bl) == AT_FREE │ │ │ │ │ GC: total: %u, used: %u, free: %u │ │ │ │ ├── readelf --wide --decompress --hex-dump=.rodata {} │ │ │ │ │ @@ -3413,15 +3413,15 @@ │ │ │ │ │ 0x001b6920 73636174 74657270 6c6f743a 20426164 scatterplot: Bad │ │ │ │ │ 0x001b6930 20617267 756d656e 74207479 70650000 argument type.. │ │ │ │ │ 0x001b6940 182d4454 fb210940 9a999999 9999e93f .-DT.!.@.......? │ │ │ │ │ 0x001b6950 4b657962 6f617264 20696e74 65727275 Keyboard interru │ │ │ │ │ 0x001b6960 70740000 00000000 6e756d70 792e7079 pt......numpy.py │ │ │ │ │ 0x001b6970 00000000 00000000 4d696372 6f507974 ........MicroPyt │ │ │ │ │ 0x001b6980 686f6e20 76312e31 32206f6e 20323032 hon v1.12 on 202 │ │ │ │ │ - 0x001b6990 342d3031 2d30360a 00000000 00000000 4-01-06......... │ │ │ │ │ + 0x001b6990 342d3031 2d30370a 00000000 00000000 4-01-07......... │ │ │ │ │ 0x001b69a0 3e3e3e20 00000000 2e2e2e20 00000000 >>> ....... .... │ │ │ │ │ 0x001b69b0 46415441 4c3a2075 6e636175 67687420 FATAL: uncaught │ │ │ │ │ 0x001b69c0 4e4c5220 25700a00 2e2e2f70 792f6763 NLR %p..../py/gc │ │ │ │ │ 0x001b69d0 2e630000 00000000 4d505f53 54415445 .c......MP_STATE │ │ │ │ │ 0x001b69e0 5f4d454d 2867635f 706f6f6c 5f737461 _MEM(gc_pool_sta │ │ │ │ │ 0x001b69f0 72742920 3e3d204d 505f5354 4154455f rt) >= MP_STATE_ │ │ │ │ │ 0x001b6a00 4d454d28 67635f66 696e616c 69736572 MEM(gc_finaliser │ │ │ │ ├── readelf --wide --decompress --hex-dump=.gnu_debuglink {} │ │ │ │ │┄ error from `readelf --wide --decompress --hex-dump=.gnu_debuglink {}`: │ │ │ │ │┄ readelf: Error: Unable to find program interpreter name │ │ │ │ │┄ readelf: Error: no .dynamic section in the dynamic segment │ │ │ │ │ @@ -1,7 +1,7 @@ │ │ │ │ │ │ │ │ │ │ Hex dump of section '.gnu_debuglink': │ │ │ │ │ - 0x00000000 64393836 30343264 38303265 36306234 d986042d802e60b4 │ │ │ │ │ - 0x00000010 66653262 36366139 30323766 39376330 fe2b66a9027f97c0 │ │ │ │ │ - 0x00000020 64326665 65332e64 65627567 00000000 d2fee3.debug.... │ │ │ │ │ - 0x00000030 cbf1ca3d ...= │ │ │ │ │ + 0x00000000 37313265 36353839 30636436 38366463 712e65890cd686dc │ │ │ │ │ + 0x00000010 63613636 31393136 39303961 61393661 ca661916909aa96a │ │ │ │ │ + 0x00000020 62653938 64642e64 65627567 00000000 be98dd.debug.... │ │ │ │ │ + 0x00000030 7eb02dc4 ~.-. │ │ │ ├── ./usr/bin/xcas │ │ │ │┄ File has been modified after NT_GNU_BUILD_ID has been applied. │ │ │ │ ├── readelf --wide --notes {} │ │ │ │ │ @@ -1,8 +1,8 @@ │ │ │ │ │ │ │ │ │ │ Displaying notes found in: .note.gnu.build-id │ │ │ │ │ Owner Data size Description │ │ │ │ │ - GNU 0x00000014 NT_GNU_BUILD_ID (unique build ID bitstring) Build ID: 700b55b0e0856ac36c0f2e5dbcb2767424378da6 │ │ │ │ │ + GNU 0x00000014 NT_GNU_BUILD_ID (unique build ID bitstring) Build ID: a04d9b5efe37e3d7898399003340f127230fc477 │ │ │ │ │ │ │ │ │ │ Displaying notes found in: .note.ABI-tag │ │ │ │ │ Owner Data size Description │ │ │ │ │ GNU 0x00000010 NT_GNU_ABI_TAG (ABI version tag) OS: Linux, ABI: 3.7.0 │ │ │ │ ├── strings --all --bytes=8 {} │ │ │ │ │ @@ -3066,15 +3066,15 @@ │ │ │ │ │ vector([%.14g,%.14g],[%.14g,%.14g],color=%i):; │ │ │ │ │ vector: Bad argument type │ │ │ │ │ scatterplot(%s,%s,color=%i):; │ │ │ │ │ linear_regression_plot(%s,%s,color=%i):; │ │ │ │ │ scatterplot: Bad argument type │ │ │ │ │ ?Keyboard interrupt │ │ │ │ │ numpy.py │ │ │ │ │ -MicroPython v1.12 on 2024-01-06 │ │ │ │ │ +MicroPython v1.12 on 2024-01-07 │ │ │ │ │ FATAL: uncaught NLR %p │ │ │ │ │ ../py/gc.c │ │ │ │ │ MP_STATE_MEM(gc_pool_start) >= MP_STATE_MEM(gc_finaliser_table_start) + gc_finaliser_table_byte_len │ │ │ │ │ VERIFY_PTR(ptr) │ │ │ │ │ ATB_GET_KIND(block) == AT_HEAD │ │ │ │ │ ATB_GET_KIND(bl) == AT_FREE │ │ │ │ │ GC: total: %u, used: %u, free: %u │ │ │ │ ├── readelf --wide --decompress --hex-dump=.rodata {} │ │ │ │ │ @@ -4115,15 +4115,15 @@ │ │ │ │ │ 0x001cddf0 73636174 74657270 6c6f743a 20426164 scatterplot: Bad │ │ │ │ │ 0x001cde00 20617267 756d656e 74207479 70650000 argument type.. │ │ │ │ │ 0x001cde10 182d4454 fb210940 9a999999 9999e93f .-DT.!.@.......? │ │ │ │ │ 0x001cde20 4b657962 6f617264 20696e74 65727275 Keyboard interru │ │ │ │ │ 0x001cde30 70740000 00000000 6e756d70 792e7079 pt......numpy.py │ │ │ │ │ 0x001cde40 00000000 00000000 4d696372 6f507974 ........MicroPyt │ │ │ │ │ 0x001cde50 686f6e20 76312e31 32206f6e 20323032 hon v1.12 on 202 │ │ │ │ │ - 0x001cde60 342d3031 2d30360a 00000000 00000000 4-01-06......... │ │ │ │ │ + 0x001cde60 342d3031 2d30370a 00000000 00000000 4-01-07......... │ │ │ │ │ 0x001cde70 3e3e3e20 00000000 2e2e2e20 00000000 >>> ....... .... │ │ │ │ │ 0x001cde80 46415441 4c3a2075 6e636175 67687420 FATAL: uncaught │ │ │ │ │ 0x001cde90 4e4c5220 25700a00 2e2e2f70 792f6763 NLR %p..../py/gc │ │ │ │ │ 0x001cdea0 2e630000 00000000 4d505f53 54415445 .c......MP_STATE │ │ │ │ │ 0x001cdeb0 5f4d454d 2867635f 706f6f6c 5f737461 _MEM(gc_pool_sta │ │ │ │ │ 0x001cdec0 72742920 3e3d204d 505f5354 4154455f rt) >= MP_STATE_ │ │ │ │ │ 0x001cded0 4d454d28 67635f66 696e616c 69736572 MEM(gc_finaliser │ │ │ │ ├── readelf --wide --decompress --hex-dump=.gnu_debuglink {} │ │ │ │ │┄ error from `readelf --wide --decompress --hex-dump=.gnu_debuglink {}`: │ │ │ │ │┄ readelf: Error: Unable to find program interpreter name │ │ │ │ │┄ readelf: Error: no .dynamic section in the dynamic segment │ │ │ │ │ @@ -1,7 +1,7 @@ │ │ │ │ │ │ │ │ │ │ Hex dump of section '.gnu_debuglink': │ │ │ │ │ - 0x00000000 30623535 62306530 38353661 63333663 0b55b0e0856ac36c │ │ │ │ │ - 0x00000010 30663265 35646263 62323736 37343234 0f2e5dbcb2767424 │ │ │ │ │ - 0x00000020 33373864 61362e64 65627567 00000000 378da6.debug.... │ │ │ │ │ - 0x00000030 23d8ee1d #... │ │ │ │ │ + 0x00000000 34643962 35656665 33376533 64373839 4d9b5efe37e3d789 │ │ │ │ │ + 0x00000010 38333939 30303333 34306631 32373233 8399003340f12723 │ │ │ │ │ + 0x00000020 30666334 37372e64 65627567 00000000 0fc477.debug.... │ │ │ │ │ + 0x00000030 d44a732b .Js+ ├── xcas-dbgsym_1.6.0.41+dfsg1-1_arm64.deb │ ├── file list │ │ @@ -1,3 +1,3 @@ │ │ -rw-r--r-- 0 0 0 4 2020-12-19 14:42:07.000000 debian-binary │ │ -rw-r--r-- 0 0 0 696 2020-12-19 14:42:07.000000 control.tar.xz │ │ --rw-r--r-- 0 0 0 9973072 2020-12-19 14:42:07.000000 data.tar.xz │ │ +-rw-r--r-- 0 0 0 9974220 2020-12-19 14:42:07.000000 data.tar.xz │ ├── control.tar.xz │ │ ├── control.tar │ │ │ ├── ./control │ │ │ │ @@ -5,8 +5,8 @@ │ │ │ │ Architecture: arm64 │ │ │ │ Maintainer: Debian Science Maintainers │ │ │ │ Installed-Size: 10576 │ │ │ │ Depends: xcas (= 1.6.0.41+dfsg1-1) │ │ │ │ Section: debug │ │ │ │ Priority: optional │ │ │ │ Description: debug symbols for xcas │ │ │ │ -Build-Ids: 700b55b0e0856ac36c0f2e5dbcb2767424378da6 cdac7e3238121fae59880d2e38252a0dc0765ab8 fed986042d802e60b4fe2b66a9027f97c0d2fee3 │ │ │ │ +Build-Ids: a04d9b5efe37e3d7898399003340f127230fc477 c2712e65890cd686dcca661916909aa96abe98dd cdac7e3238121fae59880d2e38252a0dc0765ab8 │ │ │ ├── ./md5sums │ │ │ │ ├── ./md5sums │ │ │ │ │┄ Files differ │ │ │ │ ├── line order │ │ │ │ │ @@ -1,4 +1,4 @@ │ │ │ │ │ -usr/lib/debug/.build-id/70/0b55b0e0856ac36c0f2e5dbcb2767424378da6.debug │ │ │ │ │ +usr/lib/debug/.build-id/a0/4d9b5efe37e3d7898399003340f127230fc477.debug │ │ │ │ │ +usr/lib/debug/.build-id/c2/712e65890cd686dcca661916909aa96abe98dd.debug │ │ │ │ │ usr/lib/debug/.build-id/cd/ac7e3238121fae59880d2e38252a0dc0765ab8.debug │ │ │ │ │ -usr/lib/debug/.build-id/fe/d986042d802e60b4fe2b66a9027f97c0d2fee3.debug │ │ │ │ │ usr/lib/debug/.dwz/aarch64-linux-gnu/xcas.debug │ ├── data.tar.xz │ │ ├── data.tar │ │ │ ├── file list │ │ │ │ @@ -1,17 +1,17 @@ │ │ │ │ drwxr-xr-x 0 root (0) root (0) 0 2020-12-19 14:42:07.000000 ./ │ │ │ │ drwxr-xr-x 0 root (0) root (0) 0 2020-12-19 14:42:07.000000 ./usr/ │ │ │ │ drwxr-xr-x 0 root (0) root (0) 0 2020-12-19 14:42:07.000000 ./usr/lib/ │ │ │ │ drwxr-xr-x 0 root (0) root (0) 0 2020-12-19 14:42:07.000000 ./usr/lib/debug/ │ │ │ │ drwxr-xr-x 0 root (0) root (0) 0 2020-12-19 14:42:07.000000 ./usr/lib/debug/.build-id/ │ │ │ │ -drwxr-xr-x 0 root (0) root (0) 0 2020-12-19 14:42:07.000000 ./usr/lib/debug/.build-id/70/ │ │ │ │ --rw-r--r-- 0 root (0) root (0) 5054880 2020-12-19 14:42:07.000000 ./usr/lib/debug/.build-id/70/0b55b0e0856ac36c0f2e5dbcb2767424378da6.debug │ │ │ │ +drwxr-xr-x 0 root (0) root (0) 0 2020-12-19 14:42:07.000000 ./usr/lib/debug/.build-id/a0/ │ │ │ │ +-rw-r--r-- 0 root (0) root (0) 5054880 2020-12-19 14:42:07.000000 ./usr/lib/debug/.build-id/a0/4d9b5efe37e3d7898399003340f127230fc477.debug │ │ │ │ +drwxr-xr-x 0 root (0) root (0) 0 2020-12-19 14:42:07.000000 ./usr/lib/debug/.build-id/c2/ │ │ │ │ +-rw-r--r-- 0 root (0) root (0) 4819120 2020-12-19 14:42:07.000000 ./usr/lib/debug/.build-id/c2/712e65890cd686dcca661916909aa96abe98dd.debug │ │ │ │ drwxr-xr-x 0 root (0) root (0) 0 2020-12-19 14:42:07.000000 ./usr/lib/debug/.build-id/cd/ │ │ │ │ -rw-r--r-- 0 root (0) root (0) 55312 2020-12-19 14:42:07.000000 ./usr/lib/debug/.build-id/cd/ac7e3238121fae59880d2e38252a0dc0765ab8.debug │ │ │ │ -drwxr-xr-x 0 root (0) root (0) 0 2020-12-19 14:42:07.000000 ./usr/lib/debug/.build-id/fe/ │ │ │ │ --rw-r--r-- 0 root (0) root (0) 4819120 2020-12-19 14:42:07.000000 ./usr/lib/debug/.build-id/fe/d986042d802e60b4fe2b66a9027f97c0d2fee3.debug │ │ │ │ drwxr-xr-x 0 root (0) root (0) 0 2020-12-19 14:42:07.000000 ./usr/lib/debug/.dwz/ │ │ │ │ drwxr-xr-x 0 root (0) root (0) 0 2020-12-19 14:42:07.000000 ./usr/lib/debug/.dwz/aarch64-linux-gnu/ │ │ │ │ -rw-r--r-- 0 root (0) root (0) 883400 2020-12-19 14:42:07.000000 ./usr/lib/debug/.dwz/aarch64-linux-gnu/xcas.debug │ │ │ │ drwxr-xr-x 0 root (0) root (0) 0 2020-12-19 14:42:07.000000 ./usr/share/ │ │ │ │ drwxr-xr-x 0 root (0) root (0) 0 2020-12-19 14:42:07.000000 ./usr/share/doc/ │ │ │ │ lrwxrwxrwx 0 root (0) root (0) 0 2020-12-19 14:42:07.000000 ./usr/share/doc/xcas-dbgsym -> xcas │ │ │ │ --- ./usr/lib/debug/.build-id/70/0b55b0e0856ac36c0f2e5dbcb2767424378da6.debug │ │ │ ├── +++ ./usr/lib/debug/.build-id/a0/4d9b5efe37e3d7898399003340f127230fc477.debug │ │ │ │┄ File has been modified after NT_GNU_BUILD_ID has been applied. │ │ │ │┄ Files 0% similar despite different names │ │ │ │ ├── readelf --wide --notes {} │ │ │ │ │┄ error from `readelf --wide --notes {}`: │ │ │ │ │┄ readelf: Error: Unable to find program interpreter name │ │ │ │ │ @@ -1,8 +1,8 @@ │ │ │ │ │ │ │ │ │ │ Displaying notes found in: .note.gnu.build-id │ │ │ │ │ Owner Data size Description │ │ │ │ │ - GNU 0x00000014 NT_GNU_BUILD_ID (unique build ID bitstring) Build ID: 700b55b0e0856ac36c0f2e5dbcb2767424378da6 │ │ │ │ │ + GNU 0x00000014 NT_GNU_BUILD_ID (unique build ID bitstring) Build ID: a04d9b5efe37e3d7898399003340f127230fc477 │ │ │ │ │ │ │ │ │ │ Displaying notes found in: .note.ABI-tag │ │ │ │ │ Owner Data size Description │ │ │ │ │ GNU 0x00000010 NT_GNU_ABI_TAG (ABI version tag) OS: Linux, ABI: 3.7.0 │ │ │ │ --- ./usr/lib/debug/.build-id/fe/d986042d802e60b4fe2b66a9027f97c0d2fee3.debug │ │ │ ├── +++ ./usr/lib/debug/.build-id/c2/712e65890cd686dcca661916909aa96abe98dd.debug │ │ │ │┄ File has been modified after NT_GNU_BUILD_ID has been applied. │ │ │ │┄ Files 0% similar despite different names │ │ │ │ ├── readelf --wide --notes {} │ │ │ │ │┄ error from `readelf --wide --notes {}`: │ │ │ │ │┄ readelf: Error: Unable to find program interpreter name │ │ │ │ │ @@ -1,8 +1,8 @@ │ │ │ │ │ │ │ │ │ │ Displaying notes found in: .note.gnu.build-id │ │ │ │ │ Owner Data size Description │ │ │ │ │ - GNU 0x00000014 NT_GNU_BUILD_ID (unique build ID bitstring) Build ID: fed986042d802e60b4fe2b66a9027f97c0d2fee3 │ │ │ │ │ + GNU 0x00000014 NT_GNU_BUILD_ID (unique build ID bitstring) Build ID: c2712e65890cd686dcca661916909aa96abe98dd │ │ │ │ │ │ │ │ │ │ Displaying notes found in: .note.ABI-tag │ │ │ │ │ Owner Data size Description │ │ │ │ │ GNU 0x00000010 NT_GNU_ABI_TAG (ABI version tag) OS: Linux, ABI: 3.7.0