Step * 2 1 of Lemma member-values-for-distinct2


1. [A] Type
2. [V] Type
3. eq EqDecider(A)
4. (A × V) List
5. V
6. (v ∈ map(λa.outl(apply-alist(eq;L;a));remove-repeats(eq;map(λp.(fst(p));L))))
7. {a:A| (a ∈ remove-repeats(eq;map(λp.(fst(p));L)))} 
8. (y ∈ remove-repeats(eq;map(λp.(fst(p));L)))
9. outl(apply-alist(eq;L;y)) ∈ V
⊢ ∃a:A. (<a, v> ∈ L)
BY
((InstConcl [⌜y⌝]⋅ THEN Auto) THEN (HypSubst' (-1) THENA Auto)) }

1
1. [A] Type
2. [V] Type
3. eq EqDecider(A)
4. (A × V) List
5. V
6. (v ∈ map(λa.outl(apply-alist(eq;L;a));remove-repeats(eq;map(λp.(fst(p));L))))
7. {a:A| (a ∈ remove-repeats(eq;map(λp.(fst(p));L)))} 
8. (y ∈ remove-repeats(eq;map(λp.(fst(p));L)))
9. outl(apply-alist(eq;L;y)) ∈ V
⊢ (<y, outl(apply-alist(eq;L;y))> ∈ L)


Latex:


Latex:

1.  [A]  :  Type
2.  [V]  :  Type
3.  eq  :  EqDecider(A)
4.  L  :  (A  \mtimes{}  V)  List
5.  v  :  V
6.  (v  \mmember{}  map(\mlambda{}a.outl(apply-alist(eq;L;a));remove-repeats(eq;map(\mlambda{}p.(fst(p));L))))
7.  y  :  \{a:A|  (a  \mmember{}  remove-repeats(eq;map(\mlambda{}p.(fst(p));L)))\} 
8.  (y  \mmember{}  remove-repeats(eq;map(\mlambda{}p.(fst(p));L)))
9.  v  =  outl(apply-alist(eq;L;y))
\mvdash{}  \mexists{}a:A.  (<a,  v>  \mmember{}  L)


By


Latex:
((InstConcl  [\mkleeneopen{}y\mkleeneclose{}]\mcdot{}  THEN  Auto)  THEN  (HypSubst'  (-1)  0  THENA  Auto))




Home Index