Step
*
2
of Lemma
can-apply-p-first
1. [A] : Type
2. [B] : Type
3. u : A ⟶ (B + Top)@i
4. v : (A ⟶ (B + Top)) List@i
5. ∀x:A. (↑can-apply(p-first(v);x) ⇐⇒ (∃f∈v. ↑can-apply(f;x)))@i
⊢ ∀x:A. (↑can-apply(p-first([u / v]);x) ⇐⇒ (∃f∈[u / v]. ↑can-apply(f;x)))
BY
{ Subst ⌜[u / v] ~ [u] @ v⌝ 0⋅ }
1
.....equality..... 
1. A : Type
2. B : Type
3. u : A ⟶ (B + Top)@i
4. v : (A ⟶ (B + Top)) List@i
5. ∀x:A. (↑can-apply(p-first(v);x) ⇐⇒ (∃f∈v. ↑can-apply(f;x)))@i
⊢ [u / v] ~ [u] @ v
2
1. [A] : Type
2. [B] : Type
3. u : A ⟶ (B + Top)@i
4. v : (A ⟶ (B + Top)) List@i
5. ∀x:A. (↑can-apply(p-first(v);x) ⇐⇒ (∃f∈v. ↑can-apply(f;x)))@i
⊢ ∀x:A. (↑can-apply(p-first([u] @ v);x) ⇐⇒ (∃f∈[u] @ v. ↑can-apply(f;x)))
Latex:
Latex:
1.  [A]  :  Type
2.  [B]  :  Type
3.  u  :  A  {}\mrightarrow{}  (B  +  Top)@i
4.  v  :  (A  {}\mrightarrow{}  (B  +  Top))  List@i
5.  \mforall{}x:A.  (\muparrow{}can-apply(p-first(v);x)  \mLeftarrow{}{}\mRightarrow{}  (\mexists{}f\mmember{}v.  \muparrow{}can-apply(f;x)))@i
\mvdash{}  \mforall{}x:A.  (\muparrow{}can-apply(p-first([u  /  v]);x)  \mLeftarrow{}{}\mRightarrow{}  (\mexists{}f\mmember{}[u  /  v].  \muparrow{}can-apply(f;x)))
By
Latex:
Subst  \mkleeneopen{}[u  /  v]  \msim{}  [u]  @  v\mkleeneclose{}  0\mcdot{}
Home
Index