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

Theorem hashf1lem1 14488
Description: Lemma for hashf1 14490. (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 8850 . . . 4 (𝐵 ∈ Fin → {𝑓𝑓:(𝐴 ∪ {𝑧})–1-1𝐵} ∈ V)
31, 2syl 18 . . 3 (𝜑 → {𝑓𝑓:(𝐴 ∪ {𝑧})–1-1𝐵} ∈ V)
4 abanssr 4265 . . . 4 {𝑓 ∣ ((𝑓𝐴) = 𝐹𝑓:(𝐴 ∪ {𝑧})–1-1𝐵)} ⊆ {𝑓𝑓:(𝐴 ∪ {𝑧})–1-1𝐵}
54a1i 11 . . 3 (𝜑 → {𝑓 ∣ ((𝑓𝐴) = 𝐹𝑓:(𝐴 ∪ {𝑧})–1-1𝐵)} ⊆ {𝑓𝑓:(𝐴 ∪ {𝑧})–1-1𝐵})
63, 5ssexd 5295 . 2 (𝜑 → {𝑓 ∣ ((𝑓𝐴) = 𝐹𝑓:(𝐴 ∪ {𝑧})–1-1𝐵)} ∈ V)
71difexd 5302 . 2 (𝜑 → (𝐵 ∖ ran 𝐹) ∈ V)
8 vex 3459 . . . 4 𝑔 ∈ V
9 reseq1 5972 . . . . . 6 (𝑓 = 𝑔 → (𝑓𝐴) = (𝑔𝐴))
109eqeq1d 2765 . . . . 5 (𝑓 = 𝑔 → ((𝑓𝐴) = 𝐹 ↔ (𝑔𝐴) = 𝐹))
11 f1eq1 6769 . . . . 5 (𝑓 = 𝑔 → (𝑓:(𝐴 ∪ {𝑧})–1-1𝐵𝑔:(𝐴 ∪ {𝑧})–1-1𝐵))
1210, 11anbi12d 643 . . . 4 (𝑓 = 𝑔 → (((𝑓𝐴) = 𝐹𝑓:(𝐴 ∪ {𝑧})–1-1𝐵) ↔ ((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵)))
138, 12elab 3638 . . 3 (𝑔 ∈ {𝑓 ∣ ((𝑓𝐴) = 𝐹𝑓:(𝐴 ∪ {𝑧})–1-1𝐵)} ↔ ((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵))
14 f1f 6774 . . . . . . 7 (𝑔:(𝐴 ∪ {𝑧})–1-1𝐵𝑔:(𝐴 ∪ {𝑧})⟶𝐵)
1514ad2antll 741 . . . . . 6 ((𝜑 ∧ ((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵)) → 𝑔:(𝐴 ∪ {𝑧})⟶𝐵)
16 ssun2 4132 . . . . . . 7 {𝑧} ⊆ (𝐴 ∪ {𝑧})
17 vex 3459 . . . . . . . 8 𝑧 ∈ V
1817snss 4750 . . . . . . 7 (𝑧 ∈ (𝐴 ∪ {𝑧}) ↔ {𝑧} ⊆ (𝐴 ∪ {𝑧}))
1916, 18mpbir 234 . . . . . 6 𝑧 ∈ (𝐴 ∪ {𝑧})
20 ffvelcdm 7076 . . . . . 6 ((𝑔:(𝐴 ∪ {𝑧})⟶𝐵𝑧 ∈ (𝐴 ∪ {𝑧})) → (𝑔𝑧) ∈ 𝐵)
2115, 19, 20sylancl 597 . . . . 5 ((𝜑 ∧ ((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵)) → (𝑔𝑧) ∈ 𝐵)
22 hashf1lem2.3 . . . . . . 7 (𝜑 → ¬ 𝑧𝐴)
2322adantr 485 . . . . . 6 ((𝜑 ∧ ((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵)) → ¬ 𝑧𝐴)
24 df-ima 5674 . . . . . . . . 9 (𝑔𝐴) = ran (𝑔𝐴)
25 simprl 782 . . . . . . . . . 10 ((𝜑 ∧ ((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵)) → (𝑔𝐴) = 𝐹)
2625rneqd 5928 . . . . . . . . 9 ((𝜑 ∧ ((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵)) → ran (𝑔𝐴) = ran 𝐹)
2724, 26eqtrid 2810 . . . . . . . 8 ((𝜑 ∧ ((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵)) → (𝑔𝐴) = ran 𝐹)
2827eleq2d 2849 . . . . . . 7 ((𝜑 ∧ ((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵)) → ((𝑔𝑧) ∈ (𝑔𝐴) ↔ (𝑔𝑧) ∈ ran 𝐹))
29 simprr 784 . . . . . . . 8 ((𝜑 ∧ ((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵)) → 𝑔:(𝐴 ∪ {𝑧})–1-1𝐵)
3019a1i 11 . . . . . . . 8 ((𝜑 ∧ ((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵)) → 𝑧 ∈ (𝐴 ∪ {𝑧}))
31 ssun1 4131 . . . . . . . . 9 𝐴 ⊆ (𝐴 ∪ {𝑧})
3231a1i 11 . . . . . . . 8 ((𝜑 ∧ ((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵)) → 𝐴 ⊆ (𝐴 ∪ {𝑧}))
33 f1elima 7261 . . . . . . . 8 ((𝑔:(𝐴 ∪ {𝑧})–1-1𝐵𝑧 ∈ (𝐴 ∪ {𝑧}) ∧ 𝐴 ⊆ (𝐴 ∪ {𝑧})) → ((𝑔𝑧) ∈ (𝑔𝐴) ↔ 𝑧𝐴))
3429, 30, 32, 33syl3anc 1398 . . . . . . 7 ((𝜑 ∧ ((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵)) → ((𝑔𝑧) ∈ (𝑔𝐴) ↔ 𝑧𝐴))
3528, 34bitr3d 284 . . . . . 6 ((𝜑 ∧ ((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵)) → ((𝑔𝑧) ∈ ran 𝐹𝑧𝐴))
3623, 35mtbird 328 . . . . 5 ((𝜑 ∧ ((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵)) → ¬ (𝑔𝑧) ∈ ran 𝐹)
3721, 36eldifd 3916 . . . 4 ((𝜑 ∧ ((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵)) → (𝑔𝑧) ∈ (𝐵 ∖ ran 𝐹))
3837ex 417 . . 3 (𝜑 → (((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵) → (𝑔𝑧) ∈ (𝐵 ∖ ran 𝐹)))
3913, 38biimtrid 245 . 2 (𝜑 → (𝑔 ∈ {𝑓 ∣ ((𝑓𝐴) = 𝐹𝑓:(𝐴 ∪ {𝑧})–1-1𝐵)} → (𝑔𝑧) ∈ (𝐵 ∖ ran 𝐹)))
40 hashf1lem1.5 . . . . . . 7 (𝜑𝐹:𝐴1-1𝐵)
41 f1f 6774 . . . . . . 7 (𝐹:𝐴1-1𝐵𝐹:𝐴𝐵)
4240, 41syl 18 . . . . . 6 (𝜑𝐹:𝐴𝐵)
4342adantr 485 . . . . 5 ((𝜑𝑥 ∈ (𝐵 ∖ ran 𝐹)) → 𝐹:𝐴𝐵)
44 vex 3459 . . . . . . . 8 𝑥 ∈ V
4517, 44f1osn 6862 . . . . . . 7 {⟨𝑧, 𝑥⟩}:{𝑧}–1-1-onto→{𝑥}
46 f1of 6820 . . . . . . 7 ({⟨𝑧, 𝑥⟩}:{𝑧}–1-1-onto→{𝑥} → {⟨𝑧, 𝑥⟩}:{𝑧}⟶{𝑥})
4745, 46ax-mp 5 . . . . . 6 {⟨𝑧, 𝑥⟩}:{𝑧}⟶{𝑥}
48 eldifi 4085 . . . . . . . 8 (𝑥 ∈ (𝐵 ∖ ran 𝐹) → 𝑥𝐵)
4948adantl 486 . . . . . . 7 ((𝜑𝑥 ∈ (𝐵 ∖ ran 𝐹)) → 𝑥𝐵)
5049snssd 4752 . . . . . 6 ((𝜑𝑥 ∈ (𝐵 ∖ ran 𝐹)) → {𝑥} ⊆ 𝐵)
51 fss 6722 . . . . . 6 (({⟨𝑧, 𝑥⟩}:{𝑧}⟶{𝑥} ∧ {𝑥} ⊆ 𝐵) → {⟨𝑧, 𝑥⟩}:{𝑧}⟶𝐵)
5247, 50, 51sylancr 598 . . . . 5 ((𝜑𝑥 ∈ (𝐵 ∖ ran 𝐹)) → {⟨𝑧, 𝑥⟩}:{𝑧}⟶𝐵)
53 res0 5982 . . . . . . 7 (𝐹 ↾ ∅) = ∅
54 res0 5982 . . . . . . 7 ({⟨𝑧, 𝑥⟩} ↾ ∅) = ∅
5553, 54eqtr4i 2789 . . . . . 6 (𝐹 ↾ ∅) = ({⟨𝑧, 𝑥⟩} ↾ ∅)
56 disjsn 4677 . . . . . . . . 9 ((𝐴 ∩ {𝑧}) = ∅ ↔ ¬ 𝑧𝐴)
5722, 56sylibr 237 . . . . . . . 8 (𝜑 → (𝐴 ∩ {𝑧}) = ∅)
5857adantr 485 . . . . . . 7 ((𝜑𝑥 ∈ (𝐵 ∖ ran 𝐹)) → (𝐴 ∩ {𝑧}) = ∅)
5958reseq2d 5978 . . . . . 6 ((𝜑𝑥 ∈ (𝐵 ∖ ran 𝐹)) → (𝐹 ↾ (𝐴 ∩ {𝑧})) = (𝐹 ↾ ∅))
6058reseq2d 5978 . . . . . 6 ((𝜑𝑥 ∈ (𝐵 ∖ ran 𝐹)) → ({⟨𝑧, 𝑥⟩} ↾ (𝐴 ∩ {𝑧})) = ({⟨𝑧, 𝑥⟩} ↾ ∅))
6155, 59, 603eqtr4a 2824 . . . . 5 ((𝜑𝑥 ∈ (𝐵 ∖ ran 𝐹)) → (𝐹 ↾ (𝐴 ∩ {𝑧})) = ({⟨𝑧, 𝑥⟩} ↾ (𝐴 ∩ {𝑧})))
62 fresaunres1 6751 . . . . 5 ((𝐹:𝐴𝐵 ∧ {⟨𝑧, 𝑥⟩}:{𝑧}⟶𝐵 ∧ (𝐹 ↾ (𝐴 ∩ {𝑧})) = ({⟨𝑧, 𝑥⟩} ↾ (𝐴 ∩ {𝑧}))) → ((𝐹 ∪ {⟨𝑧, 𝑥⟩}) ↾ 𝐴) = 𝐹)
6343, 52, 61, 62syl3anc 1398 . . . 4 ((𝜑𝑥 ∈ (𝐵 ∖ ran 𝐹)) → ((𝐹 ∪ {⟨𝑧, 𝑥⟩}) ↾ 𝐴) = 𝐹)
64 f1f1orn 6832 . . . . . . . . 9 (𝐹:𝐴1-1𝐵𝐹:𝐴1-1-onto→ran 𝐹)
6540, 64syl 18 . . . . . . . 8 (𝜑𝐹:𝐴1-1-onto→ran 𝐹)
6665adantr 485 . . . . . . 7 ((𝜑𝑥 ∈ (𝐵 ∖ ran 𝐹)) → 𝐹:𝐴1-1-onto→ran 𝐹)
6745a1i 11 . . . . . . 7 ((𝜑𝑥 ∈ (𝐵 ∖ ran 𝐹)) → {⟨𝑧, 𝑥⟩}:{𝑧}–1-1-onto→{𝑥})
68 eldifn 4086 . . . . . . . . 9 (𝑥 ∈ (𝐵 ∖ ran 𝐹) → ¬ 𝑥 ∈ ran 𝐹)
6968adantl 486 . . . . . . . 8 ((𝜑𝑥 ∈ (𝐵 ∖ ran 𝐹)) → ¬ 𝑥 ∈ ran 𝐹)
70 disjsn 4677 . . . . . . . 8 ((ran 𝐹 ∩ {𝑥}) = ∅ ↔ ¬ 𝑥 ∈ ran 𝐹)
7169, 70sylibr 237 . . . . . . 7 ((𝜑𝑥 ∈ (𝐵 ∖ ran 𝐹)) → (ran 𝐹 ∩ {𝑥}) = ∅)
72 f1oun 6840 . . . . . . 7 (((𝐹:𝐴1-1-onto→ran 𝐹 ∧ {⟨𝑧, 𝑥⟩}:{𝑧}–1-1-onto→{𝑥}) ∧ ((𝐴 ∩ {𝑧}) = ∅ ∧ (ran 𝐹 ∩ {𝑥}) = ∅)) → (𝐹 ∪ {⟨𝑧, 𝑥⟩}):(𝐴 ∪ {𝑧})–1-1-onto→(ran 𝐹 ∪ {𝑥}))
7366, 67, 58, 71, 72syl22anc 851 . . . . . 6 ((𝜑𝑥 ∈ (𝐵 ∖ ran 𝐹)) → (𝐹 ∪ {⟨𝑧, 𝑥⟩}):(𝐴 ∪ {𝑧})–1-1-onto→(ran 𝐹 ∪ {𝑥}))
74 f1of1 6819 . . . . . 6 ((𝐹 ∪ {⟨𝑧, 𝑥⟩}):(𝐴 ∪ {𝑧})–1-1-onto→(ran 𝐹 ∪ {𝑥}) → (𝐹 ∪ {⟨𝑧, 𝑥⟩}):(𝐴 ∪ {𝑧})–1-1→(ran 𝐹 ∪ {𝑥}))
7573, 74syl 18 . . . . 5 ((𝜑𝑥 ∈ (𝐵 ∖ ran 𝐹)) → (𝐹 ∪ {⟨𝑧, 𝑥⟩}):(𝐴 ∪ {𝑧})–1-1→(ran 𝐹 ∪ {𝑥}))
7643frnd 6714 . . . . . 6 ((𝜑𝑥 ∈ (𝐵 ∖ ran 𝐹)) → ran 𝐹𝐵)
7776, 50unssd 4145 . . . . 5 ((𝜑𝑥 ∈ (𝐵 ∖ ran 𝐹)) → (ran 𝐹 ∪ {𝑥}) ⊆ 𝐵)
78 f1ss 6781 . . . . 5 (((𝐹 ∪ {⟨𝑧, 𝑥⟩}):(𝐴 ∪ {𝑧})–1-1→(ran 𝐹 ∪ {𝑥}) ∧ (ran 𝐹 ∪ {𝑥}) ⊆ 𝐵) → (𝐹 ∪ {⟨𝑧, 𝑥⟩}):(𝐴 ∪ {𝑧})–1-1𝐵)
7975, 77, 78syl2anc 595 . . . 4 ((𝜑𝑥 ∈ (𝐵 ∖ ran 𝐹)) → (𝐹 ∪ {⟨𝑧, 𝑥⟩}):(𝐴 ∪ {𝑧})–1-1𝐵)
80 hashf1lem2.1 . . . . . . . 8 (𝜑𝐴 ∈ Fin)
8142, 80fexd 7225 . . . . . . 7 (𝜑𝐹 ∈ V)
8281adantr 485 . . . . . 6 ((𝜑𝑥 ∈ (𝐵 ∖ ran 𝐹)) → 𝐹 ∈ V)
83 snex 5410 . . . . . 6 {⟨𝑧, 𝑥⟩} ∈ V
84 unexg 7741 . . . . . 6 ((𝐹 ∈ V ∧ {⟨𝑧, 𝑥⟩} ∈ V) → (𝐹 ∪ {⟨𝑧, 𝑥⟩}) ∈ V)
8582, 83, 84sylancl 597 . . . . 5 ((𝜑𝑥 ∈ (𝐵 ∖ ran 𝐹)) → (𝐹 ∪ {⟨𝑧, 𝑥⟩}) ∈ V)
86 reseq1 5972 . . . . . . . 8 (𝑓 = (𝐹 ∪ {⟨𝑧, 𝑥⟩}) → (𝑓𝐴) = ((𝐹 ∪ {⟨𝑧, 𝑥⟩}) ↾ 𝐴))
8786eqeq1d 2765 . . . . . . 7 (𝑓 = (𝐹 ∪ {⟨𝑧, 𝑥⟩}) → ((𝑓𝐴) = 𝐹 ↔ ((𝐹 ∪ {⟨𝑧, 𝑥⟩}) ↾ 𝐴) = 𝐹))
88 f1eq1 6769 . . . . . . 7 (𝑓 = (𝐹 ∪ {⟨𝑧, 𝑥⟩}) → (𝑓:(𝐴 ∪ {𝑧})–1-1𝐵 ↔ (𝐹 ∪ {⟨𝑧, 𝑥⟩}):(𝐴 ∪ {𝑧})–1-1𝐵))
8987, 88anbi12d 643 . . . . . 6 (𝑓 = (𝐹 ∪ {⟨𝑧, 𝑥⟩}) → (((𝑓𝐴) = 𝐹𝑓:(𝐴 ∪ {𝑧})–1-1𝐵) ↔ (((𝐹 ∪ {⟨𝑧, 𝑥⟩}) ↾ 𝐴) = 𝐹 ∧ (𝐹 ∪ {⟨𝑧, 𝑥⟩}):(𝐴 ∪ {𝑧})–1-1𝐵)))
9089elabg 3635 . . . . 5 ((𝐹 ∪ {⟨𝑧, 𝑥⟩}) ∈ V → ((𝐹 ∪ {⟨𝑧, 𝑥⟩}) ∈ {𝑓 ∣ ((𝑓𝐴) = 𝐹𝑓:(𝐴 ∪ {𝑧})–1-1𝐵)} ↔ (((𝐹 ∪ {⟨𝑧, 𝑥⟩}) ↾ 𝐴) = 𝐹 ∧ (𝐹 ∪ {⟨𝑧, 𝑥⟩}):(𝐴 ∪ {𝑧})–1-1𝐵)))
9185, 90syl 18 . . . 4 ((𝜑𝑥 ∈ (𝐵 ∖ ran 𝐹)) → ((𝐹 ∪ {⟨𝑧, 𝑥⟩}) ∈ {𝑓 ∣ ((𝑓𝐴) = 𝐹𝑓:(𝐴 ∪ {𝑧})–1-1𝐵)} ↔ (((𝐹 ∪ {⟨𝑧, 𝑥⟩}) ↾ 𝐴) = 𝐹 ∧ (𝐹 ∪ {⟨𝑧, 𝑥⟩}):(𝐴 ∪ {𝑧})–1-1𝐵)))
9263, 79, 91mpbir2and 725 . . 3 ((𝜑𝑥 ∈ (𝐵 ∖ ran 𝐹)) → (𝐹 ∪ {⟨𝑧, 𝑥⟩}) ∈ {𝑓 ∣ ((𝑓𝐴) = 𝐹𝑓:(𝐴 ∪ {𝑧})–1-1𝐵)})
9392ex 417 . 2 (𝜑 → (𝑥 ∈ (𝐵 ∖ ran 𝐹) → (𝐹 ∪ {⟨𝑧, 𝑥⟩}) ∈ {𝑓 ∣ ((𝑓𝐴) = 𝐹𝑓:(𝐴 ∪ {𝑧})–1-1𝐵)}))
9413anbi1i 635 . . 3 ((𝑔 ∈ {𝑓 ∣ ((𝑓𝐴) = 𝐹𝑓:(𝐴 ∪ {𝑧})–1-1𝐵)} ∧ 𝑥 ∈ (𝐵 ∖ ran 𝐹)) ↔ (((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵) ∧ 𝑥 ∈ (𝐵 ∖ ran 𝐹)))
95 simprlr 791 . . . . . . 7 ((𝜑 ∧ (((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵) ∧ 𝑥 ∈ (𝐵 ∖ ran 𝐹))) → 𝑔:(𝐴 ∪ {𝑧})–1-1𝐵)
96 f1fn 6775 . . . . . . 7 (𝑔:(𝐴 ∪ {𝑧})–1-1𝐵𝑔 Fn (𝐴 ∪ {𝑧}))
9795, 96syl 18 . . . . . 6 ((𝜑 ∧ (((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵) ∧ 𝑥 ∈ (𝐵 ∖ ran 𝐹))) → 𝑔 Fn (𝐴 ∪ {𝑧}))
9873adantrl 728 . . . . . . 7 ((𝜑 ∧ (((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵) ∧ 𝑥 ∈ (𝐵 ∖ ran 𝐹))) → (𝐹 ∪ {⟨𝑧, 𝑥⟩}):(𝐴 ∪ {𝑧})–1-1-onto→(ran 𝐹 ∪ {𝑥}))
99 f1ofn 6821 . . . . . . 7 ((𝐹 ∪ {⟨𝑧, 𝑥⟩}):(𝐴 ∪ {𝑧})–1-1-onto→(ran 𝐹 ∪ {𝑥}) → (𝐹 ∪ {⟨𝑧, 𝑥⟩}) Fn (𝐴 ∪ {𝑧}))
10098, 99syl 18 . . . . . 6 ((𝜑 ∧ (((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵) ∧ 𝑥 ∈ (𝐵 ∖ ran 𝐹))) → (𝐹 ∪ {⟨𝑧, 𝑥⟩}) Fn (𝐴 ∪ {𝑧}))
101 eqfnfv 7025 . . . . . 6 ((𝑔 Fn (𝐴 ∪ {𝑧}) ∧ (𝐹 ∪ {⟨𝑧, 𝑥⟩}) Fn (𝐴 ∪ {𝑧})) → (𝑔 = (𝐹 ∪ {⟨𝑧, 𝑥⟩}) ↔ ∀𝑦 ∈ (𝐴 ∪ {𝑧})(𝑔𝑦) = ((𝐹 ∪ {⟨𝑧, 𝑥⟩})‘𝑦)))
10297, 100, 101syl2anc 595 . . . . 5 ((𝜑 ∧ (((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵) ∧ 𝑥 ∈ (𝐵 ∖ ran 𝐹))) → (𝑔 = (𝐹 ∪ {⟨𝑧, 𝑥⟩}) ↔ ∀𝑦 ∈ (𝐴 ∪ {𝑧})(𝑔𝑦) = ((𝐹 ∪ {⟨𝑧, 𝑥⟩})‘𝑦)))
103 fvres 6900 . . . . . . . . . . 11 (𝑦𝐴 → ((𝑔𝐴)‘𝑦) = (𝑔𝑦))
104103eqcomd 2769 . . . . . . . . . 10 (𝑦𝐴 → (𝑔𝑦) = ((𝑔𝐴)‘𝑦))
105 simprll 790 . . . . . . . . . . 11 ((𝜑 ∧ (((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵) ∧ 𝑥 ∈ (𝐵 ∖ ran 𝐹))) → (𝑔𝐴) = 𝐹)
106105fveq1d 6883 . . . . . . . . . 10 ((𝜑 ∧ (((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵) ∧ 𝑥 ∈ (𝐵 ∖ ran 𝐹))) → ((𝑔𝐴)‘𝑦) = (𝐹𝑦))
107104, 106sylan9eqr 2820 . . . . . . . . 9 (((𝜑 ∧ (((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵) ∧ 𝑥 ∈ (𝐵 ∖ ran 𝐹))) ∧ 𝑦𝐴) → (𝑔𝑦) = (𝐹𝑦))
10840ad2antrr 738 . . . . . . . . . . 11 (((𝜑 ∧ (((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵) ∧ 𝑥 ∈ (𝐵 ∖ ran 𝐹))) ∧ 𝑦𝐴) → 𝐹:𝐴1-1𝐵)
109 f1fn 6775 . . . . . . . . . . 11 (𝐹:𝐴1-1𝐵𝐹 Fn 𝐴)
110108, 109syl 18 . . . . . . . . . 10 (((𝜑 ∧ (((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵) ∧ 𝑥 ∈ (𝐵 ∖ ran 𝐹))) ∧ 𝑦𝐴) → 𝐹 Fn 𝐴)
11117, 44fnsn 6594 . . . . . . . . . . 11 {⟨𝑧, 𝑥⟩} Fn {𝑧}
112111a1i 11 . . . . . . . . . 10 (((𝜑 ∧ (((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵) ∧ 𝑥 ∈ (𝐵 ∖ ran 𝐹))) ∧ 𝑦𝐴) → {⟨𝑧, 𝑥⟩} Fn {𝑧})
11357ad2antrr 738 . . . . . . . . . 10 (((𝜑 ∧ (((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵) ∧ 𝑥 ∈ (𝐵 ∖ ran 𝐹))) ∧ 𝑦𝐴) → (𝐴 ∩ {𝑧}) = ∅)
114 simpr 489 . . . . . . . . . 10 (((𝜑 ∧ (((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵) ∧ 𝑥 ∈ (𝐵 ∖ ran 𝐹))) ∧ 𝑦𝐴) → 𝑦𝐴)
115110, 112, 113, 114fvun1d 6974 . . . . . . . . 9 (((𝜑 ∧ (((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵) ∧ 𝑥 ∈ (𝐵 ∖ ran 𝐹))) ∧ 𝑦𝐴) → ((𝐹 ∪ {⟨𝑧, 𝑥⟩})‘𝑦) = (𝐹𝑦))
116107, 115eqtr4d 2801 . . . . . . . 8 (((𝜑 ∧ (((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵) ∧ 𝑥 ∈ (𝐵 ∖ ran 𝐹))) ∧ 𝑦𝐴) → (𝑔𝑦) = ((𝐹 ∪ {⟨𝑧, 𝑥⟩})‘𝑦))
117116ralrimiva 3157 . . . . . . 7 ((𝜑 ∧ (((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵) ∧ 𝑥 ∈ (𝐵 ∖ ran 𝐹))) → ∀𝑦𝐴 (𝑔𝑦) = ((𝐹 ∪ {⟨𝑧, 𝑥⟩})‘𝑦))
118117biantrurd 541 . . . . . 6 ((𝜑 ∧ (((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵) ∧ 𝑥 ∈ (𝐵 ∖ ran 𝐹))) → (∀𝑦 ∈ {𝑧} (𝑔𝑦) = ((𝐹 ∪ {⟨𝑧, 𝑥⟩})‘𝑦) ↔ (∀𝑦𝐴 (𝑔𝑦) = ((𝐹 ∪ {⟨𝑧, 𝑥⟩})‘𝑦) ∧ ∀𝑦 ∈ {𝑧} (𝑔𝑦) = ((𝐹 ∪ {⟨𝑧, 𝑥⟩})‘𝑦))))
119 ralunb 4150 . . . . . 6 (∀𝑦 ∈ (𝐴 ∪ {𝑧})(𝑔𝑦) = ((𝐹 ∪ {⟨𝑧, 𝑥⟩})‘𝑦) ↔ (∀𝑦𝐴 (𝑔𝑦) = ((𝐹 ∪ {⟨𝑧, 𝑥⟩})‘𝑦) ∧ ∀𝑦 ∈ {𝑧} (𝑔𝑦) = ((𝐹 ∪ {⟨𝑧, 𝑥⟩})‘𝑦)))
120118, 119bitr4di 292 . . . . 5 ((𝜑 ∧ (((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵) ∧ 𝑥 ∈ (𝐵 ∖ ran 𝐹))) → (∀𝑦 ∈ {𝑧} (𝑔𝑦) = ((𝐹 ∪ {⟨𝑧, 𝑥⟩})‘𝑦) ↔ ∀𝑦 ∈ (𝐴 ∪ {𝑧})(𝑔𝑦) = ((𝐹 ∪ {⟨𝑧, 𝑥⟩})‘𝑦)))
12142fdmd 6716 . . . . . . . . . . 11 (𝜑 → dom 𝐹 = 𝐴)
122121eleq2d 2849 . . . . . . . . . 10 (𝜑 → (𝑧 ∈ dom 𝐹𝑧𝐴))
12322, 122mtbird 328 . . . . . . . . 9 (𝜑 → ¬ 𝑧 ∈ dom 𝐹)
124123adantr 485 . . . . . . . 8 ((𝜑 ∧ (((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵) ∧ 𝑥 ∈ (𝐵 ∖ ran 𝐹))) → ¬ 𝑧 ∈ dom 𝐹)
125 fsnunfv 7185 . . . . . . . 8 ((𝑧 ∈ V ∧ 𝑥 ∈ V ∧ ¬ 𝑧 ∈ dom 𝐹) → ((𝐹 ∪ {⟨𝑧, 𝑥⟩})‘𝑧) = 𝑥)
12617, 44, 124, 125mp3an12i 1494 . . . . . . 7 ((𝜑 ∧ (((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵) ∧ 𝑥 ∈ (𝐵 ∖ ran 𝐹))) → ((𝐹 ∪ {⟨𝑧, 𝑥⟩})‘𝑧) = 𝑥)
127126eqeq2d 2774 . . . . . 6 ((𝜑 ∧ (((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵) ∧ 𝑥 ∈ (𝐵 ∖ ran 𝐹))) → ((𝑔𝑧) = ((𝐹 ∪ {⟨𝑧, 𝑥⟩})‘𝑧) ↔ (𝑔𝑧) = 𝑥))
128 fveq2 6881 . . . . . . . 8 (𝑦 = 𝑧 → (𝑔𝑦) = (𝑔𝑧))
129 fveq2 6881 . . . . . . . 8 (𝑦 = 𝑧 → ((𝐹 ∪ {⟨𝑧, 𝑥⟩})‘𝑦) = ((𝐹 ∪ {⟨𝑧, 𝑥⟩})‘𝑧))
130128, 129eqeq12d 2779 . . . . . . 7 (𝑦 = 𝑧 → ((𝑔𝑦) = ((𝐹 ∪ {⟨𝑧, 𝑥⟩})‘𝑦) ↔ (𝑔𝑧) = ((𝐹 ∪ {⟨𝑧, 𝑥⟩})‘𝑧)))
13117, 130ralsn 4647 . . . . . 6 (∀𝑦 ∈ {𝑧} (𝑔𝑦) = ((𝐹 ∪ {⟨𝑧, 𝑥⟩})‘𝑦) ↔ (𝑔𝑧) = ((𝐹 ∪ {⟨𝑧, 𝑥⟩})‘𝑧))
132 eqcom 2770 . . . . . 6 (𝑥 = (𝑔𝑧) ↔ (𝑔𝑧) = 𝑥)
133127, 131, 1323bitr4g 317 . . . . 5 ((𝜑 ∧ (((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵) ∧ 𝑥 ∈ (𝐵 ∖ ran 𝐹))) → (∀𝑦 ∈ {𝑧} (𝑔𝑦) = ((𝐹 ∪ {⟨𝑧, 𝑥⟩})‘𝑦) ↔ 𝑥 = (𝑔𝑧)))
134102, 120, 1333bitr2d 310 . . . 4 ((𝜑 ∧ (((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵) ∧ 𝑥 ∈ (𝐵 ∖ ran 𝐹))) → (𝑔 = (𝐹 ∪ {⟨𝑧, 𝑥⟩}) ↔ 𝑥 = (𝑔𝑧)))
135134ex 417 . . 3 (𝜑 → ((((𝑔𝐴) = 𝐹𝑔:(𝐴 ∪ {𝑧})–1-1𝐵) ∧ 𝑥 ∈ (𝐵 ∖ ran 𝐹)) → (𝑔 = (𝐹 ∪ {⟨𝑧, 𝑥⟩}) ↔ 𝑥 = (𝑔𝑧))))
13694, 135biimtrid 245 . 2 (𝜑 → ((𝑔 ∈ {𝑓 ∣ ((𝑓𝐴) = 𝐹𝑓:(𝐴 ∪ {𝑧})–1-1𝐵)} ∧ 𝑥 ∈ (𝐵 ∖ ran 𝐹)) → (𝑔 = (𝐹 ∪ {⟨𝑧, 𝑥⟩}) ↔ 𝑥 = (𝑔𝑧))))
1376, 7, 39, 93, 136en3d 8982 1 (𝜑 → {𝑓 ∣ ((𝑓𝐴) = 𝐹𝑓:(𝐴 ∪ {𝑧})–1-1𝐵)} ≈ (𝐵 ∖ ran 𝐹))
Colors of variables: wff setvar class
Syntax hints:  ¬ wn 3  wi 4  wb 209  wa 400   = wceq 1570  wcel 2143  {cab 2741  wral 3079  Vcvv 3455  cdif 3902  cun 3903  cin 3904  wss 3905  c0 4286  {csn 4589  cop 4595   class class class wbr 5109  dom cdm 5661  ran crn 5662  cres 5663  cima 5664   Fn wfn 6531  wf 6532  1-1wf1 6533  1-1-ontowf1o 6535  cfv 6536  (class class class)co 7410  cen 8936  Fincfn 8939  1c1 11096   + caddc 11098  cle 11239  chash 14362
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1825  ax-4 1839  ax-5 1940  ax-6 1997  ax-7 2038  ax-8 2145  ax-9 2153  ax-10 2176  ax-11 2192  ax-12 2213  ax-ext 2735  ax-rep 5238  ax-sep 5257  ax-nul 5269  ax-pow 5336  ax-pr 5404  ax-un 7732
This theorem depends on definitions:  df-bi 210  df-an 401  df-or 861  df-3an 1105  df-tru 1573  df-fal 1583  df-ex 1810  df-nf 1814  df-sb 2097  df-mo 2567  df-eu 2597  df-clab 2742  df-cleq 2755  df-clel 2838  df-nfc 2912  df-ne 2959  df-ral 3080  df-rex 3090  df-reu 3370  df-rab 3417  df-v 3457  df-sbc 3745  df-csb 3854  df-dif 3908  df-un 3910  df-in 3912  df-ss 3922  df-nul 4287  df-if 4488  df-pw 4564  df-sn 4590  df-pr 4592  df-op 4596  df-uni 4873  df-iun 4958  df-br 5110  df-opab 5174  df-mpt 5193  df-id 5556  df-xp 5667  df-rel 5668  df-cnv 5669  df-co 5670  df-dm 5671  df-rn 5672  df-res 5673  df-ima 5674  df-iota 6492  df-fun 6538  df-fn 6539  df-f 6540  df-f1 6541  df-fo 6542  df-f1o 6543  df-fv 6544  df-ov 7413  df-oprab 7414  df-mpo 7415  df-1st 7982  df-2nd 7983  df-map 8822  df-en 8940
This theorem is referenced by:  hashf1lem2  14489
  Copyright terms: Public domain W3C validator