Step
*
1
2
of Lemma
isl-apply-alist
1. [A] : Type
2. [T] : Type
3. eq : EqDecider(T)
4. x : T
5. L : (T × A) List
6. apply-alist(eq;L;x) ~ ff supposing ¬(x ∈ map(λp.(fst(p));L))
7. ∀[i:ℕ||L||]
     (apply-alist(eq;L;x) ~ inl (snd(L[i]))) supposing (((fst(L[i])) = x ∈ T) and (∀j:ℕi. (¬((fst(L[j])) = x ∈ T))))
8. ∀a,b:T.  Dec(a = b ∈ T)
9. (x ∈ map(λp.(fst(p));L))
10. ∃i:ℕ||L||. (((fst(L[i])) = x ∈ T) ∧ (∀j:ℕi. (¬((fst(L[j])) = x ∈ T))))
⊢ (↑isl(apply-alist(eq;L;x)) 
⇐⇒ (x ∈ map(λp.(fst(p));L)))
∧ (<x, outl(apply-alist(eq;L;x))> ∈ L) supposing ↑isl(apply-alist(eq;L;x))
BY
{ ((ExRepD THEN (InstHyp [⌜i⌝] 7⋅ THENA Auto)) THEN RWO "-1" 0 THEN Reduce 0 THEN Auto) }
1
1. [A] : Type
2. [T] : Type
3. eq : EqDecider(T)
4. x : T
5. L : (T × A) List
6. apply-alist(eq;L;x) ~ ff supposing ¬(x ∈ map(λp.(fst(p));L))
7. ∀[i:ℕ||L||]
     (apply-alist(eq;L;x) ~ inl (snd(L[i]))) supposing (((fst(L[i])) = x ∈ T) and (∀j:ℕi. (¬((fst(L[j])) = x ∈ T))))
8. ∀a,b:T.  Dec(a = b ∈ T)
9. (x ∈ map(λp.(fst(p));L))
10. i : ℕ||L||
11. (fst(L[i])) = x ∈ T
12. ∀j:ℕi. (¬((fst(L[j])) = x ∈ T))
13. apply-alist(eq;L;x) ~ inl (snd(L[i]))
14. True 
⇐ (x ∈ map(λp.(fst(p));L))
15. True
16. (x ∈ map(λp.(fst(p));L))
⊢ (<x, snd(L[i])> ∈ L)
Latex:
Latex:
1.  [A]  :  Type
2.  [T]  :  Type
3.  eq  :  EqDecider(T)
4.  x  :  T
5.  L  :  (T  \mtimes{}  A)  List
6.  apply-alist(eq;L;x)  \msim{}  ff  supposing  \mneg{}(x  \mmember{}  map(\mlambda{}p.(fst(p));L))
7.  \mforall{}[i:\mBbbN{}||L||]
          (apply-alist(eq;L;x)  \msim{}  inl  (snd(L[i])))  supposing 
                (((fst(L[i]))  =  x)  and 
                (\mforall{}j:\mBbbN{}i.  (\mneg{}((fst(L[j]))  =  x))))
8.  \mforall{}a,b:T.    Dec(a  =  b)
9.  (x  \mmember{}  map(\mlambda{}p.(fst(p));L))
10.  \mexists{}i:\mBbbN{}||L||.  (((fst(L[i]))  =  x)  \mwedge{}  (\mforall{}j:\mBbbN{}i.  (\mneg{}((fst(L[j]))  =  x))))
\mvdash{}  (\muparrow{}isl(apply-alist(eq;L;x))  \mLeftarrow{}{}\mRightarrow{}  (x  \mmember{}  map(\mlambda{}p.(fst(p));L)))
\mwedge{}  (<x,  outl(apply-alist(eq;L;x))>  \mmember{}  L)  supposing  \muparrow{}isl(apply-alist(eq;L;x))
By
Latex:
((ExRepD  THEN  (InstHyp  [\mkleeneopen{}i\mkleeneclose{}]  7\mcdot{}  THENA  Auto))  THEN  RWO  "-1"  0  THEN  Reduce  0  THEN  Auto)
Home
Index