This is a suggested timeline to fullfill minimal requirements expected from you at the AFIT project.

During First Practical

You are expected to have understood how to manipulate and use your testing environment. You’re expected to be able to go fully through the documentation that has been made available for you as well as through your repository structure. You should have started filling in the Source/buitlin/builtin.ml file and managed to test it. And you should at least have finished this file at the end of first week.

By Second Practical

You are expected to have started filling the files Source/builtin/basic_arithmetics.ml, Source/builtin/power.ml, Source/builtin/test_primes.ml and Source/builtin/generate_primes.ml. Lab assistants and maths teachers are at your disposal to answer probable questions regarding the Bézout algorithm, modular power function, pseudo-prime testing and file writing functions. The above mentioned files should be finished at the end of second week.

By Third (and last) Practical

You are expected to have started filling the files Source/builtin/ciphers.ml, Source/builtin/break_ciphers.ml and encoding.ml. Once you’re at this stage, you will have already gone through the main conceptual difficutlies.

By Deadline

You are expected to have started the scalable stage: at least fill the file Source/scalable/scalable.ml on bitarray arithmetic operations.

If you want to do more than the minimal requirements

Your priority should be finishing the scalable stage. To fill the other .ml files, copy the code of the corresponding files from the builtin stage and replace the arithmetic operations with those implemented in scalable.ml.

Then, if you have time, you can go into the zarithing stage.