Elliptic curves on binary fields work.
[u/mdw/catacomb] / tests / gf
diff --git a/tests/gf b/tests/gf
new file mode 100644 (file)
index 0000000..0c3987f
--- /dev/null
+++ b/tests/gf
@@ -0,0 +1,70 @@
+# $Id: gf,v 1.1.2.1 2004/03/21 22:39:46 mdw Exp $
+#
+# Test cases for higher-level binary poly arithmetic.
+
+add {
+  0 0 0;
+  1 1 0;
+  1 2 3;
+  4 5 1;
+  0x7fb838a8a0a95046b9d9d9fb4440f7bb
+    0xc1a7bd3b4e853fc92d4e1588719986aa
+    0xbe1f8593ee2c6f8f9497cc7335d97111;
+  0x1e2933215e1c3bba8d2b404d98f43086bfc6198a219b168f214042a5e7df6b21
+    0x1e2933215e1c3bba8d2b404d98f43086bfc6198a219b168f214042a5e7df6b22 3;  
+}
+
+mul {
+  0 0 0;
+  1 0 0;
+  0 1 0;
+  1 1 1;
+  0x7fb838a8a0a95046b9d9d9fb4440f7bb
+    0xc1a7bd3b4e853fc92d4e1588719986aa
+    0x207ccad257b4ed64447158315bfb9aca5cbc5622cfb8fcbb1380eea1bc5c624e;
+  0xc1a7bd3b4e853fc92d4e1588719986aa
+    0x283ed59f1226dcefa7ff0ef87ceff5d5
+    0x1e2933215e1c3bba8d2b404d98f43086bfc6198a219b168f214042a5e7df6b22;
+  0xbe1f8593ee2c6f8f9497cc7335d97111
+    0x35a8e33503b3695be00528f8b82db931
+    0x1e2933215e1c3bba8d2b404d98f43086bfc6198a219b168f214042a5e7df6b21;
+}
+
+sqr {
+  0 0;
+  1 1;
+  3 5;
+  0x7fb838a8a0a95046b9d9d9fb4440f7bb
+    0x1555454005404440440044411100101445415141514155451010100055154545;
+  0x01f081e69f45d3254530766ab98d55fa612c7bb27ea31bc2621d894be9c0b196b3
+    0x0155004001541441551011510504111011050015141444454140511111554414010450154545041554440501455004140401514041104554415000450141144505;
+}
+
+div {
+  0 1 0 0;
+  0x207ccad257b4ed64447158315bfb9aca5cbc5622cfb8fcbb1380eea1bc5c624e
+    0x7fb838a8a0a95046b9d9d9fb4440f7bb
+    0xc1a7bd3b4e853fc92d4e1588719986aa 0;
+  0x6e0e2a282a5411ae76767ed1103deef069ef4ed3a14ff24b
+    0x5385621c6661aaa35a24150d2c08332e
+    0x01c2334cc957151dc7
+    0x398c4111da6d06cdf3d83704ee403101;
+}
+
+gcd {
+  0xc1a7bd3b4e853fc92d4e1588719986aa
+    0xbe1f8593ee2c6f8f9497cc7335d97111
+    3
+    0x283ed59f1226dcefa7ff0ef87ceff5d5
+    0x35a8e33503b3695be00528f8b82db931;
+  0xbe1f8593ee2c6f8f9497cc7335d97111
+    0xc1a7bd3b4e853fc92d4e1588719986aa
+    3
+    0x35a8e33503b3695be00528f8b82db931
+    0x283ed59f1226dcefa7ff0ef87ceff5d5;
+  0x800000000000000000000000000000000000000c9
+    0x3f0eba16286a2d57ea0991168d4994637e8343e36
+    1
+    0xa17e704470d80cb5a78f295db0ce543dda16a169
+    0x3c8c172e24598e90b9542e6b8f6571f54be572b50;
+}