Order properties on tuples #
@[simp]
theorem
strictMono_vecCons
{α : Type u_1}
[Preorder α]
{n : ℕ}
{f : Fin (n + 1) → α}
{a : α}
:
StrictMono (Matrix.vecCons a f) ↔ a < f 0 ∧ StrictMono f
@[simp]
theorem
strictAnti_vecCons
{α : Type u_1}
[Preorder α]
{n : ℕ}
{f : Fin (n + 1) → α}
{a : α}
:
StrictAnti (Matrix.vecCons a f) ↔ f 0 < a ∧ StrictAnti f
theorem
StrictMono.vecCons
{α : Type u_1}
[Preorder α]
{n : ℕ}
{f : Fin (n + 1) → α}
{a : α}
(hf : StrictMono f)
(ha : a < f 0)
:
StrictMono (Matrix.vecCons a f)
theorem
StrictAnti.vecCons
{α : Type u_1}
[Preorder α]
{n : ℕ}
{f : Fin (n + 1) → α}
{a : α}
(hf : StrictAnti f)
(ha : f 0 < a)
:
StrictAnti (Matrix.vecCons a f)
Π i : Fin 2, α i
is order equivalent to α 0 × α 1
. See also OrderIso.finTwoArrowEquiv
for a non-dependent version.
Equations
- OrderIso.piFinTwoIso α = { toEquiv := piFinTwoEquiv α, map_rel_iff' := ⋯ }
Instances For
The space of functions Fin 2 → α
is order equivalent to α × α
. See also
OrderIso.piFinTwoIso
.
Equations
- OrderIso.finTwoArrowIso α = let __src := OrderIso.piFinTwoIso fun (x : Fin 2) => α; { toEquiv := finTwoArrowEquiv α, map_rel_iff' := ⋯ }
Instances For
def
OrderIso.piFinSuccAboveIso
{n : ℕ}
(α : Fin (n + 1) → Type u_2)
[(i : Fin (n + 1)) → LE (α i)]
(i : Fin (n + 1))
:
Order isomorphism between Π j : Fin (n + 1), α j
and
α i × Π j : Fin n, α (Fin.succAbove i j)
.
Equations
- OrderIso.piFinSuccAboveIso α i = { toEquiv := Equiv.piFinSuccAbove α i, map_rel_iff' := ⋯ }
Instances For
Fin.succAbove
as an order isomorphism between Fin n
and {x : Fin (n + 1) // x ≠ p}
.
Equations
- finSuccAboveOrderIso p = let __spread.0 := finSuccAboveEquiv p; { toEquiv := __spread.0, map_rel_iff' := ⋯ }
Instances For
theorem
finSuccAboveOrderIso_apply
{n : ℕ}
(p : Fin (n + 1))
(i : Fin n)
:
(finSuccAboveOrderIso p) i = ⟨p.succAbove i, ⋯⟩
theorem
finSuccAboveOrderIso_symm_apply_last
{n : ℕ}
(x : { x : Fin (n + 1) // x ≠ Fin.last n })
:
(finSuccAboveOrderIso (Fin.last n)).symm x = (↑x).castLT ⋯
@[simp]
theorem
Fin.castLEOrderIso_apply
{n : ℕ}
{m : ℕ}
(h : n ≤ m)
(i : Fin n)
:
(Fin.castLEOrderIso h) i = ⟨Fin.castLE h i, ⋯⟩
@[simp]
theorem
Fin.castLEOrderIso_symm_apply
{n : ℕ}
{m : ℕ}
(h : n ≤ m)
(i : { i : Fin m // ↑i < n })
:
(RelIso.symm (Fin.castLEOrderIso h)) i = ⟨↑↑i, ⋯⟩
Promote a Fin n
into a larger Fin m
, as a subtype where the underlying
values are retained. This is the OrderIso
version of Fin.castLE
.
Equations
- Fin.castLEOrderIso h = { toFun := fun (i : Fin n) => ⟨Fin.castLE h i, ⋯⟩, invFun := fun (i : { i : Fin m // ↑i < n }) => ⟨↑↑i, ⋯⟩, left_inv := ⋯, right_inv := ⋯, map_rel_iff' := ⋯ }