def decomposed

bendtorch-core@0.1.0.0 · src/autograd/reduce_fiber_proof.bend:96

import bendtorch-core@0.1.0.0/src/autograd/reduce_fiber_proof.bend as ReduceFiberProof
import Base

96def decomposed(+t: Nat, +size: Nat, given: Split<t, size>) -> Decomposed<t, size>:
97  Split{+q, +r, +below, +sum} = given
98  +dq = div_of(t, size, q, r, below, sum)
99  +dr = mod_of(t, size, q, r, below, sum)
100  Decomposed{
101    %Equal.sym(Nat, Nat.mod(t, size), r, dr) : {Nat.is_lt(_, size) == True{} : Bool}
102    below,
103    %Equal.sym(Nat, Nat.div(t, size), q, dq) : {Nat.add(Nat.mul(_, size), Nat.mod(t, size)) == t : Nat}
104    %Equal.sym(Nat, Nat.mod(t, size), r, dr) : {Nat.add(Nat.mul(q, size), _) == t : Nat}
105    sum}

Uses (12)

Used by (1)