Step * 2 2 of Lemma values-for-distinct-property


1. [A] Type
2. [V] Type
3. eq EqDecider(A)
4. (A × V) List
5. ||values-for-distinct(eq;L)|| ||remove-repeats(eq;map(λp.(fst(p));L))|| ∈ ℤ
6. : ℕ||remove-repeats(eq;map(λp.(fst(p));L))||
7. (remove-repeats(eq;map(λp.(fst(p));L))[i] ∈ map(λp.(fst(p));L))
⊢ (<remove-repeats(eq;map(λp.(fst(p));L))[i], values-for-distinct(eq;L)[i]> ∈ L)
BY
((InstLemma `isl-apply-alist` [⌜V⌝;⌜A⌝;⌜eq⌝;⌜remove-repeats(eq;map(λp.(fst(p));L))[i]⌝;⌜L⌝]⋅ THENA Auto)
   THEN ExRepD
   THEN RepeatFor (ThinTrivial)) }

1
1. [A] Type
2. [V] Type
3. eq EqDecider(A)
4. (A × V) List
5. ||values-for-distinct(eq;L)|| ||remove-repeats(eq;map(λp.(fst(p));L))|| ∈ ℤ
6. : ℕ||remove-repeats(eq;map(λp.(fst(p));L))||
7. (remove-repeats(eq;map(λp.(fst(p));L))[i] ∈ map(λp.(fst(p));L))
8. ↑isl(apply-alist(eq;L;remove-repeats(eq;map(λp.(fst(p));L))[i]))
9. (<remove-repeats(eq;map(λp.(fst(p));L))[i], outl(apply-alist(eq;L;remove-repeats(eq;map(λp.(fst(p));L))[i]))> ∈ L)
⊢ (<remove-repeats(eq;map(λp.(fst(p));L))[i], values-for-distinct(eq;L)[i]> ∈ L)


Latex:


Latex:

1.  [A]  :  Type
2.  [V]  :  Type
3.  eq  :  EqDecider(A)
4.  L  :  (A  \mtimes{}  V)  List
5.  ||values-for-distinct(eq;L)||  =  ||remove-repeats(eq;map(\mlambda{}p.(fst(p));L))||
6.  i  :  \mBbbN{}||remove-repeats(eq;map(\mlambda{}p.(fst(p));L))||
7.  (remove-repeats(eq;map(\mlambda{}p.(fst(p));L))[i]  \mmember{}  map(\mlambda{}p.(fst(p));L))
\mvdash{}  (<remove-repeats(eq;map(\mlambda{}p.(fst(p));L))[i],  values-for-distinct(eq;L)[i]>  \mmember{}  L)


By


Latex:
((InstLemma  `isl-apply-alist`  [\mkleeneopen{}V\mkleeneclose{};\mkleeneopen{}A\mkleeneclose{};\mkleeneopen{}eq\mkleeneclose{};\mkleeneopen{}remove-repeats(eq;map(\mlambda{}p.(fst(p));L))[i]\mkleeneclose{};\mkleeneopen{}L\mkleeneclose{}]\mcdot{}
    THENA  Auto
    )
  THEN  ExRepD
  THEN  RepeatFor  2  (ThinTrivial))




Home Index