Step
*
1
of Lemma
fpf-compatible-join
1. A : Type
2. eq : EqDecider(A)
3. B : A ─→ Type
4. f : a:A fp-> B[a]
5. g : a:A fp-> B[a]
6. h : a:A fp-> B[a]
7. ∀x:A. (((↑x ∈ dom(h)) ∧ (↑x ∈ dom(f))) 
⇒ (h(x) = f(x) ∈ B[x]))
8. ∀x:A. (((↑x ∈ dom(h)) ∧ (↑x ∈ dom(g))) 
⇒ (h(x) = g(x) ∈ B[x]))
9. x : A@i
⊢ ((↑x ∈ dom(h)) ∧ (↑x ∈ dom(f ⊕ g))) 
⇒ (h(x) = f ⊕ g(x) ∈ B[x])
BY
{ (((((Auto THEN RWO "fpf-join-ap" 0) THENA Auto) THEN SplitOnConclITE) THENA Auto) THEN BackThruSomeHyp THEN Auto) }
1
1. A : Type
2. eq : EqDecider(A)
3. B : A ─→ Type
4. f : a:A fp-> B[a]
5. g : a:A fp-> B[a]
6. h : a:A fp-> B[a]
7. ∀x:A. (((↑x ∈ dom(h)) ∧ (↑x ∈ dom(f))) 
⇒ (h(x) = f(x) ∈ B[x]))
8. ∀x:A. (((↑x ∈ dom(h)) ∧ (↑x ∈ dom(g))) 
⇒ (h(x) = g(x) ∈ B[x]))
9. x : A@i
10. ↑x ∈ dom(h)@i
11. ↑x ∈ dom(f ⊕ g)@i
12. ¬↑x ∈ dom(f)
13. ↑x ∈ dom(h)
⊢ ↑x ∈ dom(g)
Latex:
1.  A  :  Type
2.  eq  :  EqDecider(A)
3.  B  :  A  {}\mrightarrow{}  Type
4.  f  :  a:A  fp->  B[a]
5.  g  :  a:A  fp->  B[a]
6.  h  :  a:A  fp->  B[a]
7.  \mforall{}x:A.  (((\muparrow{}x  \mmember{}  dom(h))  \mwedge{}  (\muparrow{}x  \mmember{}  dom(f)))  {}\mRightarrow{}  (h(x)  =  f(x)))
8.  \mforall{}x:A.  (((\muparrow{}x  \mmember{}  dom(h))  \mwedge{}  (\muparrow{}x  \mmember{}  dom(g)))  {}\mRightarrow{}  (h(x)  =  g(x)))
9.  x  :  A@i
\mvdash{}  ((\muparrow{}x  \mmember{}  dom(h))  \mwedge{}  (\muparrow{}x  \mmember{}  dom(f  \moplus{}  g)))  {}\mRightarrow{}  (h(x)  =  f  \moplus{}  g(x))
By
(((((Auto  THEN  RWO  "fpf-join-ap"  0)  THENA  Auto)  THEN  SplitOnConclITE)  THENA  Auto)
  THEN  BackThruSomeHyp
  THEN  Auto)
Home
Index