Theorem: selectColumns1_spec4 (Table/Proofs.lean)

State before:
η : Type u_η
dec_η : DecidableEq η
sch : Schema
⊢ ∀ (t : Table sch) (bs : List Bool), nrows (selectColumns1 t bs) = nrows t
Tactic:
intro t bs
State after:
η : Type u_η
dec_η : DecidableEq η
sch : Schema
t : Table sch
bs : List Bool
⊢ nrows (selectColumns1 t bs) = nrows t

State before:
η : Type u_η
dec_η : DecidableEq η
sch : Schema
t : Table sch
bs : List Bool
⊢ nrows (selectColumns1 t bs) = nrows t
Tactic:
simp only [nrows, selectColumns1, Schema.length_eq_List_length]
State after:
η : Type u_η
dec_η : DecidableEq η
sch : Schema
t : Table sch
bs : List Bool
⊢ List.length (List.map (fun r => Row.sieve bs r) t.rows) = List.length t.rows

State before:
η : Type u_η
dec_η : DecidableEq η
sch : Schema
t : Table sch
bs : List Bool
⊢ List.length (List.map (fun r => Row.sieve bs r) t.rows) = List.length t.rows
Tactic:
apply List.length_map
State after:
no goals