Metamath Proof Explorer


Theorem madjusmdetlem3

Description: Lemma for madjusmdet . (Contributed by Thierry Arnoux, 27-Aug-2020)

Ref Expression
Hypotheses madjusmdet.b ⊢ B = Base A
madjusmdet.a ⊢ A = 1 … N Mat R
madjusmdet.d ⊢ D = 1 … N maDet R
madjusmdet.k ⊢ K = 1 … N maAdju R
madjusmdet.t ⊢ · ˙ = ⋅ R
madjusmdet.z ⊢ Z = ℤRHom ⁡ R
madjusmdet.e ⊢ E = 1 … N − 1 maDet R
madjusmdet.n ⊢ φ → N ∈ ℕ
madjusmdet.r ⊢ φ → R ∈ CRing
madjusmdet.i ⊢ φ → I ∈ 1 … N
madjusmdet.j ⊢ φ → J ∈ 1 … N
madjusmdet.m ⊢ φ → M ∈ B
madjusmdetlem2.p ⊢ P = i ∈ 1 … N ⟼ if i = 1 I if i ≤ I i − 1 i
madjusmdetlem2.s ⊢ S = i ∈ 1 … N ⟼ if i = 1 N if i ≤ N i − 1 i
madjusmdetlem4.q ⊢ Q = j ∈ 1 … N ⟼ if j = 1 J if j ≤ J j − 1 j
madjusmdetlem4.t ⊢ T = j ∈ 1 … N ⟼ if j = 1 N if j ≤ N j − 1 j
madjusmdetlem3.w ⊢ W = i ∈ 1 … N , j ∈ 1 … N ⟼ P ∘ S -1 ⁡ i U Q ∘ T -1 ⁡ j
madjusmdetlem3.u ⊢ φ → U ∈ B
Assertion madjusmdetlem3 ⊢ φ → I subMat 1 ⁡ U J = N subMat 1 ⁡ W N

Proof

