Selected Coursework

title icon

The use of Higher Order Logic for automated deduction can be tedious since you have to think like a machine. But it will be full of fun once you start to appreciate the sheer beauty of logic. In this coursework, I specified IDEA, a secret key cryptographic algorithm, in HOL-4 (Kananaskis 3) and proved its correctness with automated machine proofing. Some lovely specifications and deductions are listed below. For detailed information, please refer to the report.

    val IDEA_def = Define `IDEA key =
      let oddkeys = ListToOddKeys (MakeKeys key) ZeroOddKeys in
      let evenkeys = ListToEvenKeys (MakeKeys key) ZeroEvenKeys in
        (IdeaFwd oddkeys evenkeys, IdeaFwd (InverseKeys oddkeys) (ReverseKeys evenkeys))`;
    val IDEA_LEMMA = Q.store_thm
    ("IDEA_LEMMA",
      `!plaintext:Block oddkeys:OddKeySched evenkeys:EvenKeySched.
        IdeaFwd (InverseKeys oddkeys) (ReverseKeys evenkeys) (IdeaFwd oddkeys evenkeys plaintext) = plaintext`,
        SIMP_TAC std_ss [FORALL_ODDKEYSCHED, FORALL_EVENKEYSCHED] THEN
        RESTR_EVAL_TAC [OddRound, EvenRound] THEN
        SIMP_TAC std_ss [OddRound_Inversion, EvenRound_Inversion]);   
val IDEA_CORRECT = Q.store_thm
    ("IDEA_CORRECT",
      `!key plaintext.
        ((encrypt,decrypt) = IDEA key)
        ==>
        (decrypt (encrypt plaintext) = plaintext)`,
        RW_TAC std_ss [IDEA_def,LET_THM,IDEA_LEMMA]);

Since everyone I met told me the famous quote — "Almost every influential person in the modern computer-graphics community either passed through the University of Utah or came into contact with it in some way," I could not help to taking a graphics class. I'm not majored in Computer Graphics, so please bear with me if you find a defect in my homework snapshots below.

shadow mirror
snake

The fun of this class comes from the combination of graphics techniques with methods of studying multidimensional data. I learned a great deal of human vision, color mapping, data representation, volume rendering, etc. Here are some of my visualization samples.

MtHood body
thorax mummy

 

welcome Thank you for visiting Junxing's space.