Open sourcing code I wrote to analyze crytography data generated from Maple to help my girlfriend with her task of finding patterns
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.


One of the open problems in cryptography is factoring cyclotomic polynomials over finite fields. This has been approached by several researchers, A. Tuxanidy, Q. Wang, H. Meyn, L. Wang, etc. Like in all research, a researcher must hypothesize then test their hypothesis. In order to test a hypothesis about factoring cyclotomic polynomials over finite fields, Maple was used to factor specific polynomials and the program, “”, was used to sort the factors into the number of factors of each degree. This sorting algorithm made it a lot easier to work with bigger data, in order to check some hypotheses faster.

===== USAGE

  1. Open up a Terminal that has Python 2.7.x (I use 2.7.5) and change into the directory SixersApplication/MapleCrytography
  2. Type: python --filename=data_good_copy
  3. Observe the produced file, data_good_copy_results


First, open “data_good_copy”. Observe that the polynomial, often very large, has many factors. Within the factors (the parentheses), the terms are sorted by the highest degree, eg: (x^10+x^9+x^8+x^7+x^6+x^5+x^4+x^3+x^2+x+1). But between the factors, there is no order. The task was to find the degree of each factor, and tally up the totals (where it would be nice to store the factors as proof of the count).

Now, open “data_good_copy_results”. Observe the degrees, the count (the number of factors that had such a degree), and the factors themselves. No need for manual headaches.

In the event that the script does not work for you, the results can be seen in “_data_good_copy_results”.