Metamath Proof Explorer


Theorem caofidlcan

Description: Transfer a cancellation/identity law to the function operation. (Contributed by SN, 16-Oct-2025)

Ref Expression
Hypotheses caofref.1 ( 𝜑𝐴𝑉 )
caofref.2 ( 𝜑𝐹 : 𝐴𝑆 )
caofcom.3 ( 𝜑𝐺 : 𝐴𝑆 )
caofidlcan.4 ( ( 𝜑 ∧ ( 𝑥𝑆𝑦𝑆 ) ) → ( ( 𝑥 𝑅 𝑦 ) = 𝑦𝑥 = 0 ) )
Assertion caofidlcan ( 𝜑 → ( ( 𝐹f 𝑅 𝐺 ) = 𝐺𝐹 = ( 𝐴 × { 0 } ) ) )

Proof

Step Hyp Ref Expression
1 caofref.1 ( 𝜑𝐴𝑉 )
2 caofref.2 ( 𝜑𝐹 : 𝐴𝑆 )
3 caofcom.3 ( 𝜑𝐺 : 𝐴𝑆 )
4 caofidlcan.4 ( ( 𝜑 ∧ ( 𝑥𝑆𝑦𝑆 ) ) → ( ( 𝑥 𝑅 𝑦 ) = 𝑦𝑥 = 0 ) )
5 2 ffvelcdmda ( ( 𝜑𝑤𝐴 ) → ( 𝐹𝑤 ) ∈ 𝑆 )
6 3 ffvelcdmda ( ( 𝜑𝑤𝐴 ) → ( 𝐺𝑤 ) ∈ 𝑆 )
7 5 6 jca ( ( 𝜑𝑤𝐴 ) → ( ( 𝐹𝑤 ) ∈ 𝑆 ∧ ( 𝐺𝑤 ) ∈ 𝑆 ) )
8 4 ralrimivva ( 𝜑 → ∀ 𝑥𝑆𝑦𝑆 ( ( 𝑥 𝑅 𝑦 ) = 𝑦𝑥 = 0 ) )
9 oveq1 ( 𝑥 = ( 𝐹𝑤 ) → ( 𝑥 𝑅 𝑦 ) = ( ( 𝐹𝑤 ) 𝑅 𝑦 ) )
10 9 eqeq1d ( 𝑥 = ( 𝐹𝑤 ) → ( ( 𝑥 𝑅 𝑦 ) = 𝑦 ↔ ( ( 𝐹𝑤 ) 𝑅 𝑦 ) = 𝑦 ) )
11 eqeq1 ( 𝑥 = ( 𝐹𝑤 ) → ( 𝑥 = 0 ↔ ( 𝐹𝑤 ) = 0 ) )
12 10 11 bibi12d ( 𝑥 = ( 𝐹𝑤 ) → ( ( ( 𝑥 𝑅 𝑦 ) = 𝑦𝑥 = 0 ) ↔ ( ( ( 𝐹𝑤 ) 𝑅 𝑦 ) = 𝑦 ↔ ( 𝐹𝑤 ) = 0 ) ) )
13 oveq2 ( 𝑦 = ( 𝐺𝑤 ) → ( ( 𝐹𝑤 ) 𝑅 𝑦 ) = ( ( 𝐹𝑤 ) 𝑅 ( 𝐺𝑤 ) ) )
14 id ( 𝑦 = ( 𝐺𝑤 ) → 𝑦 = ( 𝐺𝑤 ) )
15 13 14 eqeq12d ( 𝑦 = ( 𝐺𝑤 ) → ( ( ( 𝐹𝑤 ) 𝑅 𝑦 ) = 𝑦 ↔ ( ( 𝐹𝑤 ) 𝑅 ( 𝐺𝑤 ) ) = ( 𝐺𝑤 ) ) )
16 15 bibi1d ( 𝑦 = ( 𝐺𝑤 ) → ( ( ( ( 𝐹𝑤 ) 𝑅 𝑦 ) = 𝑦 ↔ ( 𝐹𝑤 ) = 0 ) ↔ ( ( ( 𝐹𝑤 ) 𝑅 ( 𝐺𝑤 ) ) = ( 𝐺𝑤 ) ↔ ( 𝐹𝑤 ) = 0 ) ) )
17 12 16 rspc2v ( ( ( 𝐹𝑤 ) ∈ 𝑆 ∧ ( 𝐺𝑤 ) ∈ 𝑆 ) → ( ∀ 𝑥𝑆𝑦𝑆 ( ( 𝑥 𝑅 𝑦 ) = 𝑦𝑥 = 0 ) → ( ( ( 𝐹𝑤 ) 𝑅 ( 𝐺𝑤 ) ) = ( 𝐺𝑤 ) ↔ ( 𝐹𝑤 ) = 0 ) ) )
18 8 17 mpan9 ( ( 𝜑 ∧ ( ( 𝐹𝑤 ) ∈ 𝑆 ∧ ( 𝐺𝑤 ) ∈ 𝑆 ) ) → ( ( ( 𝐹𝑤 ) 𝑅 ( 𝐺𝑤 ) ) = ( 𝐺𝑤 ) ↔ ( 𝐹𝑤 ) = 0 ) )
19 7 18 syldan ( ( 𝜑𝑤𝐴 ) → ( ( ( 𝐹𝑤 ) 𝑅 ( 𝐺𝑤 ) ) = ( 𝐺𝑤 ) ↔ ( 𝐹𝑤 ) = 0 ) )
20 19 ralbidva ( 𝜑 → ( ∀ 𝑤𝐴 ( ( 𝐹𝑤 ) 𝑅 ( 𝐺𝑤 ) ) = ( 𝐺𝑤 ) ↔ ∀ 𝑤𝐴 ( 𝐹𝑤 ) = 0 ) )
21 ovexd ( ( 𝜑𝑤𝐴 ) → ( ( 𝐹𝑤 ) 𝑅 ( 𝐺𝑤 ) ) ∈ V )
22 21 ralrimiva ( 𝜑 → ∀ 𝑤𝐴 ( ( 𝐹𝑤 ) 𝑅 ( 𝐺𝑤 ) ) ∈ V )
23 mpteqb ( ∀ 𝑤𝐴 ( ( 𝐹𝑤 ) 𝑅 ( 𝐺𝑤 ) ) ∈ V → ( ( 𝑤𝐴 ↦ ( ( 𝐹𝑤 ) 𝑅 ( 𝐺𝑤 ) ) ) = ( 𝑤𝐴 ↦ ( 𝐺𝑤 ) ) ↔ ∀ 𝑤𝐴 ( ( 𝐹𝑤 ) 𝑅 ( 𝐺𝑤 ) ) = ( 𝐺𝑤 ) ) )
24 22 23 syl ( 𝜑 → ( ( 𝑤𝐴 ↦ ( ( 𝐹𝑤 ) 𝑅 ( 𝐺𝑤 ) ) ) = ( 𝑤𝐴 ↦ ( 𝐺𝑤 ) ) ↔ ∀ 𝑤𝐴 ( ( 𝐹𝑤 ) 𝑅 ( 𝐺𝑤 ) ) = ( 𝐺𝑤 ) ) )
25 5 ralrimiva ( 𝜑 → ∀ 𝑤𝐴 ( 𝐹𝑤 ) ∈ 𝑆 )
26 mpteqb ( ∀ 𝑤𝐴 ( 𝐹𝑤 ) ∈ 𝑆 → ( ( 𝑤𝐴 ↦ ( 𝐹𝑤 ) ) = ( 𝑤𝐴0 ) ↔ ∀ 𝑤𝐴 ( 𝐹𝑤 ) = 0 ) )
27 25 26 syl ( 𝜑 → ( ( 𝑤𝐴 ↦ ( 𝐹𝑤 ) ) = ( 𝑤𝐴0 ) ↔ ∀ 𝑤𝐴 ( 𝐹𝑤 ) = 0 ) )
28 20 24 27 3bitr4d ( 𝜑 → ( ( 𝑤𝐴 ↦ ( ( 𝐹𝑤 ) 𝑅 ( 𝐺𝑤 ) ) ) = ( 𝑤𝐴 ↦ ( 𝐺𝑤 ) ) ↔ ( 𝑤𝐴 ↦ ( 𝐹𝑤 ) ) = ( 𝑤𝐴0 ) ) )
29 2 feqmptd ( 𝜑𝐹 = ( 𝑤𝐴 ↦ ( 𝐹𝑤 ) ) )
30 3 feqmptd ( 𝜑𝐺 = ( 𝑤𝐴 ↦ ( 𝐺𝑤 ) ) )
31 1 5 6 29 30 offval2 ( 𝜑 → ( 𝐹f 𝑅 𝐺 ) = ( 𝑤𝐴 ↦ ( ( 𝐹𝑤 ) 𝑅 ( 𝐺𝑤 ) ) ) )
32 31 30 eqeq12d ( 𝜑 → ( ( 𝐹f 𝑅 𝐺 ) = 𝐺 ↔ ( 𝑤𝐴 ↦ ( ( 𝐹𝑤 ) 𝑅 ( 𝐺𝑤 ) ) ) = ( 𝑤𝐴 ↦ ( 𝐺𝑤 ) ) ) )
33 fconstmpt ( 𝐴 × { 0 } ) = ( 𝑤𝐴0 )
34 33 a1i ( 𝜑 → ( 𝐴 × { 0 } ) = ( 𝑤𝐴0 ) )
35 29 34 eqeq12d ( 𝜑 → ( 𝐹 = ( 𝐴 × { 0 } ) ↔ ( 𝑤𝐴 ↦ ( 𝐹𝑤 ) ) = ( 𝑤𝐴0 ) ) )
36 28 32 35 3bitr4d ( 𝜑 → ( ( 𝐹f 𝑅 𝐺 ) = 𝐺𝐹 = ( 𝐴 × { 0 } ) ) )