def AP.size_perfect.go
import bend-osdev-array@0.1.0.1/PROOF.bend as PROOFimport Base
import bend-osdev-array@0.1.0.1/array.bend as A
1257def AP.size_perfect.go(-T: Data, +d: Nat, -a: Array<T>, h: {A.Arrays.is_perfect(T, d, a) == True{} : Bool}, r: &t: AP.Tree<T> -> {AP.build(T, t) == a : Array<T>}) -> {Array.size(T, a) == (a, U32.shln(1, d)) : Array<T> & U32}:
1258 (t, e) = r
1259 AP.size_perfect.go.body(T, d, a, h, t, e)