def conv_hc
bend-collections-laws-crypto@1.0.0.0 · proofs/crypto/curve25519/mulw.bend:78
import bend-collections-laws-crypto@1.0.0.0/proofs/crypto/curve25519/mulw.bend as Mulw
import Base
import bend-collections-laws-crypto@1.0.0.0/proofs/lib/logic.bend as L
import bend-collections-laws-crypto@1.0.0.0/proofs/lib/word.bend as WD
import bend-collections-laws-crypto@1.0.0.0/proofs/crypto/curve25519/limbs.bend as LM
import bend-collections-laws-crypto@1.0.0.0/proofs/crypto/curve25519/poly.bend as PL
78def conv_hc(+one: Nat, +h1: {one == 1n : Nat}, +a: List<&2, U32>, +ha: {LM.okb(32n, a, 255n) == True{} : Bool}) -> {Nat.is_lt(PL.cb(a, Nat.mul(WD.sc(8n, one), WD.sc(8n, one))), WD.sc(32n, one)) == True{} : Bool}:
79 L.subst(Nat, z => {Nat.is_lt(z, WD.sc(32n, one)) == True{} : Bool}, WD.sc(21n, one), PL.cb(a, Nat.mul(WD.sc(8n, one), WD.sc(8n, one))), Equal.sym(Nat, PL.cb(a, Nat.mul(WD.sc(8n, one), WD.sc(8n, one))), WD.sc(21n, one), cb32(one, h1, a, 255n, ha)), LM.sc_lt(10n, 21n, one, h1))