Step
*
2
of Lemma
member_filter
1. [T] : Type
2. P : T ⟶ 𝔹
3. u : T
4. v : T List
5. ∀x:T. ((x ∈ filter(P;v)) 
⇐⇒ (x ∈ v) ∧ (↑(P x)))
⊢ ∀x:T. ((x ∈ if P u then [u / filter(P;v)] else filter(P;v) fi ) 
⇐⇒ (x ∈ [u / v]) ∧ (↑(P x)))
BY
{ (ParallelLast THEN (RWO "cons_member" 0 THENA Auto) THEN AutoSplit THEN (RWW "cons_member" 0 THENA Auto)) }
1
1. [T] : Type
2. P : T ⟶ 𝔹
3. u : T
4. v : T List
5. ∀x:T. ((x ∈ filter(P;v)) 
⇐⇒ (x ∈ v) ∧ (↑(P x)))
6. x : T
7. (x ∈ filter(P;v)) 
⇐⇒ (x ∈ v) ∧ (↑(P x))
8. ↑(P u)
⊢ (x = u ∈ T) ∨ (x ∈ filter(P;v)) 
⇐⇒ ((x = u ∈ T) ∨ (x ∈ v)) ∧ (↑(P x))
2
1. [T] : Type
2. P : T ⟶ 𝔹
3. u : T
4. ¬↑(P u)
5. v : T List
6. ∀x:T. ((x ∈ filter(P;v)) 
⇐⇒ (x ∈ v) ∧ (↑(P x)))
7. x : T
8. (x ∈ filter(P;v)) 
⇐⇒ (x ∈ v) ∧ (↑(P x))
⊢ (x ∈ filter(P;v)) 
⇐⇒ ((x = u ∈ T) ∨ (x ∈ v)) ∧ (↑(P x))
Latex:
Latex:
1.  [T]  :  Type
2.  P  :  T  {}\mrightarrow{}  \mBbbB{}
3.  u  :  T
4.  v  :  T  List
5.  \mforall{}x:T.  ((x  \mmember{}  filter(P;v))  \mLeftarrow{}{}\mRightarrow{}  (x  \mmember{}  v)  \mwedge{}  (\muparrow{}(P  x)))
\mvdash{}  \mforall{}x:T.  ((x  \mmember{}  if  P  u  then  [u  /  filter(P;v)]  else  filter(P;v)  fi  )  \mLeftarrow{}{}\mRightarrow{}  (x  \mmember{}  [u  /  v])  \mwedge{}  (\muparrow{}(P  x)))
By
Latex:
(ParallelLast
  THEN  (RWO  "cons\_member"  0  THENA  Auto)
  THEN  AutoSplit
  THEN  (RWW  "cons\_member"  0  THENA  Auto))
Home
Index