∀ {α : Type} [inst : Hashable α] [inst_1 : DecidableEq α] {len x : ℕ} (aig : Std.Sat.AIG α) (vec : aig.RefVec len)
  (func : (aig : Std.Sat.AIG α) → aig.BinaryInput → Std.Sat.AIG.Entrypoint α)
  [inst_2 : Std.Sat.AIG.LawfulOperator α Std.Sat.AIG.BinaryInput func],
  x ≤ aig.decls.size → x ≤ (Std.Sat.AIG.RefVec.fold aig vec func).aig.decls.size