Consistent symmetric binary prescriptions on two witness lists
Lax342547.SymmetricPrescriptions · concepts/Lax342547/SymmetricPrescriptions.lean · lax-342547
No public endorsements yet.
Loading review…
Sign in with ORCIDNatural Language Statement
Theorem
The two lists are nonempty and disjoint, represented by a sum type. Prescribed list sums of every row of a symmetric binary matrix are compatible with its fixed diagonal precisely through the two self-sum conditions and the equality of the cross totals. The sufficiency proof constructs the matrix explicitly.
Concept map
Evidence
Lean source view on GitHub
| 1 | import Lax342547.MomentSpace |
| 2 | import Mathlib.Data.Matrix.Block |
| 3 | |
| 4 | /-! |
| 5 | --- |
| 6 | title: Consistent symmetric binary prescriptions on two witness lists |
| 7 | type: theorem |
| 8 | --- |
| 9 | The two lists are nonempty and disjoint, represented by a sum type. |
| 10 | Prescribed list sums of every row of a symmetric binary matrix are |
| 11 | compatible with its fixed diagonal precisely through the two self-sum |
| 12 | conditions and the equality of the cross totals. The sufficiency proof |
| 13 | constructs the matrix explicitly. |
| 14 | -/ |
| 15 | |
| 16 | namespace Lax342547.SymmetricPrescriptions |
| 17 | |
| 18 | open Lax342547.MomentSpace |
| 19 | |
| 20 | axiom diagonal_rows {I : Type} [Fintype I] [Nonempty I] |
| 21 | (a c : I → Binary) (h : ∑ i, c i = ∑ i, a i) : |
| 22 | ∃ M : Matrix I I Binary, (∀ i j, M i j = M j i) ∧ |
| 23 | (∀ i, M i i = a i) ∧ ∀ i, ∑ j, M i j = c i |
| 24 | |
| 25 | axiom rectangular_sums {I J : Type} [Fintype I] [Fintype J] [Nonempty I] [Nonempty J] |
| 26 | (r : I → Binary) (c : J → Binary) (h : ∑ i, r i = ∑ j, c j) : |
| 27 | ∃ M : Matrix I J Binary, (∀ i, ∑ j, M i j = r i) ∧ ∀ j, ∑ i, M i j = c j |
| 28 | |
| 29 | axiom two_lists {I J : Type} [Fintype I] [Fintype J] [Nonempty I] [Nonempty J] |
| 30 | (a c₁ c₂ : I ⊕ J → Binary) |
| 31 | (h₁ : ∑ i : I, c₁ (Sum.inl i) = ∑ i : I, a (Sum.inl i)) |
| 32 | (h₂ : ∑ j : J, c₂ (Sum.inr j) = ∑ j : J, a (Sum.inr j)) |
| 33 | (hcross : ∑ i : I, c₂ (Sum.inl i) = ∑ j : J, c₁ (Sum.inr j)) : |
| 34 | ∃ M : Matrix (I ⊕ J) (I ⊕ J) Binary, (∀ x y, M x y = M y x) ∧ |
| 35 | (∀ x, M x x = a x) ∧ (∀ x, ∑ i : I, M x (Sum.inl i) = c₁ x) ∧ |
| 36 | ∀ x, ∑ j : J, M x (Sum.inr j) = c₂ x |
| 37 | |
| 38 | end Lax342547.SymmetricPrescriptions |
| 39 |
Discussion
Ask a question or add context. Endorsements and structured flags are kept in the review panel above.
0 comments