AESBlockBridgeProof.rounds_input_matches: def of qasim-bend-kit@0.1.0.2 Import: import qasim-bend-kit@0.1.0.2/proof/AES_BlockBridgeProof.bend as AESBlockBridgeProof Lines 4-15 of qasim-bend-kit@0.1.0.2/proof/AES_BlockBridgeProof.bend: https://jend.leeeet.dev/read.txt?path=qasim-bend-kit@0.1.0.2/proof/AES_BlockBridgeProof.bend&start_line=4&end_line=15 import Base import qasim-bend-kit@0.1.0.2/libs/AES256GCMCore.bend as Core # Keep fuel symbolic while substituting the certified initial state. def rounds_input_matches(+fuel: Nat, +words: List<&2, U32>, +block: List<&2, U32>, +initial: List<&2, U32>, +expected: List<&2, U32>, initial_match: {Core.aes_add_key(block, words, 0n) == initial : List<&2, U32>}, rounds_match: {Core.aes_rounds.go(fuel, initial, words, 1n) == expected : List<&2, U32>}) -> {Core.aes_rounds.go(fuel, Core.aes_add_key(block, words, 0n), words, 1n) == expected : List<&2, U32>}: Equal.trans(List<&2, U32>, Core.aes_rounds.go(fuel, Core.aes_add_key(block, words, 0n), words, 1n), Core.aes_rounds.go(fuel, initial, words, 1n), expected, Equal.cong(List<&2, U32>, List<&2, U32>, value => Core.aes_rounds.go(fuel, value, words, 1n), Core.aes_add_key(block, words, 0n), initial, initial_match), rounds_match) Uses (7): https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Equal.cong https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Equal.trans https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=List https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Nat https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=U32 https://jend.leeeet.dev/definition.txt?path=qasim-bend-kit@0.1.0.2/libs/AES256GCMCore.bend&name=aes_add_key https://jend.leeeet.dev/definition.txt?path=qasim-bend-kit@0.1.0.2/libs/AES256GCMCore.bend&name=aes_rounds.go