Users' Mathboxes Mathbox for Mario Carneiro < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >   Mathboxes  >  derangenlem Structured version   Visualization version   GIF version

Theorem derangenlem 35521
Description: One half of derangen 35522. (Contributed by Mario Carneiro, 22-Jan-2015.)
Hypothesis
Ref Expression
derang.d 𝐷 = (𝑥 ∈ Fin ↦ (♯‘{𝑓 ∣ (𝑓:𝑥1-1-onto𝑥 ∧ ∀𝑦𝑥 (𝑓𝑦) ≠ 𝑦)}))
Assertion
Ref Expression
derangenlem ((𝐴𝐵𝐵 ∈ Fin) → (𝐷𝐴) ≤ (𝐷𝐵))
Distinct variable groups:   𝑥,𝑓,𝑦,𝐴   𝐵,𝑓,𝑥,𝑦
Allowed substitution hints:   𝐷(𝑥,𝑦,𝑓)

Proof of Theorem derangenlem
Dummy variables 𝑔 𝑠 𝑧 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 bren 8937 . . . . 5 (𝐴𝐵 ↔ ∃𝑠 𝑠:𝐴1-1-onto𝐵)
21birani 507 . . . 4 ((𝐴𝐵𝐵 ∈ Fin) → ∃𝑠 𝑠:𝐴1-1-onto𝐵)
3 deranglem 35516 . . . . 5 (𝐵 ∈ Fin → {𝑓 ∣ (𝑓:𝐵1-1-onto𝐵 ∧ ∀𝑦𝐵 (𝑓𝑦) ≠ 𝑦)} ∈ Fin)
43adantl 485 . . . 4 ((𝐴𝐵𝐵 ∈ Fin) → {𝑓 ∣ (𝑓:𝐵1-1-onto𝐵 ∧ ∀𝑦𝐵 (𝑓𝑦) ≠ 𝑦)} ∈ Fin)
5 f1oco 6830 . . . . . . . . . . . 12 ((𝑠:𝐴1-1-onto𝐵𝑔:𝐴1-1-onto𝐴) → (𝑠𝑔):𝐴1-1-onto𝐵)
65ad2ant2lr 758 . . . . . . . . . . 11 ((((𝐴𝐵𝐵 ∈ Fin) ∧ 𝑠:𝐴1-1-onto𝐵) ∧ (𝑔:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑔𝑦) ≠ 𝑦)) → (𝑠𝑔):𝐴1-1-onto𝐵)
7 f1ocnv 6819 . . . . . . . . . . . 12 (𝑠:𝐴1-1-onto𝐵𝑠:𝐵1-1-onto𝐴)
87ad2antlr 737 . . . . . . . . . . 11 ((((𝐴𝐵𝐵 ∈ Fin) ∧ 𝑠:𝐴1-1-onto𝐵) ∧ (𝑔:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑔𝑦) ≠ 𝑦)) → 𝑠:𝐵1-1-onto𝐴)
9 f1oco 6830 . . . . . . . . . . 11 (((𝑠𝑔):𝐴1-1-onto𝐵𝑠:𝐵1-1-onto𝐴) → ((𝑠𝑔) ∘ 𝑠):𝐵1-1-onto𝐵)
106, 8, 9syl2anc 593 . . . . . . . . . 10 ((((𝐴𝐵𝐵 ∈ Fin) ∧ 𝑠:𝐴1-1-onto𝐵) ∧ (𝑔:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑔𝑦) ≠ 𝑦)) → ((𝑠𝑔) ∘ 𝑠):𝐵1-1-onto𝐵)
11 coass 6253 . . . . . . . . . . . . . . 15 ((𝑠𝑔) ∘ 𝑠) = (𝑠 ∘ (𝑔𝑠))
1211fveq1i 6868 . . . . . . . . . . . . . 14 (((𝑠𝑔) ∘ 𝑠)‘𝑧) = ((𝑠 ∘ (𝑔𝑠))‘𝑧)
13 simprl 780 . . . . . . . . . . . . . . . . 17 ((((𝐴𝐵𝐵 ∈ Fin) ∧ 𝑠:𝐴1-1-onto𝐵) ∧ (𝑔:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑔𝑦) ≠ 𝑦)) → 𝑔:𝐴1-1-onto𝐴)
14 f1oco 6830 . . . . . . . . . . . . . . . . 17 ((𝑔:𝐴1-1-onto𝐴𝑠:𝐵1-1-onto𝐴) → (𝑔𝑠):𝐵1-1-onto𝐴)
1513, 8, 14syl2anc 593 . . . . . . . . . . . . . . . 16 ((((𝐴𝐵𝐵 ∈ Fin) ∧ 𝑠:𝐴1-1-onto𝐵) ∧ (𝑔:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑔𝑦) ≠ 𝑦)) → (𝑔𝑠):𝐵1-1-onto𝐴)
16 f1of 6806 . . . . . . . . . . . . . . . 16 ((𝑔𝑠):𝐵1-1-onto𝐴 → (𝑔𝑠):𝐵𝐴)
1715, 16syl 17 . . . . . . . . . . . . . . 15 ((((𝐴𝐵𝐵 ∈ Fin) ∧ 𝑠:𝐴1-1-onto𝐵) ∧ (𝑔:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑔𝑦) ≠ 𝑦)) → (𝑔𝑠):𝐵𝐴)
18 fvco3 6967 . . . . . . . . . . . . . . 15 (((𝑔𝑠):𝐵𝐴𝑧𝐵) → ((𝑠 ∘ (𝑔𝑠))‘𝑧) = (𝑠‘((𝑔𝑠)‘𝑧)))
1917, 18sylan 589 . . . . . . . . . . . . . 14 (((((𝐴𝐵𝐵 ∈ Fin) ∧ 𝑠:𝐴1-1-onto𝐵) ∧ (𝑔:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑔𝑦) ≠ 𝑦)) ∧ 𝑧𝐵) → ((𝑠 ∘ (𝑔𝑠))‘𝑧) = (𝑠‘((𝑔𝑠)‘𝑧)))
2012, 19eqtrid 2809 . . . . . . . . . . . . 13 (((((𝐴𝐵𝐵 ∈ Fin) ∧ 𝑠:𝐴1-1-onto𝐵) ∧ (𝑔:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑔𝑦) ≠ 𝑦)) ∧ 𝑧𝐵) → (((𝑠𝑔) ∘ 𝑠)‘𝑧) = (𝑠‘((𝑔𝑠)‘𝑧)))
21 f1of 6806 . . . . . . . . . . . . . . . . . 18 (𝑠:𝐵1-1-onto𝐴𝑠:𝐵𝐴)
228, 21syl 17 . . . . . . . . . . . . . . . . 17 ((((𝐴𝐵𝐵 ∈ Fin) ∧ 𝑠:𝐴1-1-onto𝐵) ∧ (𝑔:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑔𝑦) ≠ 𝑦)) → 𝑠:𝐵𝐴)
23 fvco3 6967 . . . . . . . . . . . . . . . . 17 ((𝑠:𝐵𝐴𝑧𝐵) → ((𝑔𝑠)‘𝑧) = (𝑔‘(𝑠𝑧)))
2422, 23sylan 589 . . . . . . . . . . . . . . . 16 (((((𝐴𝐵𝐵 ∈ Fin) ∧ 𝑠:𝐴1-1-onto𝐵) ∧ (𝑔:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑔𝑦) ≠ 𝑦)) ∧ 𝑧𝐵) → ((𝑔𝑠)‘𝑧) = (𝑔‘(𝑠𝑧)))
2522ffvelcdmda 7065 . . . . . . . . . . . . . . . . 17 (((((𝐴𝐵𝐵 ∈ Fin) ∧ 𝑠:𝐴1-1-onto𝐵) ∧ (𝑔:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑔𝑦) ≠ 𝑦)) ∧ 𝑧𝐵) → (𝑠𝑧) ∈ 𝐴)
26 simplrr 787 . . . . . . . . . . . . . . . . 17 (((((𝐴𝐵𝐵 ∈ Fin) ∧ 𝑠:𝐴1-1-onto𝐵) ∧ (𝑔:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑔𝑦) ≠ 𝑦)) ∧ 𝑧𝐵) → ∀𝑦𝐴 (𝑔𝑦) ≠ 𝑦)
27 fveq2 6867 . . . . . . . . . . . . . . . . . . 19 (𝑦 = (𝑠𝑧) → (𝑔𝑦) = (𝑔‘(𝑠𝑧)))
28 id 22 . . . . . . . . . . . . . . . . . . 19 (𝑦 = (𝑠𝑧) → 𝑦 = (𝑠𝑧))
2927, 28neeq12d 3018 . . . . . . . . . . . . . . . . . 18 (𝑦 = (𝑠𝑧) → ((𝑔𝑦) ≠ 𝑦 ↔ (𝑔‘(𝑠𝑧)) ≠ (𝑠𝑧)))
3029rspcv 3577 . . . . . . . . . . . . . . . . 17 ((𝑠𝑧) ∈ 𝐴 → (∀𝑦𝐴 (𝑔𝑦) ≠ 𝑦 → (𝑔‘(𝑠𝑧)) ≠ (𝑠𝑧)))
3125, 26, 30sylc 65 . . . . . . . . . . . . . . . 16 (((((𝐴𝐵𝐵 ∈ Fin) ∧ 𝑠:𝐴1-1-onto𝐵) ∧ (𝑔:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑔𝑦) ≠ 𝑦)) ∧ 𝑧𝐵) → (𝑔‘(𝑠𝑧)) ≠ (𝑠𝑧))
3224, 31eqnetrd 3024 . . . . . . . . . . . . . . 15 (((((𝐴𝐵𝐵 ∈ Fin) ∧ 𝑠:𝐴1-1-onto𝐵) ∧ (𝑔:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑔𝑦) ≠ 𝑦)) ∧ 𝑧𝐵) → ((𝑔𝑠)‘𝑧) ≠ (𝑠𝑧))
3332necomd 3012 . . . . . . . . . . . . . 14 (((((𝐴𝐵𝐵 ∈ Fin) ∧ 𝑠:𝐴1-1-onto𝐵) ∧ (𝑔:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑔𝑦) ≠ 𝑦)) ∧ 𝑧𝐵) → (𝑠𝑧) ≠ ((𝑔𝑠)‘𝑧))
34 simpllr 785 . . . . . . . . . . . . . . . 16 (((((𝐴𝐵𝐵 ∈ Fin) ∧ 𝑠:𝐴1-1-onto𝐵) ∧ (𝑔:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑔𝑦) ≠ 𝑦)) ∧ 𝑧𝐵) → 𝑠:𝐴1-1-onto𝐵)
3517ffvelcdmda 7065 . . . . . . . . . . . . . . . 16 (((((𝐴𝐵𝐵 ∈ Fin) ∧ 𝑠:𝐴1-1-onto𝐵) ∧ (𝑔:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑔𝑦) ≠ 𝑦)) ∧ 𝑧𝐵) → ((𝑔𝑠)‘𝑧) ∈ 𝐴)
36 f1ocnvfv 7262 . . . . . . . . . . . . . . . 16 ((𝑠:𝐴1-1-onto𝐵 ∧ ((𝑔𝑠)‘𝑧) ∈ 𝐴) → ((𝑠‘((𝑔𝑠)‘𝑧)) = 𝑧 → (𝑠𝑧) = ((𝑔𝑠)‘𝑧)))
3734, 35, 36syl2anc 593 . . . . . . . . . . . . . . 15 (((((𝐴𝐵𝐵 ∈ Fin) ∧ 𝑠:𝐴1-1-onto𝐵) ∧ (𝑔:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑔𝑦) ≠ 𝑦)) ∧ 𝑧𝐵) → ((𝑠‘((𝑔𝑠)‘𝑧)) = 𝑧 → (𝑠𝑧) = ((𝑔𝑠)‘𝑧)))
3837necon3d 2978 . . . . . . . . . . . . . 14 (((((𝐴𝐵𝐵 ∈ Fin) ∧ 𝑠:𝐴1-1-onto𝐵) ∧ (𝑔:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑔𝑦) ≠ 𝑦)) ∧ 𝑧𝐵) → ((𝑠𝑧) ≠ ((𝑔𝑠)‘𝑧) → (𝑠‘((𝑔𝑠)‘𝑧)) ≠ 𝑧))
3933, 38mpd 15 . . . . . . . . . . . . 13 (((((𝐴𝐵𝐵 ∈ Fin) ∧ 𝑠:𝐴1-1-onto𝐵) ∧ (𝑔:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑔𝑦) ≠ 𝑦)) ∧ 𝑧𝐵) → (𝑠‘((𝑔𝑠)‘𝑧)) ≠ 𝑧)
4020, 39eqnetrd 3024 . . . . . . . . . . . 12 (((((𝐴𝐵𝐵 ∈ Fin) ∧ 𝑠:𝐴1-1-onto𝐵) ∧ (𝑔:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑔𝑦) ≠ 𝑦)) ∧ 𝑧𝐵) → (((𝑠𝑔) ∘ 𝑠)‘𝑧) ≠ 𝑧)
4140ralrimiva 3154 . . . . . . . . . . 11 ((((𝐴𝐵𝐵 ∈ Fin) ∧ 𝑠:𝐴1-1-onto𝐵) ∧ (𝑔:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑔𝑦) ≠ 𝑦)) → ∀𝑧𝐵 (((𝑠𝑔) ∘ 𝑠)‘𝑧) ≠ 𝑧)
42 fveq2 6867 . . . . . . . . . . . . 13 (𝑧 = 𝑦 → (((𝑠𝑔) ∘ 𝑠)‘𝑧) = (((𝑠𝑔) ∘ 𝑠)‘𝑦))
43 id 22 . . . . . . . . . . . . 13 (𝑧 = 𝑦𝑧 = 𝑦)
4442, 43neeq12d 3018 . . . . . . . . . . . 12 (𝑧 = 𝑦 → ((((𝑠𝑔) ∘ 𝑠)‘𝑧) ≠ 𝑧 ↔ (((𝑠𝑔) ∘ 𝑠)‘𝑦) ≠ 𝑦))
4544cbvralvw 3240 . . . . . . . . . . 11 (∀𝑧𝐵 (((𝑠𝑔) ∘ 𝑠)‘𝑧) ≠ 𝑧 ↔ ∀𝑦𝐵 (((𝑠𝑔) ∘ 𝑠)‘𝑦) ≠ 𝑦)
4641, 45sylib 220 . . . . . . . . . 10 ((((𝐴𝐵𝐵 ∈ Fin) ∧ 𝑠:𝐴1-1-onto𝐵) ∧ (𝑔:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑔𝑦) ≠ 𝑦)) → ∀𝑦𝐵 (((𝑠𝑔) ∘ 𝑠)‘𝑦) ≠ 𝑦)
4710, 46jca 519 . . . . . . . . 9 ((((𝐴𝐵𝐵 ∈ Fin) ∧ 𝑠:𝐴1-1-onto𝐵) ∧ (𝑔:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑔𝑦) ≠ 𝑦)) → (((𝑠𝑔) ∘ 𝑠):𝐵1-1-onto𝐵 ∧ ∀𝑦𝐵 (((𝑠𝑔) ∘ 𝑠)‘𝑦) ≠ 𝑦))
4847ex 416 . . . . . . . 8 (((𝐴𝐵𝐵 ∈ Fin) ∧ 𝑠:𝐴1-1-onto𝐵) → ((𝑔:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑔𝑦) ≠ 𝑦) → (((𝑠𝑔) ∘ 𝑠):𝐵1-1-onto𝐵 ∧ ∀𝑦𝐵 (((𝑠𝑔) ∘ 𝑠)‘𝑦) ≠ 𝑦)))
49 vex 3458 . . . . . . . . 9 𝑔 ∈ V
50 f1oeq1 6794 . . . . . . . . . 10 (𝑓 = 𝑔 → (𝑓:𝐴1-1-onto𝐴𝑔:𝐴1-1-onto𝐴))
51 fveq1 6866 . . . . . . . . . . . 12 (𝑓 = 𝑔 → (𝑓𝑦) = (𝑔𝑦))
5251neeq1d 3016 . . . . . . . . . . 11 (𝑓 = 𝑔 → ((𝑓𝑦) ≠ 𝑦 ↔ (𝑔𝑦) ≠ 𝑦))
5352ralbidv 3185 . . . . . . . . . 10 (𝑓 = 𝑔 → (∀𝑦𝐴 (𝑓𝑦) ≠ 𝑦 ↔ ∀𝑦𝐴 (𝑔𝑦) ≠ 𝑦))
5450, 53anbi12d 641 . . . . . . . . 9 (𝑓 = 𝑔 → ((𝑓:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑓𝑦) ≠ 𝑦) ↔ (𝑔:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑔𝑦) ≠ 𝑦)))
5549, 54elab 3638 . . . . . . . 8 (𝑔 ∈ {𝑓 ∣ (𝑓:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑓𝑦) ≠ 𝑦)} ↔ (𝑔:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑔𝑦) ≠ 𝑦))
56 vex 3458 . . . . . . . . . . 11 𝑠 ∈ V
5756, 49coex 7911 . . . . . . . . . 10 (𝑠𝑔) ∈ V
5856cnvex 7906 . . . . . . . . . 10 𝑠 ∈ V
5957, 58coex 7911 . . . . . . . . 9 ((𝑠𝑔) ∘ 𝑠) ∈ V
60 f1oeq1 6794 . . . . . . . . . 10 (𝑓 = ((𝑠𝑔) ∘ 𝑠) → (𝑓:𝐵1-1-onto𝐵 ↔ ((𝑠𝑔) ∘ 𝑠):𝐵1-1-onto𝐵))
61 fveq1 6866 . . . . . . . . . . . 12 (𝑓 = ((𝑠𝑔) ∘ 𝑠) → (𝑓𝑦) = (((𝑠𝑔) ∘ 𝑠)‘𝑦))
6261neeq1d 3016 . . . . . . . . . . 11 (𝑓 = ((𝑠𝑔) ∘ 𝑠) → ((𝑓𝑦) ≠ 𝑦 ↔ (((𝑠𝑔) ∘ 𝑠)‘𝑦) ≠ 𝑦))
6362ralbidv 3185 . . . . . . . . . 10 (𝑓 = ((𝑠𝑔) ∘ 𝑠) → (∀𝑦𝐵 (𝑓𝑦) ≠ 𝑦 ↔ ∀𝑦𝐵 (((𝑠𝑔) ∘ 𝑠)‘𝑦) ≠ 𝑦))
6460, 63anbi12d 641 . . . . . . . . 9 (𝑓 = ((𝑠𝑔) ∘ 𝑠) → ((𝑓:𝐵1-1-onto𝐵 ∧ ∀𝑦𝐵 (𝑓𝑦) ≠ 𝑦) ↔ (((𝑠𝑔) ∘ 𝑠):𝐵1-1-onto𝐵 ∧ ∀𝑦𝐵 (((𝑠𝑔) ∘ 𝑠)‘𝑦) ≠ 𝑦)))
6559, 64elab 3638 . . . . . . . 8 (((𝑠𝑔) ∘ 𝑠) ∈ {𝑓 ∣ (𝑓:𝐵1-1-onto𝐵 ∧ ∀𝑦𝐵 (𝑓𝑦) ≠ 𝑦)} ↔ (((𝑠𝑔) ∘ 𝑠):𝐵1-1-onto𝐵 ∧ ∀𝑦𝐵 (((𝑠𝑔) ∘ 𝑠)‘𝑦) ≠ 𝑦))
6648, 55, 653imtr4g 298 . . . . . . 7 (((𝐴𝐵𝐵 ∈ Fin) ∧ 𝑠:𝐴1-1-onto𝐵) → (𝑔 ∈ {𝑓 ∣ (𝑓:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑓𝑦) ≠ 𝑦)} → ((𝑠𝑔) ∘ 𝑠) ∈ {𝑓 ∣ (𝑓:𝐵1-1-onto𝐵 ∧ ∀𝑦𝐵 (𝑓𝑦) ≠ 𝑦)}))
67 vex 3458 . . . . . . . . . 10 ∈ V
68 f1oeq1 6794 . . . . . . . . . . 11 (𝑓 = → (𝑓:𝐴1-1-onto𝐴:𝐴1-1-onto𝐴))
69 fveq1 6866 . . . . . . . . . . . . 13 (𝑓 = → (𝑓𝑦) = (𝑦))
7069neeq1d 3016 . . . . . . . . . . . 12 (𝑓 = → ((𝑓𝑦) ≠ 𝑦 ↔ (𝑦) ≠ 𝑦))
7170ralbidv 3185 . . . . . . . . . . 11 (𝑓 = → (∀𝑦𝐴 (𝑓𝑦) ≠ 𝑦 ↔ ∀𝑦𝐴 (𝑦) ≠ 𝑦))
7268, 71anbi12d 641 . . . . . . . . . 10 (𝑓 = → ((𝑓:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑓𝑦) ≠ 𝑦) ↔ (:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑦) ≠ 𝑦)))
7367, 72elab 3638 . . . . . . . . 9 ( ∈ {𝑓 ∣ (𝑓:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑓𝑦) ≠ 𝑦)} ↔ (:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑦) ≠ 𝑦))
7455, 73anbi12i 637 . . . . . . . 8 ((𝑔 ∈ {𝑓 ∣ (𝑓:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑓𝑦) ≠ 𝑦)} ∧ ∈ {𝑓 ∣ (𝑓:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑓𝑦) ≠ 𝑦)}) ↔ ((𝑔:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑔𝑦) ≠ 𝑦) ∧ (:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑦) ≠ 𝑦)))
757ad2antlr 737 . . . . . . . . . . . 12 ((((𝐴𝐵𝐵 ∈ Fin) ∧ 𝑠:𝐴1-1-onto𝐵) ∧ ((𝑔:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑔𝑦) ≠ 𝑦) ∧ (:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑦) ≠ 𝑦))) → 𝑠:𝐵1-1-onto𝐴)
76 f1ofo 6814 . . . . . . . . . . . 12 (𝑠:𝐵1-1-onto𝐴𝑠:𝐵onto𝐴)
7775, 76syl 17 . . . . . . . . . . 11 ((((𝐴𝐵𝐵 ∈ Fin) ∧ 𝑠:𝐴1-1-onto𝐵) ∧ ((𝑔:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑔𝑦) ≠ 𝑦) ∧ (:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑦) ≠ 𝑦))) → 𝑠:𝐵onto𝐴)
786adantrr 727 . . . . . . . . . . . 12 ((((𝐴𝐵𝐵 ∈ Fin) ∧ 𝑠:𝐴1-1-onto𝐵) ∧ ((𝑔:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑔𝑦) ≠ 𝑦) ∧ (:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑦) ≠ 𝑦))) → (𝑠𝑔):𝐴1-1-onto𝐵)
79 f1ofn 6807 . . . . . . . . . . . 12 ((𝑠𝑔):𝐴1-1-onto𝐵 → (𝑠𝑔) Fn 𝐴)
8078, 79syl 17 . . . . . . . . . . 11 ((((𝐴𝐵𝐵 ∈ Fin) ∧ 𝑠:𝐴1-1-onto𝐵) ∧ ((𝑔:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑔𝑦) ≠ 𝑦) ∧ (:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑦) ≠ 𝑦))) → (𝑠𝑔) Fn 𝐴)
81 simplr 778 . . . . . . . . . . . . 13 ((((𝐴𝐵𝐵 ∈ Fin) ∧ 𝑠:𝐴1-1-onto𝐵) ∧ ((𝑔:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑔𝑦) ≠ 𝑦) ∧ (:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑦) ≠ 𝑦))) → 𝑠:𝐴1-1-onto𝐵)
82 simprrl 790 . . . . . . . . . . . . 13 ((((𝐴𝐵𝐵 ∈ Fin) ∧ 𝑠:𝐴1-1-onto𝐵) ∧ ((𝑔:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑔𝑦) ≠ 𝑦) ∧ (:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑦) ≠ 𝑦))) → :𝐴1-1-onto𝐴)
83 f1oco 6830 . . . . . . . . . . . . 13 ((𝑠:𝐴1-1-onto𝐵:𝐴1-1-onto𝐴) → (𝑠):𝐴1-1-onto𝐵)
8481, 82, 83syl2anc 593 . . . . . . . . . . . 12 ((((𝐴𝐵𝐵 ∈ Fin) ∧ 𝑠:𝐴1-1-onto𝐵) ∧ ((𝑔:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑔𝑦) ≠ 𝑦) ∧ (:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑦) ≠ 𝑦))) → (𝑠):𝐴1-1-onto𝐵)
85 f1ofn 6807 . . . . . . . . . . . 12 ((𝑠):𝐴1-1-onto𝐵 → (𝑠) Fn 𝐴)
8684, 85syl 17 . . . . . . . . . . 11 ((((𝐴𝐵𝐵 ∈ Fin) ∧ 𝑠:𝐴1-1-onto𝐵) ∧ ((𝑔:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑔𝑦) ≠ 𝑦) ∧ (:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑦) ≠ 𝑦))) → (𝑠) Fn 𝐴)
87 cocan2 7276 . . . . . . . . . . 11 ((𝑠:𝐵onto𝐴 ∧ (𝑠𝑔) Fn 𝐴 ∧ (𝑠) Fn 𝐴) → (((𝑠𝑔) ∘ 𝑠) = ((𝑠) ∘ 𝑠) ↔ (𝑠𝑔) = (𝑠)))
8877, 80, 86, 87syl3anc 1390 . . . . . . . . . 10 ((((𝐴𝐵𝐵 ∈ Fin) ∧ 𝑠:𝐴1-1-onto𝐵) ∧ ((𝑔:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑔𝑦) ≠ 𝑦) ∧ (:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑦) ≠ 𝑦))) → (((𝑠𝑔) ∘ 𝑠) = ((𝑠) ∘ 𝑠) ↔ (𝑠𝑔) = (𝑠)))
89 f1of1 6805 . . . . . . . . . . . 12 (𝑠:𝐴1-1-onto𝐵𝑠:𝐴1-1𝐵)
9089ad2antlr 737 . . . . . . . . . . 11 ((((𝐴𝐵𝐵 ∈ Fin) ∧ 𝑠:𝐴1-1-onto𝐵) ∧ ((𝑔:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑔𝑦) ≠ 𝑦) ∧ (:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑦) ≠ 𝑦))) → 𝑠:𝐴1-1𝐵)
91 simprll 788 . . . . . . . . . . . 12 ((((𝐴𝐵𝐵 ∈ Fin) ∧ 𝑠:𝐴1-1-onto𝐵) ∧ ((𝑔:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑔𝑦) ≠ 𝑦) ∧ (:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑦) ≠ 𝑦))) → 𝑔:𝐴1-1-onto𝐴)
92 f1of 6806 . . . . . . . . . . . 12 (𝑔:𝐴1-1-onto𝐴𝑔:𝐴𝐴)
9391, 92syl 17 . . . . . . . . . . 11 ((((𝐴𝐵𝐵 ∈ Fin) ∧ 𝑠:𝐴1-1-onto𝐵) ∧ ((𝑔:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑔𝑦) ≠ 𝑦) ∧ (:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑦) ≠ 𝑦))) → 𝑔:𝐴𝐴)
94 f1of 6806 . . . . . . . . . . . 12 (:𝐴1-1-onto𝐴:𝐴𝐴)
9582, 94syl 17 . . . . . . . . . . 11 ((((𝐴𝐵𝐵 ∈ Fin) ∧ 𝑠:𝐴1-1-onto𝐵) ∧ ((𝑔:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑔𝑦) ≠ 𝑦) ∧ (:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑦) ≠ 𝑦))) → :𝐴𝐴)
96 cocan1 7275 . . . . . . . . . . 11 ((𝑠:𝐴1-1𝐵𝑔:𝐴𝐴:𝐴𝐴) → ((𝑠𝑔) = (𝑠) ↔ 𝑔 = ))
9790, 93, 95, 96syl3anc 1390 . . . . . . . . . 10 ((((𝐴𝐵𝐵 ∈ Fin) ∧ 𝑠:𝐴1-1-onto𝐵) ∧ ((𝑔:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑔𝑦) ≠ 𝑦) ∧ (:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑦) ≠ 𝑦))) → ((𝑠𝑔) = (𝑠) ↔ 𝑔 = ))
9888, 97bitrd 281 . . . . . . . . 9 ((((𝐴𝐵𝐵 ∈ Fin) ∧ 𝑠:𝐴1-1-onto𝐵) ∧ ((𝑔:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑔𝑦) ≠ 𝑦) ∧ (:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑦) ≠ 𝑦))) → (((𝑠𝑔) ∘ 𝑠) = ((𝑠) ∘ 𝑠) ↔ 𝑔 = ))
9998ex 416 . . . . . . . 8 (((𝐴𝐵𝐵 ∈ Fin) ∧ 𝑠:𝐴1-1-onto𝐵) → (((𝑔:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑔𝑦) ≠ 𝑦) ∧ (:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑦) ≠ 𝑦)) → (((𝑠𝑔) ∘ 𝑠) = ((𝑠) ∘ 𝑠) ↔ 𝑔 = )))
10074, 99biimtrid 244 . . . . . . 7 (((𝐴𝐵𝐵 ∈ Fin) ∧ 𝑠:𝐴1-1-onto𝐵) → ((𝑔 ∈ {𝑓 ∣ (𝑓:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑓𝑦) ≠ 𝑦)} ∧ ∈ {𝑓 ∣ (𝑓:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑓𝑦) ≠ 𝑦)}) → (((𝑠𝑔) ∘ 𝑠) = ((𝑠) ∘ 𝑠) ↔ 𝑔 = )))
10166, 100dom2d 8974 . . . . . 6 (((𝐴𝐵𝐵 ∈ Fin) ∧ 𝑠:𝐴1-1-onto𝐵) → ({𝑓 ∣ (𝑓:𝐵1-1-onto𝐵 ∧ ∀𝑦𝐵 (𝑓𝑦) ≠ 𝑦)} ∈ Fin → {𝑓 ∣ (𝑓:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑓𝑦) ≠ 𝑦)} ≼ {𝑓 ∣ (𝑓:𝐵1-1-onto𝐵 ∧ ∀𝑦𝐵 (𝑓𝑦) ≠ 𝑦)}))
102101ex 416 . . . . 5 ((𝐴𝐵𝐵 ∈ Fin) → (𝑠:𝐴1-1-onto𝐵 → ({𝑓 ∣ (𝑓:𝐵1-1-onto𝐵 ∧ ∀𝑦𝐵 (𝑓𝑦) ≠ 𝑦)} ∈ Fin → {𝑓 ∣ (𝑓:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑓𝑦) ≠ 𝑦)} ≼ {𝑓 ∣ (𝑓:𝐵1-1-onto𝐵 ∧ ∀𝑦𝐵 (𝑓𝑦) ≠ 𝑦)})))
103102exlimdv 1953 . . . 4 ((𝐴𝐵𝐵 ∈ Fin) → (∃𝑠 𝑠:𝐴1-1-onto𝐵 → ({𝑓 ∣ (𝑓:𝐵1-1-onto𝐵 ∧ ∀𝑦𝐵 (𝑓𝑦) ≠ 𝑦)} ∈ Fin → {𝑓 ∣ (𝑓:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑓𝑦) ≠ 𝑦)} ≼ {𝑓 ∣ (𝑓:𝐵1-1-onto𝐵 ∧ ∀𝑦𝐵 (𝑓𝑦) ≠ 𝑦)})))
1042, 4, 103mp2d 49 . . 3 ((𝐴𝐵𝐵 ∈ Fin) → {𝑓 ∣ (𝑓:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑓𝑦) ≠ 𝑦)} ≼ {𝑓 ∣ (𝑓:𝐵1-1-onto𝐵 ∧ ∀𝑦𝐵 (𝑓𝑦) ≠ 𝑦)})
105 enfii 9154 . . . . . 6 ((𝐵 ∈ Fin ∧ 𝐴𝐵) → 𝐴 ∈ Fin)
106105ancoms 462 . . . . 5 ((𝐴𝐵𝐵 ∈ Fin) → 𝐴 ∈ Fin)
107 deranglem 35516 . . . . 5 (𝐴 ∈ Fin → {𝑓 ∣ (𝑓:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑓𝑦) ≠ 𝑦)} ∈ Fin)
108106, 107syl 17 . . . 4 ((𝐴𝐵𝐵 ∈ Fin) → {𝑓 ∣ (𝑓:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑓𝑦) ≠ 𝑦)} ∈ Fin)
109 hashdom 14392 . . . 4 (({𝑓 ∣ (𝑓:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑓𝑦) ≠ 𝑦)} ∈ Fin ∧ {𝑓 ∣ (𝑓:𝐵1-1-onto𝐵 ∧ ∀𝑦𝐵 (𝑓𝑦) ≠ 𝑦)} ∈ Fin) → ((♯‘{𝑓 ∣ (𝑓:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑓𝑦) ≠ 𝑦)}) ≤ (♯‘{𝑓 ∣ (𝑓:𝐵1-1-onto𝐵 ∧ ∀𝑦𝐵 (𝑓𝑦) ≠ 𝑦)}) ↔ {𝑓 ∣ (𝑓:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑓𝑦) ≠ 𝑦)} ≼ {𝑓 ∣ (𝑓:𝐵1-1-onto𝐵 ∧ ∀𝑦𝐵 (𝑓𝑦) ≠ 𝑦)}))
110108, 4, 109syl2anc 593 . . 3 ((𝐴𝐵𝐵 ∈ Fin) → ((♯‘{𝑓 ∣ (𝑓:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑓𝑦) ≠ 𝑦)}) ≤ (♯‘{𝑓 ∣ (𝑓:𝐵1-1-onto𝐵 ∧ ∀𝑦𝐵 (𝑓𝑦) ≠ 𝑦)}) ↔ {𝑓 ∣ (𝑓:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑓𝑦) ≠ 𝑦)} ≼ {𝑓 ∣ (𝑓:𝐵1-1-onto𝐵 ∧ ∀𝑦𝐵 (𝑓𝑦) ≠ 𝑦)}))
111104, 110mpbird 259 . 2 ((𝐴𝐵𝐵 ∈ Fin) → (♯‘{𝑓 ∣ (𝑓:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑓𝑦) ≠ 𝑦)}) ≤ (♯‘{𝑓 ∣ (𝑓:𝐵1-1-onto𝐵 ∧ ∀𝑦𝐵 (𝑓𝑦) ≠ 𝑦)}))
112 derang.d . . . 4 𝐷 = (𝑥 ∈ Fin ↦ (♯‘{𝑓 ∣ (𝑓:𝑥1-1-onto𝑥 ∧ ∀𝑦𝑥 (𝑓𝑦) ≠ 𝑦)}))
113112derangval 35517 . . 3 (𝐴 ∈ Fin → (𝐷𝐴) = (♯‘{𝑓 ∣ (𝑓:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑓𝑦) ≠ 𝑦)}))
114106, 113syl 17 . 2 ((𝐴𝐵𝐵 ∈ Fin) → (𝐷𝐴) = (♯‘{𝑓 ∣ (𝑓:𝐴1-1-onto𝐴 ∧ ∀𝑦𝐴 (𝑓𝑦) ≠ 𝑦)}))
115112derangval 35517 . . 3 (𝐵 ∈ Fin → (𝐷𝐵) = (♯‘{𝑓 ∣ (𝑓:𝐵1-1-onto𝐵 ∧ ∀𝑦𝐵 (𝑓𝑦) ≠ 𝑦)}))
116115adantl 485 . 2 ((𝐴𝐵𝐵 ∈ Fin) → (𝐷𝐵) = (♯‘{𝑓 ∣ (𝑓:𝐵1-1-onto𝐵 ∧ ∀𝑦𝐵 (𝑓𝑦) ≠ 𝑦)}))
117111, 114, 1163brtr4d 5132 1 ((𝐴𝐵𝐵 ∈ Fin) → (𝐷𝐴) ≤ (𝐷𝐵))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 208  wa 399   = wceq 1560  wex 1799  wcel 2142  {cab 2740  wne 2957  wral 3076   class class class wbr 5100  cmpt 5181  ccnv 5646  ccom 5651   Fn wfn 6516  wf 6517  1-1wf1 6518  ontowfo 6519  1-1-ontowf1o 6520  cfv 6521  cen 8924  cdom 8925  Fincfn 8927  cle 11217  chash 14343
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1815  ax-4 1829  ax-5 1930  ax-6 1987  ax-7 2028  ax-8 2144  ax-9 2152  ax-10 2175  ax-11 2191  ax-12 2212  ax-ext 2734  ax-rep 5227  ax-sep 5246  ax-nul 5256  ax-pow 5322  ax-pr 5390  ax-un 7718  ax-cnex 11129  ax-resscn 11130  ax-1cn 11131  ax-icn 11132  ax-addcl 11133  ax-addrcl 11134  ax-mulcl 11135  ax-mulrcl 11136  ax-mulcom 11137  ax-addass 11138  ax-mulass 11139  ax-distr 11140  ax-i2m1 11141  ax-1ne0 11142  ax-1rid 11143  ax-rnegex 11144  ax-rrecex 11145  ax-cnre 11146  ax-pre-lttri 11147  ax-pre-lttrn 11148  ax-pre-ltadd 11149  ax-pre-mulgt0 11150
This theorem depends on definitions:  df-bi 209  df-an 400  df-or 859  df-3or 1099  df-3an 1100  df-tru 1563  df-fal 1573  df-ex 1800  df-nf 1804  df-sb 2091  df-mo 2566  df-eu 2596  df-clab 2741  df-cleq 2754  df-clel 2837  df-nfc 2911  df-ne 2958  df-nel 3062  df-ral 3077  df-rex 3087  df-reu 3368  df-rab 3415  df-v 3456  df-sbc 3745  df-csb 3853  df-dif 3907  df-un 3909  df-in 3911  df-ss 3921  df-pss 3924  df-nul 4286  df-if 4481  df-pw 4557  df-sn 4583  df-pr 4585  df-op 4589  df-uni 4866  df-int 4906  df-iun 4951  df-br 5101  df-opab 5163  df-mpt 5182  df-tr 5208  df-id 5542  df-eprel 5547  df-po 5555  df-so 5556  df-fr 5600  df-we 5602  df-xp 5653  df-rel 5654  df-cnv 5655  df-co 5656  df-dm 5657  df-rn 5658  df-res 5659  df-ima 5660  df-pred 6288  df-ord 6349  df-on 6350  df-lim 6351  df-suc 6352  df-iota 6477  df-fun 6523  df-fn 6524  df-f 6525  df-f1 6526  df-fo 6527  df-f1o 6528  df-fv 6529  df-riota 7353  df-ov 7399  df-oprab 7400  df-mpo 7401  df-om 7847  df-1st 7970  df-2nd 7971  df-frecs 8262  df-wrecs 8293  df-recs 8342  df-rdg 8381  df-1o 8437  df-oadd 8441  df-er 8678  df-map 8810  df-pm 8811  df-en 8928  df-dom 8929  df-sdom 8930  df-fin 8931  df-card 9897  df-pnf 11218  df-mnf 11219  df-xr 11220  df-ltxr 11221  df-le 11222  df-sub 11416  df-neg 11417  df-nn 12211  df-n0 12482  df-xnn0 12555  df-z 12569  df-uz 12840  df-fz 13513  df-hash 14344
This theorem is referenced by:  derangen  35522
  Copyright terms: Public domain W3C validator