MPE Home Metamath Proof Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >  hashf1lem1 Structured version   Visualization version   GIF version

Theorem hashf1lem1 14168
Description: Lemma for hashf1 14171. (Contributed by Mario Carneiro, 17-Apr-2015.) (Proof shortened by AV, 14-Aug-2024.)
Hypotheses
Ref Expression
hashf1lem2.1 (𝜑𝐴 ∈ Fin)
hashf1lem2.2 (𝜑𝐵 ∈ Fin)
hashf1lem2.3 (𝜑 → ¬ 𝑧𝐴)
hashf1lem2.4 (𝜑 → ((♯‘𝐴) + 1) ≤ (♯‘𝐵))
hashf1lem1.5 (𝜑𝐹:𝐴1-1𝐵)
Assertion
Ref Expression
hashf1lem1 (𝜑 → {𝑓 ∣ ((𝑓𝐴) = 𝐹𝑓:(𝐴 ∪ {𝑧})–1-1𝐵)} ≈ (𝐵 ∖ ran 𝐹))
Distinct variable groups:   𝑧,𝑓   𝐴,𝑓   𝐵,𝑓   𝜑,𝑓   𝑓,𝐹
Allowed substitution hints:   𝜑(𝑧)   𝐴(𝑧)   𝐵(𝑧)   𝐹(𝑧)

