Step * of Lemma finite-type-union

[A,B:Type].  (finite-type(A)  finite-type(B)  finite-type(A B))
BY
((((((Auto THEN (All (RWO "finite-type-iff-list"))) THENA Auto)
      THEN ExRepD
      THEN (InstConcl [⌜map(λx.(inl x);L1) map(λx.(inr );L)⌝])⋅
      THEN Auto
      THEN RWO "member_append" 0)
     THENA Auto
     )
    THEN RWO "member_map" 0
    )
   THENA (Reduce THEN Auto)
   }

1
1. [A] Type
2. [B] Type
3. L1 List
4. ∀x:A. (x ∈ L1)
5. List
6. ∀x:B. (x ∈ L)
7. B@i
⊢ (∃y:A. ((y ∈ L1) ∧ (x ((λx.(inl x)) y) ∈ (A B)))) ∨ (∃y:B. ((y ∈ L) ∧ (x ((λx.(inr )) y) ∈ (A B))))


Latex:


Latex:
\mforall{}[A,B:Type].    (finite-type(A)  {}\mRightarrow{}  finite-type(B)  {}\mRightarrow{}  finite-type(A  +  B))


By


Latex:
((((((Auto  THEN  (All  (RWO  "finite-type-iff-list")))  THENA  Auto)
        THEN  ExRepD
        THEN  (InstConcl  [\mkleeneopen{}map(\mlambda{}x.(inl  x);L1)  @  map(\mlambda{}x.(inr  x  );L)\mkleeneclose{}])\mcdot{}
        THEN  Auto
        THEN  RWO  "member\_append"  0)
      THENA  Auto
      )
    THEN  RWO  "member\_map"  0
    )
  THENA  (Reduce  0  THEN  Auto)
  )




Home Index