Contact
CoCalc Logo Icon
StoreFeaturesDocsShareSupport News AboutSign UpSign In
| Download
Views: 8800
Kernel: SageMath 9.2
import sys !{sys.executable} -m pip install --user duckdb
ERROR: Can not perform a '--user' install. User site-packages are not visible in this virtualenv. WARNING: You are using pip version 20.2.4; however, version 21.1.1 is available. You should consider upgrading via the '/ext/sage/sage-9.2/local/bin/python3 -m pip install --upgrade pip' command.
import datetime import os import duckdb from boolean_cayley_graphs.bent_function import BentFunction from boolean_cayley_graphs.classification_database_duckdb import * from boolean_cayley_graphs.bent_function_cayley_graph_classification import BentFunctionCayleyGraphClassification
--------------------------------------------------------------------------- ModuleNotFoundError Traceback (most recent call last) <ipython-input-1-ed9d09217f67> in <module> 1 import datetime 2 import os ----> 3 import duckdb 4 5 from boolean_cayley_graphs.bent_function import BentFunction ModuleNotFoundError: No module named 'duckdb'
db_dirname=os.path.join("..","db") sobj_dirname=os.path.join("..","sobj")
rm -f test_p6.duckb
conn = create_database("test_p6.duckdb") conn = create_classification_tables("test_p6.duckdb")
cgc = BentFunctionCayleyGraphClassification.load_mangled("new_p6_4.sobj", dir=sobj_dirname)
cgc = BentFunctionCayleyGraphClassification.load_mangled("p6_4.sobj", dir=sobj_dirname)
cgc.save_mangled("new_p6_4.sobj", dir=sobj_dirname)
for i in range(1,5): print(i) name = "p6_"+str(i) cgc = BentFunctionCayleyGraphClassification.load_mangled(name + ".sobj", dir=sobj_dirname) insert_classification(conn, cgc, name)
cgc.report()
bentf = BentFunction(cgc.algebraic_normal_form) c = select_classification_where_bent_function(conn, bentf) c.report()
c = select_classification_where_name(conn, "p6_1") c.report()
curs = conn.cursor() print(datetime.datetime.now(), "before") curs.execute("SELECT COUNT(ROWID) FROM cayley_graph") print(datetime.datetime.now(), "after") for row in curs: for x in row: print(x)
print(datetime.datetime.now(), "before") curs.execute("SELECT COUNT(ROWID) FROM graph") print(datetime.datetime.now(), "after") for row in curs: for x in row: print(x)
conn.close()
rm -f test_p8.db
conn = create_database("test_p8.db") conn = create_classification_tables("test_p8.db")
for i in range(1,11): name = "p8_"+str(i) cgc = BentFunctionCayleyGraphClassification.load_mangled(name + ".sobj", dir=sobj_dirname) print(datetime.datetime.now(), i) insert_classification(conn, cgc, name) print(datetime.datetime.now())
c8_5 = select_classification_where_name(conn, "p8_5") c8_5.report()
bentf = BentFunction(c8_5.algebraic_normal_form) c = select_classification_where_bent_function(conn, bentf) c.report()
c8_6 = select_classification_where_name(conn, "p8_6") c8_6.report()
curs = conn.cursor() print(datetime.datetime.now(), "before") curs.execute("SELECT COUNT(*) FROM cayley_graph") print(datetime.datetime.now(), "after") for row in curs: for x in row: print(x)
curs = conn.cursor() print(datetime.datetime.now(), "before") curs.execute("SELECT COUNT(ROWID) FROM cayley_graph") print(datetime.datetime.now(), "after") for row in curs: for x in row: print(x)
print(datetime.datetime.now(), "before") curs.execute("SELECT COUNT(ROWID) FROM graph") print(datetime.datetime.now(), "after") for row in curs: for x in row: print(x)
conn.close()
conn = connect_to_database('test_p8.db')
curs = conn.cursor() print(datetime.datetime.now(), "before") curs.execute(""" select name, cayley_graph_index, graph_id, count(*) from matrices, ( select name, bent_function, cayley_graph_index, graph_id from ( select graph_id from cayley_graph group by graph_id having count (graph_id) > 1 ) as repeats natural join cayley_graph natural join bent_function ) as repeats_with_counts where matrices.bent_function = repeats_with_counts.bent_function and matrices.bent_cayley_graph_index = repeats_with_counts.cayley_graph_index group by name, cayley_graph_index, graph_id order by graph_id """) print(datetime.datetime.now(), "after") for row in curs: for x in row: print(x,end=" ") print("")
conn = connect_to_database(os.path.join(db_dirname,"cast128.db"))
curs = conn.cursor() curs.execute("SELECT name FROM bent_function") for row in curs: for x in row: print(x)
exceptions = ["2_01", "2_16", "4_27", "5_16", "5_27", "6_17", "7_15", "7_21"] for suffix in exceptions: exception_name = "cast128_" + suffix print("") print(exception_name + ":") c = select_classification_where_name(conn, exception_name) c.report() matrix_plot(c.bent_cayley_graph_index_matrix,cmap="gist_stern").show()
cgc = BentFunctionCayleyGraphClassification.load_mangled("cast128_5_27.sobj", dir=sobj_dirname) bentf = BentFunction(cgc.algebraic_normal_form) c = select_classification_where_bent_function(conn, bentf) c.report()
print(datetime.datetime.now(), "before") curs.execute("SELECT MAX(ROWID) FROM graph") print(datetime.datetime.now(), "after") for row in curs: for x in row: print(x)
curs = conn.cursor() print(datetime.datetime.now(), "before") curs.execute("SELECT COUNT(ROWID) FROM cayley_graph") print(datetime.datetime.now(), "after") for row in curs: for x in row: print(x)
conn.close()