Step
*
1
of Lemma
equipollent-product-product
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. (λp.let x,y = p in a1 x y) = (λp.let x,y = p in a2 x y) ∈ (p:(a:A × B[a]) ⟶ C[fst(p);snd(p)])
⊢ a1 = a2 ∈ (x:A ⟶ y:B[x] ⟶ C[x;y])
BY
{ TACTIC:RepeatFor 2 ((Ext THENA Auto)) }
1
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. (λp.let x,y = p in a1 x y) = (λp.let x,y = p in a2 x y) ∈ (p:(a:A × B[a]) ⟶ C[fst(p);snd(p)])
7. x : A
8. x1 : B[x]
⊢ (a1 x x1) = (a2 x x1) ∈ C[x;x1]
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]  {}\mrightarrow{}  C[x;y]
5.  a2  :  x:A  {}\mrightarrow{}  y:B[x]  {}\mrightarrow{}  C[x;y]
6.  (\mlambda{}p.let  x,y  =  p  in  a1  x  y)  =  (\mlambda{}p.let  x,y  =  p  in  a2  x  y)
\mvdash{}  a1  =  a2
By
Latex:
TACTIC:RepeatFor  2  ((Ext  THENA  Auto))
Home
Index