Step
*
1
of Lemma
values-for-distinct-nil
1. A : Type
2. V : Type
3. eq : EqDecider(A)
4. L : (A × V) List
5. ||values-for-distinct(eq;L)|| = ||remove-repeats(eq;map(λp.(fst(p));L))|| ∈ ℤ
6. ∀i:ℕ||remove-repeats(eq;map(λp.(fst(p));L))||
(<remove-repeats(eq;map(λp.(fst(p));L))[i], values-for-distinct(eq;L)[i]> ∈ L)
7. values-for-distinct(eq;L) = [] ∈ (V List)
⊢ L = [] ∈ ((A × V) List)
BY
{ (HypSubst' (-1) (-3) THEN Reduce (-3)) }
1
1. A : Type
2. V : Type
3. eq : EqDecider(A)
4. L : (A × V) List
5. 0 = ||remove-repeats(eq;map(λp.(fst(p));L))|| ∈ ℤ
6. ∀i:ℕ||remove-repeats(eq;map(λp.(fst(p));L))||
(<remove-repeats(eq;map(λp.(fst(p));L))[i], values-for-distinct(eq;L)[i]> ∈ L)
7. values-for-distinct(eq;L) = [] ∈ (V List)
⊢ L = [] ∈ ((A × V) List)
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. \mforall{}i:\mBbbN{}||remove-repeats(eq;map(\mlambda{}p.(fst(p));L))||
(<remove-repeats(eq;map(\mlambda{}p.(fst(p));L))[i], values-for-distinct(eq;L)[i]> \mmember{} L)
7. values-for-distinct(eq;L) = []
\mvdash{} L = []
By
Latex:
(HypSubst' (-1) (-3) THEN Reduce (-3))
Home
Index