Step
*
2
1
of Lemma
fpf-inv-rename_wf
1. A : Type
2. C : Type
3. B : A ─→ Type
4. D : C ─→ Type
5. rinv : C ─→ (A?)
6. r : A ─→ C
7. d : C List
8. f1 : c:{c:C| (c ∈ d)}  ─→ D[c]
9. inv-rel(A;C;r;rinv)
10. ∀a:A. (D[r a] = B[a] ∈ Type)
11. x : A@i
12. (x ∈ mapfilter(λx.outl(rinv x);λx.isl(rinv x);d))@i
⊢ r x ∈ {c:C| (c ∈ d)} 
BY
{ (((RWO "member_map_filter" (-1)) THENA Auto)
   THEN All Reduce
   THEN Auto
   THEN Try (((D (-1)) THEN Unhide THEN Auto))
   THEN (D (-1))) }
1
1. A : Type
2. C : Type
3. B : A ─→ Type
4. D : C ─→ Type
5. rinv : C ─→ (A?)
6. r : A ─→ C
7. d : C List
8. f1 : c:{c:C| (c ∈ d)}  ─→ D[c]
9. inv-rel(A;C;r;rinv)
10. ∀a:A. (D[r a] = B[a] ∈ Type)
11. x : A@i
12. y : C
13. (y ∈ d)
14. ↑isl(rinv y)
15. x = outl(rinv y) ∈ A
⊢ r x ∈ {c:C| (c ∈ d)} 
Latex:
1.  A  :  Type
2.  C  :  Type
3.  B  :  A  {}\mrightarrow{}  Type
4.  D  :  C  {}\mrightarrow{}  Type
5.  rinv  :  C  {}\mrightarrow{}  (A?)
6.  r  :  A  {}\mrightarrow{}  C
7.  d  :  C  List
8.  f1  :  c:\{c:C|  (c  \mmember{}  d)\}    {}\mrightarrow{}  D[c]
9.  inv-rel(A;C;r;rinv)
10.  \mforall{}a:A.  (D[r  a]  =  B[a])
11.  x  :  A@i
12.  (x  \mmember{}  mapfilter(\mlambda{}x.outl(rinv  x);\mlambda{}x.isl(rinv  x);d))@i
\mvdash{}  r  x  \mmember{}  \{c:C|  (c  \mmember{}  d)\} 
By
(((RWO  "member\_map\_filter"  (-1))  THENA  Auto)
  THEN  All  Reduce
  THEN  Auto
  THEN  Try  (((D  (-1))  THEN  Unhide  THEN  Auto))
  THEN  (D  (-1)))
Home
Index