Step * 1 2 2 1 of Lemma fpf-rename_wf


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@i
11. (x ∈ map(r;d))@i
12. ∀a:A. ((a ∈ d)  ((r a) x ∈ C)  (f1 a ∈ D[x]))
13. hd(filter(λa.(eq (r a) x);d)) ∈ A
14. (hd(filter(λa.(eq (r a) x);d)) ∈ d)
15. ↑(eq (r hd(filter(λa.(eq (r a) x);d))) x)
⊢ (r hd(filter(λy.(eq (r y) x);d))) x ∈ C
BY
(RW assert_pushdownC (-1) THEN Auto) }


Latex:



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@i
11.  (x  \mmember{}  map(r;d))@i
12.  \mforall{}a:A.  ((a  \mmember{}  d)  {}\mRightarrow{}  ((r  a)  =  x)  {}\mRightarrow{}  (f1  a  \mmember{}  D[x]))
13.  hd(filter(\mlambda{}a.(eq  (r  a)  x);d))  \mmember{}  A
14.  (hd(filter(\mlambda{}a.(eq  (r  a)  x);d))  \mmember{}  d)
15.  \muparrow{}(eq  (r  hd(filter(\mlambda{}a.(eq  (r  a)  x);d)))  x)
\mvdash{}  (r  hd(filter(\mlambda{}y.(eq  (r  y)  x);d)))  =  x


By

(RW  assert\_pushdownC  (-1)  THEN  Auto)




Home Index