From bfc72f45156b7d1f4e596f1262e6e18549b1b7f5 Mon Sep 17 00:00:00 2001
From: Maximilian Stauss <max.stauss@gmail.com>
Date: Sat, 2 Sep 2017 17:28:23 +0200
Subject: [PATCH] add sage extensions

---
 classes/helpers/sage_extensions.py | 20 ++++++++++++++++++++
 1 file changed, 20 insertions(+)
 create mode 100644 classes/helpers/sage_extensions.py

diff --git a/classes/helpers/sage_extensions.py b/classes/helpers/sage_extensions.py
new file mode 100644
index 0000000..6e87232
--- /dev/null
+++ b/classes/helpers/sage_extensions.py
@@ -0,0 +1,20 @@
+from __future__ import absolute_import
+from sage.all import random_matrix, random_vector, random
+
+
+def random_invertible_matrix(finite_field, n):
+    matrix = random_matrix(finite_field, n)
+
+    while not matrix.is_invertible():
+        matrix = random_matrix(finite_field, n)
+
+    return matrix
+
+
+def random_value(finite_field):
+    return random_vector(finite_field, 1)[0]
+
+
+def random_between(j, k):
+    a = int(random() * (k - j + 1)) + j
+    return a
-- 
GitLab