Metamath Proof Explorer < Previous   Next > Nearby theorems Mirrors  >  Home  >  MPE Home  >  Th. List  >  madutpos Structured version   Visualization version   GIF version

 Description: The adjuct of a transposed matrix is the transposition of the adjunct of the matrix. (Contributed by Stefan O'Rear, 17-Jul-2018.)
Hypotheses
Ref Expression
maduf.a 𝐴 = (𝑁 Mat 𝑅)
Assertion
Ref Expression
madutpos ((𝑅 ∈ CRing ∧ 𝑀𝐵) → (𝐽‘tpos 𝑀) = tpos (𝐽𝑀))

Dummy variables 𝑎 𝑏 𝑐 𝑑 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 eqid 2621 . . . . . . . . 9 (𝑑𝑁, 𝑐𝑁 ↦ if((𝑑 = 𝑎𝑐 = 𝑏), if((𝑐 = 𝑏𝑑 = 𝑎), (1r𝑅), (0g𝑅)), (𝑑𝑀𝑐))) = (𝑑𝑁, 𝑐𝑁 ↦ if((𝑑 = 𝑎𝑐 = 𝑏), if((𝑐 = 𝑏𝑑 = 𝑎), (1r𝑅), (0g𝑅)), (𝑑𝑀𝑐)))
21tposmpt2 7341 . . . . . . . 8 tpos (𝑑𝑁, 𝑐𝑁 ↦ if((𝑑 = 𝑎𝑐 = 𝑏), if((𝑐 = 𝑏𝑑 = 𝑎), (1r𝑅), (0g𝑅)), (𝑑𝑀𝑐))) = (𝑐𝑁, 𝑑𝑁 ↦ if((𝑑 = 𝑎𝑐 = 𝑏), if((𝑐 = 𝑏𝑑 = 𝑎), (1r𝑅), (0g𝑅)), (𝑑𝑀𝑐)))
3 orcom 402 . . . . . . . . . . 11 ((𝑑 = 𝑎𝑐 = 𝑏) ↔ (𝑐 = 𝑏𝑑 = 𝑎))
43a1i 11 . . . . . . . . . 10 (((𝑅 ∈ CRing ∧ 𝑀𝐵) ∧ (𝑎𝑁𝑏𝑁)) → ((𝑑 = 𝑎𝑐 = 𝑏) ↔ (𝑐 = 𝑏𝑑 = 𝑎)))
5 ancom 466 . . . . . . . . . . . 12 ((𝑐 = 𝑏𝑑 = 𝑎) ↔ (𝑑 = 𝑎𝑐 = 𝑏))
65a1i 11 . . . . . . . . . . 11 (((𝑅 ∈ CRing ∧ 𝑀𝐵) ∧ (𝑎𝑁𝑏𝑁)) → ((𝑐 = 𝑏𝑑 = 𝑎) ↔ (𝑑 = 𝑎𝑐 = 𝑏)))
76ifbid 4085 . . . . . . . . . 10 (((𝑅 ∈ CRing ∧ 𝑀𝐵) ∧ (𝑎𝑁𝑏𝑁)) → if((𝑐 = 𝑏𝑑 = 𝑎), (1r𝑅), (0g𝑅)) = if((𝑑 = 𝑎𝑐 = 𝑏), (1r𝑅), (0g𝑅)))
8 ovtpos 7319 . . . . . . . . . . . 12 (𝑐tpos 𝑀𝑑) = (𝑑𝑀𝑐)
98eqcomi 2630 . . . . . . . . . . 11 (𝑑𝑀𝑐) = (𝑐tpos 𝑀𝑑)
109a1i 11 . . . . . . . . . 10 (((𝑅 ∈ CRing ∧ 𝑀𝐵) ∧ (𝑎𝑁𝑏𝑁)) → (𝑑𝑀𝑐) = (𝑐tpos 𝑀𝑑))
114, 7, 10ifbieq12d 4090 . . . . . . . . 9 (((𝑅 ∈ CRing ∧ 𝑀𝐵) ∧ (𝑎𝑁𝑏𝑁)) → if((𝑑 = 𝑎𝑐 = 𝑏), if((𝑐 = 𝑏𝑑 = 𝑎), (1r𝑅), (0g𝑅)), (𝑑𝑀𝑐)) = if((𝑐 = 𝑏𝑑 = 𝑎), if((𝑑 = 𝑎𝑐 = 𝑏), (1r𝑅), (0g𝑅)), (𝑐tpos 𝑀𝑑)))
1211mpt2eq3dv 6681 . . . . . . . 8 (((𝑅 ∈ CRing ∧ 𝑀𝐵) ∧ (𝑎𝑁𝑏𝑁)) → (𝑐𝑁, 𝑑𝑁 ↦ if((𝑑 = 𝑎𝑐 = 𝑏), if((𝑐 = 𝑏𝑑 = 𝑎), (1r𝑅), (0g𝑅)), (𝑑𝑀𝑐))) = (𝑐𝑁, 𝑑𝑁 ↦ if((𝑐 = 𝑏𝑑 = 𝑎), if((𝑑 = 𝑎𝑐 = 𝑏), (1r𝑅), (0g𝑅)), (𝑐tpos 𝑀𝑑))))
132, 12syl5eq 2667 . . . . . . 7 (((𝑅 ∈ CRing ∧ 𝑀𝐵) ∧ (𝑎𝑁𝑏𝑁)) → tpos (𝑑𝑁, 𝑐𝑁 ↦ if((𝑑 = 𝑎𝑐 = 𝑏), if((𝑐 = 𝑏𝑑 = 𝑎), (1r𝑅), (0g𝑅)), (𝑑𝑀𝑐))) = (𝑐𝑁, 𝑑𝑁 ↦ if((𝑐 = 𝑏𝑑 = 𝑎), if((𝑑 = 𝑎𝑐 = 𝑏), (1r𝑅), (0g𝑅)), (𝑐tpos 𝑀𝑑))))
1413fveq2d 6157 . . . . . 6 (((𝑅 ∈ CRing ∧ 𝑀𝐵) ∧ (𝑎𝑁𝑏𝑁)) → ((𝑁 maDet 𝑅)‘tpos (𝑑𝑁, 𝑐𝑁 ↦ if((𝑑 = 𝑎𝑐 = 𝑏), if((𝑐 = 𝑏𝑑 = 𝑎), (1r𝑅), (0g𝑅)), (𝑑𝑀𝑐)))) = ((𝑁 maDet 𝑅)‘(𝑐𝑁, 𝑑𝑁 ↦ if((𝑐 = 𝑏𝑑 = 𝑎), if((𝑑 = 𝑎𝑐 = 𝑏), (1r𝑅), (0g𝑅)), (𝑐tpos 𝑀𝑑)))))
15 simpll 789 . . . . . . 7 (((𝑅 ∈ CRing ∧ 𝑀𝐵) ∧ (𝑎𝑁𝑏𝑁)) → 𝑅 ∈ CRing)
16 maduf.a . . . . . . . 8 𝐴 = (𝑁 Mat 𝑅)
17 eqid 2621 . . . . . . . 8 (Base‘𝑅) = (Base‘𝑅)
18 maduf.b . . . . . . . 8 𝐵 = (Base‘𝐴)
1916, 18matrcl 20150 . . . . . . . . . 10 (𝑀𝐵 → (𝑁 ∈ Fin ∧ 𝑅 ∈ V))
2019simpld 475 . . . . . . . . 9 (𝑀𝐵𝑁 ∈ Fin)
2120ad2antlr 762 . . . . . . . 8 (((𝑅 ∈ CRing ∧ 𝑀𝐵) ∧ (𝑎𝑁𝑏𝑁)) → 𝑁 ∈ Fin)
22 simp1ll 1122 . . . . . . . . . 10 ((((𝑅 ∈ CRing ∧ 𝑀𝐵) ∧ (𝑎𝑁𝑏𝑁)) ∧ 𝑑𝑁𝑐𝑁) → 𝑅 ∈ CRing)
23 crngring 18490 . . . . . . . . . 10 (𝑅 ∈ CRing → 𝑅 ∈ Ring)
24 eqid 2621 . . . . . . . . . . . 12 (1r𝑅) = (1r𝑅)
2517, 24ringidcl 18500 . . . . . . . . . . 11 (𝑅 ∈ Ring → (1r𝑅) ∈ (Base‘𝑅))
26 eqid 2621 . . . . . . . . . . . 12 (0g𝑅) = (0g𝑅)
2717, 26ring0cl 18501 . . . . . . . . . . 11 (𝑅 ∈ Ring → (0g𝑅) ∈ (Base‘𝑅))
2825, 27ifcld 4108 . . . . . . . . . 10 (𝑅 ∈ Ring → if((𝑐 = 𝑏𝑑 = 𝑎), (1r𝑅), (0g𝑅)) ∈ (Base‘𝑅))
2922, 23, 283syl 18 . . . . . . . . 9 ((((𝑅 ∈ CRing ∧ 𝑀𝐵) ∧ (𝑎𝑁𝑏𝑁)) ∧ 𝑑𝑁𝑐𝑁) → if((𝑐 = 𝑏𝑑 = 𝑎), (1r𝑅), (0g𝑅)) ∈ (Base‘𝑅))
3016, 17, 18matbas2i 20160 . . . . . . . . . . . . 13 (𝑀𝐵𝑀 ∈ ((Base‘𝑅) ↑𝑚 (𝑁 × 𝑁)))
31 elmapi 7831 . . . . . . . . . . . . 13 (𝑀 ∈ ((Base‘𝑅) ↑𝑚 (𝑁 × 𝑁)) → 𝑀:(𝑁 × 𝑁)⟶(Base‘𝑅))
3230, 31syl 17 . . . . . . . . . . . 12 (𝑀𝐵𝑀:(𝑁 × 𝑁)⟶(Base‘𝑅))
3332ad2antlr 762 . . . . . . . . . . 11 (((𝑅 ∈ CRing ∧ 𝑀𝐵) ∧ (𝑎𝑁𝑏𝑁)) → 𝑀:(𝑁 × 𝑁)⟶(Base‘𝑅))
3433fovrnda 6765 . . . . . . . . . 10 ((((𝑅 ∈ CRing ∧ 𝑀𝐵) ∧ (𝑎𝑁𝑏𝑁)) ∧ (𝑑𝑁𝑐𝑁)) → (𝑑𝑀𝑐) ∈ (Base‘𝑅))
35343impb 1257 . . . . . . . . 9 ((((𝑅 ∈ CRing ∧ 𝑀𝐵) ∧ (𝑎𝑁𝑏𝑁)) ∧ 𝑑𝑁𝑐𝑁) → (𝑑𝑀𝑐) ∈ (Base‘𝑅))
3629, 35ifcld 4108 . . . . . . . 8 ((((𝑅 ∈ CRing ∧ 𝑀𝐵) ∧ (𝑎𝑁𝑏𝑁)) ∧ 𝑑𝑁𝑐𝑁) → if((𝑑 = 𝑎𝑐 = 𝑏), if((𝑐 = 𝑏𝑑 = 𝑎), (1r𝑅), (0g𝑅)), (𝑑𝑀𝑐)) ∈ (Base‘𝑅))
3716, 17, 18, 21, 15, 36matbas2d 20161 . . . . . . 7 (((𝑅 ∈ CRing ∧ 𝑀𝐵) ∧ (𝑎𝑁𝑏𝑁)) → (𝑑𝑁, 𝑐𝑁 ↦ if((𝑑 = 𝑎𝑐 = 𝑏), if((𝑐 = 𝑏𝑑 = 𝑎), (1r𝑅), (0g𝑅)), (𝑑𝑀𝑐))) ∈ 𝐵)
38 eqid 2621 . . . . . . . 8 (𝑁 maDet 𝑅) = (𝑁 maDet 𝑅)
3938, 16, 18mdettpos 20349 . . . . . . 7 ((𝑅 ∈ CRing ∧ (𝑑𝑁, 𝑐𝑁 ↦ if((𝑑 = 𝑎𝑐 = 𝑏), if((𝑐 = 𝑏𝑑 = 𝑎), (1r𝑅), (0g𝑅)), (𝑑𝑀𝑐))) ∈ 𝐵) → ((𝑁 maDet 𝑅)‘tpos (𝑑𝑁, 𝑐𝑁 ↦ if((𝑑 = 𝑎𝑐 = 𝑏), if((𝑐 = 𝑏𝑑 = 𝑎), (1r𝑅), (0g𝑅)), (𝑑𝑀𝑐)))) = ((𝑁 maDet 𝑅)‘(𝑑𝑁, 𝑐𝑁 ↦ if((𝑑 = 𝑎𝑐 = 𝑏), if((𝑐 = 𝑏𝑑 = 𝑎), (1r𝑅), (0g𝑅)), (𝑑𝑀𝑐)))))
4015, 37, 39syl2anc 692 . . . . . 6 (((𝑅 ∈ CRing ∧ 𝑀𝐵) ∧ (𝑎𝑁𝑏𝑁)) → ((𝑁 maDet 𝑅)‘tpos (𝑑𝑁, 𝑐𝑁 ↦ if((𝑑 = 𝑎𝑐 = 𝑏), if((𝑐 = 𝑏𝑑 = 𝑎), (1r𝑅), (0g𝑅)), (𝑑𝑀𝑐)))) = ((𝑁 maDet 𝑅)‘(𝑑𝑁, 𝑐𝑁 ↦ if((𝑑 = 𝑎𝑐 = 𝑏), if((𝑐 = 𝑏𝑑 = 𝑎), (1r𝑅), (0g𝑅)), (𝑑𝑀𝑐)))))
4114, 40eqtr3d 2657 . . . . 5 (((𝑅 ∈ CRing ∧ 𝑀𝐵) ∧ (𝑎𝑁𝑏𝑁)) → ((𝑁 maDet 𝑅)‘(𝑐𝑁, 𝑑𝑁 ↦ if((𝑐 = 𝑏𝑑 = 𝑎), if((𝑑 = 𝑎𝑐 = 𝑏), (1r𝑅), (0g𝑅)), (𝑐tpos 𝑀𝑑)))) = ((𝑁 maDet 𝑅)‘(𝑑𝑁, 𝑐𝑁 ↦ if((𝑑 = 𝑎𝑐 = 𝑏), if((𝑐 = 𝑏𝑑 = 𝑎), (1r𝑅), (0g𝑅)), (𝑑𝑀𝑐)))))
4216, 18mattposcl 20191 . . . . . . . 8 (𝑀𝐵 → tpos 𝑀𝐵)
4342adantl 482 . . . . . . 7 ((𝑅 ∈ CRing ∧ 𝑀𝐵) → tpos 𝑀𝐵)
4443adantr 481 . . . . . 6 (((𝑅 ∈ CRing ∧ 𝑀𝐵) ∧ (𝑎𝑁𝑏𝑁)) → tpos 𝑀𝐵)
45 simprl 793 . . . . . 6 (((𝑅 ∈ CRing ∧ 𝑀𝐵) ∧ (𝑎𝑁𝑏𝑁)) → 𝑎𝑁)
46 simprr 795 . . . . . 6 (((𝑅 ∈ CRing ∧ 𝑀𝐵) ∧ (𝑎𝑁𝑏𝑁)) → 𝑏𝑁)
47 maduf.j . . . . . . 7 𝐽 = (𝑁 maAdju 𝑅)
4816, 38, 47, 18, 24, 26maducoeval2 20378 . . . . . 6 (((𝑅 ∈ CRing ∧ tpos 𝑀𝐵) ∧ 𝑎𝑁𝑏𝑁) → (𝑎(𝐽‘tpos 𝑀)𝑏) = ((𝑁 maDet 𝑅)‘(𝑐𝑁, 𝑑𝑁 ↦ if((𝑐 = 𝑏𝑑 = 𝑎), if((𝑑 = 𝑎𝑐 = 𝑏), (1r𝑅), (0g𝑅)), (𝑐tpos 𝑀𝑑)))))
4915, 44, 45, 46, 48syl211anc 1329 . . . . 5 (((𝑅 ∈ CRing ∧ 𝑀𝐵) ∧ (𝑎𝑁𝑏𝑁)) → (𝑎(𝐽‘tpos 𝑀)𝑏) = ((𝑁 maDet 𝑅)‘(𝑐𝑁, 𝑑𝑁 ↦ if((𝑐 = 𝑏𝑑 = 𝑎), if((𝑑 = 𝑎𝑐 = 𝑏), (1r𝑅), (0g𝑅)), (𝑐tpos 𝑀𝑑)))))
50 simplr 791 . . . . . 6 (((𝑅 ∈ CRing ∧ 𝑀𝐵) ∧ (𝑎𝑁𝑏𝑁)) → 𝑀𝐵)
5116, 38, 47, 18, 24, 26maducoeval2 20378 . . . . . 6 (((𝑅 ∈ CRing ∧ 𝑀𝐵) ∧ 𝑏𝑁𝑎𝑁) → (𝑏(𝐽𝑀)𝑎) = ((𝑁 maDet 𝑅)‘(𝑑𝑁, 𝑐𝑁 ↦ if((𝑑 = 𝑎𝑐 = 𝑏), if((𝑐 = 𝑏𝑑 = 𝑎), (1r𝑅), (0g𝑅)), (𝑑𝑀𝑐)))))
5215, 50, 46, 45, 51syl211anc 1329 . . . . 5 (((𝑅 ∈ CRing ∧ 𝑀𝐵) ∧ (𝑎𝑁𝑏𝑁)) → (𝑏(𝐽𝑀)𝑎) = ((𝑁 maDet 𝑅)‘(𝑑𝑁, 𝑐𝑁 ↦ if((𝑑 = 𝑎𝑐 = 𝑏), if((𝑐 = 𝑏𝑑 = 𝑎), (1r𝑅), (0g𝑅)), (𝑑𝑀𝑐)))))
5341, 49, 523eqtr4d 2665 . . . 4 (((𝑅 ∈ CRing ∧ 𝑀𝐵) ∧ (𝑎𝑁𝑏𝑁)) → (𝑎(𝐽‘tpos 𝑀)𝑏) = (𝑏(𝐽𝑀)𝑎))
54 ovtpos 7319 . . . 4 (𝑎tpos (𝐽𝑀)𝑏) = (𝑏(𝐽𝑀)𝑎)
5553, 54syl6eqr 2673 . . 3 (((𝑅 ∈ CRing ∧ 𝑀𝐵) ∧ (𝑎𝑁𝑏𝑁)) → (𝑎(𝐽‘tpos 𝑀)𝑏) = (𝑎tpos (𝐽𝑀)𝑏))
5655ralrimivva 2966 . 2 ((𝑅 ∈ CRing ∧ 𝑀𝐵) → ∀𝑎𝑁𝑏𝑁 (𝑎(𝐽‘tpos 𝑀)𝑏) = (𝑎tpos (𝐽𝑀)𝑏))
5716, 47, 18maduf 20379 . . . . . . 7 (𝑅 ∈ CRing → 𝐽:𝐵𝐵)
5857adantr 481 . . . . . 6 ((𝑅 ∈ CRing ∧ 𝑀𝐵) → 𝐽:𝐵𝐵)
5958, 43ffvelrnd 6321 . . . . 5 ((𝑅 ∈ CRing ∧ 𝑀𝐵) → (𝐽‘tpos 𝑀) ∈ 𝐵)
6016, 17, 18matbas2i 20160 . . . . 5 ((𝐽‘tpos 𝑀) ∈ 𝐵 → (𝐽‘tpos 𝑀) ∈ ((Base‘𝑅) ↑𝑚 (𝑁 × 𝑁)))
6159, 60syl 17 . . . 4 ((𝑅 ∈ CRing ∧ 𝑀𝐵) → (𝐽‘tpos 𝑀) ∈ ((Base‘𝑅) ↑𝑚 (𝑁 × 𝑁)))
62 elmapi 7831 . . . 4 ((𝐽‘tpos 𝑀) ∈ ((Base‘𝑅) ↑𝑚 (𝑁 × 𝑁)) → (𝐽‘tpos 𝑀):(𝑁 × 𝑁)⟶(Base‘𝑅))
63 ffn 6007 . . . 4 ((𝐽‘tpos 𝑀):(𝑁 × 𝑁)⟶(Base‘𝑅) → (𝐽‘tpos 𝑀) Fn (𝑁 × 𝑁))
6461, 62, 633syl 18 . . 3 ((𝑅 ∈ CRing ∧ 𝑀𝐵) → (𝐽‘tpos 𝑀) Fn (𝑁 × 𝑁))
6557ffvelrnda 6320 . . . . 5 ((𝑅 ∈ CRing ∧ 𝑀𝐵) → (𝐽𝑀) ∈ 𝐵)
6616, 18mattposcl 20191 . . . . 5 ((𝐽𝑀) ∈ 𝐵 → tpos (𝐽𝑀) ∈ 𝐵)
6716, 17, 18matbas2i 20160 . . . . 5 (tpos (𝐽𝑀) ∈ 𝐵 → tpos (𝐽𝑀) ∈ ((Base‘𝑅) ↑𝑚 (𝑁 × 𝑁)))
6865, 66, 673syl 18 . . . 4 ((𝑅 ∈ CRing ∧ 𝑀𝐵) → tpos (𝐽𝑀) ∈ ((Base‘𝑅) ↑𝑚 (𝑁 × 𝑁)))
69 elmapi 7831 . . . 4 (tpos (𝐽𝑀) ∈ ((Base‘𝑅) ↑𝑚 (𝑁 × 𝑁)) → tpos (𝐽𝑀):(𝑁 × 𝑁)⟶(Base‘𝑅))
70 ffn 6007 . . . 4 (tpos (𝐽𝑀):(𝑁 × 𝑁)⟶(Base‘𝑅) → tpos (𝐽𝑀) Fn (𝑁 × 𝑁))
7168, 69, 703syl 18 . . 3 ((𝑅 ∈ CRing ∧ 𝑀𝐵) → tpos (𝐽𝑀) Fn (𝑁 × 𝑁))
72 eqfnov2 6727 . . 3 (((𝐽‘tpos 𝑀) Fn (𝑁 × 𝑁) ∧ tpos (𝐽𝑀) Fn (𝑁 × 𝑁)) → ((𝐽‘tpos 𝑀) = tpos (𝐽𝑀) ↔ ∀𝑎𝑁𝑏𝑁 (𝑎(𝐽‘tpos 𝑀)𝑏) = (𝑎tpos (𝐽𝑀)𝑏)))
7364, 71, 72syl2anc 692 . 2 ((𝑅 ∈ CRing ∧ 𝑀𝐵) → ((𝐽‘tpos 𝑀) = tpos (𝐽𝑀) ↔ ∀𝑎𝑁𝑏𝑁 (𝑎(𝐽‘tpos 𝑀)𝑏) = (𝑎tpos (𝐽𝑀)𝑏)))
7456, 73mpbird 247 1 ((𝑅 ∈ CRing ∧ 𝑀𝐵) → (𝐽‘tpos 𝑀) = tpos (𝐽𝑀))