def aes_nat_eq_is_some

qasim-bend-kit@0.1.0.2 · PROOF.bend:417

import qasim-bend-kit@0.1.0.2/PROOF.bend as PROOF
import Base
import qasim-bend-kit@0.1.0.2/libs/AES256GCM.bend as AES

417def aes_nat_eq_is_some(+a: Nat, +b: Nat, evidence: {a == b : Nat}) ->
418    {Maybe.is_some(&0, {a == b : Nat},
419        AES.aes_nat_eq_proof(a, b)) == True{} : Bool}:
420    Equal.trans(Bool,
421        Maybe.is_some(&0, {a == b : Nat}, AES.aes_nat_eq_proof(a, b)),
422        Maybe.is_some(&0, {b == b : Nat}, AES.aes_nat_eq_proof(b, b)),
423        True{},
424        Equal.cong(Nat, Bool,
425            value => Maybe.is_some(&0, {value == b : Nat},
426                AES.aes_nat_eq_proof(value, b)),
427            a, b, evidence),
428        aes_nat_eq_refl_is_some(b))

Uses (7)

Used by (2)