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