Proof of Theorem hashf1lem1
Dummy variables 𝑔 𝑥 𝑦 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 hashf1lem2.2 . . . 4 (𝜑𝐵 ∈ Fin)
2 f1setex 8645 . . . 4 (𝐵 ∈ Fin → {𝑓𝑓:(𝐴 ∪ {𝑧})–1-1𝐵} ∈ V)
31, 2syl 17 . . 3 (𝜑 → {𝑓𝑓:(𝐴 ∪ {𝑧})–1-1𝐵} ∈ V)
4 abanssr 4236 . . . 4 {𝑓 ∣ ((𝑓𝐴) = 𝐹𝑓:(𝐴 ∪ {𝑧})–1-1𝐵)} ⊆ {𝑓𝑓:(𝐴 ∪ {𝑧})–1-1𝐵}
54a1i 11 . . 3 (𝜑 → {𝑓 ∣ ((𝑓𝐴) = 𝐹𝑓:(𝐴 ∪ {𝑧})–1-1𝐵)} ⊆ {𝑓𝑓:(𝐴 ∪ {𝑧})–1-1𝐵})
63, 5ssexd 5248 . 2 (𝜑 → {𝑓 ∣ ((𝑓𝐴) = 𝐹𝑓:(𝐴 ∪ {𝑧})–1-1𝐵)} ∈ V)
71difexd 5253 . 2 (𝜑 → (𝐵 ∖ ran 𝐹) ∈ V)
8 vex 3436 . . . 4 𝑔 ∈ V
9 reseq1 5885 . . . . . 6 (𝑓 = 𝑔 → (𝑓𝐴) = (𝑔𝐴))
109eqeq1d 2740 . . . . 5 (𝑓 = 𝑔 → ((𝑓𝐴) = 𝐹 ↔ (𝑔𝐴) = 𝐹))
11 f1eq1 6665 . . . . 5 (𝑓 = 𝑔 → (𝑓:(𝐴 ∪ {𝑧})–1-1𝐵𝑔:(𝐴 ∪ {𝑧})–1-1𝐵))
1210, 11anbi12d 631 . . . 4 (𝑓 = 𝑔 → (((𝑓𝐴) = 𝐹𝑓:(𝐴 ∪ {𝑧})–1-1𝐵) ↔ ((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵)))
138, 12elab 3609 . . 3 (𝑔 ∈ {𝑓 ∣ ((𝑓𝐴) = 𝐹𝑓:(𝐴 ∪ {𝑧})–1-1𝐵)} ↔ ((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵))
14 f1f 6670 . . . . . . 7 (𝑔:(𝐴 ∪ {𝑧})–1-1𝐵𝑔:(𝐴 ∪ {𝑧})⟶𝐵)
1514ad2antll 726 . . . . . 6 ((𝜑 ∧ ((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵)) → 𝑔:(𝐴 ∪ {𝑧})⟶𝐵)
16 ssun2 4107 . . . . . . 7 {𝑧} ⊆ (𝐴 ∪ {𝑧})
17 vex 3436 . . . . . . . 8 𝑧 ∈ V
1817snss 4719 . . . . . . 7 (𝑧 ∈ (𝐴 ∪ {𝑧}) ↔ {𝑧} ⊆ (𝐴 ∪ {𝑧}))
1916, 18mpbir 230 . . . . . 6 𝑧 ∈ (𝐴 ∪ {𝑧})
20 ffvelrn 6959 . . . . . 6 ((𝑔:(𝐴 ∪ {𝑧})⟶𝐵𝑧 ∈ (𝐴 ∪ {𝑧})) → (𝑔𝑧) ∈ 𝐵)
2115, 19, 20sylancl 586 . . . . 5 ((𝜑 ∧ ((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵)) → (𝑔𝑧) ∈ 𝐵)
22 hashf1lem2.3 . . . . . . 7 (𝜑 → ¬ 𝑧𝐴)
2322adantr 481 . . . . . 6 ((𝜑 ∧ ((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵)) → ¬ 𝑧𝐴)
24 df-ima 5602 . . . . . . . . 9 (𝑔𝐴) = ran (𝑔𝐴)
25 simprl 768 . . . . . . . . . 10 ((𝜑 ∧ ((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵)) → (𝑔𝐴) = 𝐹)
2625rneqd 5847 . . . . . . . . 9 ((𝜑 ∧ ((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵)) → ran (𝑔𝐴) = ran 𝐹)
2724, 26eqtrid 2790 . . . . . . . 8 ((𝜑 ∧ ((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵)) → (𝑔𝐴) = ran 𝐹)
2827eleq2d 2824 . . . . . . 7 ((𝜑 ∧ ((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵)) → ((𝑔𝑧) ∈ (𝑔𝐴) ↔ (𝑔𝑧) ∈ ran 𝐹))
29 simprr 770 . . . . . . . 8 ((𝜑 ∧ ((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵)) → 𝑔:(𝐴 ∪ {𝑧})–1-1𝐵)
3019a1i 11 . . . . . . . 8 ((𝜑 ∧ ((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵)) → 𝑧 ∈ (𝐴 ∪ {𝑧}))
31 ssun1 4106 . . . . . . . . 9 𝐴 ⊆ (𝐴 ∪ {𝑧})
3231a1i 11 . . . . . . . 8 ((𝜑 ∧ ((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵)) → 𝐴 ⊆ (𝐴 ∪ {𝑧}))
33 f1elima 7136 . . . . . . . 8 ((𝑔:(𝐴 ∪ {𝑧})–1-1𝐵𝑧 ∈ (𝐴 ∪ {𝑧}) ∧ 𝐴 ⊆ (𝐴 ∪ {𝑧})) → ((𝑔𝑧) ∈ (𝑔𝐴) ↔ 𝑧𝐴))
3429, 30, 32, 33syl3anc 1370 . . . . . . 7 ((𝜑 ∧ ((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵)) → ((𝑔𝑧) ∈ (𝑔𝐴) ↔ 𝑧𝐴))
3528, 34bitr3d 280 . . . . . 6 ((𝜑 ∧ ((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵)) → ((𝑔𝑧) ∈ ran 𝐹𝑧𝐴))
3623, 35mtbird 325 . . . . 5 ((𝜑 ∧ ((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵)) → ¬ (𝑔𝑧) ∈ ran 𝐹)
3721, 36eldifd 3898 . . . 4 ((𝜑 ∧ ((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵)) → (𝑔𝑧) ∈ (𝐵 ∖ ran 𝐹))
3837ex 413 . . 3 (𝜑 → (((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵) → (𝑔𝑧) ∈ (𝐵 ∖ ran 𝐹)))
3913, 38syl5bi 241 . 2 (𝜑 → (𝑔 ∈ {𝑓 ∣ ((𝑓𝐴) = 𝐹𝑓:(𝐴 ∪ {𝑧})–1-1𝐵)} → (𝑔𝑧) ∈ (𝐵 ∖ ran 𝐹)))
40 hashf1lem1.5 . . . . . . 7 (𝜑𝐹:𝐴1-1𝐵)
41 f1f 6670 . . . . . . 7 (𝐹:𝐴1-1𝐵𝐹:𝐴𝐵)
4240, 41syl 17 . . . . . 6 (𝜑𝐹:𝐴𝐵)
4342adantr 481 . . . . 5 ((𝜑𝑥 ∈ (𝐵 ∖ ran 𝐹)) → 𝐹:𝐴𝐵)
44 vex 3436 . . . . . . . 8 𝑥 ∈ V
4517, 44f1osn 6756 . . . . . . 7 {⟨𝑧, 𝑥⟩}:{𝑧}–1-1-onto→{𝑥}
46 f1of 6716 . . . . . . 7 ({⟨𝑧, 𝑥⟩}:{𝑧}–1-1-onto→{𝑥} → {⟨𝑧, 𝑥⟩}:{𝑧}⟶{𝑥})
4745, 46ax-mp 5 . . . . . 6 {⟨𝑧, 𝑥⟩}:{𝑧}⟶{𝑥}
48 eldifi 4061 . . . . . . . 8 (𝑥 ∈ (𝐵 ∖ ran 𝐹) → 𝑥𝐵)
4948adantl 482 . . . . . . 7 ((𝜑𝑥 ∈ (𝐵 ∖ ran 𝐹)) → 𝑥𝐵)
5049snssd 4742 . . . . . 6 ((𝜑𝑥 ∈ (𝐵 ∖ ran 𝐹)) → {𝑥} ⊆ 𝐵)
51 fss 6617 . . . . . 6 (({⟨𝑧, 𝑥⟩}:{𝑧}⟶{𝑥} ∧ {𝑥} ⊆ 𝐵) → {⟨𝑧, 𝑥⟩}:{𝑧}⟶𝐵)
5247, 50, 51sylancr 587 . . . . 5 ((𝜑𝑥 ∈ (𝐵 ∖ ran 𝐹)) → {⟨𝑧, 𝑥⟩}:{𝑧}⟶𝐵)
53 res0 5895 . . . . . . 7 (𝐹 ↾ ∅) = ∅
54 res0 5895 . . . . . . 7 ({⟨𝑧, 𝑥⟩} ↾ ∅) = ∅
5553, 54eqtr4i 2769 . . . . . 6 (𝐹 ↾ ∅) = ({⟨𝑧, 𝑥⟩} ↾ ∅)
56 disjsn 4647 . . . . . . . . 9 ((𝐴 ∩ {𝑧}) = ∅ ↔ ¬ 𝑧𝐴)
5722, 56sylibr 233 . . . . . . . 8 (𝜑 → (𝐴 ∩ {𝑧}) = ∅)
5857adantr 481 . . . . . . 7 ((𝜑𝑥 ∈ (𝐵 ∖ ran 𝐹)) → (𝐴 ∩ {𝑧}) = ∅)
5958reseq2d 5891 . . . . . 6 ((𝜑𝑥 ∈ (𝐵 ∖ ran 𝐹)) → (𝐹 ↾ (𝐴 ∩ {𝑧})) = (𝐹 ↾ ∅))
6058reseq2d 5891 . . . . . 6 ((𝜑𝑥 ∈ (𝐵 ∖ ran 𝐹)) → ({⟨𝑧, 𝑥⟩} ↾ (𝐴 ∩ {𝑧})) = ({⟨𝑧, 𝑥⟩} ↾ ∅))
6155, 59, 603eqtr4a 2804 . . . . 5 ((𝜑𝑥 ∈ (𝐵 ∖ ran 𝐹)) → (𝐹 ↾ (𝐴 ∩ {𝑧})) = ({⟨𝑧, 𝑥⟩} ↾ (𝐴 ∩ {𝑧})))
62 fresaunres1 6647 . . . . 5 ((𝐹:𝐴𝐵 ∧ {⟨𝑧, 𝑥⟩}:{𝑧}⟶𝐵 ∧ (𝐹 ↾ (𝐴 ∩ {𝑧})) = ({⟨𝑧, 𝑥⟩} ↾ (𝐴 ∩ {𝑧}))) → ((𝐹 ∪ {⟨𝑧, 𝑥⟩}) ↾ 𝐴) = 𝐹)
6343, 52, 61, 62syl3anc 1370 . . . 4 ((𝜑𝑥 ∈ (𝐵 ∖ ran 𝐹)) → ((𝐹 ∪ {⟨𝑧, 𝑥⟩}) ↾ 𝐴) = 𝐹)
64 f1f1orn 6727 . . . . . . . . 9 (𝐹:𝐴1-1𝐵𝐹:𝐴1-1-onto→ran 𝐹)
6540, 64syl 17 . . . . . . . 8 (𝜑𝐹:𝐴1-1-onto→ran 𝐹)
6665adantr 481 . . . . . . 7 ((𝜑𝑥 ∈ (𝐵 ∖ ran 𝐹)) → 𝐹:𝐴1-1-onto→ran 𝐹)
6745a1i 11 . . . . . . 7 ((𝜑𝑥 ∈ (𝐵 ∖ ran 𝐹)) → {⟨𝑧, 𝑥⟩}:{𝑧}–1-1-onto→{𝑥})
68 eldifn 4062 . . . . . . . . 9 (𝑥 ∈ (𝐵 ∖ ran 𝐹) → ¬ 𝑥 ∈ ran 𝐹)
6968adantl 482 . . . . . . . 8 ((𝜑𝑥 ∈ (𝐵 ∖ ran 𝐹)) → ¬ 𝑥 ∈ ran 𝐹)
70 disjsn 4647 . . . . . . . 8 ((ran 𝐹 ∩ {𝑥}) = ∅ ↔ ¬ 𝑥 ∈ ran 𝐹)
7169, 70sylibr 233 . . . . . . 7 ((𝜑𝑥 ∈ (𝐵 ∖ ran 𝐹)) → (ran 𝐹 ∩ {𝑥}) = ∅)
72 f1oun 6735 . . . . . . 7 (((𝐹:𝐴1-1-onto→ran 𝐹 ∧ {⟨𝑧, 𝑥⟩}:{𝑧}–1-1-onto→{𝑥}) ∧ ((𝐴 ∩ {𝑧}) = ∅ ∧ (ran 𝐹 ∩ {𝑥}) = ∅)) → (𝐹 ∪ {⟨𝑧, 𝑥⟩}):(𝐴 ∪ {𝑧})–1-1-onto→(ran 𝐹 ∪ {𝑥}))
7366, 67, 58, 71, 72syl22anc 836 . . . . . 6 ((𝜑𝑥 ∈ (𝐵 ∖ ran 𝐹)) → (𝐹 ∪ {⟨𝑧, 𝑥⟩}):(𝐴 ∪ {𝑧})–1-1-onto→(ran 𝐹 ∪ {𝑥}))
74 f1of1 6715 . . . . . 6 ((𝐹 ∪ {⟨𝑧, 𝑥⟩}):(𝐴 ∪ {𝑧})–1-1-onto→(ran 𝐹 ∪ {𝑥}) → (𝐹 ∪ {⟨𝑧, 𝑥⟩}):(𝐴 ∪ {𝑧})–1-1→(ran 𝐹 ∪ {𝑥}))
7573, 74syl 17 . . . . 5 ((𝜑𝑥 ∈ (𝐵 ∖ ran 𝐹)) → (𝐹 ∪ {⟨𝑧, 𝑥⟩}):(𝐴 ∪ {𝑧})–1-1→(ran 𝐹 ∪ {𝑥}))
7643frnd 6608 . . . . . 6 ((𝜑𝑥 ∈ (𝐵 ∖ ran 𝐹)) → ran 𝐹𝐵)
7776, 50unssd 4120 . . . . 5 ((𝜑𝑥 ∈ (𝐵 ∖ ran 𝐹)) → (ran 𝐹 ∪ {𝑥}) ⊆ 𝐵)
78 f1ss 6676 . . . . 5 (((𝐹 ∪ {⟨𝑧, 𝑥⟩}):(𝐴 ∪ {𝑧})–1-1→(ran 𝐹 ∪ {𝑥}) ∧ (ran 𝐹 ∪ {𝑥}) ⊆ 𝐵) → (𝐹 ∪ {⟨𝑧, 𝑥⟩}):(𝐴 ∪ {𝑧})–1-1𝐵)
7975, 77, 78syl2anc 584 . . . 4 ((𝜑𝑥 ∈ (𝐵 ∖ ran 𝐹)) → (𝐹 ∪ {⟨𝑧, 𝑥⟩}):(𝐴 ∪ {𝑧})–1-1𝐵)
80 hashf1lem2.1 . . . . . . . 8 (𝜑𝐴 ∈ Fin)
8142, 80fexd 7103 . . . . . . 7 (𝜑𝐹 ∈ V)
8281adantr 481 . . . . . 6 ((𝜑𝑥 ∈ (𝐵 ∖ ran 𝐹)) → 𝐹 ∈ V)
83 snex 5354 . . . . . 6 {⟨𝑧, 𝑥⟩} ∈ V
84 unexg 7599 . . . . . 6 ((𝐹 ∈ V ∧ {⟨𝑧, 𝑥⟩} ∈ V) → (𝐹 ∪ {⟨𝑧, 𝑥⟩}) ∈ V)
8582, 83, 84sylancl 586 . . . . 5 ((𝜑𝑥 ∈ (𝐵 ∖ ran 𝐹)) → (𝐹 ∪ {⟨𝑧, 𝑥⟩}) ∈ V)
86 reseq1 5885 . . . . . . . 8 (𝑓 = (𝐹 ∪ {⟨𝑧, 𝑥⟩}) → (𝑓𝐴) = ((𝐹 ∪ {⟨𝑧, 𝑥⟩}) ↾ 𝐴))
8786eqeq1d 2740 . . . . . . 7 (𝑓 = (𝐹 ∪ {⟨𝑧, 𝑥⟩}) → ((𝑓𝐴) = 𝐹 ↔ ((𝐹 ∪ {⟨𝑧, 𝑥⟩}) ↾ 𝐴) = 𝐹))
88 f1eq1 6665 . . . . . . 7 (𝑓 = (𝐹 ∪ {⟨𝑧, 𝑥⟩}) → (𝑓:(𝐴 ∪ {𝑧})–1-1𝐵 ↔ (𝐹 ∪ {⟨𝑧, 𝑥⟩}):(𝐴 ∪ {𝑧})–1-1𝐵))
8987, 88anbi12d 631 . . . . . 6 (𝑓 = (𝐹 ∪ {⟨𝑧, 𝑥⟩}) → (((𝑓𝐴) = 𝐹𝑓:(𝐴 ∪ {𝑧})–1-1𝐵) ↔ (((𝐹 ∪ {⟨𝑧, 𝑥⟩}) ↾ 𝐴) = 𝐹 ∧ (𝐹 ∪ {⟨𝑧, 𝑥⟩}):(𝐴 ∪ {𝑧})–1-1𝐵)))
9089elabg 3607 . . . . 5 ((𝐹 ∪ {⟨𝑧, 𝑥⟩}) ∈ V → ((𝐹 ∪ {⟨𝑧, 𝑥⟩}) ∈ {𝑓 ∣ ((𝑓𝐴) = 𝐹𝑓:(𝐴 ∪ {𝑧})–1-1𝐵)} ↔ (((𝐹 ∪ {⟨𝑧, 𝑥⟩}) ↾ 𝐴) = 𝐹 ∧ (𝐹 ∪ {⟨𝑧, 𝑥⟩}):(𝐴 ∪ {𝑧})–1-1𝐵)))
9185, 90syl 17 . . . 4 ((𝜑𝑥 ∈ (𝐵 ∖ ran 𝐹)) → ((𝐹 ∪ {⟨𝑧, 𝑥⟩}) ∈ {𝑓 ∣ ((𝑓𝐴) = 𝐹𝑓:(𝐴 ∪ {𝑧})–1-1𝐵)} ↔ (((𝐹 ∪ {⟨𝑧, 𝑥⟩}) ↾ 𝐴) = 𝐹 ∧ (𝐹 ∪ {⟨𝑧, 𝑥⟩}):(𝐴 ∪ {𝑧})–1-1𝐵)))
9263, 79, 91mpbir2and 710 . . 3 ((𝜑𝑥 ∈ (𝐵 ∖ ran 𝐹)) → (𝐹 ∪ {⟨𝑧, 𝑥⟩}) ∈ {𝑓 ∣ ((𝑓𝐴) = 𝐹𝑓:(𝐴 ∪ {𝑧})–1-1𝐵)})
9392ex 413 . 2 (𝜑 → (𝑥 ∈ (𝐵 ∖ ran 𝐹) → (𝐹 ∪ {⟨𝑧, 𝑥⟩}) ∈ {𝑓 ∣ ((𝑓𝐴) = 𝐹𝑓:(𝐴 ∪ {𝑧})–1-1𝐵)}))
9413anbi1i 624 . . 3 ((𝑔 ∈ {𝑓 ∣ ((𝑓𝐴) = 𝐹𝑓:(𝐴 ∪ {𝑧})–1-1𝐵)} ∧ 𝑥 ∈ (𝐵 ∖ ran 𝐹)) ↔ (((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵) ∧ 𝑥 ∈ (𝐵 ∖ ran 𝐹)))
95 simprlr 777 . . . . . . 7 ((𝜑 ∧ (((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵) ∧ 𝑥 ∈ (𝐵 ∖ ran 𝐹))) → 𝑔:(𝐴 ∪ {𝑧})–1-1𝐵)
96 f1fn 6671 . . . . . . 7 (𝑔:(𝐴 ∪ {𝑧})–1-1𝐵𝑔 Fn (𝐴 ∪ {𝑧}))
9795, 96syl 17 . . . . . 6 ((𝜑 ∧ (((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵) ∧ 𝑥 ∈ (𝐵 ∖ ran 𝐹))) → 𝑔 Fn (𝐴 ∪ {𝑧}))
9873adantrl 713 . . . . . . 7 ((𝜑 ∧ (((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵) ∧ 𝑥 ∈ (𝐵 ∖ ran 𝐹))) → (𝐹 ∪ {⟨𝑧, 𝑥⟩}):(𝐴 ∪ {𝑧})–1-1-onto→(ran 𝐹 ∪ {𝑥}))
99 f1ofn 6717 . . . . . . 7 ((𝐹 ∪ {⟨𝑧, 𝑥⟩}):(𝐴 ∪ {𝑧})–1-1-onto→(ran 𝐹 ∪ {𝑥}) → (𝐹 ∪ {⟨𝑧, 𝑥⟩}) Fn (𝐴 ∪ {𝑧}))
10098, 99syl 17 . . . . . 6 ((𝜑 ∧ (((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵) ∧ 𝑥 ∈ (𝐵 ∖ ran 𝐹))) → (𝐹 ∪ {⟨𝑧, 𝑥⟩}) Fn (𝐴 ∪ {𝑧}))
101 eqfnfv 6909 . . . . . 6 ((𝑔 Fn (𝐴 ∪ {𝑧}) ∧ (𝐹 ∪ {⟨𝑧, 𝑥⟩}) Fn (𝐴 ∪ {𝑧})) → (𝑔 = (𝐹 ∪ {⟨𝑧, 𝑥⟩}) ↔ ∀𝑦 ∈ (𝐴 ∪ {𝑧})(𝑔𝑦) = ((𝐹 ∪ {⟨𝑧, 𝑥⟩})‘𝑦)))
10297, 100, 101syl2anc 584 . . . . 5 ((𝜑 ∧ (((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵) ∧ 𝑥 ∈ (𝐵 ∖ ran 𝐹))) → (𝑔 = (𝐹 ∪ {⟨𝑧, 𝑥⟩}) ↔ ∀𝑦 ∈ (𝐴 ∪ {𝑧})(𝑔𝑦) = ((𝐹 ∪ {⟨𝑧, 𝑥⟩})‘𝑦)))
103 fvres 6793 . . . . . . . . . . 11 (𝑦𝐴 → ((𝑔𝐴)‘𝑦) = (𝑔𝑦))
104103eqcomd 2744 . . . . . . . . . 10 (𝑦𝐴 → (𝑔𝑦) = ((𝑔𝐴)‘𝑦))
105 simprll 776 . . . . . . . . . . 11 ((𝜑 ∧ (((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵) ∧ 𝑥 ∈ (𝐵 ∖ ran 𝐹))) → (𝑔𝐴) = 𝐹)
106105fveq1d 6776 . . . . . . . . . 10 ((𝜑 ∧ (((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵) ∧ 𝑥 ∈ (𝐵 ∖ ran 𝐹))) → ((𝑔𝐴)‘𝑦) = (𝐹𝑦))
107104, 106sylan9eqr 2800 . . . . . . . . 9 (((𝜑 ∧ (((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵) ∧ 𝑥 ∈ (𝐵 ∖ ran 𝐹))) ∧ 𝑦𝐴) → (𝑔𝑦) = (𝐹𝑦))
10840ad2antrr 723 . . . . . . . . . . 11 (((𝜑 ∧ (((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵) ∧ 𝑥 ∈ (𝐵 ∖ ran 𝐹))) ∧ 𝑦𝐴) → 𝐹:𝐴1-1𝐵)
109 f1fn 6671 . . . . . . . . . . 11 (𝐹:𝐴1-1𝐵𝐹 Fn 𝐴)
110108, 109syl 17 . . . . . . . . . 10 (((𝜑 ∧ (((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵) ∧ 𝑥 ∈ (𝐵 ∖ ran 𝐹))) ∧ 𝑦𝐴) → 𝐹 Fn 𝐴)
11117, 44fnsn 6492 . . . . . . . . . . 11 {⟨𝑧, 𝑥⟩} Fn {𝑧}
112111a1i 11 . . . . . . . . . 10 (((𝜑 ∧ (((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵) ∧ 𝑥 ∈ (𝐵 ∖ ran 𝐹))) ∧ 𝑦𝐴) → {⟨𝑧, 𝑥⟩} Fn {𝑧})
11357ad2antrr 723 . . . . . . . . . 10 (((𝜑 ∧ (((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵) ∧ 𝑥 ∈ (𝐵 ∖ ran 𝐹))) ∧ 𝑦𝐴) → (𝐴 ∩ {𝑧}) = ∅)
114 simpr 485 . . . . . . . . . 10 (((𝜑 ∧ (((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵) ∧ 𝑥 ∈ (𝐵 ∖ ran 𝐹))) ∧ 𝑦𝐴) → 𝑦𝐴)
115110, 112, 113, 114fvun1d 6861 . . . . . . . . 9 (((𝜑 ∧ (((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵) ∧ 𝑥 ∈ (𝐵 ∖ ran 𝐹))) ∧ 𝑦𝐴) → ((𝐹 ∪ {⟨𝑧, 𝑥⟩})‘𝑦) = (𝐹𝑦))
116107, 115eqtr4d 2781 . . . . . . . 8 (((𝜑 ∧ (((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵) ∧ 𝑥 ∈ (𝐵 ∖ ran 𝐹))) ∧ 𝑦𝐴) → (𝑔𝑦) = ((𝐹 ∪ {⟨𝑧, 𝑥⟩})‘𝑦))
117116ralrimiva 3103 . . . . . . 7 ((𝜑 ∧ (((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵) ∧ 𝑥 ∈ (𝐵 ∖ ran 𝐹))) → ∀𝑦𝐴 (𝑔𝑦) = ((𝐹 ∪ {⟨𝑧, 𝑥⟩})‘𝑦))
118117biantrurd 533 . . . . . 6 ((𝜑 ∧ (((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵) ∧ 𝑥 ∈ (𝐵 ∖ ran 𝐹))) → (∀𝑦 ∈ {𝑧} (𝑔𝑦) = ((𝐹 ∪ {⟨𝑧, 𝑥⟩})‘𝑦) ↔ (∀𝑦𝐴 (𝑔𝑦) = ((𝐹 ∪ {⟨𝑧, 𝑥⟩})‘𝑦) ∧ ∀𝑦 ∈ {𝑧} (𝑔𝑦) = ((𝐹 ∪ {⟨𝑧, 𝑥⟩})‘𝑦))))
119 ralunb 4125 . . . . . 6 (∀𝑦 ∈ (𝐴 ∪ {𝑧})(𝑔𝑦) = ((𝐹 ∪ {⟨𝑧, 𝑥⟩})‘𝑦) ↔ (∀𝑦𝐴 (𝑔𝑦) = ((𝐹 ∪ {⟨𝑧, 𝑥⟩})‘𝑦) ∧ ∀𝑦 ∈ {𝑧} (𝑔𝑦) = ((𝐹 ∪ {⟨𝑧, 𝑥⟩})‘𝑦)))
120118, 119bitr4di 289 . . . . 5 ((𝜑 ∧ (((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵) ∧ 𝑥 ∈ (𝐵 ∖ ran 𝐹))) → (∀𝑦 ∈ {𝑧} (𝑔𝑦) = ((𝐹 ∪ {⟨𝑧, 𝑥⟩})‘𝑦) ↔ ∀𝑦 ∈ (𝐴 ∪ {𝑧})(𝑔𝑦) = ((𝐹 ∪ {⟨𝑧, 𝑥⟩})‘𝑦)))
12142fdmd 6611 . . . . . . . . . . 11 (𝜑 → dom 𝐹 = 𝐴)
122121eleq2d 2824 . . . . . . . . . 10 (𝜑 → (𝑧 ∈ dom 𝐹𝑧𝐴))
12322, 122mtbird 325 . . . . . . . . 9 (𝜑 → ¬ 𝑧 ∈ dom 𝐹)
124123adantr 481 . . . . . . . 8 ((𝜑 ∧ (((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵) ∧ 𝑥 ∈ (𝐵 ∖ ran 𝐹))) → ¬ 𝑧 ∈ dom 𝐹)
125 fsnunfv 7059 . . . . . . . 8 ((𝑧 ∈ V ∧ 𝑥 ∈ V ∧ ¬ 𝑧 ∈ dom 𝐹) → ((𝐹 ∪ {⟨𝑧, 𝑥⟩})‘𝑧) = 𝑥)
12617, 44, 124, 125mp3an12i 1464 . . . . . . 7 ((𝜑 ∧ (((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵) ∧ 𝑥 ∈ (𝐵 ∖ ran 𝐹))) → ((𝐹 ∪ {⟨𝑧, 𝑥⟩})‘𝑧) = 𝑥)
127126eqeq2d 2749 . . . . . 6 ((𝜑 ∧ (((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵) ∧ 𝑥 ∈ (𝐵 ∖ ran 𝐹))) → ((𝑔𝑧) = ((𝐹 ∪ {⟨𝑧, 𝑥⟩})‘𝑧) ↔ (𝑔𝑧) = 𝑥))
128 fveq2 6774 . . . . . . . 8 (𝑦 = 𝑧 → (𝑔𝑦) = (𝑔𝑧))
129 fveq2 6774 . . . . . . . 8 (𝑦 = 𝑧 → ((𝐹 ∪ {⟨𝑧, 𝑥⟩})‘𝑦) = ((𝐹 ∪ {⟨𝑧, 𝑥⟩})‘𝑧))
130128, 129eqeq12d 2754 . . . . . . 7 (𝑦 = 𝑧 → ((𝑔𝑦) = ((𝐹 ∪ {⟨𝑧, 𝑥⟩})‘𝑦) ↔ (𝑔𝑧) = ((𝐹 ∪ {⟨𝑧, 𝑥⟩})‘𝑧)))
13117, 130ralsn 4617 . . . . . 6 (∀𝑦 ∈ {𝑧} (𝑔𝑦) = ((𝐹 ∪ {⟨𝑧, 𝑥⟩})‘𝑦) ↔ (𝑔𝑧) = ((𝐹 ∪ {⟨𝑧, 𝑥⟩})‘𝑧))
132 eqcom 2745 . . . . . 6 (𝑥 = (𝑔𝑧) ↔ (𝑔𝑧) = 𝑥)
133127, 131, 1323bitr4g 314 . . . . 5 ((𝜑 ∧ (((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵) ∧ 𝑥 ∈ (𝐵 ∖ ran 𝐹))) → (∀𝑦 ∈ {𝑧} (𝑔𝑦) = ((𝐹 ∪ {⟨𝑧, 𝑥⟩})‘𝑦) ↔ 𝑥 = (𝑔𝑧)))
134102, 120, 1333bitr2d 307 . . . 4 ((𝜑 ∧ (((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵) ∧ 𝑥 ∈ (𝐵 ∖ ran 𝐹))) → (𝑔 = (𝐹 ∪ {⟨𝑧, 𝑥⟩}) ↔ 𝑥 = (𝑔𝑧)))
135134ex 413 . . 3 (𝜑 → ((((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵) ∧ 𝑥 ∈ (𝐵 ∖ ran 𝐹)) → (𝑔 = (𝐹 ∪ {⟨𝑧, 𝑥⟩}) ↔ 𝑥 = (𝑔𝑧))))
13694, 135syl5bi 241 . 2 (𝜑 → ((𝑔 ∈ {𝑓 ∣ ((𝑓𝐴) = 𝐹𝑓:(𝐴 ∪ {𝑧})–1-1𝐵)} ∧ 𝑥 ∈ (𝐵 ∖ ran 𝐹)) → (𝑔 = (𝐹 ∪ {⟨𝑧, 𝑥⟩}) ↔ 𝑥 = (𝑔𝑧))))
1376, 7, 39, 93, 136en3d 8777 1 (𝜑 → {𝑓 ∣ ((𝑓𝐴) = 𝐹𝑓:(𝐴 ∪ {𝑧})–1-1𝐵)} ≈ (𝐵 ∖ ran 𝐹))
Colors of variables: wff setvar class
Syntax hints:  ¬ wn 3  wi 4  wb 205  wa 396   = wceq 1539  wcel 2106  {cab 2715  wral 3064  Vcvv 3432  cdif 3884  cun 3885  cin 3886  wss 3887  c0 4256  {csn 4561  cop 4567   class class class wbr 5074  dom cdm 5589  ran crn 5590  cres 5591  cima 5592   Fn wfn 6428  wf 6429  1-1wf1 6430  1-1-ontowf1o 6432  cfv 6433  (class class class)co 7275  cen 8730  Fincfn 8733  1c1 10872   + caddc 10874  cle 11010  chash 14044
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1798  ax-4 1812  ax-5 1913  ax-6 1971  ax-7 2011  ax-8 2108  ax-9 2116  ax-10 2137  ax-11 2154  ax-12 2171  ax-ext 2709  ax-rep 5209  ax-sep 5223  ax-nul 5230  ax-pow 5288  ax-pr 5352  ax-un 7588
This theorem depends on definitions:  df-bi 206  df-an 397  df-or 845  df-3an 1088  df-tru 1542  df-fal 1552  df-ex 1783  df-nf 1787  df-sb 2068  df-mo 2540  df-eu 2569  df-clab 2716  df-cleq 2730  df-clel 2816  df-nfc 2889  df-ne 2944  df-ral 3069  df-rex 3070  df-reu 3072  df-rab 3073  df-v 3434  df-sbc 3717  df-csb 3833  df-dif 3890  df-un 3892  df-in 3894  df-ss 3904  df-nul 4257  df-if 4460  df-pw 4535  df-sn 4562  df-pr 4564  df-op 4568  df-uni 4840  df-iun 4926  df-br 5075  df-opab 5137  df-mpt 5158  df-id 5489  df-xp 5595  df-rel 5596  df-cnv 5597  df-co 5598  df-dm 5599  df-rn 5600  df-res 5601  df-ima 5602  df-iota 6391  df-fun 6435  df-fn 6436  df-f 6437  df-f1 6438  df-fo 6439  df-f1o 6440  df-fv 6441  df-ov 7278  df-oprab 7279  df-mpo 7280  df-1st 7831  df-2nd 7832  df-map 8617  df-en 8734
This theorem is referenced by:  hashf1lem2  14170
  Copyright terms: Public domain W3C validator