Step
*
2
2
1
of Lemma
fpf-sub-functionality2
1. A : Type
2. A' : Type
3. strong-subtype(A;A')
4. B : A ─→ Type
5. C : A' ─→ Type
6. eq : EqDecider(A)
7. eq' : EqDecider(A')
8. f : a:A fp-> B[a]
9. g : a:A fp-> B[a]
10. ∀a:A. (B[a] ⊆r C[a])
11. ∀x:A. ((↑x ∈ dom(f)) 
⇒ ((↑x ∈ dom(g)) c∧ (((snd(f)) x) = ((snd(g)) x) ∈ B[x])))
12. x : A'@i
13. ↑x ∈ dom(f)@i
14. x ∈ A
15. ↑x ∈ dom(g)
16. ((snd(f)) x) = ((snd(g)) x) ∈ B[x]
17. ↑x ∈ dom(g)
⊢ ((snd(g)) x) = ((snd(g)) x) ∈ C[x]
BY
{ (Fold `member` 0 THEN Subst ⌈(snd(g)) x ~ g(x)⌉ 0⋅) }
1
.....equality..... 
1. A : Type
2. A' : Type
3. strong-subtype(A;A')
4. B : A ─→ Type
5. C : A' ─→ Type
6. eq : EqDecider(A)
7. eq' : EqDecider(A')
8. f : a:A fp-> B[a]
9. g : a:A fp-> B[a]
10. ∀a:A. (B[a] ⊆r C[a])
11. ∀x:A. ((↑x ∈ dom(f)) 
⇒ ((↑x ∈ dom(g)) c∧ (((snd(f)) x) = ((snd(g)) x) ∈ B[x])))
12. x : A'@i
13. ↑x ∈ dom(f)@i
14. x ∈ A
15. ↑x ∈ dom(g)
16. ((snd(f)) x) = ((snd(g)) x) ∈ B[x]
17. ↑x ∈ dom(g)
⊢ (snd(g)) x ~ g(x)
2
1. A : Type
2. A' : Type
3. strong-subtype(A;A')
4. B : A ─→ Type
5. C : A' ─→ Type
6. eq : EqDecider(A)
7. eq' : EqDecider(A')
8. f : a:A fp-> B[a]
9. g : a:A fp-> B[a]
10. ∀a:A. (B[a] ⊆r C[a])
11. ∀x:A. ((↑x ∈ dom(f)) 
⇒ ((↑x ∈ dom(g)) c∧ (((snd(f)) x) = ((snd(g)) x) ∈ B[x])))
12. x : A'@i
13. ↑x ∈ dom(f)@i
14. x ∈ A
15. ↑x ∈ dom(g)
16. ((snd(f)) x) = ((snd(g)) x) ∈ B[x]
17. ↑x ∈ dom(g)
⊢ g(x) ∈ C[x]
Latex:
1.  A  :  Type
2.  A'  :  Type
3.  strong-subtype(A;A')
4.  B  :  A  {}\mrightarrow{}  Type
5.  C  :  A'  {}\mrightarrow{}  Type
6.  eq  :  EqDecider(A)
7.  eq'  :  EqDecider(A')
8.  f  :  a:A  fp->  B[a]
9.  g  :  a:A  fp->  B[a]
10.  \mforall{}a:A.  (B[a]  \msubseteq{}r  C[a])
11.  \mforall{}x:A.  ((\muparrow{}x  \mmember{}  dom(f))  {}\mRightarrow{}  ((\muparrow{}x  \mmember{}  dom(g))  c\mwedge{}  (((snd(f))  x)  =  ((snd(g))  x))))
12.  x  :  A'@i
13.  \muparrow{}x  \mmember{}  dom(f)@i
14.  x  \mmember{}  A
15.  \muparrow{}x  \mmember{}  dom(g)
16.  ((snd(f))  x)  =  ((snd(g))  x)
17.  \muparrow{}x  \mmember{}  dom(g)
\mvdash{}  ((snd(g))  x)  =  ((snd(g))  x)
By
(Fold  `member`  0  THEN  Subst  \mkleeneopen{}(snd(g))  x  \msim{}  g(x)\mkleeneclose{}  0\mcdot{})
Home
Index