Metamath Proof Explorer


Theorem cocanfo

Description: Cancellation of a surjective function from the right side of a composition. (Contributed by Jeff Madsen, 1-Jun-2011) (Proof shortened by Mario Carneiro, 27-Dec-2014)

Ref Expression
Assertion cocanfo ( ( ( 𝐹 : 𝐴onto𝐵𝐺 Fn 𝐵𝐻 Fn 𝐵 ) ∧ ( 𝐺𝐹 ) = ( 𝐻𝐹 ) ) → 𝐺 = 𝐻 )

Proof

Step Hyp Ref Expression
1 simplr ( ( ( ( 𝐹 : 𝐴onto𝐵𝐺 Fn 𝐵𝐻 Fn 𝐵 ) ∧ ( 𝐺𝐹 ) = ( 𝐻𝐹 ) ) ∧ 𝑦𝐴 ) → ( 𝐺𝐹 ) = ( 𝐻𝐹 ) )
2 1 fveq1d ( ( ( ( 𝐹 : 𝐴onto𝐵𝐺 Fn 𝐵𝐻 Fn 𝐵 ) ∧ ( 𝐺𝐹 ) = ( 𝐻𝐹 ) ) ∧ 𝑦𝐴 ) → ( ( 𝐺𝐹 ) ‘ 𝑦 ) = ( ( 𝐻𝐹 ) ‘ 𝑦 ) )
3 simpl1 ( ( ( 𝐹 : 𝐴onto𝐵𝐺 Fn 𝐵𝐻 Fn 𝐵 ) ∧ ( 𝐺𝐹 ) = ( 𝐻𝐹 ) ) → 𝐹 : 𝐴onto𝐵 )
4 fof ( 𝐹 : 𝐴onto𝐵𝐹 : 𝐴𝐵 )
5 3 4 syl ( ( ( 𝐹 : 𝐴onto𝐵𝐺 Fn 𝐵𝐻 Fn 𝐵 ) ∧ ( 𝐺𝐹 ) = ( 𝐻𝐹 ) ) → 𝐹 : 𝐴𝐵 )
6 fvco3 ( ( 𝐹 : 𝐴𝐵𝑦𝐴 ) → ( ( 𝐺𝐹 ) ‘ 𝑦 ) = ( 𝐺 ‘ ( 𝐹𝑦 ) ) )
7 5 6 sylan ( ( ( ( 𝐹 : 𝐴onto𝐵𝐺 Fn 𝐵𝐻 Fn 𝐵 ) ∧ ( 𝐺𝐹 ) = ( 𝐻𝐹 ) ) ∧ 𝑦𝐴 ) → ( ( 𝐺𝐹 ) ‘ 𝑦 ) = ( 𝐺 ‘ ( 𝐹𝑦 ) ) )
8 fvco3 ( ( 𝐹 : 𝐴𝐵𝑦𝐴 ) → ( ( 𝐻𝐹 ) ‘ 𝑦 ) = ( 𝐻 ‘ ( 𝐹𝑦 ) ) )
9 5 8 sylan ( ( ( ( 𝐹 : 𝐴onto𝐵𝐺 Fn 𝐵𝐻 Fn 𝐵 ) ∧ ( 𝐺𝐹 ) = ( 𝐻𝐹 ) ) ∧ 𝑦𝐴 ) → ( ( 𝐻𝐹 ) ‘ 𝑦 ) = ( 𝐻 ‘ ( 𝐹𝑦 ) ) )
10 2 7 9 3eqtr3d ( ( ( ( 𝐹 : 𝐴onto𝐵𝐺 Fn 𝐵𝐻 Fn 𝐵 ) ∧ ( 𝐺𝐹 ) = ( 𝐻𝐹 ) ) ∧ 𝑦𝐴 ) → ( 𝐺 ‘ ( 𝐹𝑦 ) ) = ( 𝐻 ‘ ( 𝐹𝑦 ) ) )
11 10 ralrimiva ( ( ( 𝐹 : 𝐴onto𝐵𝐺 Fn 𝐵𝐻 Fn 𝐵 ) ∧ ( 𝐺𝐹 ) = ( 𝐻𝐹 ) ) → ∀ 𝑦𝐴 ( 𝐺 ‘ ( 𝐹𝑦 ) ) = ( 𝐻 ‘ ( 𝐹𝑦 ) ) )
12 fveq2 ( ( 𝐹𝑦 ) = 𝑥 → ( 𝐺 ‘ ( 𝐹𝑦 ) ) = ( 𝐺𝑥 ) )
13 fveq2 ( ( 𝐹𝑦 ) = 𝑥 → ( 𝐻 ‘ ( 𝐹𝑦 ) ) = ( 𝐻𝑥 ) )
14 12 13 eqeq12d ( ( 𝐹𝑦 ) = 𝑥 → ( ( 𝐺 ‘ ( 𝐹𝑦 ) ) = ( 𝐻 ‘ ( 𝐹𝑦 ) ) ↔ ( 𝐺𝑥 ) = ( 𝐻𝑥 ) ) )
15 14 cbvfo ( 𝐹 : 𝐴onto𝐵 → ( ∀ 𝑦𝐴 ( 𝐺 ‘ ( 𝐹𝑦 ) ) = ( 𝐻 ‘ ( 𝐹𝑦 ) ) ↔ ∀ 𝑥𝐵 ( 𝐺𝑥 ) = ( 𝐻𝑥 ) ) )
16 3 15 syl ( ( ( 𝐹 : 𝐴onto𝐵𝐺 Fn 𝐵𝐻 Fn 𝐵 ) ∧ ( 𝐺𝐹 ) = ( 𝐻𝐹 ) ) → ( ∀ 𝑦𝐴 ( 𝐺 ‘ ( 𝐹𝑦 ) ) = ( 𝐻 ‘ ( 𝐹𝑦 ) ) ↔ ∀ 𝑥𝐵 ( 𝐺𝑥 ) = ( 𝐻𝑥 ) ) )
17 11 16 mpbid ( ( ( 𝐹 : 𝐴onto𝐵𝐺 Fn 𝐵𝐻 Fn 𝐵 ) ∧ ( 𝐺𝐹 ) = ( 𝐻𝐹 ) ) → ∀ 𝑥𝐵 ( 𝐺𝑥 ) = ( 𝐻𝑥 ) )
18 eqfnfv ( ( 𝐺 Fn 𝐵𝐻 Fn 𝐵 ) → ( 𝐺 = 𝐻 ↔ ∀ 𝑥𝐵 ( 𝐺𝑥 ) = ( 𝐻𝑥 ) ) )
19 18 3adant1 ( ( 𝐹 : 𝐴onto𝐵𝐺 Fn 𝐵𝐻 Fn 𝐵 ) → ( 𝐺 = 𝐻 ↔ ∀ 𝑥𝐵 ( 𝐺𝑥 ) = ( 𝐻𝑥 ) ) )
20 19 adantr ( ( ( 𝐹 : 𝐴onto𝐵𝐺 Fn 𝐵𝐻 Fn 𝐵 ) ∧ ( 𝐺𝐹 ) = ( 𝐻𝐹 ) ) → ( 𝐺 = 𝐻 ↔ ∀ 𝑥𝐵 ( 𝐺𝑥 ) = ( 𝐻𝑥 ) ) )
21 17 20 mpbird ( ( ( 𝐹 : 𝐴onto𝐵𝐺 Fn 𝐵𝐻 Fn 𝐵 ) ∧ ( 𝐺𝐹 ) = ( 𝐻𝐹 ) ) → 𝐺 = 𝐻 )