have : i = cast (by rw [node_thm]; simp [destruct]) j := by
  have : C.B x.destruct.fst = C.B (x.approx (.succ n)).node := by rw [node_thm]; simp [destruct]
  rw [Eq_from_Heq j i]
  apply HEq.symm
  assumption
C : Container
x : M C
n : Nat
i : B C (Approx.node (approx x (Nat.succ n)))
j : B C (destruct x).fst
heq : HEq i j
⊢ Approx.children (approx x (Nat.succ n)) i = approx (PSigma.snd (destruct x) j) n
C : Container
x : M C
n : Nat
i : B C (Approx.node (approx x (Nat.succ n)))
j : B C (destruct x).fst
heq : HEq i j
this : i = cast (_ : B C (destruct x).fst = B C (Approx.node (approx x (Nat.succ n)))) j
⊢ Approx.children (approx x (Nat.succ n)) i = approx (PSigma.snd (destruct x) j) n