Step Hyp Ref Expression
1 madjusmdet.b ⊢ B = Base A
2 madjusmdet.a ⊢ A = 1 … N Mat R
3 madjusmdet.d ⊢ D = 1 … N maDet R
4 madjusmdet.k ⊢ K = 1 … N maAdju R
5 madjusmdet.t ⊢ · ˙ = ⋅ R
6 madjusmdet.z ⊢ Z = ℤRHom ⁡ R
7 madjusmdet.e ⊢ E = 1 … N − 1 maDet R
8 madjusmdet.n ⊢ φ → N ∈ ℕ
9 madjusmdet.r ⊢ φ → R ∈ CRing
10 madjusmdet.i ⊢ φ → I ∈ 1 … N
11 madjusmdet.j ⊢ φ → J ∈ 1 … N
12 madjusmdet.m ⊢ φ → M ∈ B
13 madjusmdetlem2.p ⊢ P = i ∈ 1 … N ⟼ if i = 1 I if i ≤ I i − 1 i
14 madjusmdetlem2.s ⊢ S = i ∈ 1 … N ⟼ if i = 1 N if i ≤ N i − 1 i
15 madjusmdetlem4.q ⊢ Q = j ∈ 1 … N ⟼ if j = 1 J if j ≤ J j − 1 j
16 madjusmdetlem4.t ⊢ T = j ∈ 1 … N ⟼ if j = 1 N if j ≤ N j − 1 j
17 madjusmdetlem3.w ⊢ W = i ∈ 1 … N , j ∈ 1 … N ⟼ P ∘ S -1 ⁡ i U Q ∘ T -1 ⁡ j
18 madjusmdetlem3.u ⊢ φ → U ∈ B
19 nnuz ⊢ ℕ = ℤ ≥ 1
20 8 19 eleqtrdi ⊢ φ → N ∈ ℤ ≥ 1
21 fzdif2 ⊢ N ∈ ℤ ≥ 1 → 1 … N ∖ N = 1 … N − 1
22 20 21 syl ⊢ φ → 1 … N ∖ N = 1 … N − 1
23 difss ⊢ 1 … N ∖ N ⊆ 1 … N
24 22 23 eqsstrrdi ⊢ φ → 1 … N − 1 ⊆ 1 … N
25 24 adantr ⊢ φ ∧ i ∈ 1 … N − 1 ∧ j ∈ 1 … N − 1 → 1 … N − 1 ⊆ 1 … N
26 simprl ⊢ φ ∧ i ∈ 1 … N − 1 ∧ j ∈ 1 … N − 1 → i ∈ 1 … N − 1
27 25 26 sseldd ⊢ φ ∧ i ∈ 1 … N − 1 ∧ j ∈ 1 … N − 1 → i ∈ 1 … N
28 simprr ⊢ φ ∧ i ∈ 1 … N − 1 ∧ j ∈ 1 … N − 1 → j ∈ 1 … N − 1
29 25 28 sseldd ⊢ φ ∧ i ∈ 1 … N − 1 ∧ j ∈ 1 … N − 1 → j ∈ 1 … N
30 ovexd ⊢ φ ∧ i ∈ 1 … N − 1 ∧ j ∈ 1 … N − 1 → P ∘ S -1 ⁡ i U Q ∘ T -1 ⁡ j ∈ V
31 17 ovmpt4g ⊢ i ∈ 1 … N ∧ j ∈ 1 … N ∧ P ∘ S -1 ⁡ i U Q ∘ T -1 ⁡ j ∈ V → i W j = P ∘ S -1 ⁡ i U Q ∘ T -1 ⁡ j
32 27 29 30 31 syl3anc ⊢ φ ∧ i ∈ 1 … N − 1 ∧ j ∈ 1 … N − 1 → i W j = P ∘ S -1 ⁡ i U Q ∘ T -1 ⁡ j
33 26 28 ovresd ⊢ φ ∧ i ∈ 1 … N − 1 ∧ j ∈ 1 … N − 1 → i W ↾ 1 … N − 1 × 1 … N − 1 j = i W j
34 eqid ⊢ I subMat 1 ⁡ U J = I subMat 1 ⁡ U J
35 8 adantr ⊢ φ ∧ i ∈ 1 … N − 1 ∧ j ∈ 1 … N − 1 → N ∈ ℕ
36 10 adantr ⊢ φ ∧ i ∈ 1 … N − 1 ∧ j ∈ 1 … N − 1 → I ∈ 1 … N
37 11 adantr ⊢ φ ∧ i ∈ 1 … N − 1 ∧ j ∈ 1 … N − 1 → J ∈ 1 … N
38 eqid ⊢ Base R = Base R
39 2 38 1 matbas2i ⊢ U ∈ B → U ∈ Base R 1 … N × 1 … N
40 18 39 syl ⊢ φ → U ∈ Base R 1 … N × 1 … N
41 40 adantr ⊢ φ ∧ i ∈ 1 … N − 1 ∧ j ∈ 1 … N − 1 → U ∈ Base R 1 … N × 1 … N
42 fz1ssnn ⊢ 1 … N ⊆ ℕ
43 42 27 sselid ⊢ φ ∧ i ∈ 1 … N − 1 ∧ j ∈ 1 … N − 1 → i ∈ ℕ
44 42 29 sselid ⊢ φ ∧ i ∈ 1 … N − 1 ∧ j ∈ 1 … N − 1 → j ∈ ℕ
45 eqidd ⊢ φ ∧ i ∈ 1 … N − 1 ∧ j ∈ 1 … N − 1 → if i < I i i + 1 = if i < I i i + 1
46 eqidd ⊢ φ ∧ i ∈ 1 … N − 1 ∧ j ∈ 1 … N − 1 → if j < J j j + 1 = if j < J j j + 1
47 34 35 35 36 37 41 43 44 45 46 smatlem ⊢ φ ∧ i ∈ 1 … N − 1 ∧ j ∈ 1 … N − 1 → i I subMat 1 ⁡ U J j = if i < I i i + 1 U if j < J j j + 1
48 1 2 3 4 5 6 7 8 9 10 10 12 13 14 madjusmdetlem2 ⊢ φ ∧ i ∈ 1 … N − 1 → if i < I i i + 1 = P ∘ S -1 ⁡ i
49 26 48 syldan ⊢ φ ∧ i ∈ 1 … N − 1 ∧ j ∈ 1 … N − 1 → if i < I i i + 1 = P ∘ S -1 ⁡ i
50 1 2 3 4 5 6 7 8 9 11 11 12 15 16 madjusmdetlem2 ⊢ φ ∧ j ∈ 1 … N − 1 → if j < J j j + 1 = Q ∘ T -1 ⁡ j
51 28 50 syldan ⊢ φ ∧ i ∈ 1 … N − 1 ∧ j ∈ 1 … N − 1 → if j < J j j + 1 = Q ∘ T -1 ⁡ j
52 49 51 oveq12d ⊢ φ ∧ i ∈ 1 … N − 1 ∧ j ∈ 1 … N − 1 → if i < I i i + 1 U if j < J j j + 1 = P ∘ S -1 ⁡ i U Q ∘ T -1 ⁡ j
53 47 52 eqtrd ⊢ φ ∧ i ∈ 1 … N − 1 ∧ j ∈ 1 … N − 1 → i I subMat 1 ⁡ U J j = P ∘ S -1 ⁡ i U Q ∘ T -1 ⁡ j
54 32 33 53 3eqtr4rd ⊢ φ ∧ i ∈ 1 … N − 1 ∧ j ∈ 1 … N − 1 → i I subMat 1 ⁡ U J j = i W ↾ 1 … N − 1 × 1 … N − 1 j
55 54 ralrimivva ⊢ φ → ∀ i ∈ 1 … N − 1 ∀ j ∈ 1 … N − 1 i I subMat 1 ⁡ U J j = i W ↾ 1 … N − 1 × 1 … N − 1 j
56 eqid ⊢ Base 1 … N − 1 Mat R = Base 1 … N − 1 Mat R
57 2 1 56 34 8 10 11 18 smatcl ⊢ φ → I subMat 1 ⁡ U J ∈ Base 1 … N − 1 Mat R
58 fzfid ⊢ φ → 1 … N ∈ Fin
59 eqid ⊢ 1 … N = 1 … N
60 eqid ⊢ SymGrp ⁡ 1 … N = SymGrp ⁡ 1 … N
61 eqid ⊢ Base SymGrp ⁡ 1 … N = Base SymGrp ⁡ 1 … N
62 59 13 60 61 fzto1st ⊢ I ∈ 1 … N → P ∈ Base SymGrp ⁡ 1 … N
63 10 62 syl ⊢ φ → P ∈ Base SymGrp ⁡ 1 … N
64 eluzfz2 ⊢ N ∈ ℤ ≥ 1 → N ∈ 1 … N
65 20 64 syl ⊢ φ → N ∈ 1 … N
66 59 14 60 61 fzto1st ⊢ N ∈ 1 … N → S ∈ Base SymGrp ⁡ 1 … N
67 65 66 syl ⊢ φ → S ∈ Base SymGrp ⁡ 1 … N
68 eqid ⊢ inv g ⁡ SymGrp ⁡ 1 … N = inv g ⁡ SymGrp ⁡ 1 … N
69 60 61 68 symginv ⊢ S ∈ Base SymGrp ⁡ 1 … N → inv g ⁡ SymGrp ⁡ 1 … N ⁡ S = S -1
70 67 69 syl ⊢ φ → inv g ⁡ SymGrp ⁡ 1 … N ⁡ S = S -1
71 60 symggrp ⊢ 1 … N ∈ Fin → SymGrp ⁡ 1 … N ∈ Grp
72 58 71 syl ⊢ φ → SymGrp ⁡ 1 … N ∈ Grp
73 61 68 grpinvcl ⊢ SymGrp ⁡ 1 … N ∈ Grp ∧ S ∈ Base SymGrp ⁡ 1 … N → inv g ⁡ SymGrp ⁡ 1 … N ⁡ S ∈ Base SymGrp ⁡ 1 … N
74 72 67 73 syl2anc ⊢ φ → inv g ⁡ SymGrp ⁡ 1 … N ⁡ S ∈ Base SymGrp ⁡ 1 … N
75 70 74 eqeltrrd ⊢ φ → S -1 ∈ Base SymGrp ⁡ 1 … N
76 eqid ⊢ + SymGrp ⁡ 1 … N = + SymGrp ⁡ 1 … N
77 60 61 76 symgov ⊢ P ∈ Base SymGrp ⁡ 1 … N ∧ S -1 ∈ Base SymGrp ⁡ 1 … N → P + SymGrp ⁡ 1 … N S -1 = P ∘ S -1
78 60 61 76 symgcl ⊢ P ∈ Base SymGrp ⁡ 1 … N ∧ S -1 ∈ Base SymGrp ⁡ 1 … N → P + SymGrp ⁡ 1 … N S -1 ∈ Base SymGrp ⁡ 1 … N
79 77 78 eqeltrrd ⊢ P ∈ Base SymGrp ⁡ 1 … N ∧ S -1 ∈ Base SymGrp ⁡ 1 … N → P ∘ S -1 ∈ Base SymGrp ⁡ 1 … N
80 63 75 79 syl2anc ⊢ φ → P ∘ S -1 ∈ Base SymGrp ⁡ 1 … N
81 80 3ad2ant1 ⊢ φ ∧ i ∈ 1 … N ∧ j ∈ 1 … N → P ∘ S -1 ∈ Base SymGrp ⁡ 1 … N
82 simp2 ⊢ φ ∧ i ∈ 1 … N ∧ j ∈ 1 … N → i ∈ 1 … N
83 60 61 symgfv ⊢ P ∘ S -1 ∈ Base SymGrp ⁡ 1 … N ∧ i ∈ 1 … N → P ∘ S -1 ⁡ i ∈ 1 … N
84 81 82 83 syl2anc ⊢ φ ∧ i ∈ 1 … N ∧ j ∈ 1 … N → P ∘ S -1 ⁡ i ∈ 1 … N
85 59 15 60 61 fzto1st ⊢ J ∈ 1 … N → Q ∈ Base SymGrp ⁡ 1 … N
86 11 85 syl ⊢ φ → Q ∈ Base SymGrp ⁡ 1 … N
87 59 16 60 61 fzto1st ⊢ N ∈ 1 … N → T ∈ Base SymGrp ⁡ 1 … N
88 65 87 syl ⊢ φ → T ∈ Base SymGrp ⁡ 1 … N
89 60 61 68 symginv ⊢ T ∈ Base SymGrp ⁡ 1 … N → inv g ⁡ SymGrp ⁡ 1 … N ⁡ T = T -1
90 88 89 syl ⊢ φ → inv g ⁡ SymGrp ⁡ 1 … N ⁡ T = T -1
91 61 68 grpinvcl ⊢ SymGrp ⁡ 1 … N ∈ Grp ∧ T ∈ Base SymGrp ⁡ 1 … N → inv g ⁡ SymGrp ⁡ 1 … N ⁡ T ∈ Base SymGrp ⁡ 1 … N
92 72 88 91 syl2anc ⊢ φ → inv g ⁡ SymGrp ⁡ 1 … N ⁡ T ∈ Base SymGrp ⁡ 1 … N
93 90 92 eqeltrrd ⊢ φ → T -1 ∈ Base SymGrp ⁡ 1 … N
94 60 61 76 symgov ⊢ Q ∈ Base SymGrp ⁡ 1 … N ∧ T -1 ∈ Base SymGrp ⁡ 1 … N → Q + SymGrp ⁡ 1 … N T -1 = Q ∘ T -1
95 60 61 76 symgcl ⊢ Q ∈ Base SymGrp ⁡ 1 … N ∧ T -1 ∈ Base SymGrp ⁡ 1 … N → Q + SymGrp ⁡ 1 … N T -1 ∈ Base SymGrp ⁡ 1 … N
96 94 95 eqeltrrd ⊢ Q ∈ Base SymGrp ⁡ 1 … N ∧ T -1 ∈ Base SymGrp ⁡ 1 … N → Q ∘ T -1 ∈ Base SymGrp ⁡ 1 … N
97 86 93 96 syl2anc ⊢ φ → Q ∘ T -1 ∈ Base SymGrp ⁡ 1 … N
98 97 3ad2ant1 ⊢ φ ∧ i ∈ 1 … N ∧ j ∈ 1 … N → Q ∘ T -1 ∈ Base SymGrp ⁡ 1 … N
99 simp3 ⊢ φ ∧ i ∈ 1 … N ∧ j ∈ 1 … N → j ∈ 1 … N
100 60 61 symgfv ⊢ Q ∘ T -1 ∈ Base SymGrp ⁡ 1 … N ∧ j ∈ 1 … N → Q ∘ T -1 ⁡ j ∈ 1 … N
101 98 99 100 syl2anc ⊢ φ ∧ i ∈ 1 … N ∧ j ∈ 1 … N → Q ∘ T -1 ⁡ j ∈ 1 … N
102 18 3ad2ant1 ⊢ φ ∧ i ∈ 1 … N ∧ j ∈ 1 … N → U ∈ B
103 2 38 1 84 101 102 matecld ⊢ φ ∧ i ∈ 1 … N ∧ j ∈ 1 … N → P ∘ S -1 ⁡ i U Q ∘ T -1 ⁡ j ∈ Base R
104 2 38 1 58 9 103 matbas2d ⊢ φ → i ∈ 1 … N , j ∈ 1 … N ⟼ P ∘ S -1 ⁡ i U Q ∘ T -1 ⁡ j ∈ B
105 17 104 eqeltrid ⊢ φ → W ∈ B
106 2 1 submatres ⊢ N ∈ ℕ ∧ W ∈ B → N subMat 1 ⁡ W N = W ↾ 1 … N − 1 × 1 … N − 1
107 8 105 106 syl2anc ⊢ φ → N subMat 1 ⁡ W N = W ↾ 1 … N − 1 × 1 … N − 1
108 eqid ⊢ N subMat 1 ⁡ W N = N subMat 1 ⁡ W N
109 2 1 56 108 8 65 65 105 smatcl ⊢ φ → N subMat 1 ⁡ W N ∈ Base 1 … N − 1 Mat R
110 107 109 eqeltrrd ⊢ φ → W ↾ 1 … N − 1 × 1 … N − 1 ∈ Base 1 … N − 1 Mat R
111 eqid ⊢ 1 … N − 1 Mat R = 1 … N − 1 Mat R
112 111 56 eqmat ⊢ I subMat 1 ⁡ U J ∈ Base 1 … N − 1 Mat R ∧ W ↾ 1 … N − 1 × 1 … N − 1 ∈ Base 1 … N − 1 Mat R → I subMat 1 ⁡ U J = W ↾ 1 … N − 1 × 1 … N − 1 ↔ ∀ i ∈ 1 … N − 1 ∀ j ∈ 1 … N − 1 i I subMat 1 ⁡ U J j = i W ↾ 1 … N − 1 × 1 … N − 1 j
113 57 110 112 syl2anc ⊢ φ → I subMat 1 ⁡ U J = W ↾ 1 … N − 1 × 1 … N − 1 ↔ ∀ i ∈ 1 … N − 1 ∀ j ∈ 1 … N − 1 i I subMat 1 ⁡ U J j = i W ↾ 1 … N − 1 × 1 … N − 1 j
114 55 113 mpbird ⊢ φ → I subMat 1 ⁡ U J = W ↾ 1 … N − 1 × 1 … N − 1
115 114 107 eqtr4d ⊢ φ → I subMat 1 ⁡ U J = N subMat 1 ⁡ W N