aboutsummaryrefslogtreecommitdiffstats
path: root/buch/chapters/30-endlichekoerper/rechnungen/rs.maxima
diff options
context:
space:
mode:
authorReto <reto.fritsche@ost.ch>2021-04-24 14:11:30 +0200
committerReto <reto.fritsche@ost.ch>2021-04-24 14:11:30 +0200
commitd1a34332748bad563209adafbf3a32f3b6ed8f87 (patch)
treef4a6e7c4b71500aa588cf626d19439729a38824a /buch/chapters/30-endlichekoerper/rechnungen/rs.maxima
parentadded simple code example of mceliece cryptosystem (diff)
parentadd title slides for presentations (diff)
downloadSeminarMatrizen-d1a34332748bad563209adafbf3a32f3b6ed8f87.tar.gz
SeminarMatrizen-d1a34332748bad563209adafbf3a32f3b6ed8f87.zip
Merge remote-tracking branch 'upstream/master' into mceliece
Diffstat (limited to 'buch/chapters/30-endlichekoerper/rechnungen/rs.maxima')
-rw-r--r--buch/chapters/30-endlichekoerper/rechnungen/rs.maxima29
1 files changed, 29 insertions, 0 deletions
diff --git a/buch/chapters/30-endlichekoerper/rechnungen/rs.maxima b/buch/chapters/30-endlichekoerper/rechnungen/rs.maxima
new file mode 100644
index 0000000..9116023
--- /dev/null
+++ b/buch/chapters/30-endlichekoerper/rechnungen/rs.maxima
@@ -0,0 +1,29 @@
+n: X^12 + 12;
+r: 7*X^11 + 4*X^10 + X^9 + 12*X^8 + 2*X^7 + 12*X^6;
+
+q0: 2*X+10;
+q1: 2*X+2;
+q2: 2*X+10;
+
+a0: n;
+b0: r;
+r0: expand(a0 - q0 * b0);
+
+a1: b0;
+b1: r0;
+r1: expand(a1 - q1 * b1);
+
+a2: b1;
+b2: r1;
+r2: expand(a2 - q2 * b2);
+
+K: matrix([1,0],[0,1]);
+
+K: expand(K . matrix([q0,1],[1,0]));
+K: expand(K . matrix([q1,1],[1,0]));
+K: expand(K . matrix([q2,1],[1,0]));
+
+u: 8*X^3+10*X^2+11*X+12;
+v: 4*X^2+11*X+8;
+
+factor(u), modulus:13;