Step * of Lemma equipollent-product-product

[A:Type]. ∀[B:A ⟶ Type]. ∀[C:a:A ⟶ B[a] ⟶ Type].  x:A ⟶ y:B[x] ⟶ C[x;y] p:(a:A × B[a]) ⟶ C[fst(p);snd(p)]
BY
(Auto THEN (With ⌜λF,p. let x,y in y⌝ (D 0)⋅ THENA Auto) THEN THEN RepUR ``inject surject`` THEN Auto) }

1
1. Type
2. A ⟶ Type
3. 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 in a1 y) p.let x,y in a2 y) ∈ (p:(a:A × B[a]) ⟶ C[fst(p);snd(p)])
⊢ a1 a2 ∈ (x:A ⟶ y:B[x] ⟶ C[x;y])

2
1. [A] Type
2. [B] A ⟶ Type
3. [C] a:A ⟶ B[a] ⟶ Type
4. p:(a:A × B[a]) ⟶ C[fst(p);snd(p)]
⊢ ∃a:x:A ⟶ y:B[x] ⟶ C[x;y]. ((λp.let x,y in y) b ∈ (p:(a:A × B[a]) ⟶ C[fst(p);snd(p)]))


Latex:


Latex:
\mforall{}[A:Type].  \mforall{}[B:A  {}\mrightarrow{}  Type].  \mforall{}[C:a:A  {}\mrightarrow{}  B[a]  {}\mrightarrow{}  Type].
    x:A  {}\mrightarrow{}  y:B[x]  {}\mrightarrow{}  C[x;y]  \msim{}  p:(a:A  \mtimes{}  B[a])  {}\mrightarrow{}  C[fst(p);snd(p)]


By


Latex:
(Auto
  THEN  (With  \mkleeneopen{}\mlambda{}F,p.  let  x,y  =  p  in  F  x  y\mkleeneclose{}  (D  0)\mcdot{}  THENA  Auto)
  THEN  D  0
  THEN  RepUR  ``inject  surject``  0
  THEN  Auto)




Home Index