Step
*
of Lemma
cons_member!
∀[T:Type]. ∀l:T List. ∀a,x:T.  ((x ∈! [a / l]) 
⇐⇒ ((x = a ∈ T) ∧ (¬(x ∈ l))) ∨ ((x ∈! l) ∧ (¬(x = a ∈ T))))
BY
{ (Unfold `l_member!` 0 THEN Auto) }
1
1. [T] : Type
2. l : T List
3. a : T
4. x : T
5. ∃i:ℕ. (i < ||[a / l]|| c∧ ((x = [a / l][i] ∈ T) ∧ (∀j:ℕ. (j < ||[a / l]|| 
⇒ (x = [a / l][j] ∈ T) 
⇒ (j = i ∈ ℕ)))))
⊢ ((x = a ∈ T) ∧ (¬(x ∈ l)))
∨ ((∃i:ℕ. (i < ||l|| c∧ ((x = l[i] ∈ T) ∧ (∀j:ℕ. (j < ||l|| 
⇒ (x = l[j] ∈ T) 
⇒ (j = i ∈ ℕ)))))) ∧ (¬(x = a ∈ T)))
2
1. [T] : Type
2. l : T List
3. a : T
4. x : T
5. ((x = a ∈ T) ∧ (¬(x ∈ l)))
∨ ((∃i:ℕ. (i < ||l|| c∧ ((x = l[i] ∈ T) ∧ (∀j:ℕ. (j < ||l|| 
⇒ (x = l[j] ∈ T) 
⇒ (j = i ∈ ℕ)))))) ∧ (¬(x = a ∈ T)))
⊢ ∃i:ℕ. (i < ||[a / l]|| c∧ ((x = [a / l][i] ∈ T) ∧ (∀j:ℕ. (j < ||[a / l]|| 
⇒ (x = [a / l][j] ∈ T) 
⇒ (j = i ∈ ℕ)))))
Latex:
Latex:
\mforall{}[T:Type].  \mforall{}l:T  List.  \mforall{}a,x:T.    ((x  \mmember{}!  [a  /  l])  \mLeftarrow{}{}\mRightarrow{}  ((x  =  a)  \mwedge{}  (\mneg{}(x  \mmember{}  l)))  \mvee{}  ((x  \mmember{}!  l)  \mwedge{}  (\mneg{}(x  =  a))))
By
Latex:
(Unfold  `l\_member!`  0  THEN  Auto)
Home
Index