Step * of Lemma fpf-join_wf

[A:Type]. ∀[B:A ⟶ Type]. ∀[f,g:a:A fp-> B[a]]. ∀[eq:EqDecider(A)].  (f ⊕ g ∈ a:A fp-> B[a])
BY
xxx(Unfolds ``fpf fpf-join`` 0
      THEN Auto
      THEN Try ((Unfold `fpf-dom` THEN Auto))
      THEN (All (\i. (Fold `fpf` THEN Complete (Auto))))⋅
      THEN (AssertBY ⌜f ∈ a:A fp-> B[a]⌝ (All (\i. (Fold `fpf` THEN Complete (Auto)))))⋅
      THEN (AssertBY ⌜g ∈ a:A fp-> B[a]⌝ (All (\i. (Fold `fpf` THEN Complete (Auto)))))⋅)xxx }

1
1. Type
2. A ⟶ Type
3. d:A List × (a:{a:A| (a ∈ d)}  ⟶ B[a])
4. d:A List × (a:{a:A| (a ∈ d)}  ⟶ B[a])
5. eq EqDecider(A)
6. ∀a:A. ((a ∈ (fst(f)) filter(λa.(¬ba ∈ dom(f));fst(g))) ∈ Type)
7. A
8. (a ∈ (fst(f)) filter(λa.(¬ba ∈ dom(f));fst(g)))
9. f ∈ a:A fp-> B[a]
10. g ∈ a:A fp-> B[a]
⊢ f(a)?g(a) ∈ B[a]


Latex:


Latex:
\mforall{}[A:Type].  \mforall{}[B:A  {}\mrightarrow{}  Type].  \mforall{}[f,g:a:A  fp->  B[a]].  \mforall{}[eq:EqDecider(A)].    (f  \moplus{}  g  \mmember{}  a:A  fp->  B[a])


By


Latex:
xxx(Unfolds  ``fpf  fpf-join``  0
        THEN  Auto
        THEN  Try  ((Unfold  `fpf-dom`  0  THEN  Auto))
        THEN  (All  (\mbackslash{}i.  (Fold  `fpf`  i  THEN  Complete  (Auto))))\mcdot{}
        THEN  (AssertBY  \mkleeneopen{}f  \mmember{}  a:A  fp->  B[a]\mkleeneclose{}  (All  (\mbackslash{}i.  (Fold  `fpf`  i  THEN  Complete  (Auto)))))\mcdot{}
        THEN  (AssertBY  \mkleeneopen{}g  \mmember{}  a:A  fp->  B[a]\mkleeneclose{}  (All  (\mbackslash{}i.  (Fold  `fpf`  i  THEN  Complete  (Auto)))))\mcdot{})xxx




Home Index