def AP.set_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
1247def AP.set_perfect.go(-T: Data, +d: Nat, -a: Array<T>, h: {A.Arrays.is_perfect(T, d, a) == True{} : Bool}, +i: U32, +v: T, r: &t: AP.Tree<T> -> {AP.build(T, t) == a : Array<T>}) -> {A.Arrays.is_perfect(T, d, Array.set(T, a, i, v)) == True{} : Bool}:
1248 (t, e) = r
1249 AP.set_perfect.go.body(T, d, a, h, i, v, t, e)