simp only [get, sieve] at *
α : Type u_1
n : Nat
x : α
xs : List α
bs : List Bool
pf1 : Nat.succ n < length (x :: xs)
pf2 : Nat.succ n < length (true :: bs)
hnmem : ¬x ∈ xs
hu' : Unique xs
hb : get (true :: bs) { val := Nat.succ n, isLt := pf2 } = true
⊢ get (x :: xs) { val := Nat.succ n, isLt := pf1 } ∈ sieve (true :: bs) (x :: xs)
α : Type u_1
n : Nat
x : α
xs : List α
bs : List Bool
pf1 : Nat.succ n < length (x :: xs)
pf2 : Nat.succ n < length (true :: bs)
hnmem : ¬x ∈ xs
hu' : Unique xs
hb : get bs { val := n, isLt := (_ : Nat.succ n ≤ length bs) } = true
⊢ get xs { val := n, isLt := (_ : Nat.succ n ≤ length xs) } ∈ x :: sieve bs xs