Step
*
1
1
1
1
1
of Lemma
equipollent-product-sum
1. A : Type
2. B : A ⟶ Type
3. C : a:A ⟶ B[a] ⟶ Type
4. a1 : x:A ⟶ (y:B[x] × C[x;y])
5. a2 : x:A ⟶ (y:B[x] × C[x;y])
6. (λx.(fst((a1 x)))) = (λx.(fst((a2 x)))) ∈ (a:A ⟶ B[a])
7. (λx.(snd((a1 x)))) = (λx.(snd((a2 x)))) ∈ (x:A ⟶ C[x;fst((a1 x))])
8. x : A
9. v : y:B[x] × C[x;y]
10. (a1 x) = v ∈ (y:B[x] × C[x;y])
11. v1 : y:B[x] × C[x;y]
12. (a2 x) = v1 ∈ (y:B[x] × C[x;y])
⊢ ((fst(v)) = (fst(v1)) ∈ B[x]) 
⇒ ((snd(v)) = (snd(v1)) ∈ C[x;fst(v)]) 
⇒ (v = v1 ∈ (y:B[x] × C[x;y]))
BY
{ (D -4 THEN D -2 THEN Reduce 0 THEN Auto) }
Latex:
Latex:
1.  A  :  Type
2.  B  :  A  {}\mrightarrow{}  Type
3.  C  :  a:A  {}\mrightarrow{}  B[a]  {}\mrightarrow{}  Type
4.  a1  :  x:A  {}\mrightarrow{}  (y:B[x]  \mtimes{}  C[x;y])
5.  a2  :  x:A  {}\mrightarrow{}  (y:B[x]  \mtimes{}  C[x;y])
6.  (\mlambda{}x.(fst((a1  x))))  =  (\mlambda{}x.(fst((a2  x))))
7.  (\mlambda{}x.(snd((a1  x))))  =  (\mlambda{}x.(snd((a2  x))))
8.  x  :  A
9.  v  :  y:B[x]  \mtimes{}  C[x;y]
10.  (a1  x)  =  v
11.  v1  :  y:B[x]  \mtimes{}  C[x;y]
12.  (a2  x)  =  v1
\mvdash{}  ((fst(v))  =  (fst(v1)))  {}\mRightarrow{}  ((snd(v))  =  (snd(v1)))  {}\mRightarrow{}  (v  =  v1)
By
Latex:
(D  -4  THEN  D  -2  THEN  Reduce  0  THEN  Auto)
Home
Index