def bpar
bendtorch@1.3.0.0 · main.bend:2875
import bendtorch@1.3.0.0/main.bend as Bendtorch
import Base
import bend-ml-tensor-array@0.1.18.0/main.bend as TA
2875def bpar(d: Nat, gs: Halves<BG>, +n: Nat, +kv: Nat, +dm: Dm) -> List<&1, DB>:
2876 match d gs:
2877 case 0n Halves{l, r}:
2878 a b = bleaf(l, kv, dm, Nil{}) bleaf(r, kv, dm, Nil{})
2879 List.append(&1, DB, a, b)
2880 case 1n++e Halves{l, r}:
2881 a b = bpar(e, cut(BG, TA.half(TA.half(n)), l, Nil{}), TA.half(n), kv, dm) bpar(e, cut(BG, TA.half(Nat.sub(n, TA.half(n))), r, Nil{}), Nat.sub(n, TA.half(n)), kv, dm)
2882 List.append(&1, DB, a, b)