Step * 1 of Lemma fpf-rename_wf

.....subterm..... T:t
1:n
1. Type
2. Type
3. A ─→ Type
4. C ─→ Type
5. eq EqDecider(C)
6. A ─→ C
7. List
8. f1 a:{a:A| (a ∈ d)}  ─→ B[a]
9. ∀a:A. (D[r a] B[a] ∈ Type)
10. {c:C| (c ∈ map(r;d))} @i
⊢ f1 hd(filter(λy.(eq (r y) x);d)) ∈ D[x]
BY
Assert ⌈∀a:A. ((a ∈ d)  ((r a) x ∈ C)  (f1 a ∈ D[x]))⌉⋅ }

1
.....assertion..... 
1. Type
2. Type
3. A ─→ Type
4. C ─→ Type
5. eq EqDecider(C)
6. A ─→ C
7. List
8. f1 a:{a:A| (a ∈ d)}  ─→ B[a]
9. ∀a:A. (D[r a] B[a] ∈ Type)
10. {c:C| (c ∈ map(r;d))} @i
⊢ ∀a:A. ((a ∈ d)  ((r a) x ∈ C)  (f1 a ∈ D[x]))

2
1. Type
2. Type
3. A ─→ Type
4. C ─→ Type
5. eq EqDecider(C)
6. A ─→ C
7. List
8. f1 a:{a:A| (a ∈ d)}  ─→ B[a]
9. ∀a:A. (D[r a] B[a] ∈ Type)
10. {c:C| (c ∈ map(r;d))} @i
11. ∀a:A. ((a ∈ d)  ((r a) x ∈ C)  (f1 a ∈ D[x]))
⊢ f1 hd(filter(λy.(eq (r y) x);d)) ∈ D[x]


Latex:


.....subterm.....  T:t
1:n
1.  A  :  Type
2.  C  :  Type
3.  B  :  A  {}\mrightarrow{}  Type
4.  D  :  C  {}\mrightarrow{}  Type
5.  eq  :  EqDecider(C)
6.  r  :  A  {}\mrightarrow{}  C
7.  d  :  A  List
8.  f1  :  a:\{a:A|  (a  \mmember{}  d)\}    {}\mrightarrow{}  B[a]
9.  \mforall{}a:A.  (D[r  a]  =  B[a])
10.  x  :  \{c:C|  (c  \mmember{}  map(r;d))\}  @i
\mvdash{}  f1  hd(filter(\mlambda{}y.(eq  (r  y)  x);d))  \mmember{}  D[x]


By

Assert  \mkleeneopen{}\mforall{}a:A.  ((a  \mmember{}  d)  {}\mRightarrow{}  ((r  a)  =  x)  {}\mRightarrow{}  (f1  a  \mmember{}  D[x]))\mkleeneclose{}\mcdot{}




Home Index