unfold fold
α : Type
inst✝² : BEq α
inst✝¹ : Hashable α
inst✝ : DecidableEq α
aig✝ aig : AIG α
target : FoldTarget aig
idx✝ : Nat
h1✝ : idx✝ < aig.decls.size
h2✝ : idx✝ < (fold aig target).aig.decls.size
⊢ (fold aig target).aig.decls[idx✝] = aig.decls[idx✝]
α : Type
inst✝² : BEq α
inst✝¹ : Hashable α
inst✝ : DecidableEq α
aig✝ aig : AIG α
target : FoldTarget aig
idx✝ : Nat
h1✝ : idx✝ < aig.decls.size
h2✝ : idx✝ < (fold aig target).aig.decls.size
⊢ (let res := aig.mkConstCached true;
          let aig_1 := res.aig;
          let acc := res.ref;
          let input := target.stream.cast ⋯;
          fold.go aig_1 acc 0 target.len input target.func).aig.decls[idx✝] =
    aig.decls[idx✝]