mirror of
https://github.com/GaloisInc/cryptol.git
synced 2024-12-15 10:46:37 +03:00
16 lines
378 B
Plaintext
16 lines
378 B
Plaintext
// Helper synonyms:
|
|
// type Char = [8]
|
|
module Enigma where
|
|
|
|
enigmaLoop : {n}(fin n) => [n]
|
|
enigmaLoop = undefined
|
|
|
|
// Encryption/Decryption
|
|
enigma : {n, m} (fin n, fin m) => ([n], [m]) -> [m]
|
|
enigma (m, pt) = tail [ True | _ <- rcs ]
|
|
where rcs = [ (m, True)] #
|
|
[ (enigmaLoop, True)
|
|
| _ <- pt
|
|
| (_,_) <- rcs
|
|
]
|