10 likes | 93 Views
Purpose Use a computer program to generate problems for Union’s mathematical cryptology course Replaces a current Excel based system that is inflexible and labor intensive The goal is to create a program that is faster, easier to use, and more powerful Problem Generation
E N D
Purpose Use a computer program to generate problems for Union’s mathematical cryptology course Replaces a current Excel based system that is inflexible and labor intensive The goal is to create a program that is faster, easier to use, and more powerful Problem Generation Generate and Test Strategy Example characteristics The number of steps an algorithm takes The minimum and maximum of certain values As varied as there are problem types More complicated problem types Require students to work through sub problems We address complexity by specifying characteristics for the sub problems Satisfying the sub problem characteristics satisfies the main problem Interface (GCD problem example) Problem Types Modular Addition, Subtraction, Multiplication GCD Extended Euclidean Algorithm Modular Exponentiation by Repeated Squares and Square-and-Multiply Chinese Remainder Theorem Applications Evaluating Jacobi Symbols Solovay-Strassen Primality Testing RSA Key Generation Primitive Root Testing Factoring by Pollard’s p-1 Factoring by Dixon’s Random Squares Cryptographic Coin Toss Senior Project - Computer Science - 2006Cryptography Problem GenerationMark WestonAdvisor: Brian PostowClient: Kathryn Lesh (Mathematics) Limit Digits – Behaves Like Students’ Calculators Calculate or Generate Problem Types Inputs as Maximum or [Low, High] Range Desired Characteristics Generate Problem Type Instance Input Desired Characteristics Choose Problem Type Will prompt for sub problems as needed Test Unsuccessful Solution, w/ Full Output Test Successful Test Solution Characteristics Solve Instance Done Did 13 generate and tests before finding solution that fit the desired characteristics