Natural.dvd_with: def of bend-collections-laws-math@1.0.0.0 Import: import bend-collections-laws-math@1.0.0.0/spec/math/natural.bend as Natural Lines 108-118 of bend-collections-laws-math@1.0.0.0/spec/math/natural.bend: https://jend.leeeet.dev/read.txt?path=bend-collections-laws-math@1.0.0.0/spec/math/natural.bend&start_line=108&end_line=118 import Base # d divides every element, with the quotients given: xs[i] == ks[i] d def dvd_with(+d: Nat, +xs: List<&2, Nat>, +ks: List<&2, Nat>) -> Type: match xs ks: case Nil{} Nil{}: Unit case Nil{} Con{k, kt}: Unit case Con{x, t} Nil{}: Empty case Con{+x, +t} Con{+k, +kt}: {x == Nat.mul(k, d) : Nat} & dvd_with(d, t, kt) Uses (6): https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Empty https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=List https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Nat https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Nat.mul https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Pair https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Unit