assumption
case not
α β : Type
inst✝³ : BEq β
inst✝² : Hashable β
inst✝¹ : DecidableEq β
atomHandler : AIG β → α → Entrypoint β
inst✝ : LawfulOperator β (fun x => α) atomHandler
idx : Nat
expr : BoolExpr α
aig : AIG β
h : idx < aig.decls.size
hbounds : idx < (go expr.not aig atomHandler).val.aig.decls.size
this : aig.decls.size ≤ (go expr aig atomHandler).val.aig.decls.size
ih : (go expr aig atomHandler).val.aig.decls[idx] = aig.decls[idx]
⊢ (go expr aig atomHandler).1.aig.decls[idx] = aig.decls[idx]

case not.h1
α β : Type
inst✝³ : BEq β
inst✝² : Hashable β
inst✝¹ : DecidableEq β
atomHandler : AIG β → α → Entrypoint β
inst✝ : LawfulOperator β (fun x => α) atomHandler
idx : Nat
expr : BoolExpr α
aig : AIG β
h : idx < aig.decls.size
hbounds : idx < (go expr.not aig atomHandler).val.aig.decls.size
this : aig.decls.size ≤ (go expr aig atomHandler).val.aig.decls.size
ih : (go expr aig atomHandler).val.aig.decls[idx] = aig.decls[idx]
⊢ idx < (go expr aig atomHandler).1.aig.decls.size
no goals