Step
*
2
of Lemma
filter_before
1. [A] : Type
2. u : A
3. v : A List
4. ∀P:A ⟶ 𝔹. ∀x,y:A.  (x before y ∈ filter(P;v) 
⇐⇒ (↑(P x)) ∧ (↑(P y)) ∧ x before y ∈ v)
⊢ ∀P:A ⟶ 𝔹. ∀x,y:A.
    (x before y ∈ if P u then [u / filter(P;v)] else filter(P;v) fi  
⇐⇒ (↑(P x)) ∧ (↑(P y)) ∧ x before y ∈ [u / v])
BY
{ (((((Reduce 0 THEN D 0) THENM SplitOnConclITE) THENA Auto) THEN RWO "cons_before" 0) THEN Auto) }
1
1. A : Type
2. u : A
3. v : A List
4. ∀P:A ⟶ 𝔹. ∀x,y:A.  (x before y ∈ filter(P;v) 
⇐⇒ (↑(P x)) ∧ (↑(P y)) ∧ x before y ∈ v)
5. P : A ⟶ 𝔹
6. ↑(P u)
7. x@0 : A
8. y : A
9. ((x@0 = u ∈ A) ∧ (y ∈ filter(P;v))) ∨ x@0 before y ∈ filter(P;v)
⊢ ↑(P x@0)
2
1. A : Type
2. u : A
3. v : A List
4. ∀P:A ⟶ 𝔹. ∀x,y:A.  (x before y ∈ filter(P;v) 
⇐⇒ (↑(P x)) ∧ (↑(P y)) ∧ x before y ∈ v)
5. P : A ⟶ 𝔹
6. ↑(P u)
7. x@0 : A
8. y : A
9. ((x@0 = u ∈ A) ∧ (y ∈ filter(P;v))) ∨ x@0 before y ∈ filter(P;v)
⊢ ↑(P y)
3
1. [A] : Type
2. u : A
3. v : A List
4. ∀P:A ⟶ 𝔹. ∀x,y:A.  (x before y ∈ filter(P;v) 
⇐⇒ (↑(P x)) ∧ (↑(P y)) ∧ x before y ∈ v)
5. P : A ⟶ 𝔹
6. ↑(P u)
7. x@0 : A
8. y : A
9. ((x@0 = u ∈ A) ∧ (y ∈ filter(P;v))) ∨ x@0 before y ∈ filter(P;v)
⊢ ((x@0 = u ∈ A) ∧ (y ∈ v)) ∨ x@0 before y ∈ v
4
1. [A] : Type
2. u : A
3. v : A List
4. ∀P:A ⟶ 𝔹. ∀x,y:A.  (x before y ∈ filter(P;v) 
⇐⇒ (↑(P x)) ∧ (↑(P y)) ∧ x before y ∈ v)
5. P : A ⟶ 𝔹
6. ↑(P u)
7. x@0 : A
8. y : A
9. ↑(P x@0)
10. ↑(P y)
11. ((x@0 = u ∈ A) ∧ (y ∈ v)) ∨ x@0 before y ∈ v
⊢ ((x@0 = u ∈ A) ∧ (y ∈ filter(P;v))) ∨ x@0 before y ∈ filter(P;v)
5
1. A : Type
2. u : A
3. v : A List
4. ∀P:A ⟶ 𝔹. ∀x,y:A.  (x before y ∈ filter(P;v) 
⇐⇒ (↑(P x)) ∧ (↑(P y)) ∧ x before y ∈ v)
5. P : A ⟶ 𝔹
6. ¬↑(P u)
7. x : A
8. y@0 : A
9. x before y@0 ∈ filter(P;v)
⊢ ↑(P y@0)
6
1. [A] : Type
2. u : A
3. v : A List
4. ∀P:A ⟶ 𝔹. ∀x,y:A.  (x before y ∈ filter(P;v) 
⇐⇒ (↑(P x)) ∧ (↑(P y)) ∧ x before y ∈ v)
5. P : A ⟶ 𝔹
6. ¬↑(P u)
7. x : A
8. y@0 : A
9. ↑(P x)
10. ↑(P y@0)
11. ((x = u ∈ A) ∧ (y@0 ∈ v)) ∨ x before y@0 ∈ v
⊢ x before y@0 ∈ filter(P;v)
Latex:
Latex:
1.  [A]  :  Type
2.  u  :  A
3.  v  :  A  List
4.  \mforall{}P:A  {}\mrightarrow{}  \mBbbB{}.  \mforall{}x,y:A.    (x  before  y  \mmember{}  filter(P;v)  \mLeftarrow{}{}\mRightarrow{}  (\muparrow{}(P  x))  \mwedge{}  (\muparrow{}(P  y))  \mwedge{}  x  before  y  \mmember{}  v)
\mvdash{}  \mforall{}P:A  {}\mrightarrow{}  \mBbbB{}.  \mforall{}x,y:A.
        (x  before  y  \mmember{}  if  P  u  then  [u  /  filter(P;v)]  else  filter(P;v)  fi 
        \mLeftarrow{}{}\mRightarrow{}  (\muparrow{}(P  x))  \mwedge{}  (\muparrow{}(P  y))  \mwedge{}  x  before  y  \mmember{}  [u  /  v])
By
Latex:
(((((Reduce  0  THEN  D  0)  THENM  SplitOnConclITE)  THENA  Auto)  THEN  RWO  "cons\_before"  0)  THEN  Auto)
Home
Index