Step
*
2
of Lemma
fpf-inv-rename_wf
.....subterm..... T:t
2:n
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)
⊢ f1 o r ∈ a:{a:A| (a ∈ mapfilter(λx.outl(rinv x);λx.isl(rinv x);d))} ─→ B[a]
BY
{ (((Unfold `compose` 0 THEN MemCD) THENA Auto) THEN All Reduce THEN Auto THEN Try (((D (-1)) THEN Unhide THEN Auto))) }
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. (x ∈ mapfilter(λx.outl(rinv x);λx.isl(rinv x);d))@i
⊢ r x ∈ {c:C| (c ∈ d)}
Latex:
.....subterm..... T:t
2:n
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])
\mvdash{} f1 o r \mmember{} a:\{a:A| (a \mmember{} mapfilter(\mlambda{}x.outl(rinv x);\mlambda{}x.isl(rinv x);d))\} {}\mrightarrow{} B[a]
By
(((Unfold `compose` 0 THEN MemCD) THENA Auto)
THEN All Reduce
THEN Auto
THEN Try (((D (-1)) THEN Unhide THEN Auto)))
Home
Index