Metamath Proof Explorer


Theorem derangenlem

Description: One half of derangen . (Contributed by Mario Carneiro, 22-Jan-2015)

Ref Expression
Hypothesis derang.d ⊢ 𝐷 = ( 𝑥 ∈ Fin ↦ ( ♯ ‘ { 𝑓 ∣ ( 𝑓 : 𝑥 –1-1-onto→ 𝑥 ∧ ∀ 𝑦 ∈ 𝑥 ( 𝑓 ‘ 𝑦 ) ≠ 𝑦 ) } ) )
Assertion derangenlem ( ( 𝐴 ≈ 𝐵 ∧ 𝐵 ∈ Fin ) → ( 𝐷 ‘ 𝐴 ) ≤ ( 𝐷 ‘ 𝐵 ) )

Proof

Step Hyp Ref Expression
1 derang.d ⊢ 𝐷 = ( 𝑥 ∈ Fin ↦ ( ♯ ‘ { 𝑓 ∣ ( 𝑓 : 𝑥 –1-1-onto→ 𝑥 ∧ ∀ 𝑦 ∈ 𝑥 ( 𝑓 ‘ 𝑦 ) ≠ 𝑦 ) } ) )
2 bren ⊢ ( 𝐴 ≈ 𝐵 ↔ ∃ 𝑠 𝑠 : 𝐴 –1-1-onto→ 𝐵 )
3 2 birani ⊢ ( ( 𝐴 ≈ 𝐵 ∧ 𝐵 ∈ Fin ) → ∃ 𝑠 𝑠 : 𝐴 –1-1-onto→ 𝐵 )
4 deranglem ⊢ ( 𝐵 ∈ Fin → { 𝑓 ∣ ( 𝑓 : 𝐵 –1-1-onto→ 𝐵 ∧ ∀ 𝑦 ∈ 𝐵 ( 𝑓 ‘ 𝑦 ) ≠ 𝑦 ) } ∈ Fin )
5 4 adantl ⊢ ( ( 𝐴 ≈ 𝐵 ∧ 𝐵 ∈ Fin ) → { 𝑓 ∣ ( 𝑓 : 𝐵 –1-1-onto→ 𝐵 ∧ ∀ 𝑦 ∈ 𝐵 ( 𝑓 ‘ 𝑦 ) ≠ 𝑦 ) } ∈ Fin )
6 f1oco ⊢ ( ( 𝑠 : 𝐴 –1-1-onto→ 𝐵 ∧ 𝑔 : 𝐴 –1-1-onto→ 𝐴 ) → ( 𝑠 ∘ 𝑔 ) : 𝐴 –1-1-onto→ 𝐵 )
7 6 ad2ant2lr ⊢ ( ( ( ( 𝐴 ≈ 𝐵 ∧ 𝐵 ∈ Fin ) ∧ 𝑠 : 𝐴 –1-1-onto→ 𝐵 ) ∧ ( 𝑔 : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( 𝑔 ‘ 𝑦 ) ≠ 𝑦 ) ) → ( 𝑠 ∘ 𝑔 ) : 𝐴 –1-1-onto→ 𝐵 )
8 f1ocnv ⊢ ( 𝑠 : 𝐴 –1-1-onto→ 𝐵 → ◡ 𝑠 : 𝐵 –1-1-onto→ 𝐴 )
9 8 ad2antlr ⊢ ( ( ( ( 𝐴 ≈ 𝐵 ∧ 𝐵 ∈ Fin ) ∧ 𝑠 : 𝐴 –1-1-onto→ 𝐵 ) ∧ ( 𝑔 : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( 𝑔 ‘ 𝑦 ) ≠ 𝑦 ) ) → ◡ 𝑠 : 𝐵 –1-1-onto→ 𝐴 )
10 f1oco ⊢ ( ( ( 𝑠 ∘ 𝑔 ) : 𝐴 –1-1-onto→ 𝐵 ∧ ◡ 𝑠 : 𝐵 –1-1-onto→ 𝐴 ) → ( ( 𝑠 ∘ 𝑔 ) ∘ ◡ 𝑠 ) : 𝐵 –1-1-onto→ 𝐵 )
11 7 9 10 syl2anc ⊢ ( ( ( ( 𝐴 ≈ 𝐵 ∧ 𝐵 ∈ Fin ) ∧ 𝑠 : 𝐴 –1-1-onto→ 𝐵 ) ∧ ( 𝑔 : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( 𝑔 ‘ 𝑦 ) ≠ 𝑦 ) ) → ( ( 𝑠 ∘ 𝑔 ) ∘ ◡ 𝑠 ) : 𝐵 –1-1-onto→ 𝐵 )
12 coass ⊢ ( ( 𝑠 ∘ 𝑔 ) ∘ ◡ 𝑠 ) = ( 𝑠 ∘ ( 𝑔 ∘ ◡ 𝑠 ) )
13 12 fveq1i ⊢ ( ( ( 𝑠 ∘ 𝑔 ) ∘ ◡ 𝑠 ) ‘ 𝑧 ) = ( ( 𝑠 ∘ ( 𝑔 ∘ ◡ 𝑠 ) ) ‘ 𝑧 )
14 simprl ⊢ ( ( ( ( 𝐴 ≈ 𝐵 ∧ 𝐵 ∈ Fin ) ∧ 𝑠 : 𝐴 –1-1-onto→ 𝐵 ) ∧ ( 𝑔 : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( 𝑔 ‘ 𝑦 ) ≠ 𝑦 ) ) → 𝑔 : 𝐴 –1-1-onto→ 𝐴 )
15 f1oco ⊢ ( ( 𝑔 : 𝐴 –1-1-onto→ 𝐴 ∧ ◡ 𝑠 : 𝐵 –1-1-onto→ 𝐴 ) → ( 𝑔 ∘ ◡ 𝑠 ) : 𝐵 –1-1-onto→ 𝐴 )
16 14 9 15 syl2anc ⊢ ( ( ( ( 𝐴 ≈ 𝐵 ∧ 𝐵 ∈ Fin ) ∧ 𝑠 : 𝐴 –1-1-onto→ 𝐵 ) ∧ ( 𝑔 : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( 𝑔 ‘ 𝑦 ) ≠ 𝑦 ) ) → ( 𝑔 ∘ ◡ 𝑠 ) : 𝐵 –1-1-onto→ 𝐴 )
17 f1of ⊢ ( ( 𝑔 ∘ ◡ 𝑠 ) : 𝐵 –1-1-onto→ 𝐴 → ( 𝑔 ∘ ◡ 𝑠 ) : 𝐵 ⟶ 𝐴 )
18 16 17 syl ⊢ ( ( ( ( 𝐴 ≈ 𝐵 ∧ 𝐵 ∈ Fin ) ∧ 𝑠 : 𝐴 –1-1-onto→ 𝐵 ) ∧ ( 𝑔 : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( 𝑔 ‘ 𝑦 ) ≠ 𝑦 ) ) → ( 𝑔 ∘ ◡ 𝑠 ) : 𝐵 ⟶ 𝐴 )
19 fvco3 ⊢ ( ( ( 𝑔 ∘ ◡ 𝑠 ) : 𝐵 ⟶ 𝐴 ∧ 𝑧 ∈ 𝐵 ) → ( ( 𝑠 ∘ ( 𝑔 ∘ ◡ 𝑠 ) ) ‘ 𝑧 ) = ( 𝑠 ‘ ( ( 𝑔 ∘ ◡ 𝑠 ) ‘ 𝑧 ) ) )
20 18 19 sylan ⊢ ( ( ( ( ( 𝐴 ≈ 𝐵 ∧ 𝐵 ∈ Fin ) ∧ 𝑠 : 𝐴 –1-1-onto→ 𝐵 ) ∧ ( 𝑔 : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( 𝑔 ‘ 𝑦 ) ≠ 𝑦 ) ) ∧ 𝑧 ∈ 𝐵 ) → ( ( 𝑠 ∘ ( 𝑔 ∘ ◡ 𝑠 ) ) ‘ 𝑧 ) = ( 𝑠 ‘ ( ( 𝑔 ∘ ◡ 𝑠 ) ‘ 𝑧 ) ) )
21 13 20 eqtrid ⊢ ( ( ( ( ( 𝐴 ≈ 𝐵 ∧ 𝐵 ∈ Fin ) ∧ 𝑠 : 𝐴 –1-1-onto→ 𝐵 ) ∧ ( 𝑔 : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( 𝑔 ‘ 𝑦 ) ≠ 𝑦 ) ) ∧ 𝑧 ∈ 𝐵 ) → ( ( ( 𝑠 ∘ 𝑔 ) ∘ ◡ 𝑠 ) ‘ 𝑧 ) = ( 𝑠 ‘ ( ( 𝑔 ∘ ◡ 𝑠 ) ‘ 𝑧 ) ) )
22 f1of ⊢ ( ◡ 𝑠 : 𝐵 –1-1-onto→ 𝐴 → ◡ 𝑠 : 𝐵 ⟶ 𝐴 )
23 9 22 syl ⊢ ( ( ( ( 𝐴 ≈ 𝐵 ∧ 𝐵 ∈ Fin ) ∧ 𝑠 : 𝐴 –1-1-onto→ 𝐵 ) ∧ ( 𝑔 : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( 𝑔 ‘ 𝑦 ) ≠ 𝑦 ) ) → ◡ 𝑠 : 𝐵 ⟶ 𝐴 )
24 fvco3 ⊢ ( ( ◡ 𝑠 : 𝐵 ⟶ 𝐴 ∧ 𝑧 ∈ 𝐵 ) → ( ( 𝑔 ∘ ◡ 𝑠 ) ‘ 𝑧 ) = ( 𝑔 ‘ ( ◡ 𝑠 ‘ 𝑧 ) ) )
25 23 24 sylan ⊢ ( ( ( ( ( 𝐴 ≈ 𝐵 ∧ 𝐵 ∈ Fin ) ∧ 𝑠 : 𝐴 –1-1-onto→ 𝐵 ) ∧ ( 𝑔 : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( 𝑔 ‘ 𝑦 ) ≠ 𝑦 ) ) ∧ 𝑧 ∈ 𝐵 ) → ( ( 𝑔 ∘ ◡ 𝑠 ) ‘ 𝑧 ) = ( 𝑔 ‘ ( ◡ 𝑠 ‘ 𝑧 ) ) )
26 23 ffvelcdmda ⊢ ( ( ( ( ( 𝐴 ≈ 𝐵 ∧ 𝐵 ∈ Fin ) ∧ 𝑠 : 𝐴 –1-1-onto→ 𝐵 ) ∧ ( 𝑔 : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( 𝑔 ‘ 𝑦 ) ≠ 𝑦 ) ) ∧ 𝑧 ∈ 𝐵 ) → ( ◡ 𝑠 ‘ 𝑧 ) ∈ 𝐴 )
27 simplrr ⊢ ( ( ( ( ( 𝐴 ≈ 𝐵 ∧ 𝐵 ∈ Fin ) ∧ 𝑠 : 𝐴 –1-1-onto→ 𝐵 ) ∧ ( 𝑔 : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( 𝑔 ‘ 𝑦 ) ≠ 𝑦 ) ) ∧ 𝑧 ∈ 𝐵 ) → ∀ 𝑦 ∈ 𝐴 ( 𝑔 ‘ 𝑦 ) ≠ 𝑦 )
28 fveq2 ⊢ ( 𝑦 = ( ◡ 𝑠 ‘ 𝑧 ) → ( 𝑔 ‘ 𝑦 ) = ( 𝑔 ‘ ( ◡ 𝑠 ‘ 𝑧 ) ) )
29 id ⊢ ( 𝑦 = ( ◡ 𝑠 ‘ 𝑧 ) → 𝑦 = ( ◡ 𝑠 ‘ 𝑧 ) )
30 28 29 neeq12d ⊢ ( 𝑦 = ( ◡ 𝑠 ‘ 𝑧 ) → ( ( 𝑔 ‘ 𝑦 ) ≠ 𝑦 ↔ ( 𝑔 ‘ ( ◡ 𝑠 ‘ 𝑧 ) ) ≠ ( ◡ 𝑠 ‘ 𝑧 ) ) )
31 30 rspcv ⊢ ( ( ◡ 𝑠 ‘ 𝑧 ) ∈ 𝐴 → ( ∀ 𝑦 ∈ 𝐴 ( 𝑔 ‘ 𝑦 ) ≠ 𝑦 → ( 𝑔 ‘ ( ◡ 𝑠 ‘ 𝑧 ) ) ≠ ( ◡ 𝑠 ‘ 𝑧 ) ) )
32 26 27 31 sylc ⊢ ( ( ( ( ( 𝐴 ≈ 𝐵 ∧ 𝐵 ∈ Fin ) ∧ 𝑠 : 𝐴 –1-1-onto→ 𝐵 ) ∧ ( 𝑔 : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( 𝑔 ‘ 𝑦 ) ≠ 𝑦 ) ) ∧ 𝑧 ∈ 𝐵 ) → ( 𝑔 ‘ ( ◡ 𝑠 ‘ 𝑧 ) ) ≠ ( ◡ 𝑠 ‘ 𝑧 ) )
33 25 32 eqnetrd ⊢ ( ( ( ( ( 𝐴 ≈ 𝐵 ∧ 𝐵 ∈ Fin ) ∧ 𝑠 : 𝐴 –1-1-onto→ 𝐵 ) ∧ ( 𝑔 : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( 𝑔 ‘ 𝑦 ) ≠ 𝑦 ) ) ∧ 𝑧 ∈ 𝐵 ) → ( ( 𝑔 ∘ ◡ 𝑠 ) ‘ 𝑧 ) ≠ ( ◡ 𝑠 ‘ 𝑧 ) )
34 33 necomd ⊢ ( ( ( ( ( 𝐴 ≈ 𝐵 ∧ 𝐵 ∈ Fin ) ∧ 𝑠 : 𝐴 –1-1-onto→ 𝐵 ) ∧ ( 𝑔 : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( 𝑔 ‘ 𝑦 ) ≠ 𝑦 ) ) ∧ 𝑧 ∈ 𝐵 ) → ( ◡ 𝑠 ‘ 𝑧 ) ≠ ( ( 𝑔 ∘ ◡ 𝑠 ) ‘ 𝑧 ) )
35 simpllr ⊢ ( ( ( ( ( 𝐴 ≈ 𝐵 ∧ 𝐵 ∈ Fin ) ∧ 𝑠 : 𝐴 –1-1-onto→ 𝐵 ) ∧ ( 𝑔 : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( 𝑔 ‘ 𝑦 ) ≠ 𝑦 ) ) ∧ 𝑧 ∈ 𝐵 ) → 𝑠 : 𝐴 –1-1-onto→ 𝐵 )
36 18 ffvelcdmda ⊢ ( ( ( ( ( 𝐴 ≈ 𝐵 ∧ 𝐵 ∈ Fin ) ∧ 𝑠 : 𝐴 –1-1-onto→ 𝐵 ) ∧ ( 𝑔 : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( 𝑔 ‘ 𝑦 ) ≠ 𝑦 ) ) ∧ 𝑧 ∈ 𝐵 ) → ( ( 𝑔 ∘ ◡ 𝑠 ) ‘ 𝑧 ) ∈ 𝐴 )
37 f1ocnvfv ⊢ ( ( 𝑠 : 𝐴 –1-1-onto→ 𝐵 ∧ ( ( 𝑔 ∘ ◡ 𝑠 ) ‘ 𝑧 ) ∈ 𝐴 ) → ( ( 𝑠 ‘ ( ( 𝑔 ∘ ◡ 𝑠 ) ‘ 𝑧 ) ) = 𝑧 → ( ◡ 𝑠 ‘ 𝑧 ) = ( ( 𝑔 ∘ ◡ 𝑠 ) ‘ 𝑧 ) ) )
38 35 36 37 syl2anc ⊢ ( ( ( ( ( 𝐴 ≈ 𝐵 ∧ 𝐵 ∈ Fin ) ∧ 𝑠 : 𝐴 –1-1-onto→ 𝐵 ) ∧ ( 𝑔 : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( 𝑔 ‘ 𝑦 ) ≠ 𝑦 ) ) ∧ 𝑧 ∈ 𝐵 ) → ( ( 𝑠 ‘ ( ( 𝑔 ∘ ◡ 𝑠 ) ‘ 𝑧 ) ) = 𝑧 → ( ◡ 𝑠 ‘ 𝑧 ) = ( ( 𝑔 ∘ ◡ 𝑠 ) ‘ 𝑧 ) ) )
39 38 necon3d ⊢ ( ( ( ( ( 𝐴 ≈ 𝐵 ∧ 𝐵 ∈ Fin ) ∧ 𝑠 : 𝐴 –1-1-onto→ 𝐵 ) ∧ ( 𝑔 : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( 𝑔 ‘ 𝑦 ) ≠ 𝑦 ) ) ∧ 𝑧 ∈ 𝐵 ) → ( ( ◡ 𝑠 ‘ 𝑧 ) ≠ ( ( 𝑔 ∘ ◡ 𝑠 ) ‘ 𝑧 ) → ( 𝑠 ‘ ( ( 𝑔 ∘ ◡ 𝑠 ) ‘ 𝑧 ) ) ≠ 𝑧 ) )
40 34 39 mpd ⊢ ( ( ( ( ( 𝐴 ≈ 𝐵 ∧ 𝐵 ∈ Fin ) ∧ 𝑠 : 𝐴 –1-1-onto→ 𝐵 ) ∧ ( 𝑔 : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( 𝑔 ‘ 𝑦 ) ≠ 𝑦 ) ) ∧ 𝑧 ∈ 𝐵 ) → ( 𝑠 ‘ ( ( 𝑔 ∘ ◡ 𝑠 ) ‘ 𝑧 ) ) ≠ 𝑧 )
41 21 40 eqnetrd ⊢ ( ( ( ( ( 𝐴 ≈ 𝐵 ∧ 𝐵 ∈ Fin ) ∧ 𝑠 : 𝐴 –1-1-onto→ 𝐵 ) ∧ ( 𝑔 : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( 𝑔 ‘ 𝑦 ) ≠ 𝑦 ) ) ∧ 𝑧 ∈ 𝐵 ) → ( ( ( 𝑠 ∘ 𝑔 ) ∘ ◡ 𝑠 ) ‘ 𝑧 ) ≠ 𝑧 )
42 41 ralrimiva ⊢ ( ( ( ( 𝐴 ≈ 𝐵 ∧ 𝐵 ∈ Fin ) ∧ 𝑠 : 𝐴 –1-1-onto→ 𝐵 ) ∧ ( 𝑔 : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( 𝑔 ‘ 𝑦 ) ≠ 𝑦 ) ) → ∀ 𝑧 ∈ 𝐵 ( ( ( 𝑠 ∘ 𝑔 ) ∘ ◡ 𝑠 ) ‘ 𝑧 ) ≠ 𝑧 )
43 fveq2 ⊢ ( 𝑧 = 𝑦 → ( ( ( 𝑠 ∘ 𝑔 ) ∘ ◡ 𝑠 ) ‘ 𝑧 ) = ( ( ( 𝑠 ∘ 𝑔 ) ∘ ◡ 𝑠 ) ‘ 𝑦 ) )
44 id ⊢ ( 𝑧 = 𝑦 → 𝑧 = 𝑦 )
45 43 44 neeq12d ⊢ ( 𝑧 = 𝑦 → ( ( ( ( 𝑠 ∘ 𝑔 ) ∘ ◡ 𝑠 ) ‘ 𝑧 ) ≠ 𝑧 ↔ ( ( ( 𝑠 ∘ 𝑔 ) ∘ ◡ 𝑠 ) ‘ 𝑦 ) ≠ 𝑦 ) )
46 45 cbvralvw ⊢ ( ∀ 𝑧 ∈ 𝐵 ( ( ( 𝑠 ∘ 𝑔 ) ∘ ◡ 𝑠 ) ‘ 𝑧 ) ≠ 𝑧 ↔ ∀ 𝑦 ∈ 𝐵 ( ( ( 𝑠 ∘ 𝑔 ) ∘ ◡ 𝑠 ) ‘ 𝑦 ) ≠ 𝑦 )
47 42 46 sylib ⊢ ( ( ( ( 𝐴 ≈ 𝐵 ∧ 𝐵 ∈ Fin ) ∧ 𝑠 : 𝐴 –1-1-onto→ 𝐵 ) ∧ ( 𝑔 : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( 𝑔 ‘ 𝑦 ) ≠ 𝑦 ) ) → ∀ 𝑦 ∈ 𝐵 ( ( ( 𝑠 ∘ 𝑔 ) ∘ ◡ 𝑠 ) ‘ 𝑦 ) ≠ 𝑦 )
48 11 47 jca ⊢ ( ( ( ( 𝐴 ≈ 𝐵 ∧ 𝐵 ∈ Fin ) ∧ 𝑠 : 𝐴 –1-1-onto→ 𝐵 ) ∧ ( 𝑔 : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( 𝑔 ‘ 𝑦 ) ≠ 𝑦 ) ) → ( ( ( 𝑠 ∘ 𝑔 ) ∘ ◡ 𝑠 ) : 𝐵 –1-1-onto→ 𝐵 ∧ ∀ 𝑦 ∈ 𝐵 ( ( ( 𝑠 ∘ 𝑔 ) ∘ ◡ 𝑠 ) ‘ 𝑦 ) ≠ 𝑦 ) )
49 48 ex ⊢ ( ( ( 𝐴 ≈ 𝐵 ∧ 𝐵 ∈ Fin ) ∧ 𝑠 : 𝐴 –1-1-onto→ 𝐵 ) → ( ( 𝑔 : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( 𝑔 ‘ 𝑦 ) ≠ 𝑦 ) → ( ( ( 𝑠 ∘ 𝑔 ) ∘ ◡ 𝑠 ) : 𝐵 –1-1-onto→ 𝐵 ∧ ∀ 𝑦 ∈ 𝐵 ( ( ( 𝑠 ∘ 𝑔 ) ∘ ◡ 𝑠 ) ‘ 𝑦 ) ≠ 𝑦 ) ) )
50 vex ⊢ 𝑔 ∈ V
51 f1oeq1 ⊢ ( 𝑓 = 𝑔 → ( 𝑓 : 𝐴 –1-1-onto→ 𝐴 ↔ 𝑔 : 𝐴 –1-1-onto→ 𝐴 ) )
52 fveq1 ⊢ ( 𝑓 = 𝑔 → ( 𝑓 ‘ 𝑦 ) = ( 𝑔 ‘ 𝑦 ) )
53 52 neeq1d ⊢ ( 𝑓 = 𝑔 → ( ( 𝑓 ‘ 𝑦 ) ≠ 𝑦 ↔ ( 𝑔 ‘ 𝑦 ) ≠ 𝑦 ) )
54 53 ralbidv ⊢ ( 𝑓 = 𝑔 → ( ∀ 𝑦 ∈ 𝐴 ( 𝑓 ‘ 𝑦 ) ≠ 𝑦 ↔ ∀ 𝑦 ∈ 𝐴 ( 𝑔 ‘ 𝑦 ) ≠ 𝑦 ) )
55 51 54 anbi12d ⊢ ( 𝑓 = 𝑔 → ( ( 𝑓 : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( 𝑓 ‘ 𝑦 ) ≠ 𝑦 ) ↔ ( 𝑔 : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( 𝑔 ‘ 𝑦 ) ≠ 𝑦 ) ) )
56 50 55 elab ⊢ ( 𝑔 ∈ { 𝑓 ∣ ( 𝑓 : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( 𝑓 ‘ 𝑦 ) ≠ 𝑦 ) } ↔ ( 𝑔 : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( 𝑔 ‘ 𝑦 ) ≠ 𝑦 ) )
57 vex ⊢ 𝑠 ∈ V
58 57 50 coex ⊢ ( 𝑠 ∘ 𝑔 ) ∈ V
59 57 cnvex ⊢ ◡ 𝑠 ∈ V
60 58 59 coex ⊢ ( ( 𝑠 ∘ 𝑔 ) ∘ ◡ 𝑠 ) ∈ V
61 f1oeq1 ⊢ ( 𝑓 = ( ( 𝑠 ∘ 𝑔 ) ∘ ◡ 𝑠 ) → ( 𝑓 : 𝐵 –1-1-onto→ 𝐵 ↔ ( ( 𝑠 ∘ 𝑔 ) ∘ ◡ 𝑠 ) : 𝐵 –1-1-onto→ 𝐵 ) )
62 fveq1 ⊢ ( 𝑓 = ( ( 𝑠 ∘ 𝑔 ) ∘ ◡ 𝑠 ) → ( 𝑓 ‘ 𝑦 ) = ( ( ( 𝑠 ∘ 𝑔 ) ∘ ◡ 𝑠 ) ‘ 𝑦 ) )
63 62 neeq1d ⊢ ( 𝑓 = ( ( 𝑠 ∘ 𝑔 ) ∘ ◡ 𝑠 ) → ( ( 𝑓 ‘ 𝑦 ) ≠ 𝑦 ↔ ( ( ( 𝑠 ∘ 𝑔 ) ∘ ◡ 𝑠 ) ‘ 𝑦 ) ≠ 𝑦 ) )
64 63 ralbidv ⊢ ( 𝑓 = ( ( 𝑠 ∘ 𝑔 ) ∘ ◡ 𝑠 ) → ( ∀ 𝑦 ∈ 𝐵 ( 𝑓 ‘ 𝑦 ) ≠ 𝑦 ↔ ∀ 𝑦 ∈ 𝐵 ( ( ( 𝑠 ∘ 𝑔 ) ∘ ◡ 𝑠 ) ‘ 𝑦 ) ≠ 𝑦 ) )
65 61 64 anbi12d ⊢ ( 𝑓 = ( ( 𝑠 ∘ 𝑔 ) ∘ ◡ 𝑠 ) → ( ( 𝑓 : 𝐵 –1-1-onto→ 𝐵 ∧ ∀ 𝑦 ∈ 𝐵 ( 𝑓 ‘ 𝑦 ) ≠ 𝑦 ) ↔ ( ( ( 𝑠 ∘ 𝑔 ) ∘ ◡ 𝑠 ) : 𝐵 –1-1-onto→ 𝐵 ∧ ∀ 𝑦 ∈ 𝐵 ( ( ( 𝑠 ∘ 𝑔 ) ∘ ◡ 𝑠 ) ‘ 𝑦 ) ≠ 𝑦 ) ) )
66 60 65 elab ⊢ ( ( ( 𝑠 ∘ 𝑔 ) ∘ ◡ 𝑠 ) ∈ { 𝑓 ∣ ( 𝑓 : 𝐵 –1-1-onto→ 𝐵 ∧ ∀ 𝑦 ∈ 𝐵 ( 𝑓 ‘ 𝑦 ) ≠ 𝑦 ) } ↔ ( ( ( 𝑠 ∘ 𝑔 ) ∘ ◡ 𝑠 ) : 𝐵 –1-1-onto→ 𝐵 ∧ ∀ 𝑦 ∈ 𝐵 ( ( ( 𝑠 ∘ 𝑔 ) ∘ ◡ 𝑠 ) ‘ 𝑦 ) ≠ 𝑦 ) )
67 49 56 66 3imtr4g ⊢ ( ( ( 𝐴 ≈ 𝐵 ∧ 𝐵 ∈ Fin ) ∧ 𝑠 : 𝐴 –1-1-onto→ 𝐵 ) → ( 𝑔 ∈ { 𝑓 ∣ ( 𝑓 : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( 𝑓 ‘ 𝑦 ) ≠ 𝑦 ) } → ( ( 𝑠 ∘ 𝑔 ) ∘ ◡ 𝑠 ) ∈ { 𝑓 ∣ ( 𝑓 : 𝐵 –1-1-onto→ 𝐵 ∧ ∀ 𝑦 ∈ 𝐵 ( 𝑓 ‘ 𝑦 ) ≠ 𝑦 ) } ) )
68 vex ⊢ ℎ ∈ V
69 f1oeq1 ⊢ ( 𝑓 = ℎ → ( 𝑓 : 𝐴 –1-1-onto→ 𝐴 ↔ ℎ : 𝐴 –1-1-onto→ 𝐴 ) )
70 fveq1 ⊢ ( 𝑓 = ℎ → ( 𝑓 ‘ 𝑦 ) = ( ℎ ‘ 𝑦 ) )
71 70 neeq1d ⊢ ( 𝑓 = ℎ → ( ( 𝑓 ‘ 𝑦 ) ≠ 𝑦 ↔ ( ℎ ‘ 𝑦 ) ≠ 𝑦 ) )
72 71 ralbidv ⊢ ( 𝑓 = ℎ → ( ∀ 𝑦 ∈ 𝐴 ( 𝑓 ‘ 𝑦 ) ≠ 𝑦 ↔ ∀ 𝑦 ∈ 𝐴 ( ℎ ‘ 𝑦 ) ≠ 𝑦 ) )
73 69 72 anbi12d ⊢ ( 𝑓 = ℎ → ( ( 𝑓 : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( 𝑓 ‘ 𝑦 ) ≠ 𝑦 ) ↔ ( ℎ : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( ℎ ‘ 𝑦 ) ≠ 𝑦 ) ) )
74 68 73 elab ⊢ ( ℎ ∈ { 𝑓 ∣ ( 𝑓 : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( 𝑓 ‘ 𝑦 ) ≠ 𝑦 ) } ↔ ( ℎ : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( ℎ ‘ 𝑦 ) ≠ 𝑦 ) )
75 56 74 anbi12i ⊢ ( ( 𝑔 ∈ { 𝑓 ∣ ( 𝑓 : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( 𝑓 ‘ 𝑦 ) ≠ 𝑦 ) } ∧ ℎ ∈ { 𝑓 ∣ ( 𝑓 : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( 𝑓 ‘ 𝑦 ) ≠ 𝑦 ) } ) ↔ ( ( 𝑔 : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( 𝑔 ‘ 𝑦 ) ≠ 𝑦 ) ∧ ( ℎ : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( ℎ ‘ 𝑦 ) ≠ 𝑦 ) ) )
76 8 ad2antlr ⊢ ( ( ( ( 𝐴 ≈ 𝐵 ∧ 𝐵 ∈ Fin ) ∧ 𝑠 : 𝐴 –1-1-onto→ 𝐵 ) ∧ ( ( 𝑔 : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( 𝑔 ‘ 𝑦 ) ≠ 𝑦 ) ∧ ( ℎ : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( ℎ ‘ 𝑦 ) ≠ 𝑦 ) ) ) → ◡ 𝑠 : 𝐵 –1-1-onto→ 𝐴 )
77 f1ofo ⊢ ( ◡ 𝑠 : 𝐵 –1-1-onto→ 𝐴 → ◡ 𝑠 : 𝐵 –onto→ 𝐴 )
78 76 77 syl ⊢ ( ( ( ( 𝐴 ≈ 𝐵 ∧ 𝐵 ∈ Fin ) ∧ 𝑠 : 𝐴 –1-1-onto→ 𝐵 ) ∧ ( ( 𝑔 : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( 𝑔 ‘ 𝑦 ) ≠ 𝑦 ) ∧ ( ℎ : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( ℎ ‘ 𝑦 ) ≠ 𝑦 ) ) ) → ◡ 𝑠 : 𝐵 –onto→ 𝐴 )
79 7 adantrr ⊢ ( ( ( ( 𝐴 ≈ 𝐵 ∧ 𝐵 ∈ Fin ) ∧ 𝑠 : 𝐴 –1-1-onto→ 𝐵 ) ∧ ( ( 𝑔 : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( 𝑔 ‘ 𝑦 ) ≠ 𝑦 ) ∧ ( ℎ : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( ℎ ‘ 𝑦 ) ≠ 𝑦 ) ) ) → ( 𝑠 ∘ 𝑔 ) : 𝐴 –1-1-onto→ 𝐵 )
80 f1ofn ⊢ ( ( 𝑠 ∘ 𝑔 ) : 𝐴 –1-1-onto→ 𝐵 → ( 𝑠 ∘ 𝑔 ) Fn 𝐴 )
81 79 80 syl ⊢ ( ( ( ( 𝐴 ≈ 𝐵 ∧ 𝐵 ∈ Fin ) ∧ 𝑠 : 𝐴 –1-1-onto→ 𝐵 ) ∧ ( ( 𝑔 : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( 𝑔 ‘ 𝑦 ) ≠ 𝑦 ) ∧ ( ℎ : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( ℎ ‘ 𝑦 ) ≠ 𝑦 ) ) ) → ( 𝑠 ∘ 𝑔 ) Fn 𝐴 )
82 simplr ⊢ ( ( ( ( 𝐴 ≈ 𝐵 ∧ 𝐵 ∈ Fin ) ∧ 𝑠 : 𝐴 –1-1-onto→ 𝐵 ) ∧ ( ( 𝑔 : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( 𝑔 ‘ 𝑦 ) ≠ 𝑦 ) ∧ ( ℎ : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( ℎ ‘ 𝑦 ) ≠ 𝑦 ) ) ) → 𝑠 : 𝐴 –1-1-onto→ 𝐵 )
83 simprrl ⊢ ( ( ( ( 𝐴 ≈ 𝐵 ∧ 𝐵 ∈ Fin ) ∧ 𝑠 : 𝐴 –1-1-onto→ 𝐵 ) ∧ ( ( 𝑔 : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( 𝑔 ‘ 𝑦 ) ≠ 𝑦 ) ∧ ( ℎ : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( ℎ ‘ 𝑦 ) ≠ 𝑦 ) ) ) → ℎ : 𝐴 –1-1-onto→ 𝐴 )
84 f1oco ⊢ ( ( 𝑠 : 𝐴 –1-1-onto→ 𝐵 ∧ ℎ : 𝐴 –1-1-onto→ 𝐴 ) → ( 𝑠 ∘ ℎ ) : 𝐴 –1-1-onto→ 𝐵 )
85 82 83 84 syl2anc ⊢ ( ( ( ( 𝐴 ≈ 𝐵 ∧ 𝐵 ∈ Fin ) ∧ 𝑠 : 𝐴 –1-1-onto→ 𝐵 ) ∧ ( ( 𝑔 : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( 𝑔 ‘ 𝑦 ) ≠ 𝑦 ) ∧ ( ℎ : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( ℎ ‘ 𝑦 ) ≠ 𝑦 ) ) ) → ( 𝑠 ∘ ℎ ) : 𝐴 –1-1-onto→ 𝐵 )
86 f1ofn ⊢ ( ( 𝑠 ∘ ℎ ) : 𝐴 –1-1-onto→ 𝐵 → ( 𝑠 ∘ ℎ ) Fn 𝐴 )
87 85 86 syl ⊢ ( ( ( ( 𝐴 ≈ 𝐵 ∧ 𝐵 ∈ Fin ) ∧ 𝑠 : 𝐴 –1-1-onto→ 𝐵 ) ∧ ( ( 𝑔 : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( 𝑔 ‘ 𝑦 ) ≠ 𝑦 ) ∧ ( ℎ : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( ℎ ‘ 𝑦 ) ≠ 𝑦 ) ) ) → ( 𝑠 ∘ ℎ ) Fn 𝐴 )
88 cocan2 ⊢ ( ( ◡ 𝑠 : 𝐵 –onto→ 𝐴 ∧ ( 𝑠 ∘ 𝑔 ) Fn 𝐴 ∧ ( 𝑠 ∘ ℎ ) Fn 𝐴 ) → ( ( ( 𝑠 ∘ 𝑔 ) ∘ ◡ 𝑠 ) = ( ( 𝑠 ∘ ℎ ) ∘ ◡ 𝑠 ) ↔ ( 𝑠 ∘ 𝑔 ) = ( 𝑠 ∘ ℎ ) ) )
89 78 81 87 88 syl3anc ⊢ ( ( ( ( 𝐴 ≈ 𝐵 ∧ 𝐵 ∈ Fin ) ∧ 𝑠 : 𝐴 –1-1-onto→ 𝐵 ) ∧ ( ( 𝑔 : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( 𝑔 ‘ 𝑦 ) ≠ 𝑦 ) ∧ ( ℎ : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( ℎ ‘ 𝑦 ) ≠ 𝑦 ) ) ) → ( ( ( 𝑠 ∘ 𝑔 ) ∘ ◡ 𝑠 ) = ( ( 𝑠 ∘ ℎ ) ∘ ◡ 𝑠 ) ↔ ( 𝑠 ∘ 𝑔 ) = ( 𝑠 ∘ ℎ ) ) )
90 f1of1 ⊢ ( 𝑠 : 𝐴 –1-1-onto→ 𝐵 → 𝑠 : 𝐴 –1-1→ 𝐵 )
91 90 ad2antlr ⊢ ( ( ( ( 𝐴 ≈ 𝐵 ∧ 𝐵 ∈ Fin ) ∧ 𝑠 : 𝐴 –1-1-onto→ 𝐵 ) ∧ ( ( 𝑔 : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( 𝑔 ‘ 𝑦 ) ≠ 𝑦 ) ∧ ( ℎ : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( ℎ ‘ 𝑦 ) ≠ 𝑦 ) ) ) → 𝑠 : 𝐴 –1-1→ 𝐵 )
92 simprll ⊢ ( ( ( ( 𝐴 ≈ 𝐵 ∧ 𝐵 ∈ Fin ) ∧ 𝑠 : 𝐴 –1-1-onto→ 𝐵 ) ∧ ( ( 𝑔 : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( 𝑔 ‘ 𝑦 ) ≠ 𝑦 ) ∧ ( ℎ : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( ℎ ‘ 𝑦 ) ≠ 𝑦 ) ) ) → 𝑔 : 𝐴 –1-1-onto→ 𝐴 )
93 f1of ⊢ ( 𝑔 : 𝐴 –1-1-onto→ 𝐴 → 𝑔 : 𝐴 ⟶ 𝐴 )
94 92 93 syl ⊢ ( ( ( ( 𝐴 ≈ 𝐵 ∧ 𝐵 ∈ Fin ) ∧ 𝑠 : 𝐴 –1-1-onto→ 𝐵 ) ∧ ( ( 𝑔 : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( 𝑔 ‘ 𝑦 ) ≠ 𝑦 ) ∧ ( ℎ : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( ℎ ‘ 𝑦 ) ≠ 𝑦 ) ) ) → 𝑔 : 𝐴 ⟶ 𝐴 )
95 f1of ⊢ ( ℎ : 𝐴 –1-1-onto→ 𝐴 → ℎ : 𝐴 ⟶ 𝐴 )
96 83 95 syl ⊢ ( ( ( ( 𝐴 ≈ 𝐵 ∧ 𝐵 ∈ Fin ) ∧ 𝑠 : 𝐴 –1-1-onto→ 𝐵 ) ∧ ( ( 𝑔 : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( 𝑔 ‘ 𝑦 ) ≠ 𝑦 ) ∧ ( ℎ : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( ℎ ‘ 𝑦 ) ≠ 𝑦 ) ) ) → ℎ : 𝐴 ⟶ 𝐴 )
97 cocan1 ⊢ ( ( 𝑠 : 𝐴 –1-1→ 𝐵 ∧ 𝑔 : 𝐴 ⟶ 𝐴 ∧ ℎ : 𝐴 ⟶ 𝐴 ) → ( ( 𝑠 ∘ 𝑔 ) = ( 𝑠 ∘ ℎ ) ↔ 𝑔 = ℎ ) )
98 91 94 96 97 syl3anc ⊢ ( ( ( ( 𝐴 ≈ 𝐵 ∧ 𝐵 ∈ Fin ) ∧ 𝑠 : 𝐴 –1-1-onto→ 𝐵 ) ∧ ( ( 𝑔 : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( 𝑔 ‘ 𝑦 ) ≠ 𝑦 ) ∧ ( ℎ : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( ℎ ‘ 𝑦 ) ≠ 𝑦 ) ) ) → ( ( 𝑠 ∘ 𝑔 ) = ( 𝑠 ∘ ℎ ) ↔ 𝑔 = ℎ ) )
99 89 98 bitrd ⊢ ( ( ( ( 𝐴 ≈ 𝐵 ∧ 𝐵 ∈ Fin ) ∧ 𝑠 : 𝐴 –1-1-onto→ 𝐵 ) ∧ ( ( 𝑔 : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( 𝑔 ‘ 𝑦 ) ≠ 𝑦 ) ∧ ( ℎ : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( ℎ ‘ 𝑦 ) ≠ 𝑦 ) ) ) → ( ( ( 𝑠 ∘ 𝑔 ) ∘ ◡ 𝑠 ) = ( ( 𝑠 ∘ ℎ ) ∘ ◡ 𝑠 ) ↔ 𝑔 = ℎ ) )
100 99 ex ⊢ ( ( ( 𝐴 ≈ 𝐵 ∧ 𝐵 ∈ Fin ) ∧ 𝑠 : 𝐴 –1-1-onto→ 𝐵 ) → ( ( ( 𝑔 : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( 𝑔 ‘ 𝑦 ) ≠ 𝑦 ) ∧ ( ℎ : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( ℎ ‘ 𝑦 ) ≠ 𝑦 ) ) → ( ( ( 𝑠 ∘ 𝑔 ) ∘ ◡ 𝑠 ) = ( ( 𝑠 ∘ ℎ ) ∘ ◡ 𝑠 ) ↔ 𝑔 = ℎ ) ) )
101 75 100 biimtrid ⊢ ( ( ( 𝐴 ≈ 𝐵 ∧ 𝐵 ∈ Fin ) ∧ 𝑠 : 𝐴 –1-1-onto→ 𝐵 ) → ( ( 𝑔 ∈ { 𝑓 ∣ ( 𝑓 : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( 𝑓 ‘ 𝑦 ) ≠ 𝑦 ) } ∧ ℎ ∈ { 𝑓 ∣ ( 𝑓 : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( 𝑓 ‘ 𝑦 ) ≠ 𝑦 ) } ) → ( ( ( 𝑠 ∘ 𝑔 ) ∘ ◡ 𝑠 ) = ( ( 𝑠 ∘ ℎ ) ∘ ◡ 𝑠 ) ↔ 𝑔 = ℎ ) ) )
102 67 101 dom2d ⊢ ( ( ( 𝐴 ≈ 𝐵 ∧ 𝐵 ∈ Fin ) ∧ 𝑠 : 𝐴 –1-1-onto→ 𝐵 ) → ( { 𝑓 ∣ ( 𝑓 : 𝐵 –1-1-onto→ 𝐵 ∧ ∀ 𝑦 ∈ 𝐵 ( 𝑓 ‘ 𝑦 ) ≠ 𝑦 ) } ∈ Fin → { 𝑓 ∣ ( 𝑓 : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( 𝑓 ‘ 𝑦 ) ≠ 𝑦 ) } ≼ { 𝑓 ∣ ( 𝑓 : 𝐵 –1-1-onto→ 𝐵 ∧ ∀ 𝑦 ∈ 𝐵 ( 𝑓 ‘ 𝑦 ) ≠ 𝑦 ) } ) )
103 102 ex ⊢ ( ( 𝐴 ≈ 𝐵 ∧ 𝐵 ∈ Fin ) → ( 𝑠 : 𝐴 –1-1-onto→ 𝐵 → ( { 𝑓 ∣ ( 𝑓 : 𝐵 –1-1-onto→ 𝐵 ∧ ∀ 𝑦 ∈ 𝐵 ( 𝑓 ‘ 𝑦 ) ≠ 𝑦 ) } ∈ Fin → { 𝑓 ∣ ( 𝑓 : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( 𝑓 ‘ 𝑦 ) ≠ 𝑦 ) } ≼ { 𝑓 ∣ ( 𝑓 : 𝐵 –1-1-onto→ 𝐵 ∧ ∀ 𝑦 ∈ 𝐵 ( 𝑓 ‘ 𝑦 ) ≠ 𝑦 ) } ) ) )
104 103 exlimdv ⊢ ( ( 𝐴 ≈ 𝐵 ∧ 𝐵 ∈ Fin ) → ( ∃ 𝑠 𝑠 : 𝐴 –1-1-onto→ 𝐵 → ( { 𝑓 ∣ ( 𝑓 : 𝐵 –1-1-onto→ 𝐵 ∧ ∀ 𝑦 ∈ 𝐵 ( 𝑓 ‘ 𝑦 ) ≠ 𝑦 ) } ∈ Fin → { 𝑓 ∣ ( 𝑓 : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( 𝑓 ‘ 𝑦 ) ≠ 𝑦 ) } ≼ { 𝑓 ∣ ( 𝑓 : 𝐵 –1-1-onto→ 𝐵 ∧ ∀ 𝑦 ∈ 𝐵 ( 𝑓 ‘ 𝑦 ) ≠ 𝑦 ) } ) ) )
105 3 5 104 mp2d ⊢ ( ( 𝐴 ≈ 𝐵 ∧ 𝐵 ∈ Fin ) → { 𝑓 ∣ ( 𝑓 : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( 𝑓 ‘ 𝑦 ) ≠ 𝑦 ) } ≼ { 𝑓 ∣ ( 𝑓 : 𝐵 –1-1-onto→ 𝐵 ∧ ∀ 𝑦 ∈ 𝐵 ( 𝑓 ‘ 𝑦 ) ≠ 𝑦 ) } )
106 enfii ⊢ ( ( 𝐵 ∈ Fin ∧ 𝐴 ≈ 𝐵 ) → 𝐴 ∈ Fin )
107 106 ancoms ⊢ ( ( 𝐴 ≈ 𝐵 ∧ 𝐵 ∈ Fin ) → 𝐴 ∈ Fin )
108 deranglem ⊢ ( 𝐴 ∈ Fin → { 𝑓 ∣ ( 𝑓 : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( 𝑓 ‘ 𝑦 ) ≠ 𝑦 ) } ∈ Fin )
109 107 108 syl ⊢ ( ( 𝐴 ≈ 𝐵 ∧ 𝐵 ∈ Fin ) → { 𝑓 ∣ ( 𝑓 : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( 𝑓 ‘ 𝑦 ) ≠ 𝑦 ) } ∈ Fin )
110 hashdom ⊢ ( ( { 𝑓 ∣ ( 𝑓 : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( 𝑓 ‘ 𝑦 ) ≠ 𝑦 ) } ∈ Fin ∧ { 𝑓 ∣ ( 𝑓 : 𝐵 –1-1-onto→ 𝐵 ∧ ∀ 𝑦 ∈ 𝐵 ( 𝑓 ‘ 𝑦 ) ≠ 𝑦 ) } ∈ Fin ) → ( ( ♯ ‘ { 𝑓 ∣ ( 𝑓 : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( 𝑓 ‘ 𝑦 ) ≠ 𝑦 ) } ) ≤ ( ♯ ‘ { 𝑓 ∣ ( 𝑓 : 𝐵 –1-1-onto→ 𝐵 ∧ ∀ 𝑦 ∈ 𝐵 ( 𝑓 ‘ 𝑦 ) ≠ 𝑦 ) } ) ↔ { 𝑓 ∣ ( 𝑓 : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( 𝑓 ‘ 𝑦 ) ≠ 𝑦 ) } ≼ { 𝑓 ∣ ( 𝑓 : 𝐵 –1-1-onto→ 𝐵 ∧ ∀ 𝑦 ∈ 𝐵 ( 𝑓 ‘ 𝑦 ) ≠ 𝑦 ) } ) )
111 109 5 110 syl2anc ⊢ ( ( 𝐴 ≈ 𝐵 ∧ 𝐵 ∈ Fin ) → ( ( ♯ ‘ { 𝑓 ∣ ( 𝑓 : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( 𝑓 ‘ 𝑦 ) ≠ 𝑦 ) } ) ≤ ( ♯ ‘ { 𝑓 ∣ ( 𝑓 : 𝐵 –1-1-onto→ 𝐵 ∧ ∀ 𝑦 ∈ 𝐵 ( 𝑓 ‘ 𝑦 ) ≠ 𝑦 ) } ) ↔ { 𝑓 ∣ ( 𝑓 : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( 𝑓 ‘ 𝑦 ) ≠ 𝑦 ) } ≼ { 𝑓 ∣ ( 𝑓 : 𝐵 –1-1-onto→ 𝐵 ∧ ∀ 𝑦 ∈ 𝐵 ( 𝑓 ‘ 𝑦 ) ≠ 𝑦 ) } ) )
112 105 111 mpbird ⊢ ( ( 𝐴 ≈ 𝐵 ∧ 𝐵 ∈ Fin ) → ( ♯ ‘ { 𝑓 ∣ ( 𝑓 : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( 𝑓 ‘ 𝑦 ) ≠ 𝑦 ) } ) ≤ ( ♯ ‘ { 𝑓 ∣ ( 𝑓 : 𝐵 –1-1-onto→ 𝐵 ∧ ∀ 𝑦 ∈ 𝐵 ( 𝑓 ‘ 𝑦 ) ≠ 𝑦 ) } ) )
113 1 derangval ⊢ ( 𝐴 ∈ Fin → ( 𝐷 ‘ 𝐴 ) = ( ♯ ‘ { 𝑓 ∣ ( 𝑓 : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( 𝑓 ‘ 𝑦 ) ≠ 𝑦 ) } ) )
114 107 113 syl ⊢ ( ( 𝐴 ≈ 𝐵 ∧ 𝐵 ∈ Fin ) → ( 𝐷 ‘ 𝐴 ) = ( ♯ ‘ { 𝑓 ∣ ( 𝑓 : 𝐴 –1-1-onto→ 𝐴 ∧ ∀ 𝑦 ∈ 𝐴 ( 𝑓 ‘ 𝑦 ) ≠ 𝑦 ) } ) )
115 1 derangval ⊢ ( 𝐵 ∈ Fin → ( 𝐷 ‘ 𝐵 ) = ( ♯ ‘ { 𝑓 ∣ ( 𝑓 : 𝐵 –1-1-onto→ 𝐵 ∧ ∀ 𝑦 ∈ 𝐵 ( 𝑓 ‘ 𝑦 ) ≠ 𝑦 ) } ) )
116 115 adantl ⊢ ( ( 𝐴 ≈ 𝐵 ∧ 𝐵 ∈ Fin ) → ( 𝐷 ‘ 𝐵 ) = ( ♯ ‘ { 𝑓 ∣ ( 𝑓 : 𝐵 –1-1-onto→ 𝐵 ∧ ∀ 𝑦 ∈ 𝐵 ( 𝑓 ‘ 𝑦 ) ≠ 𝑦 ) } ) )
117 112 114 116 3brtr4d ⊢ ( ( 𝐴 ≈ 𝐵 ∧ 𝐵 ∈ Fin ) → ( 𝐷 ‘ 𝐴 ) ≤ ( 𝐷 ‘ 𝐵 ) )