Independent permutations of free row entries #
@[reducible, inline]
Independent permutations of the unfilled positions in each row.
Equations
- LatinQuarter.RowChoices P = ((r : Fin n) → Equiv.Perm (LatinQuarter.FreeColumn P r))
Instances For
noncomputable def
LatinQuarter.chosenSquare
{n : ℕ}
(P : Finset (Cell n))
(L : Square n)
(σ : RowChoices P)
:
Square n
Permute the symbols of each row only within its unfilled cells.
Equations
- LatinQuarter.chosenSquare P L σ r c = L r (((σ r).subtypeCongr (Equiv.refl { a : Fin n // ¬(r, a) ∉ P })) c)
Instances For
@[simp]
theorem
LatinQuarter.chosenSquare_free
{n : ℕ}
(P : Finset (Cell n))
(L : Square n)
(σ : RowChoices P)
(r : Fin n)
(c : FreeColumn P r)
:
@[simp]
theorem
LatinQuarter.chosenSquare_rows
{n : ℕ}
(P : Finset (Cell n))
(L : Square n)
(hL : IsLatin L)
(σ : RowChoices P)
(r : Fin n)
:
Function.Bijective (chosenSquare P L σ r)
theorem
LatinQuarter.chosenSquare_agrees
{n : ℕ}
(P : Finset (Cell n))
(L : Square n)
(σ : RowChoices P)
:
Agrees P L (chosenSquare P L σ)
theorem
LatinQuarter.unique_chosenSquare
{n : ℕ}
(P : Finset (Cell n))
(L : Square n)
(h : IsDefining P L)
(σ : RowChoices P)
(hσ : IsLatin (chosenSquare P L σ))
:
theorem
LatinQuarter.det_eq_matching_sum
{R : Type u_1}
{ι : Type u_2}
[CommRing R]
[CharP R 2]
[Fintype ι]
[DecidableEq ι]
(M : Matrix ι ι R)
:
In characteristic two the determinant is exactly the unsigned matching sum, written with a choice in each selected row.