def wsum_le

bend-collections-laws-crypto@1.0.0.0 · proofs/crypto/curve25519/mulw.bend:95

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/num.bend as M

95def wsum_le(+one: Nat, +h1: {one == 1n : Nat}) -> {Nat.is_le(Nat.add(WD.sc(21n, one), Nat.mul(38n, WD.sc(21n, one))), WD.sc(28n, one)) == True{} : Bool}:
96  +a = M.le_add2(WD.sc(21n, one), Nat.mul(38n, WD.sc(21n, one)), WD.sc(27n, one), WD.sc(27n, one), M.sc_mono(6n, 21n, one), m38_27(one, h1))
97  L.subst(Nat, z => {Nat.is_le(Nat.add(WD.sc(21n, one), Nat.mul(38n, WD.sc(21n, one))), z) == True{} : Bool}, Nat.add(WD.sc(27n, one), WD.sc(27n, one)), WD.sc(28n, one), M.sc_dbl(27n, one), a)

Uses (11)

Used by (2)