def div_block
bendtorch@1.3.0.0 · PROOF.bend:833
import bendtorch@1.3.0.0/PROOF.bend as PROOF
import Base
import bend-ml-nat-lemmas@0.1.2.0/main.bend as NL
833
834def div_block(+m: Nat, -n: Nat, -d: Nat, -r: Nat) -> {Nat.divmod.go(Nat.add(1n+m, n), m, d, r) == Nat.divmod.go(n, Nat.add(m, r), 1n+d, 0n) : Nat & Nat}:
835 match m:
836 case 0n:
837 {==}
838 case 1n+p:
839 %Equal.sym(Nat, 1n+Nat.add(p, r), Nat.add(p, 1n+r), NL.add_succ(p, r)) : {Nat.divmod.go(Nat.add(1n+p, n), p, d, 1n+r) == Nat.divmod.go(n, _, 1n+d, 0n) : Nat & Nat}
840 div_block(p, n, d, 1n+r)