File tree Expand file tree Collapse file tree 1 file changed +8
-0
lines changed Expand file tree Collapse file tree 1 file changed +8
-0
lines changed Original file line number Diff line number Diff line change @@ -1380,6 +1380,14 @@ def subtypeProdEquivProd {p : α → Prop} {q : β → Prop} :
1380
1380
right_inv := fun ⟨⟨_, _⟩, ⟨_, _⟩⟩ => rfl
1381
1381
#align equiv.subtype_prod_equiv_prod Equiv.subtypeProdEquivProd
1382
1382
1383
+ /-- A subtype of a `Prod` that depends only on the first component is equivalent to the
1384
+ corresponding subtype of the first type times the second type. -/
1385
+ def prodSubtypeFstEquivSubtypeProd {p : α → Prop } : {s : α × β // p s.1 } ≃ {a // p a} × β where
1386
+ toFun x := ⟨⟨x.1 .1 , x.2 ⟩, x.1 .2 ⟩
1387
+ invFun x := ⟨⟨x.1 .1 , x.2 ⟩, x.1 .2 ⟩
1388
+ left_inv _ := rfl
1389
+ right_inv _ := rfl
1390
+
1383
1391
/-- A subtype of a `Prod` is equivalent to a sigma type whose fibers are subtypes. -/
1384
1392
def subtypeProdEquivSigmaSubtype (p : α → β → Prop ) :
1385
1393
{ x : α × β // p x.1 x.2 } ≃ Σa, { b : β // p a b } where
You can’t perform that action at this time.
0 commit comments