Sha512.rotr: def of bend-collections-laws-crypto@1.0.0.0 Import: import bend-collections-laws-crypto@1.0.0.0/spec/crypto/sha512.bend as Sha512 Lines 54-58 of bend-collections-laws-crypto@1.0.0.0/spec/crypto/sha512.bend: https://jend.leeeet.dev/read.txt?path=bend-collections-laws-crypto@1.0.0.0/spec/crypto/sha512.bend&start_line=54&end_line=58 import Base import bend-collections-laws-crypto@1.0.0.0/src/crypto/sha512/types.bend as T # FIPS 180-4 section 3.2: ROTR^n(x) = (x >> n) OR (x << 64 - n), 0 < n < 64. def rotr(x: T.Lane, +n: Nat) -> T.Lane: match x: case T.W{+hi, +lo}: rotr_split(hi, lo, n, Nat.is_lt(n, 32n)) Uses (4): https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Nat https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Nat.is_lt https://jend.leeeet.dev/definition.txt?path=bend-collections-laws-crypto@1.0.0.0/spec/crypto/sha512.bend&name=rotr_split https://jend.leeeet.dev/definition.txt?path=bend-collections-laws-crypto@1.0.0.0/src/crypto/sha512/types.bend&name=Lane