Metamath Proof Explorer


Theorem isopropdlem

Description: Lemma for isopropd . (Contributed by Zhi Wang, 27-Oct-2025)

Ref Expression
Hypotheses sectpropd.1 ( 𝜑 → ( Homf𝐶 ) = ( Homf𝐷 ) )
sectpropd.2 ( 𝜑 → ( compf𝐶 ) = ( compf𝐷 ) )
Assertion isopropdlem ( ( 𝜑𝑃 ∈ ( Iso ‘ 𝐶 ) ) → 𝑃 ∈ ( Iso ‘ 𝐷 ) )

Proof

Step Hyp Ref Expression
1 sectpropd.1 ( 𝜑 → ( Homf𝐶 ) = ( Homf𝐷 ) )
2 sectpropd.2 ( 𝜑 → ( compf𝐶 ) = ( compf𝐷 ) )
3 simpr ( ( 𝜑𝑃 ∈ ( Iso ‘ 𝐶 ) ) → 𝑃 ∈ ( Iso ‘ 𝐶 ) )
4 eqid ( Base ‘ 𝐶 ) = ( Base ‘ 𝐶 )
5 eqid ( Inv ‘ 𝐶 ) = ( Inv ‘ 𝐶 )
6 df-iso Iso = ( 𝑐 ∈ Cat ↦ ( ( 𝑥 ∈ V ↦ dom 𝑥 ) ∘ ( Inv ‘ 𝑐 ) ) )
7 6 mptrcl ( 𝑃 ∈ ( Iso ‘ 𝐶 ) → 𝐶 ∈ Cat )
8 7 adantl ( ( 𝜑𝑃 ∈ ( Iso ‘ 𝐶 ) ) → 𝐶 ∈ Cat )
9 eqid ( Iso ‘ 𝐶 ) = ( Iso ‘ 𝐶 )
10 4 5 8 9 isofval2 ( ( 𝜑𝑃 ∈ ( Iso ‘ 𝐶 ) ) → ( Iso ‘ 𝐶 ) = ( 𝑥 ∈ ( Base ‘ 𝐶 ) , 𝑦 ∈ ( Base ‘ 𝐶 ) ↦ dom ( 𝑥 ( Inv ‘ 𝐶 ) 𝑦 ) ) )
11 df-mpo ( 𝑥 ∈ ( Base ‘ 𝐶 ) , 𝑦 ∈ ( Base ‘ 𝐶 ) ↦ dom ( 𝑥 ( Inv ‘ 𝐶 ) 𝑦 ) ) = { ⟨ ⟨ 𝑥 , 𝑦 ⟩ , 𝑧 ⟩ ∣ ( ( 𝑥 ∈ ( Base ‘ 𝐶 ) ∧ 𝑦 ∈ ( Base ‘ 𝐶 ) ) ∧ 𝑧 = dom ( 𝑥 ( Inv ‘ 𝐶 ) 𝑦 ) ) }
12 10 11 eqtrdi ( ( 𝜑𝑃 ∈ ( Iso ‘ 𝐶 ) ) → ( Iso ‘ 𝐶 ) = { ⟨ ⟨ 𝑥 , 𝑦 ⟩ , 𝑧 ⟩ ∣ ( ( 𝑥 ∈ ( Base ‘ 𝐶 ) ∧ 𝑦 ∈ ( Base ‘ 𝐶 ) ) ∧ 𝑧 = dom ( 𝑥 ( Inv ‘ 𝐶 ) 𝑦 ) ) } )
13 3 12 eleqtrd ( ( 𝜑𝑃 ∈ ( Iso ‘ 𝐶 ) ) → 𝑃 ∈ { ⟨ ⟨ 𝑥 , 𝑦 ⟩ , 𝑧 ⟩ ∣ ( ( 𝑥 ∈ ( Base ‘ 𝐶 ) ∧ 𝑦 ∈ ( Base ‘ 𝐶 ) ) ∧ 𝑧 = dom ( 𝑥 ( Inv ‘ 𝐶 ) 𝑦 ) ) } )
14 eloprab1st2nd ( 𝑃 ∈ { ⟨ ⟨ 𝑥 , 𝑦 ⟩ , 𝑧 ⟩ ∣ ( ( 𝑥 ∈ ( Base ‘ 𝐶 ) ∧ 𝑦 ∈ ( Base ‘ 𝐶 ) ) ∧ 𝑧 = dom ( 𝑥 ( Inv ‘ 𝐶 ) 𝑦 ) ) } → 𝑃 = ⟨ ⟨ ( 1st ‘ ( 1st𝑃 ) ) , ( 2nd ‘ ( 1st𝑃 ) ) ⟩ , ( 2nd𝑃 ) ⟩ )
15 13 14 syl ( ( 𝜑𝑃 ∈ ( Iso ‘ 𝐶 ) ) → 𝑃 = ⟨ ⟨ ( 1st ‘ ( 1st𝑃 ) ) , ( 2nd ‘ ( 1st𝑃 ) ) ⟩ , ( 2nd𝑃 ) ⟩ )
16 1 adantr ( ( 𝜑𝑃 ∈ ( Iso ‘ 𝐶 ) ) → ( Homf𝐶 ) = ( Homf𝐷 ) )
17 2 adantr ( ( 𝜑𝑃 ∈ ( Iso ‘ 𝐶 ) ) → ( compf𝐶 ) = ( compf𝐷 ) )
18 16 17 invpropd ( ( 𝜑𝑃 ∈ ( Iso ‘ 𝐶 ) ) → ( Inv ‘ 𝐶 ) = ( Inv ‘ 𝐷 ) )
19 18 oveqd ( ( 𝜑𝑃 ∈ ( Iso ‘ 𝐶 ) ) → ( ( 1st ‘ ( 1st𝑃 ) ) ( Inv ‘ 𝐶 ) ( 2nd ‘ ( 1st𝑃 ) ) ) = ( ( 1st ‘ ( 1st𝑃 ) ) ( Inv ‘ 𝐷 ) ( 2nd ‘ ( 1st𝑃 ) ) ) )
20 19 dmeqd ( ( 𝜑𝑃 ∈ ( Iso ‘ 𝐶 ) ) → dom ( ( 1st ‘ ( 1st𝑃 ) ) ( Inv ‘ 𝐶 ) ( 2nd ‘ ( 1st𝑃 ) ) ) = dom ( ( 1st ‘ ( 1st𝑃 ) ) ( Inv ‘ 𝐷 ) ( 2nd ‘ ( 1st𝑃 ) ) ) )
21 eleq1 ( 𝑥 = ( 1st ‘ ( 1st𝑃 ) ) → ( 𝑥 ∈ ( Base ‘ 𝐶 ) ↔ ( 1st ‘ ( 1st𝑃 ) ) ∈ ( Base ‘ 𝐶 ) ) )
22 21 anbi1d ( 𝑥 = ( 1st ‘ ( 1st𝑃 ) ) → ( ( 𝑥 ∈ ( Base ‘ 𝐶 ) ∧ 𝑦 ∈ ( Base ‘ 𝐶 ) ) ↔ ( ( 1st ‘ ( 1st𝑃 ) ) ∈ ( Base ‘ 𝐶 ) ∧ 𝑦 ∈ ( Base ‘ 𝐶 ) ) ) )
23 oveq1 ( 𝑥 = ( 1st ‘ ( 1st𝑃 ) ) → ( 𝑥 ( Inv ‘ 𝐶 ) 𝑦 ) = ( ( 1st ‘ ( 1st𝑃 ) ) ( Inv ‘ 𝐶 ) 𝑦 ) )
24 23 dmeqd ( 𝑥 = ( 1st ‘ ( 1st𝑃 ) ) → dom ( 𝑥 ( Inv ‘ 𝐶 ) 𝑦 ) = dom ( ( 1st ‘ ( 1st𝑃 ) ) ( Inv ‘ 𝐶 ) 𝑦 ) )
25 24 eqeq2d ( 𝑥 = ( 1st ‘ ( 1st𝑃 ) ) → ( 𝑧 = dom ( 𝑥 ( Inv ‘ 𝐶 ) 𝑦 ) ↔ 𝑧 = dom ( ( 1st ‘ ( 1st𝑃 ) ) ( Inv ‘ 𝐶 ) 𝑦 ) ) )
26 22 25 anbi12d ( 𝑥 = ( 1st ‘ ( 1st𝑃 ) ) → ( ( ( 𝑥 ∈ ( Base ‘ 𝐶 ) ∧ 𝑦 ∈ ( Base ‘ 𝐶 ) ) ∧ 𝑧 = dom ( 𝑥 ( Inv ‘ 𝐶 ) 𝑦 ) ) ↔ ( ( ( 1st ‘ ( 1st𝑃 ) ) ∈ ( Base ‘ 𝐶 ) ∧ 𝑦 ∈ ( Base ‘ 𝐶 ) ) ∧ 𝑧 = dom ( ( 1st ‘ ( 1st𝑃 ) ) ( Inv ‘ 𝐶 ) 𝑦 ) ) ) )
27 eleq1 ( 𝑦 = ( 2nd ‘ ( 1st𝑃 ) ) → ( 𝑦 ∈ ( Base ‘ 𝐶 ) ↔ ( 2nd ‘ ( 1st𝑃 ) ) ∈ ( Base ‘ 𝐶 ) ) )
28 27 anbi2d ( 𝑦 = ( 2nd ‘ ( 1st𝑃 ) ) → ( ( ( 1st ‘ ( 1st𝑃 ) ) ∈ ( Base ‘ 𝐶 ) ∧ 𝑦 ∈ ( Base ‘ 𝐶 ) ) ↔ ( ( 1st ‘ ( 1st𝑃 ) ) ∈ ( Base ‘ 𝐶 ) ∧ ( 2nd ‘ ( 1st𝑃 ) ) ∈ ( Base ‘ 𝐶 ) ) ) )
29 oveq2 ( 𝑦 = ( 2nd ‘ ( 1st𝑃 ) ) → ( ( 1st ‘ ( 1st𝑃 ) ) ( Inv ‘ 𝐶 ) 𝑦 ) = ( ( 1st ‘ ( 1st𝑃 ) ) ( Inv ‘ 𝐶 ) ( 2nd ‘ ( 1st𝑃 ) ) ) )
30 29 dmeqd ( 𝑦 = ( 2nd ‘ ( 1st𝑃 ) ) → dom ( ( 1st ‘ ( 1st𝑃 ) ) ( Inv ‘ 𝐶 ) 𝑦 ) = dom ( ( 1st ‘ ( 1st𝑃 ) ) ( Inv ‘ 𝐶 ) ( 2nd ‘ ( 1st𝑃 ) ) ) )
31 30 eqeq2d ( 𝑦 = ( 2nd ‘ ( 1st𝑃 ) ) → ( 𝑧 = dom ( ( 1st ‘ ( 1st𝑃 ) ) ( Inv ‘ 𝐶 ) 𝑦 ) ↔ 𝑧 = dom ( ( 1st ‘ ( 1st𝑃 ) ) ( Inv ‘ 𝐶 ) ( 2nd ‘ ( 1st𝑃 ) ) ) ) )
32 28 31 anbi12d ( 𝑦 = ( 2nd ‘ ( 1st𝑃 ) ) → ( ( ( ( 1st ‘ ( 1st𝑃 ) ) ∈ ( Base ‘ 𝐶 ) ∧ 𝑦 ∈ ( Base ‘ 𝐶 ) ) ∧ 𝑧 = dom ( ( 1st ‘ ( 1st𝑃 ) ) ( Inv ‘ 𝐶 ) 𝑦 ) ) ↔ ( ( ( 1st ‘ ( 1st𝑃 ) ) ∈ ( Base ‘ 𝐶 ) ∧ ( 2nd ‘ ( 1st𝑃 ) ) ∈ ( Base ‘ 𝐶 ) ) ∧ 𝑧 = dom ( ( 1st ‘ ( 1st𝑃 ) ) ( Inv ‘ 𝐶 ) ( 2nd ‘ ( 1st𝑃 ) ) ) ) ) )
33 eqeq1 ( 𝑧 = ( 2nd𝑃 ) → ( 𝑧 = dom ( ( 1st ‘ ( 1st𝑃 ) ) ( Inv ‘ 𝐶 ) ( 2nd ‘ ( 1st𝑃 ) ) ) ↔ ( 2nd𝑃 ) = dom ( ( 1st ‘ ( 1st𝑃 ) ) ( Inv ‘ 𝐶 ) ( 2nd ‘ ( 1st𝑃 ) ) ) ) )
34 33 anbi2d ( 𝑧 = ( 2nd𝑃 ) → ( ( ( ( 1st ‘ ( 1st𝑃 ) ) ∈ ( Base ‘ 𝐶 ) ∧ ( 2nd ‘ ( 1st𝑃 ) ) ∈ ( Base ‘ 𝐶 ) ) ∧ 𝑧 = dom ( ( 1st ‘ ( 1st𝑃 ) ) ( Inv ‘ 𝐶 ) ( 2nd ‘ ( 1st𝑃 ) ) ) ) ↔ ( ( ( 1st ‘ ( 1st𝑃 ) ) ∈ ( Base ‘ 𝐶 ) ∧ ( 2nd ‘ ( 1st𝑃 ) ) ∈ ( Base ‘ 𝐶 ) ) ∧ ( 2nd𝑃 ) = dom ( ( 1st ‘ ( 1st𝑃 ) ) ( Inv ‘ 𝐶 ) ( 2nd ‘ ( 1st𝑃 ) ) ) ) ) )
35 26 32 34 eloprabi ( 𝑃 ∈ { ⟨ ⟨ 𝑥 , 𝑦 ⟩ , 𝑧 ⟩ ∣ ( ( 𝑥 ∈ ( Base ‘ 𝐶 ) ∧ 𝑦 ∈ ( Base ‘ 𝐶 ) ) ∧ 𝑧 = dom ( 𝑥 ( Inv ‘ 𝐶 ) 𝑦 ) ) } → ( ( ( 1st ‘ ( 1st𝑃 ) ) ∈ ( Base ‘ 𝐶 ) ∧ ( 2nd ‘ ( 1st𝑃 ) ) ∈ ( Base ‘ 𝐶 ) ) ∧ ( 2nd𝑃 ) = dom ( ( 1st ‘ ( 1st𝑃 ) ) ( Inv ‘ 𝐶 ) ( 2nd ‘ ( 1st𝑃 ) ) ) ) )
36 13 35 syl ( ( 𝜑𝑃 ∈ ( Iso ‘ 𝐶 ) ) → ( ( ( 1st ‘ ( 1st𝑃 ) ) ∈ ( Base ‘ 𝐶 ) ∧ ( 2nd ‘ ( 1st𝑃 ) ) ∈ ( Base ‘ 𝐶 ) ) ∧ ( 2nd𝑃 ) = dom ( ( 1st ‘ ( 1st𝑃 ) ) ( Inv ‘ 𝐶 ) ( 2nd ‘ ( 1st𝑃 ) ) ) ) )
37 36 simprd ( ( 𝜑𝑃 ∈ ( Iso ‘ 𝐶 ) ) → ( 2nd𝑃 ) = dom ( ( 1st ‘ ( 1st𝑃 ) ) ( Inv ‘ 𝐶 ) ( 2nd ‘ ( 1st𝑃 ) ) ) )
38 eqid ( Base ‘ 𝐷 ) = ( Base ‘ 𝐷 )
39 eqid ( Inv ‘ 𝐷 ) = ( Inv ‘ 𝐷 )
40 36 simplld ( ( 𝜑𝑃 ∈ ( Iso ‘ 𝐶 ) ) → ( 1st ‘ ( 1st𝑃 ) ) ∈ ( Base ‘ 𝐶 ) )
41 16 homfeqbas ( ( 𝜑𝑃 ∈ ( Iso ‘ 𝐶 ) ) → ( Base ‘ 𝐶 ) = ( Base ‘ 𝐷 ) )
42 40 41 eleqtrd ( ( 𝜑𝑃 ∈ ( Iso ‘ 𝐶 ) ) → ( 1st ‘ ( 1st𝑃 ) ) ∈ ( Base ‘ 𝐷 ) )
43 42 elfvexd ( ( 𝜑𝑃 ∈ ( Iso ‘ 𝐶 ) ) → 𝐷 ∈ V )
44 16 17 8 43 catpropd ( ( 𝜑𝑃 ∈ ( Iso ‘ 𝐶 ) ) → ( 𝐶 ∈ Cat ↔ 𝐷 ∈ Cat ) )
45 8 44 mpbid ( ( 𝜑𝑃 ∈ ( Iso ‘ 𝐶 ) ) → 𝐷 ∈ Cat )
46 36 simplrd ( ( 𝜑𝑃 ∈ ( Iso ‘ 𝐶 ) ) → ( 2nd ‘ ( 1st𝑃 ) ) ∈ ( Base ‘ 𝐶 ) )
47 46 41 eleqtrd ( ( 𝜑𝑃 ∈ ( Iso ‘ 𝐶 ) ) → ( 2nd ‘ ( 1st𝑃 ) ) ∈ ( Base ‘ 𝐷 ) )
48 eqid ( Iso ‘ 𝐷 ) = ( Iso ‘ 𝐷 )
49 38 39 45 42 47 48 isoval ( ( 𝜑𝑃 ∈ ( Iso ‘ 𝐶 ) ) → ( ( 1st ‘ ( 1st𝑃 ) ) ( Iso ‘ 𝐷 ) ( 2nd ‘ ( 1st𝑃 ) ) ) = dom ( ( 1st ‘ ( 1st𝑃 ) ) ( Inv ‘ 𝐷 ) ( 2nd ‘ ( 1st𝑃 ) ) ) )
50 20 37 49 3eqtr4rd ( ( 𝜑𝑃 ∈ ( Iso ‘ 𝐶 ) ) → ( ( 1st ‘ ( 1st𝑃 ) ) ( Iso ‘ 𝐷 ) ( 2nd ‘ ( 1st𝑃 ) ) ) = ( 2nd𝑃 ) )
51 isofn ( 𝐷 ∈ Cat → ( Iso ‘ 𝐷 ) Fn ( ( Base ‘ 𝐷 ) × ( Base ‘ 𝐷 ) ) )
52 45 51 syl ( ( 𝜑𝑃 ∈ ( Iso ‘ 𝐶 ) ) → ( Iso ‘ 𝐷 ) Fn ( ( Base ‘ 𝐷 ) × ( Base ‘ 𝐷 ) ) )
53 fnbrovb ( ( ( Iso ‘ 𝐷 ) Fn ( ( Base ‘ 𝐷 ) × ( Base ‘ 𝐷 ) ) ∧ ( ( 1st ‘ ( 1st𝑃 ) ) ∈ ( Base ‘ 𝐷 ) ∧ ( 2nd ‘ ( 1st𝑃 ) ) ∈ ( Base ‘ 𝐷 ) ) ) → ( ( ( 1st ‘ ( 1st𝑃 ) ) ( Iso ‘ 𝐷 ) ( 2nd ‘ ( 1st𝑃 ) ) ) = ( 2nd𝑃 ) ↔ ⟨ ( 1st ‘ ( 1st𝑃 ) ) , ( 2nd ‘ ( 1st𝑃 ) ) ⟩ ( Iso ‘ 𝐷 ) ( 2nd𝑃 ) ) )
54 52 42 47 53 syl12anc ( ( 𝜑𝑃 ∈ ( Iso ‘ 𝐶 ) ) → ( ( ( 1st ‘ ( 1st𝑃 ) ) ( Iso ‘ 𝐷 ) ( 2nd ‘ ( 1st𝑃 ) ) ) = ( 2nd𝑃 ) ↔ ⟨ ( 1st ‘ ( 1st𝑃 ) ) , ( 2nd ‘ ( 1st𝑃 ) ) ⟩ ( Iso ‘ 𝐷 ) ( 2nd𝑃 ) ) )
55 50 54 mpbid ( ( 𝜑𝑃 ∈ ( Iso ‘ 𝐶 ) ) → ⟨ ( 1st ‘ ( 1st𝑃 ) ) , ( 2nd ‘ ( 1st𝑃 ) ) ⟩ ( Iso ‘ 𝐷 ) ( 2nd𝑃 ) )
56 df-br ( ⟨ ( 1st ‘ ( 1st𝑃 ) ) , ( 2nd ‘ ( 1st𝑃 ) ) ⟩ ( Iso ‘ 𝐷 ) ( 2nd𝑃 ) ↔ ⟨ ⟨ ( 1st ‘ ( 1st𝑃 ) ) , ( 2nd ‘ ( 1st𝑃 ) ) ⟩ , ( 2nd𝑃 ) ⟩ ∈ ( Iso ‘ 𝐷 ) )
57 55 56 sylib ( ( 𝜑𝑃 ∈ ( Iso ‘ 𝐶 ) ) → ⟨ ⟨ ( 1st ‘ ( 1st𝑃 ) ) , ( 2nd ‘ ( 1st𝑃 ) ) ⟩ , ( 2nd𝑃 ) ⟩ ∈ ( Iso ‘ 𝐷 ) )
58 15 57 eqeltrd ( ( 𝜑𝑃 ∈ ( Iso ‘ 𝐶 ) ) → 𝑃 ∈ ( Iso ‘ 𝐷 ) )