intro idx hidx
α : Type
inst✝² : BEq α
inst✝¹ : Hashable α
inst✝ : DecidableEq α
newWidth : Nat
aig : AIG α
target : aig.ExtendTarget newWidth
assign : α → Bool
⊢ ∀ (idx : Nat) (hidx : idx < newWidth),
    ⟦{ aig := (blastZeroExtend aig target).aig, ref := (blastZeroExtend aig target).stream.getRef idx hidx }, assign⟧ =
      if hidx : idx < target.w then ⟦{ aig := aig, ref := target.stream.getRef idx hidx }, assign⟧ else false
α : Type
inst✝² : BEq α
inst✝¹ : Hashable α
inst✝ : DecidableEq α
newWidth : Nat
aig : AIG α
target : aig.ExtendTarget newWidth
assign : α → Bool
idx : Nat
hidx : idx < newWidth
⊢ ⟦{ aig := (blastZeroExtend aig target).aig, ref := (blastZeroExtend aig target).stream.getRef idx hidx }, assign⟧ =
    if hidx : idx < target.w then ⟦{ aig := aig, ref := target.stream.getRef idx hidx }, assign⟧ else false