Upload
others
View
1
Download
0
Embed Size (px)
Citation preview
Experimental Mathematics& Computer Algebra
Bruno Salvy
Saint-Flour, June 21-25, 2018
Part II
Short Summary of Part I
Experimental Mathematics
A 3-step process:
1. Compute a high order approximation
(high precision numerical approx., power series truncated to high order, large number of terms in a sequence,…)
2. Guess/conjecture a general formula
3. Prove it
(with the help of a computer)
(using computer-algebra algorithms)
Basic Computer Algebra
Simplification is undecidable.
Tools for conjectures:
OEIS (integer sequences) ISC (real numbers) Padé-Hermite approximants (relations between power series) LLL (relations between numerical approximations).
Fast computation with large integers, polynomials, power series, matrices,…
Exercises for Part I
Ex 1. Identities for Nice Constants1X
i=0
16�i
8i+ j, j = 1, . . . , 8
<latexit sha1_base64="jOmSrHScwIWBUZgX2HYDYh7P7r0=">AAAC4HicbVFNbxMxEHWWrxI+msKRi0UVCUGIdkGCCKlSBQe4UaSmrZRNg9c7zrq1vdv1LG1k7Z0TiCsnzvwQrnDl3+BNWkFTRrL09GZG4/deUihpMQx/t4JLl69cvbZyvX3j5q3bq521Ozs2r0oOQ56rvNxLmAUlDQxRooK9ogSmEwW7yeGrpr/7AUorc7ONswLGmk2NFJIz9NSk8yK2lZ44uRHW+7E0AmcuFiXjLnq27x7LunYD+eigrnvx0VHFUnqwEfXiNEfbG0w662E/nBe9CKJTsL75mn5/TwjZmqy1PvlVXmkwyBWzdhSFBY4dK1FyBXW7G1vwCswUMxcjnOCxTDGr3dOQ67odVxYKxg/ZFEYeGqbBjt3J3IOadj2VUpGX/hmkc/bfFce0tTOd+EnNMLPLvYb8X29UoRiMnTRFhWD44pCoFMWcNobSVJbAUc08YLyUXgrlGfMWore9HZdg4JjnWjOTPoytSEGwSqGr8qJe7gqmpZqdTfwd9ke79K3xN6SgmAFtEl/ozBfEma1U2uZjCVDLjKUWSinOqdmOxq5ZbKS0fYLRcl4Xwc6TfhT2o3c+ypdkUSvkHrlPHpCIPCeb5A3ZIkPCyTfyg/wkv4Ik+Bh8Dr4sRoPW6c5dcq6Cr38AvsfrhQ==</latexit><latexit sha1_base64="5XftniVulWRjwiL6XNqHiLpA+b4=">AAAC4HicbVFNbxMxEHWWrxI+msKRi0UVCUGIdkGCCKlSBQe4UaSmrRSnkdc7m3W79m7tWdrI7J0TiCsnzvwQrnDl3+BNWkFTRrL09GZG4/deXObSYhj+bgWXLl+5em3levvGzVu3Vztrd3ZsURkBQ1HkhdmLuYVcahiixBz2SgNcxTnsxoevmv7uezBWFnobZyWMFZ9qmUrB0VOTzgtmKzVxciOs95nUKc4cSw0XLnq27x7LunYD+eigrnvs6KjiCT3YiHosKdD2BpPOetgP50UvgugUrG++pt/Z5MN0a7LW+uRXRaVAo8i5taMoLHHsuEEpcqjbXWbBK9BTzBxDOMFjmWBWu6ehUHWbVRZKLg75FEYeaq7Ajt3J3IOadj2V0LQw/mmkc/bfFceVtTMV+0nFMbPLvYb8X29UYToYO6nLCkGLxaG0yikWtDGUJtKAwHzmARdGeilUZNxbiN72NjOg4VgUSnGdPGQ2TSDlVY6uKsp6uZtyJfPZ2cTfYX+0S99qf0OmFDOgTeILncWCOLOVStt8LAZqubbUgpHpOTXb0dg1i42Utk8wWs7rIth50o/CfvTOR/mSLGqF3CP3yQMSkedkk7whW2RIBPlGfpCf5FcQBx+Dz8GXxWjQOt25S85V8PUPUn7sww==</latexit><latexit sha1_base64="5XftniVulWRjwiL6XNqHiLpA+b4=">AAAC4HicbVFNbxMxEHWWrxI+msKRi0UVCUGIdkGCCKlSBQe4UaSmrRSnkdc7m3W79m7tWdrI7J0TiCsnzvwQrnDl3+BNWkFTRrL09GZG4/deXObSYhj+bgWXLl+5em3levvGzVu3Vztrd3ZsURkBQ1HkhdmLuYVcahiixBz2SgNcxTnsxoevmv7uezBWFnobZyWMFZ9qmUrB0VOTzgtmKzVxciOs95nUKc4cSw0XLnq27x7LunYD+eigrnvs6KjiCT3YiHosKdD2BpPOetgP50UvgugUrG++pt/Z5MN0a7LW+uRXRaVAo8i5taMoLHHsuEEpcqjbXWbBK9BTzBxDOMFjmWBWu6ehUHWbVRZKLg75FEYeaq7Ajt3J3IOadj2V0LQw/mmkc/bfFceVtTMV+0nFMbPLvYb8X29UYToYO6nLCkGLxaG0yikWtDGUJtKAwHzmARdGeilUZNxbiN72NjOg4VgUSnGdPGQ2TSDlVY6uKsp6uZtyJfPZ2cTfYX+0S99qf0OmFDOgTeILncWCOLOVStt8LAZqubbUgpHpOTXb0dg1i42Utk8wWs7rIth50o/CfvTOR/mSLGqF3CP3yQMSkedkk7whW2RIBPlGfpCf5FcQBx+Dz8GXxWjQOt25S85V8PUPUn7sww==</latexit><latexit sha1_base64="q5KxLpBFplp/oFAhjchS1bJFdzQ=">AAAC4HicbVFNbxMxEHWWr7J8pXDkYhFFQhCiXZAgQqpUwYUbRWraStk08npnE7e2d2vP0kbW3jmBuHLi13CFK/8Gb5IKmjKSpac3Mxq/99JSCotR9LsVXLl67fqNjZvhrdt37t5rb97fs0VlOAx5IQtzkDILUmgYokAJB6UBplIJ++nx26a//xGMFYXexXkJY8WmWuSCM/TUpP06sZWaOLEV1YeJ0DnOXZIbxl388tA9E3XtBuLpUV33kpOTimX0aCvuJVmBtjeYtDtRP1oUvQziFeiQVe1MNluf/SqvFGjkklk7iqMSx44ZFFxCHXYTC16BnuLMJQhneCoynNXuRcRVHSaVhZLxYzaFkYeaKbBjd7bwoKZdT2U0L4x/GumC/XfFMWXtXKV+UjGc2fVeQ/6vN6owH4yd0GWFoPnyUF5JigVtDKWZMMBRzj1g3AgvhfIZ8xaitz1MDGg45YVSTGdPEptnkLNKoquKsl7v5kwJOT+f+Dvsj3bpe+1viJziDGiT+FJnsSTObaXCNh9LgVqmLbVgRH5BzW48ds1iIyX0CcbreV0Ge8/7cdSPP0Sd7TerLDfIQ/KIPCYxeUW2yTuyQ4aEk+/kB/lJfgVp8Cn4Enxdjgat1c4DcqGCb38ANlbp1A==</latexit>
lead to formulas for ⇡, ln 2, ln 3, ln 5, arctan 2, arctan 3,
p2 arctan(1/
p2),
p2 ln(1 +
p2).
<latexit sha1_base64="6JNNI6LNQHzzLkVY0I+aCgokkmE=">AAADC3icbVLNbtNAEN6Yv2L+UjhyWbWKVCgKdqoKjhVcuFGkpq0UW9F6PU5W3V2b3XHbyPIjwDPwDtwQV048AY/BFS6s4wTalJGs+fR9M5r9ZpwUUlgMgh8d79r1Gzdvrd3279y9d/9Bd/3hoc1Lw2HIc5mb44RZkELDEAVKOC4MMJVIOEpOXjf60SkYK3J9gLMCYsUmWmSCM3TUuAtRIZ7RSGo6aNNOm3ZdYoYja4UFbET73mA1qBfUVvh8yTy5IEonbP8V+uPuZtAP5kGvgnABNvc2ou1PhJD98XrnY5TmvFSgkUtm7SgMCowrZlBwCbXfiyw4s3qC0ypCOMczkeK0rnYCrmo/Ki0UjJ+wCYwc1EyBjavz+bpq2nNUSrPcuE8jnbMXWyqmrJ2pxFUqhlO7qjXk/7RRidnLuBK6KBE0bwdlpaSY02b3NBUGOMqZA4wb4axQPmWGcXQX8iMDGs54rhTT6dPIZilkrJRYlXlRr6oZU0LOlhX/it3QHn2r3QyRUZwCbX6O1mfeEsu1UmGbhyVALdOWWjAiu+TmIIyrprGx4rsLhqv3ugoOB/0w6Ifv3ClfkTbWyGOyQbZISF6QPfKG7JMh4eQ7+Ul+kd/eB++z98X72pZ6nUXPI3IpvG9/ALyX+Kk=</latexit><latexit sha1_base64="qeYsROo+1EYDUwIcyBI5alLS3zE=">AAADC3icbVJNb9NAEN2YrxK+UjhyWbWKVChK7VSoHCO4cKNITVspjqL1epysurs2u+O2luWfACf+CTfElRO/oD+DK1xYxwm0KSNZ8/TejGbfjKNMCou+f9Hybty8dfvO2t32vfsPHj7qrD8+tGluOAx5KlNzHDELUmgYokAJx5kBpiIJR9HJm1o/OgVjRaoPsMhgrNhUi0Rwho6adCDMxAsaSk37Tdpt0kuXmOHIGmEBa9F+MFj2qwW1FewsmWeXROmE7b9Cb9LZ9Hv+POh1ECzA5mAj3P58MSj2J+utT2Gc8lyBRi6ZtaPAz3BcMoOCS6ja3dCCM6unOCtDhHM8EzHOqnLX56pqh7mFjPETNoWRg5opsOPyfL6uinYdFdMkNe7TSOfs5ZaSKWsLFblKxXBmV7Wa/J82yjF5NS6FznIEzZtBSS4pprTePY2FAY6ycIBxI5wVymfMMI7uQu3QgIYznirFdPw8tEkMCcsllnmaVatqwpSQxbLiX7Eb2qXvtJshEoozoPXP0fhMG2K5Vips/bAIqGXaUgtGJFfcHATjsm6srbTdBYPVe10Hh/1e4PeC9+6Ur0kTa+Qp2SBbJCB7ZEDekn0yJJz8ID/JL/Lb++h98b5635pSr7XoeUKuhPf9D+X++i8=</latexit><latexit sha1_base64="qeYsROo+1EYDUwIcyBI5alLS3zE=">AAADC3icbVJNb9NAEN2YrxK+UjhyWbWKVChK7VSoHCO4cKNITVspjqL1epysurs2u+O2luWfACf+CTfElRO/oD+DK1xYxwm0KSNZ8/TejGbfjKNMCou+f9Hybty8dfvO2t32vfsPHj7qrD8+tGluOAx5KlNzHDELUmgYokAJx5kBpiIJR9HJm1o/OgVjRaoPsMhgrNhUi0Rwho6adCDMxAsaSk37Tdpt0kuXmOHIGmEBa9F+MFj2qwW1FewsmWeXROmE7b9Cb9LZ9Hv+POh1ECzA5mAj3P58MSj2J+utT2Gc8lyBRi6ZtaPAz3BcMoOCS6ja3dCCM6unOCtDhHM8EzHOqnLX56pqh7mFjPETNoWRg5opsOPyfL6uinYdFdMkNe7TSOfs5ZaSKWsLFblKxXBmV7Wa/J82yjF5NS6FznIEzZtBSS4pprTePY2FAY6ycIBxI5wVymfMMI7uQu3QgIYznirFdPw8tEkMCcsllnmaVatqwpSQxbLiX7Eb2qXvtJshEoozoPXP0fhMG2K5Vips/bAIqGXaUgtGJFfcHATjsm6srbTdBYPVe10Hh/1e4PeC9+6Ur0kTa+Qp2SBbJCB7ZEDekn0yJJz8ID/JL/Lb++h98b5635pSr7XoeUKuhPf9D+X++i8=</latexit><latexit sha1_base64="Vxwkcr4ZSFTWayr8CoHE5dx89+s=">AAADC3icbVJNb9NAEN2Yr2K+UjhyWRFFKh9K7VSoHCu4cKNITVspjqL1epysurs2u+O2keWfAH+GG+LKiV/Az+AKF9axA23KSNY8vTej2TfjOJfCYhD86HjXrt+4eWvjtn/n7r37D7qbDw9tVhgOI57JzBzHzIIUGkYoUMJxboCpWMJRfPKm1o9OwViR6QNc5DBRbKZFKjhDR027EOXiBY2kpsMm7TTppUvMcGSN0MJatB8MlsOqpbbC7RXz9IIonfD8rzCYdnvBIFgGvQrCFvRIG/vTzc6nKMl4oUAjl8zacRjkOCmZQcElVH4/suDM6hnOywjhHM9EgvOq3Am4qvyosJAzfsJmMHZQMwV2Up4v11XRvqMSmmbGfRrpkr3YUjJl7ULFrlIxnNt1rSb/p40LTF9NSqHzAkHzZlBaSIoZrXdPE2GAo1w4wLgRzgrlc2YYR3chPzKg4YxnSjGdPItsmkDKCollkeXVupoyJeRiVfGv2A3t03fazRApxTnQ+udofGYNsVorFbZ+WAzUMm2pBSPSS24OwklZN9ZWfHfBcP1eV8HhcBAGg/B90Nt73d5ygzwmT8gWCcku2SNvyT4ZEU6+k5/kF/ntffQ+e1+8r02p12l7HpFL4X37A4fk9yA=</latexit>
Ex 2. Stanley’s Problem E 2297
Number of monomials in a generic nxn symmetric matrix
Ex 3. Number of Domino Tilings of the Aztec Diamond
Guess & Prove a formula
Part II: Tools for Proofs
A short tour of ``univariate’’ computer algebra
1. Resultants 2. D-finite sequences & series 3. Creative telescoping
1. Resultants
Polynomials as a data-structure
Definition
The Sylvester matrix of A = amxm + · · ·+ a0 2 K[x], (am 6= 0), and of
B = bnxn + · · ·+ b0 2 K[x], (bn 6= 0), is the square matrix of size m+ n
Syl(A,B) =
2
666666666666666664
am am�1 . . . a0
am am�1 . . . a0. . .
. . .. . .
am am�1 . . . a0
bn bn�1 . . . b0
bn bn�1 . . . b0. . .
. . .. . .
bn bn�1 . . . b0
3
777777777777777775
The resultant Res(A,B) of A and B is the determinant of Syl(A,B).
I Definition extends to polynomials with coe�cients in a commutative ring R.
Definition
n rows
m rows
Basic observation
If A = amxm + · · ·+ a0 and B = bnxn + · · ·+ b0, then
2
6666666666664
am am�1 . . . a0. . .
. . .. . .
am am�1 . . . a0
bn bn�1 . . . b0. . .
. . .. . .
bn bn�1 . . . b0
3
7777777777775
⇥
2
6666664
↵m+n�1
...
↵
1
3
7777775=
2
6666666666664
↵n�1A(↵)...
A(↵)
↵m�1B(↵)...
B(↵)
3
7777777777775
Corollary: If A(↵) = B(↵) = 0, then Res (A,B) = 0.
Basic Observation
Example: the discriminant
The discriminant of A is the resultant of A and of its derivative A0.
E.g. for A = ax2 + bx+ c,
Disc(A) = Res (A,A0) = det
2
664
a b c
2a b
2a b
3
775 = �a(b2 � 4ac).
E.g. for A = ax3 + bx+ c,
Disc(A) = Res (A,A0) = det
2
666666664
a 0 b c
a 0 b c
3a 0 b
3a 0 b
3a 0 b
3
777777775
= a2(4b3 + 27ac2).
I The discriminant vanishes when A and A0 have a common root, that is
when A has a multiple root.
Example: the Discriminant
Main properties
• Link with gcd Res (A,B) = 0 if and only if gcd(A,B) is non-constant.
• Elimination property
There exist U, V 2 K[x] not both zero, with deg(U) < n, deg(V ) < m and
such that the following Bezout identity holds:
Res (A,B) = UA+ V B in K \ (A,B).
• Poisson formula
If A = a(x� ↵1) · · · (x� ↵m) and B = b(x� �1) · · · (x� �n), then
Res (A,B) = anbmY
i,j
(↵i � �j) = anY
1im
B(↵i).
• Bezout-Hadamard bound
If A,B 2 K[x, y], then Res y(A,B) is a polynomial in K[x] of degree
degx(A) degy(B) + degx(B) degy(A).
Main Properties
Application: computation with algebraic numbers
Let A =Q
i(x� ↵i) and B =
Qj(x� �j) be polynomials of K[x]. Then
Res x(A(x), B(t� x)) =Y
i,j
(t� (↵i + �j)),
Res x(A(x), B(t+ x)) =Y
i,j
(t� (�j � ↵i)),
Res x(A(x), xdegBB(t/x)) =Y
i,j
(t� ↵i�j),
Res x(A(x), t�B(x)) =Y
i
(t�B(↵i)).
In particular, the set of algebraic numbers is a field.
Proof: Poisson’s formula. E.g., first one:Y
i
B(t� ↵i) =Y
i,j
(t� ↵i � �j).
I The same formulas apply mutatis mutandis to algebraic power series.
Application: Computation with Algebraic Numbers
Exercise for the afternoon:A Nice Number
Guess and prove a simple formula for
sin 2⇡7
sin2 3⇡7
�sin ⇡
7
sin2 2⇡7
+sin 3⇡
7
sin2 ⇡7
.<latexit sha1_base64="RObmBAj89If+4l8HN4zZB2/Jwo8=">AAADMHicbVJNb9NAEF2br9Z8NAWJCwdWVJEQiMhOD+FYAQduFKlpK8UhrNfjZNXdtbU7po0s/wEO/Bh+DZwqrpz4CazjBkjCSJae3ryZ2ZnnpJDCYhh+9/xr12/cvLW1Hdy+c/feTmf3/rHNS8NhyHOZm9OEWZBCwxAFSjgtDDCVSDhJzl43+ZNPYKzI9RHOCxgrNtUiE5yhoyadz3FmGK9iK3SL+nEh6mpQ1wvuQ79l95fsizW94zfEf1o8X2++aDNYVS/FvUlnL+yFi6CbILoCewdv/PAjIeRwsut9idOclwo0csmsHUVhgeOKGRRcQh10YwvuInqKsypGuMBzkeKsrvZDruogLi0UjJ+xKYwc1EyBHVcXi5vWtOuolGa5cZ9GumD/LamYsnauEqdUDGd2PdeQ/8uNSsxejiuhixJB83ZQVkqKOW0MoqkwwFHOHWDcCLcK5TPmLoXOxiA2oOGc50oxnT6LbZZCxkqJVZkX9Xo2Y0rI+VLxV+yGduk77WaIjOIMaPMHtXvmLbE8KxW2eVgC1DJtqQUjspVtjqJx1RQ2qwTOwWjdr01w3O9FYS9676x8RdrYIo/IE/KURGRADshbckiGhJNf3kPvsUf9r/43/9L/0Up976rmAVkJ/+dvFboMUw==</latexit><latexit sha1_base64="ZdoC/jfHX4qtRvefMO2NyaqhoHI=">AAADMHicbVJNb9NAEF2brxI+moLEhQMrqkgIRGSnh3CsgAMHJIrUtJViE63X42TV3bW1O6aNLP8BDtz4I/waOCDElRM/gXXcAEkYydLTmzczO/OcFFJYDIKvnn/p8pWr17aud27cvHV7u7tz58jmpeEw4rnMzUnCLEihYYQCJZwUBphKJBwnpy+a/PF7MFbk+hDnBcSKTbXIBGfoqEn3Q5QZxqvICt2iQVSIuhrW9YJ7N2jZvSX7dE3v+A3xnxZP1psv2gxX1Utxf9LdDfrBIugmCC/A7v5LP4g/fXt9MNnxPkZpzksFGrlk1o7DoMC4YgYFl1B3epEFdxE9xVkVIZzjmUhxVld7AVd1JyotFIyfsimMHdRMgY2r88VNa9pzVEqz3LhPI12w/5ZUTFk7V4lTKoYzu55ryP/lxiVmz+JK6KJE0LwdlJWSYk4bg2gqDHCUcwcYN8KtQvmMuUuhs7ETGdBwxnOlmE4fRzZLIWOlxKrMi3o9mzEl5Hyp+Ct2Q3v0jXYzREZxBrT5g9o985ZYnpUK2zwsAWqZttSCEdnKNodhXDWFzSod52C47tcmOBr0w6AfvnVWPidtbJH75CF5REIyJPvkFTkgI8LJL++e98Cj/mf/i//d/9FKfe+i5i5ZCf/nb60LDg4=</latexit><latexit sha1_base64="ZdoC/jfHX4qtRvefMO2NyaqhoHI=">AAADMHicbVJNb9NAEF2brxI+moLEhQMrqkgIRGSnh3CsgAMHJIrUtJViE63X42TV3bW1O6aNLP8BDtz4I/waOCDElRM/gXXcAEkYydLTmzczO/OcFFJYDIKvnn/p8pWr17aud27cvHV7u7tz58jmpeEw4rnMzUnCLEihYYQCJZwUBphKJBwnpy+a/PF7MFbk+hDnBcSKTbXIBGfoqEn3Q5QZxqvICt2iQVSIuhrW9YJ7N2jZvSX7dE3v+A3xnxZP1psv2gxX1Utxf9LdDfrBIugmCC/A7v5LP4g/fXt9MNnxPkZpzksFGrlk1o7DoMC4YgYFl1B3epEFdxE9xVkVIZzjmUhxVld7AVd1JyotFIyfsimMHdRMgY2r88VNa9pzVEqz3LhPI12w/5ZUTFk7V4lTKoYzu55ryP/lxiVmz+JK6KJE0LwdlJWSYk4bg2gqDHCUcwcYN8KtQvmMuUuhs7ETGdBwxnOlmE4fRzZLIWOlxKrMi3o9mzEl5Hyp+Ct2Q3v0jXYzREZxBrT5g9o985ZYnpUK2zwsAWqZttSCEdnKNodhXDWFzSod52C47tcmOBr0w6AfvnVWPidtbJH75CF5REIyJPvkFTkgI8LJL++e98Cj/mf/i//d/9FKfe+i5i5ZCf/nb60LDg4=</latexit><latexit sha1_base64="AgxEsncO9xmcoZd8DtmhsIANXCo=">AAADMHicbVJNb9NAEF2brxI+moLEhQMrokgIRGSnh3Cs4MKNIjVtpThE6/U4WXV3be2OaSPLf4ADP4ZfAyfElRM/gbWdAEkYydLTmzczO/Mc51JYDIJvnn/t+o2bt/Zud+7cvXd/v3vw4NRmheEw5pnMzHnMLEihYYwCJZznBpiKJZzFF2/q/NlHMFZk+gSXOUwVm2uRCs7QUbPupyg1jJeRFbpFwygXVTmqqob7MGzZwzX7ckvv+B3xnxYvtps3bUab6rV4MOv2gkHQBN0F4Qr0yCqOZwfe5yjJeKFAI5fM2kkY5DgtmUHBJVSdfmTBXUTPcVFGCFd4KRJcVOVhwFXViQoLOeMXbA4TBzVTYKflVXPTivYdldA0M+7TSBv235KSKWuXKnZKxXBht3M1+b/cpMD01bQUOi8QNG8HpYWkmNHaIJoIAxzl0gHGjXCrUL5g7lLobOxEBjRc8kwpppPnkU0TSFkhsSyyvNrOpkwJuVwr/ord0D59p90MkVJcAK3/oHbPrCXWZ6XC1g+LgVqmLbVgRLqxzUk4LevCepWOczDc9msXnA4HYTAI3we9o9crL/fIY/KUPCMhGZEj8pYckzHh5Jf3yHviUf+L/9X/7v9opb63qnlINsL/+RvQvws9</latexit>
Rothstein-Trager resultant
Let A,B 2 K[x] with deg(A) < deg(B) and squarefree monic denominator B.
The rational function F = A/B has simple poles only.
If F =X
i
�ix� �i
, then the residue �i of F at the pole �i equals �i =A(�i)
B0(�i).
Theorem. The residues �i of F are roots of the Rothstein-Trager resultant
R(t) = Res x
�B(x), A(x)� t ·B0(x)
�.
Proof. Poisson formula again: R(t) =Y
i
⇣A(�i)� t ·B0(�i)
⌘.
I This special resultant is useful for symbolic integration of rational functions.
Rothstein-Trager Resultant
Application: diagonal Rook paths
Question: A chess Rook can move any number of squares horizontally or
vertically in one step. How many paths can a Rook take from the lower-left
corner square to the upper-right corner square of an N ⇥N chessboard?
Assume that the Rook moves right or up at each step.
1, 2, 14, 106, 838, 6802, 56190, 470010, . . .
Application: Diagonal Rook Paths
Application: diagonal Rook paths
1, 2, 14, 106, 838, 6802, 56190, 470010, . . .
Diag(F ) = [s0]F (s, x/s) =1
2i⇡
IF (s, x/s)
ds
s, where F =
1
1� s
1�s�
t
1�t
.
By the residue theorem, Diag(F ) is a sum of roots of the Rothstein-Trager
resultant
> F:=1/(1-s/(1-s)-t/(1-t)):
> G:=normal(1/s*subs(t=x/s,F)):
> factor(resultant(denom(G),numer(G)-t*diff(denom(G),s),s));
2 2 2
x (-1 + 2 t) (x - 1) (-x + 36 t x + 1 - 4 t )
Answer: Generating series of diagonal Rook paths is1
2
1 +
r1� x
1� 9x
!.
Diagonal Rook Paths II
Application: certified algebraic guessingGuess + Bound = Proof
Theorem. Suppose A 2 K[[x]] is an algebraic series, and that it is a root of a
(unknown) polynomial in K[x, y] of degree at most d in x and at most n in y.
If
nX
i=0
Qi(x)Ai(x) = O(x2dn), then
nX
i=0
Qi(x)Ai(x) = 0.
Proof: Let P 2 K[x, y] be an irreducible polynomial such that
P (x,A(x)) = 0, and degx(P ) d, degy(P ) n.
• By Hadamard, R(x) = Res y(P,Q) 2 K[x] has degree at most 2dn.
• By elimination, R(x) = UP + V Q for U, V 2 K[x, y] with degy(V ) < n.
• Evaluation at y = A(x) yields
R(x) = U(x,A(x))P (x,A(x))| {z }0
+V (x,A(x))Q(x,A(x))| {z }O(x2dn)
= O(x2dn).
• Thus R = 0, that is gcd(P,Q) 6= 1, and thus P |Q, and A is a root of Q.
Application: Certified Algebraic GuessingGuess+Bound=Proof
Systems of two equations and two unknowns
Geometrically, roots of a polynomial f 2 Q[x] correspond to points on a line.
Roots of polynomials A 2 Q[x, y] correspond to plane curves A = 0.
Let now A and B be in Q[x, y]. Then:
• either the curves A = 0 and B = 0 have a common component,
• or they intersect in a finite number of points.
Systems of 2 Equations in 2 Unknowns
Application: Resultants compute projections
Theorem. Let A = amym + · · · and B = bnyn + · · · be polynomials in Q[x][y].
The roots of Res y(A,B) 2 Q[x] are either the abscissas of points in the
intersection A = B = 0, or common roots of am and bn.
Proof. Elimination property: Res (A,B) = UA+ V B.
Thus A(↵,�) = B(↵,�) = 0 implies Res y(A,B)(↵) = 0
Resultants Compute Projections
Application: implicitization of parametric curves
Task: Given a rational parametrization of a curve
x = A(t), y = B(t), A,B 2 K(t),
compute a non-trivial polynomial in x and y vanishing on the curve.
Recipe: take the resultant in t of numerators of x�A(t) and y �B(t).
Example: for the four-leaved clover (a.k.a. quadrifolium) given by
x =4t(1� t2)2
(1 + t2)3, y =
8t2(1� t2)
(1 + t2)3,
Res t((1+t2)3x�4t(1�t2)2, (1+t2)3y�8t2(1�t2)) = 224�(x2 + y2)3 � 4x2y2
�.
Application: Implicitization of Parametric Curves
2. D-finite Series and Sequences
Differential or Recurrence equations as a data-structure
D-finite Series & Sequences
Definition: A power series f(x) 2 K[[x]] is D-finite over K when its derivatives
generate a finite-dimensional vector space over K(x).
A sequence un is D-finite (or P-recursive) over K when its shifts (un, un+1, . . . )
generate a finite-dimensional vector space over K(n).
equation + init conditions = data structure
About 25% of Sloane’s encyclopedia, 60% of Abramowitz & Stegun
Examples: exp, log, sin, cos, sinh, cosh,
arccos, arccosh, arcsin, arcsinh, arctan,
arctanh, arccot, arccoth, arccsc, arccsch,
arcsec, arcsech, pFq (includes Bessel J , Y , I
andK, Airy Ai and Bi and polylogarithms),
Struve, Weber and Anger functions, the
large class of algebraic functions,. . .
D-finite Series & Sequences
Automatic Proof of Identities
> series(sin(x)^2+cos(x)^2-1,x,4);
O(x4)
Why is this a proof?
1. sin and cos satisfy a 2nd order LDE: y’’+y=0; 2. their squares and their sum satisfy a 3rd order LDE; 3. the constant -1 satisfies y’=0; 4. thus sin2+cos2-1 satisfies a LDE of order at most 4; 5. the Cauchy-Lipschitz theorem concludes.
Proofs of non-linear identities by linear algebra!
f satisfies a LDE⟺
f,f’,f’’,… live in a finite-dim. vector space
Mehler’s identity for Hermite polynomials
1X
n=0
Hn(x)Hn(y)un
n!=
exp⇣
4u(xy�u(x2+y2))1�4u2
⌘
p1� 4u2
1. Definition of Hermite polynomials: recurrence of order 2;
2. Product by linear algebra: Hn+k(x)Hn+k(y)/(n+k)!, k∈ℕgenerated over (x,n) by → recurrence of order at most 4;
3. Translate into differential equation.
QHn(x)Hn(y)
n!,Hn+1(x)Hn(y)
n!,Hn(x)Hn+1(y)
n!,Hn+1(x)Hn+1(y)
n!
Guess & prove continued fractions
arctan x =x
1+13x
2
1+415x
2
1+935x
2
1+ · · ·
1. Taylor expansion produces first terms (easy):
2. Guess a formula (easy): an =n2
4n2 � 13. Prove that the CF with these an converges to arctan.
No human intervention needed. gfun[ContFrac]
Automatic Proof of the Guessed CF (1/2)
arctanx?=
x1
+ · · ·+n2
4n2�1x2
1+ · · ·
1. Compute a linear recurrence for 2. Using the initial conditions, find a smaller-order one; 3. Conclude that
Hn;
Hn = O(xn).
Let Hn := Q2n((x
2 + 1)(Pn/Qn)0 � 1).
Lemma. Let be the nth convergent. ThenPn/Qn
limn!1
(x2 + 1)
✓Pn
Qn
◆0� 1
!= 0 ) lim
n!1
Pn
Qn= arctanx.
Automatic Proof of the Guessed CF (2/2)
1. Pn and Qn satisfy un=un-1+anx2un-2 and Qn(0)≠0.
2. Hn is a polynomial in Pn,Qn and their derivatives.
3. All its shifts Hn+k are linear combinations ofP 0n+iQn+j , Pn+iQ0
n+j , Pn+iPn+j , Qn+iQn+j , i and j in {0, 1}
Hn := Q2n((x
2 + 1)(Pn/Qn)0 � 1).
All these steps are easy to automate.
4. → by linear algebra
Hn+4 = Hn+3 + (· · ·x2 + · · ·x4)Hn+2 + · · ·x4Hn+1 + · · ·x8
Hn
5. Using the initial conditions gives
(2n+ 3)2Hn+1 + (n+ 2)2x2Hn = 0.
Algebraic Series can be Computed Fast
P (X,Y (X)) = 0
Px(X,Y (X)) + Py(X,Y (X)) · Y 0(X) = 0
Y 0(X) = (�PxP�1y mod P )(X,Y (X))
Y (X), Y 0(X), Y 00(X), . . . inVectQ(X)(1, Y, Y2, . . . )
a polynomial
finite dimension
Wanted: the first N Taylor coefficients of Y.
→ a LDE by linear algebra
[Abel1827,Cockle1861,Harley1862,Tannery1875]
P irreducible
Note: F sol LDE
⇒ F(Y(X)) sol LDE
(same argument)
An Olympiad Problem
Question: Let (an) be the sequence with a0 = a1 = 1 satisfying the recurrence
(n+ 3)an+1 = (2n+ 3)an + 3nan�1.
Show that all an is an integer for all n.
Computer-aided solution: Let’s compute the first 10 terms of the sequence:
> rec:=(n+3)*a(n+1)-(2*n+3)*a(n)-3*n*a(n-1): ini:=a(0)=1,a(1)=1:
> pro:=gfun:-rectoproc({rec,ini}, a(n), list);
> pro(10);
[1, 1, 2, 4, 9, 21, 51, 127, 323, 835, 2188]
gfun’s seriestoalgeq command allows to guess that GF is algebraic:
> pol:=gfun:-listtoalgeq(%,y(x))[1];
2 2
1 + (x - 1) y(x) + x y(x)
An Olympiad Problem
Thus it is very likely that y =P
n�0 anxn verifies 1 + (x� 1)y + x2y2 = 0.
By coe�cient extraction, (an) conjecturally verifies the non-linear recurrence
an+2 = an+1 +nX
k=0
ak · an�k. (1)
Clearly (1) implies an 2 N. To prove (1), we proceed the other way around:
we start with P (x, y) = 1 + (x� 1)y + x2y2, and show that it admits a power
series solution whose coe�cients satisfy the same linear recurrence as (an):
> deq:=gfun:-algeqtodiffeq(pol,y(x)):
> recb:=gfun:-diffeqtorec(deq,y(x),b(n));
recb := {(3 + 3 n) b(n) + (2 n + 5) b(n + 1) + (-4 - n) b(n + 2),
b(0) = 1, b(1) = 1}
I In fact,
an =nX
k=0
(�1)n�k
k + 2
✓n
k
◆✓2k + 2
k + 1
◆=
X
j�0
(�1)j✓n+ 1
j
◆✓2n� 3j
n
◆,
(which clearly implies an 2 Z) but how to find algorithmically such a formula?
3. Creative Telescoping
Examples I: hypergeometric summation
•X
k2Z(�1)k
✓a+ b
a+ k
◆✓a+ c
c+ k
◆✓b+ c
b+ k
◆=
(a+ b+ c)!
a!b!c!
• An =nX
k=0
✓n
k
◆2✓n+ k
k
◆2
satisfies the recurrence [Apery78]:
(n+ 1)3An+1 = (34n3 + 51n2 + 27n+ 5)An � n3An�1.
(Neither Cohen nor I had been able to prove this in the intervening two
months [Van der Poorten]).
•nX
k=0
✓n
k
◆2✓n+ k
k
◆2
=nX
k=0
✓n
k
◆✓n+ k
k
◆ kX
j=0
✓n
k
◆3
[Strehl92]
Examples II: Integrals
•Z 1
0
cos(zu)p1� u2
du =
Z +1
1
sin(zu)pu2 � 1
du =⇡
2J0(z);
•Z +1
0xJ1(ax)I1(ax)Y0(x)K0(x) dx = �
ln(1� a4)
2⇡a2[Glasser-Montaldi94];
•1
2⇡i
I (1 + 2xy + 4y2) exp⇣
4x2y2
1+4y2
⌘
yn+1(1 + 4y2)32
dy =Hn(x)
bn/2c![Doetsch30].
Examples III: Diagonals
Definition If f(x1, . . . , xk) =X
i1,i2,...,ik�0
ci1,...,ikxi11 · · ·xik
k2 K[[x1, . . . , xk]], then
its diagonal is Diag(f) =X
n�0
cn,...,nxn2 K[[x]].
• Diagonal k-D rook paths: Diag1
1� x11�x1
� · · ·�xk
1�xk
;
• Hadamard product: F (x)�G(x) =P
nfngnxn = Diag(F (x)G(y));
• Algebraic series [Furstenberg67]: if P (x, S(x)) = 0 and Py(0, 0) 6= 0 then
S(x) = Diag
✓y2
Py(xy, y)
P (xy, y)
◆.
• Apery’s sequence [Dwork80]:
XAnz
n = Diag1
(1� x1)((1� x2)(1� x3)(1� x4)(1� x5)� x1x2x3).
Theorem [Lipshitz88] The diagonal of a rational (or algebraic, or even
D-finite) series is D-finite.
Summation by Creative Telescoping
In :=nX
k=0
✓n
k
◆= 2n.
IF one knows Pascal’s triangle:✓n+ 1
k
◆=
✓n
k
◆+
✓n
k � 1
◆= 2
✓n
k
◆+
✓n
k � 1
◆�
✓n
k
◆,
then summing over k gives
In+1 = 2In.
The initial condition I0 = 1 concludes the proof.
Creative Telescoping for Sums
Fn =X
k
un,k =?
IF one knows A(n, Sn) and B(n, k, Sn, Sk) s.t.
(A(n, Sn) +�kB(n, k, Sn, Sk)) · un,k = 0
(where �k is the di↵erence operator, �k · vn,k = vn,k+1 � vn,k),
then the sum “telescopes”, leading to
A(n, Sn) · Fn = 0.
Zeilberger’s Algorithm [1990]
Input: a hypergeometric term un,k, i.e., un+1,k/un,k and un,k+1/un,k rational
functions in n and k;
Output:
• a linear recurrence (A) satisfied by Fn =P
kun,k
• a certificate (B), s.t. checking the result is easy from
A(n, Sn) · un,k = �kB · un,k.
Example: SIAM flea
1/4
1/4
1/4-ε 1/4+ε
Un,k :=
✓2n
2k
◆✓2k
k
◆✓2n� 2k
n� k
◆✓1
4+ c
◆k ✓1
4� c
◆k 1
42n�2k.
> SumTools[Hypergeometric][Zeilberger](U,n,k,Sn);
[�4n2 + 16n+ 16
�Sn2 +
��4n2 + 32 c2n2 + 96 c2n� 12n+ 72 c2 � 9
�Sn
+ 128 c4n+ 64 c4n2 + 48 c4, ...(BIG certificate)...]
Creative Telescoping for Integrals
I(x) =
Z
⌦u(x, y) dy =?
IF one knows A(x, @x) and B(x, y, @x, @y) s.t.
(A(x, @x) + @yB(x, y, @x, @y)) · u(x, y) = 0,
then the integral “telescopes”, leading to
A(x, @x) · I(x) = 0.
Special Case: Diagonals
Analytically,
Diag(F (x, y)) =1
2⇡i
IF
✓x
y, y
◆dy
y.
On power series,
(A(x, @x) + @yB) ·1
yF
✓x
y, y
◆
| {z }U
= 0 =) A(x, @x) ·DiagF = 0.
Proof:
1. [y�1]U = Diag(f);
2. [y�1]A · U + [y�1]@yB · U = A · [y�1]U .
Extends to more variables: DiagF (x, y, z) obtained from [y�1z�1]U ,
U = 1yzF⇣
x
y, y
z, z⌘, if one finds
(A(x, @x) + @yB(x, y, z, @x, @y, @z) + @zC(x, y, z, @x, @y, @z)) · U = 0.
Provided by Chyzak’s algorithm
Summary of the Exercisesfor this Afternoon
4. A nice number
Guess and prove a simple formula for sin 2⇡7
sin2 3⇡7
�sin ⇡
7
sin2 2⇡7
+sin 3⇡
7
sin2 ⇡7
.<latexit sha1_base64="RObmBAj89If+4l8HN4zZB2/Jwo8=">AAADMHicbVJNb9NAEF2br9Z8NAWJCwdWVJEQiMhOD+FYAQduFKlpK8UhrNfjZNXdtbU7po0s/wEO/Bh+DZwqrpz4CazjBkjCSJae3ryZ2ZnnpJDCYhh+9/xr12/cvLW1Hdy+c/feTmf3/rHNS8NhyHOZm9OEWZBCwxAFSjgtDDCVSDhJzl43+ZNPYKzI9RHOCxgrNtUiE5yhoyadz3FmGK9iK3SL+nEh6mpQ1wvuQ79l95fsizW94zfEf1o8X2++aDNYVS/FvUlnL+yFi6CbILoCewdv/PAjIeRwsut9idOclwo0csmsHUVhgeOKGRRcQh10YwvuInqKsypGuMBzkeKsrvZDruogLi0UjJ+xKYwc1EyBHVcXi5vWtOuolGa5cZ9GumD/LamYsnauEqdUDGd2PdeQ/8uNSsxejiuhixJB83ZQVkqKOW0MoqkwwFHOHWDcCLcK5TPmLoXOxiA2oOGc50oxnT6LbZZCxkqJVZkX9Xo2Y0rI+VLxV+yGduk77WaIjOIMaPMHtXvmLbE8KxW2eVgC1DJtqQUjspVtjqJx1RQ2qwTOwWjdr01w3O9FYS9676x8RdrYIo/IE/KURGRADshbckiGhJNf3kPvsUf9r/43/9L/0Up976rmAVkJ/+dvFboMUw==</latexit><latexit sha1_base64="ZdoC/jfHX4qtRvefMO2NyaqhoHI=">AAADMHicbVJNb9NAEF2brxI+moLEhQMrqkgIRGSnh3CsgAMHJIrUtJViE63X42TV3bW1O6aNLP8BDtz4I/waOCDElRM/gXXcAEkYydLTmzczO/OcFFJYDIKvnn/p8pWr17aud27cvHV7u7tz58jmpeEw4rnMzUnCLEihYYQCJZwUBphKJBwnpy+a/PF7MFbk+hDnBcSKTbXIBGfoqEn3Q5QZxqvICt2iQVSIuhrW9YJ7N2jZvSX7dE3v+A3xnxZP1psv2gxX1Utxf9LdDfrBIugmCC/A7v5LP4g/fXt9MNnxPkZpzksFGrlk1o7DoMC4YgYFl1B3epEFdxE9xVkVIZzjmUhxVld7AVd1JyotFIyfsimMHdRMgY2r88VNa9pzVEqz3LhPI12w/5ZUTFk7V4lTKoYzu55ryP/lxiVmz+JK6KJE0LwdlJWSYk4bg2gqDHCUcwcYN8KtQvmMuUuhs7ETGdBwxnOlmE4fRzZLIWOlxKrMi3o9mzEl5Hyp+Ct2Q3v0jXYzREZxBrT5g9o985ZYnpUK2zwsAWqZttSCEdnKNodhXDWFzSod52C47tcmOBr0w6AfvnVWPidtbJH75CF5REIyJPvkFTkgI8LJL++e98Cj/mf/i//d/9FKfe+i5i5ZCf/nb60LDg4=</latexit><latexit sha1_base64="ZdoC/jfHX4qtRvefMO2NyaqhoHI=">AAADMHicbVJNb9NAEF2brxI+moLEhQMrqkgIRGSnh3CsgAMHJIrUtJViE63X42TV3bW1O6aNLP8BDtz4I/waOCDElRM/gXXcAEkYydLTmzczO/OcFFJYDIKvnn/p8pWr17aud27cvHV7u7tz58jmpeEw4rnMzUnCLEihYYQCJZwUBphKJBwnpy+a/PF7MFbk+hDnBcSKTbXIBGfoqEn3Q5QZxqvICt2iQVSIuhrW9YJ7N2jZvSX7dE3v+A3xnxZP1psv2gxX1Utxf9LdDfrBIugmCC/A7v5LP4g/fXt9MNnxPkZpzksFGrlk1o7DoMC4YgYFl1B3epEFdxE9xVkVIZzjmUhxVld7AVd1JyotFIyfsimMHdRMgY2r88VNa9pzVEqz3LhPI12w/5ZUTFk7V4lTKoYzu55ryP/lxiVmz+JK6KJE0LwdlJWSYk4bg2gqDHCUcwcYN8KtQvmMuUuhs7ETGdBwxnOlmE4fRzZLIWOlxKrMi3o9mzEl5Hyp+Ct2Q3v0jXYzREZxBrT5g9o985ZYnpUK2zwsAWqZttSCEdnKNodhXDWFzSod52C47tcmOBr0w6AfvnVWPidtbJH75CF5REIyJPvkFTkgI8LJL++e98Cj/mf/i//d/9FKfe+i5i5ZCf/nb60LDg4=</latexit><latexit sha1_base64="AgxEsncO9xmcoZd8DtmhsIANXCo=">AAADMHicbVJNb9NAEF2brxI+moLEhQMrokgIRGSnh3Cs4MKNIjVtpThE6/U4WXV3be2OaSPLf4ADP4ZfAyfElRM/gbWdAEkYydLTmzczO/Mc51JYDIJvnn/t+o2bt/Zud+7cvXd/v3vw4NRmheEw5pnMzHnMLEihYYwCJZznBpiKJZzFF2/q/NlHMFZk+gSXOUwVm2uRCs7QUbPupyg1jJeRFbpFwygXVTmqqob7MGzZwzX7ckvv+B3xnxYvtps3bUab6rV4MOv2gkHQBN0F4Qr0yCqOZwfe5yjJeKFAI5fM2kkY5DgtmUHBJVSdfmTBXUTPcVFGCFd4KRJcVOVhwFXViQoLOeMXbA4TBzVTYKflVXPTivYdldA0M+7TSBv235KSKWuXKnZKxXBht3M1+b/cpMD01bQUOi8QNG8HpYWkmNHaIJoIAxzl0gHGjXCrUL5g7lLobOxEBjRc8kwpppPnkU0TSFkhsSyyvNrOpkwJuVwr/ord0D59p90MkVJcAK3/oHbPrCXWZ6XC1g+LgVqmLbVgRLqxzUk4LevCepWOczDc9msXnA4HYTAI3we9o9crL/fIY/KUPCMhGZEj8pYckzHh5Jf3yHviUf+L/9X/7v9opb63qnlINsL/+RvQvws9</latexit>
See also the exercises on resultants.
Pb. Kreweras Excursions
· · ·· ·· · ·
��✓�?
•
•
·
·
·
·
·
·
•
·
·
·
·
·
•
•
•
•
·
·
·
·
•
·
•
·
·
·
·
•
•
•
·
·
·
·
•
•
•
•
·
·
·
·
•
•
•
•
·
·
·
·
·
·
·
·
���✓
���✓
���✓
�
?
?
?���✓
���✓
���✓
����✓
���✓
?
?
?�
?�����
?
K(t;x, y) =1X
n=0
0
@X
i,j�0
k(n; i, j)xiyj
1
A tn
<latexit sha1_base64="70//y1Hq8oQHTSOV2p4HH1cKQFE=">AAAC8HicbVJNb9NAEN2YrxK+UjhyWVFFSlAV2eUAUlUpgguiB4rUtJXiJFqvx/E23rW1O6axLJ+5ceaGuHLi1yBxgj+CxDpuBU0ZaaW3781o9s1skCXCoOv+aDnXrt+4eWvjdvvO3Xv3H3Q2Hx6ZNNccRjxNUn0SMAOJUDBCgQmcZBqYDBI4Dhavav34PWgjUnWIRQYTyeZKRIIztNSs82a/h7vL7aK/55tczkq151ZTX6gIi9JPIMJew4vtU38OblUuemrXXvrLqSimp5WvxTzGPk5VNetsuQN3FfQq8M7B1nD/94chIeRgttn66IcpzyUo5AkzZuy5GU5KplHwBKp21zdgHak5xqWPsMQzEWJclc9cLqu2nxvIGF+wOYwtVEyCmZTL1Uwq2rVUSKNU26OQrth/S0omjSlkYDMlw9isazX5P22cY/RiUgqV5QiKN42iPKGY0nrANBQaOCaFBYxrYa1QHjPNONo1tH0NCs54KiVT4VPfRCFELE+wzNOsWlcjJkVSXGT8TbZNu/Stsj1ERDEGWv+AxmfaEBdjpcLUDwuAGqYMNaBFdMnNoTcp68LaSttu0Fvf11VwtDPw3IH3zq7yJWligzwmT0iPeOQ5GZLX5ICMCCffyHfyk/xytPPJ+ex8aVKd1nnNI3IpnK9/AO578wc=</latexit><latexit sha1_base64="tEdBeVywuwH+n8Bku2S8hvohJDY=">AAAC8HicbVJNaxRBEO0dv+L6tdGjl8awsCshzMSDQggGvYg5GCGbBHZ2l56emp3OTvcM3TVmh2HO3jx7E6+e/Av+BkHwpL9DEOzZSdBsLGh4/V4V1a+qgywRBl33e8u5dPnK1Wsr19s3bt66faezevfApLnmMOBpkuqjgBlIhIIBCkzgKNPAZJDAYTB7XuuHb0Abkap9LDIYSTZVIhKcoaUmnZe7Pdyarxf9bd/kclKqbbca+0JFWJR+AhH2Gl6sH/tTcKty1lNb9tKfj0UxPq58LaYx9nGsqklnzd1wF0EvAu8UrO3s/n779NeXr3uT1dY7P0x5LkEhT5gxQ8/NcFQyjYInULW7vgHrSE0xLn2EOZ6IEOOqfORyWbX93EDG+IxNYWihYhLMqJwvZlLRrqVCGqXaHoV0wf5bUjJpTCEDmykZxmZZq8n/acMcoyejUqgsR1C8aRTlCcWU1gOmodDAMSksYFwLa4XymGnG0a6h7WtQcMJTKZkKH/omCiFieYJlnmbVshoxKZLiLONvsm3apa+U7SEiijHQ+gc0PtOGOBsrFaZ+WADUMGWoAS2ic272vVFZF9ZW2naD3vK+LoKDzQ3P3fBe21U+I02skPvkAekRjzwmO+QF2SMDwsln8o38ID8d7bx3Pjgfm1SndVpzj5wL59MfOXH1lA==</latexit><latexit sha1_base64="tEdBeVywuwH+n8Bku2S8hvohJDY=">AAAC8HicbVJNaxRBEO0dv+L6tdGjl8awsCshzMSDQggGvYg5GCGbBHZ2l56emp3OTvcM3TVmh2HO3jx7E6+e/Av+BkHwpL9DEOzZSdBsLGh4/V4V1a+qgywRBl33e8u5dPnK1Wsr19s3bt66faezevfApLnmMOBpkuqjgBlIhIIBCkzgKNPAZJDAYTB7XuuHb0Abkap9LDIYSTZVIhKcoaUmnZe7Pdyarxf9bd/kclKqbbca+0JFWJR+AhH2Gl6sH/tTcKty1lNb9tKfj0UxPq58LaYx9nGsqklnzd1wF0EvAu8UrO3s/n779NeXr3uT1dY7P0x5LkEhT5gxQ8/NcFQyjYInULW7vgHrSE0xLn2EOZ6IEOOqfORyWbX93EDG+IxNYWihYhLMqJwvZlLRrqVCGqXaHoV0wf5bUjJpTCEDmykZxmZZq8n/acMcoyejUqgsR1C8aRTlCcWU1gOmodDAMSksYFwLa4XymGnG0a6h7WtQcMJTKZkKH/omCiFieYJlnmbVshoxKZLiLONvsm3apa+U7SEiijHQ+gc0PtOGOBsrFaZ+WADUMGWoAS2ic272vVFZF9ZW2naD3vK+LoKDzQ3P3fBe21U+I02skPvkAekRjzwmO+QF2SMDwsln8o38ID8d7bx3Pjgfm1SndVpzj5wL59MfOXH1lA==</latexit><latexit sha1_base64="LIFuzUChHaiBSu6qQ5lFVEnlxtI=">AAAC8HicbVJNb9NAEN2YrxK+UjhyWRFFSlBV2XAAqapUwQXBgSI1baU4idbrcbzN7traHdNYlv8CZ26IKyd+DRIn+Cmsk1TQlJFWevvejGbfzEa5FBZ9/2fLu3b9xs1bW7fbd+7eu/+gs/3w2GaF4TDkmczMacQsSKFhiAIlnOYGmIoknETz141+8hGMFZk+wjKHsWIzLRLBGTpq2nn7ro97i51ysB/aQk0rve/Xk1DoBMsqlJBgf8WLnbNwBn5dzft6z10Gi4koJ2d1aMQsxQFOdD3tdP1dfxn0KgjWoEvWcTjdbn0K44wXCjRyyawdBX6O44oZFFxC3e6FFpwjPcO0ChEWeC5iTOvquc9V3Q4LCznjczaDkYOaKbDjarGcSU17joppkhl3NNIl+29JxZS1pYpcpmKY2k2tIf+njQpMXo4rofMCQfNVo6SQFDPaDJjGwgBHWTrAuBHOCuUpM4yjW0M7NKDhnGdKMR0/DW0SQ8IKiVWR5fWmmjAlZHmR8TfZNe3R99r1EAnFFGjzA1Y+sxVxMVYqbPOwCKhl2lILRiSX3BwF46opbKy03QaDzX1dBcfPdgN/N/jgdw9erXe5RR6TJ6RPAvKCHJA35JAMCSffyQ/yi/z2jPfZ++J9XaV6rXXNI3IpvG9/ABti8Lg=</latexit>
is algebraic.
THE END
(Except for the exercises!)