| Step | Hyp | Ref | Expression | 
|---|
| 1 |  | fvex 6918 | . . . . 5
⊢ (𝐹‘𝐷) ∈ V | 
| 2 | 1 | dfpred3 6331 | . . . 4
⊢
Pred(𝑆, (𝐹 “ 𝐶), (𝐹‘𝐷)) = {𝑣 ∈ (𝐹 “ 𝐶) ∣ 𝑣𝑆(𝐹‘𝐷)} | 
| 3 |  | elrabi 3686 | . . . . . . . . . . 11
⊢ (𝑢 ∈ {𝑥 ∈ 𝐶 ∣ (𝐹‘𝑥)𝑆(𝐹‘𝐷)} → 𝑢 ∈ 𝐶) | 
| 4 | 3 | anim1i 615 | . . . . . . . . . 10
⊢ ((𝑢 ∈ {𝑥 ∈ 𝐶 ∣ (𝐹‘𝑥)𝑆(𝐹‘𝐷)} ∧ (𝐹‘𝑢) = 𝑣) → (𝑢 ∈ 𝐶 ∧ (𝐹‘𝑢) = 𝑣)) | 
| 5 | 4 | reximi2 3078 | . . . . . . . . 9
⊢
(∃𝑢 ∈
{𝑥 ∈ 𝐶 ∣ (𝐹‘𝑥)𝑆(𝐹‘𝐷)} (𝐹‘𝑢) = 𝑣 → ∃𝑢 ∈ 𝐶 (𝐹‘𝑢) = 𝑣) | 
| 6 |  | fnrelpredd.1 | . . . . . . . . . 10
⊢ (𝜑 → 𝐹 Fn 𝐴) | 
| 7 |  | fnrelpredd.3 | . . . . . . . . . 10
⊢ (𝜑 → 𝐶 ⊆ 𝐴) | 
| 8 | 6, 7 | fvelimabd 6981 | . . . . . . . . 9
⊢ (𝜑 → (𝑣 ∈ (𝐹 “ 𝐶) ↔ ∃𝑢 ∈ 𝐶 (𝐹‘𝑢) = 𝑣)) | 
| 9 | 5, 8 | imbitrrid 246 | . . . . . . . 8
⊢ (𝜑 → (∃𝑢 ∈ {𝑥 ∈ 𝐶 ∣ (𝐹‘𝑥)𝑆(𝐹‘𝐷)} (𝐹‘𝑢) = 𝑣 → 𝑣 ∈ (𝐹 “ 𝐶))) | 
| 10 |  | fveq2 6905 | . . . . . . . . . . . 12
⊢ (𝑥 = 𝑢 → (𝐹‘𝑥) = (𝐹‘𝑢)) | 
| 11 | 10 | breq1d 5152 | . . . . . . . . . . 11
⊢ (𝑥 = 𝑢 → ((𝐹‘𝑥)𝑆(𝐹‘𝐷) ↔ (𝐹‘𝑢)𝑆(𝐹‘𝐷))) | 
| 12 | 11 | elrab 3691 | . . . . . . . . . 10
⊢ (𝑢 ∈ {𝑥 ∈ 𝐶 ∣ (𝐹‘𝑥)𝑆(𝐹‘𝐷)} ↔ (𝑢 ∈ 𝐶 ∧ (𝐹‘𝑢)𝑆(𝐹‘𝐷))) | 
| 13 |  | breq1 5145 | . . . . . . . . . . . 12
⊢ ((𝐹‘𝑢) = 𝑣 → ((𝐹‘𝑢)𝑆(𝐹‘𝐷) ↔ 𝑣𝑆(𝐹‘𝐷))) | 
| 14 | 13 | biimpac 478 | . . . . . . . . . . 11
⊢ (((𝐹‘𝑢)𝑆(𝐹‘𝐷) ∧ (𝐹‘𝑢) = 𝑣) → 𝑣𝑆(𝐹‘𝐷)) | 
| 15 | 14 | adantll 714 | . . . . . . . . . 10
⊢ (((𝑢 ∈ 𝐶 ∧ (𝐹‘𝑢)𝑆(𝐹‘𝐷)) ∧ (𝐹‘𝑢) = 𝑣) → 𝑣𝑆(𝐹‘𝐷)) | 
| 16 | 12, 15 | sylanb 581 | . . . . . . . . 9
⊢ ((𝑢 ∈ {𝑥 ∈ 𝐶 ∣ (𝐹‘𝑥)𝑆(𝐹‘𝐷)} ∧ (𝐹‘𝑢) = 𝑣) → 𝑣𝑆(𝐹‘𝐷)) | 
| 17 | 16 | rexlimiva 3146 | . . . . . . . 8
⊢
(∃𝑢 ∈
{𝑥 ∈ 𝐶 ∣ (𝐹‘𝑥)𝑆(𝐹‘𝐷)} (𝐹‘𝑢) = 𝑣 → 𝑣𝑆(𝐹‘𝐷)) | 
| 18 | 9, 17 | jca2 513 | . . . . . . 7
⊢ (𝜑 → (∃𝑢 ∈ {𝑥 ∈ 𝐶 ∣ (𝐹‘𝑥)𝑆(𝐹‘𝐷)} (𝐹‘𝑢) = 𝑣 → (𝑣 ∈ (𝐹 “ 𝐶) ∧ 𝑣𝑆(𝐹‘𝐷)))) | 
| 19 | 8 | biimpd 229 | . . . . . . . . 9
⊢ (𝜑 → (𝑣 ∈ (𝐹 “ 𝐶) → ∃𝑢 ∈ 𝐶 (𝐹‘𝑢) = 𝑣)) | 
| 20 | 19 | adantrd 491 | . . . . . . . 8
⊢ (𝜑 → ((𝑣 ∈ (𝐹 “ 𝐶) ∧ 𝑣𝑆(𝐹‘𝐷)) → ∃𝑢 ∈ 𝐶 (𝐹‘𝑢) = 𝑣)) | 
| 21 |  | simpl 482 | . . . . . . . . . . . . 13
⊢ ((𝑢 ∈ 𝐶 ∧ (𝐹‘𝑢) = 𝑣) → 𝑢 ∈ 𝐶) | 
| 22 | 21 | a1i 11 | . . . . . . . . . . . 12
⊢ (𝑣𝑆(𝐹‘𝐷) → ((𝑢 ∈ 𝐶 ∧ (𝐹‘𝑢) = 𝑣) → 𝑢 ∈ 𝐶)) | 
| 23 | 13 | biimprcd 250 | . . . . . . . . . . . . 13
⊢ (𝑣𝑆(𝐹‘𝐷) → ((𝐹‘𝑢) = 𝑣 → (𝐹‘𝑢)𝑆(𝐹‘𝐷))) | 
| 24 | 23 | adantld 490 | . . . . . . . . . . . 12
⊢ (𝑣𝑆(𝐹‘𝐷) → ((𝑢 ∈ 𝐶 ∧ (𝐹‘𝑢) = 𝑣) → (𝐹‘𝑢)𝑆(𝐹‘𝐷))) | 
| 25 |  | simpr 484 | . . . . . . . . . . . . 13
⊢ ((𝑢 ∈ 𝐶 ∧ (𝐹‘𝑢) = 𝑣) → (𝐹‘𝑢) = 𝑣) | 
| 26 | 25 | a1i 11 | . . . . . . . . . . . 12
⊢ (𝑣𝑆(𝐹‘𝐷) → ((𝑢 ∈ 𝐶 ∧ (𝐹‘𝑢) = 𝑣) → (𝐹‘𝑢) = 𝑣)) | 
| 27 | 22, 24, 26 | 3jcad 1129 | . . . . . . . . . . 11
⊢ (𝑣𝑆(𝐹‘𝐷) → ((𝑢 ∈ 𝐶 ∧ (𝐹‘𝑢) = 𝑣) → (𝑢 ∈ 𝐶 ∧ (𝐹‘𝑢)𝑆(𝐹‘𝐷) ∧ (𝐹‘𝑢) = 𝑣))) | 
| 28 | 12 | biimpri 228 | . . . . . . . . . . . . 13
⊢ ((𝑢 ∈ 𝐶 ∧ (𝐹‘𝑢)𝑆(𝐹‘𝐷)) → 𝑢 ∈ {𝑥 ∈ 𝐶 ∣ (𝐹‘𝑥)𝑆(𝐹‘𝐷)}) | 
| 29 | 28 | anim1i 615 | . . . . . . . . . . . 12
⊢ (((𝑢 ∈ 𝐶 ∧ (𝐹‘𝑢)𝑆(𝐹‘𝐷)) ∧ (𝐹‘𝑢) = 𝑣) → (𝑢 ∈ {𝑥 ∈ 𝐶 ∣ (𝐹‘𝑥)𝑆(𝐹‘𝐷)} ∧ (𝐹‘𝑢) = 𝑣)) | 
| 30 | 29 | 3impa 1109 | . . . . . . . . . . 11
⊢ ((𝑢 ∈ 𝐶 ∧ (𝐹‘𝑢)𝑆(𝐹‘𝐷) ∧ (𝐹‘𝑢) = 𝑣) → (𝑢 ∈ {𝑥 ∈ 𝐶 ∣ (𝐹‘𝑥)𝑆(𝐹‘𝐷)} ∧ (𝐹‘𝑢) = 𝑣)) | 
| 31 | 27, 30 | syl6 35 | . . . . . . . . . 10
⊢ (𝑣𝑆(𝐹‘𝐷) → ((𝑢 ∈ 𝐶 ∧ (𝐹‘𝑢) = 𝑣) → (𝑢 ∈ {𝑥 ∈ 𝐶 ∣ (𝐹‘𝑥)𝑆(𝐹‘𝐷)} ∧ (𝐹‘𝑢) = 𝑣))) | 
| 32 | 31 | reximdv2 3163 | . . . . . . . . 9
⊢ (𝑣𝑆(𝐹‘𝐷) → (∃𝑢 ∈ 𝐶 (𝐹‘𝑢) = 𝑣 → ∃𝑢 ∈ {𝑥 ∈ 𝐶 ∣ (𝐹‘𝑥)𝑆(𝐹‘𝐷)} (𝐹‘𝑢) = 𝑣)) | 
| 33 | 32 | adantl 481 | . . . . . . . 8
⊢ ((𝑣 ∈ (𝐹 “ 𝐶) ∧ 𝑣𝑆(𝐹‘𝐷)) → (∃𝑢 ∈ 𝐶 (𝐹‘𝑢) = 𝑣 → ∃𝑢 ∈ {𝑥 ∈ 𝐶 ∣ (𝐹‘𝑥)𝑆(𝐹‘𝐷)} (𝐹‘𝑢) = 𝑣)) | 
| 34 | 20, 33 | sylcom 30 | . . . . . . 7
⊢ (𝜑 → ((𝑣 ∈ (𝐹 “ 𝐶) ∧ 𝑣𝑆(𝐹‘𝐷)) → ∃𝑢 ∈ {𝑥 ∈ 𝐶 ∣ (𝐹‘𝑥)𝑆(𝐹‘𝐷)} (𝐹‘𝑢) = 𝑣)) | 
| 35 | 18, 34 | impbid 212 | . . . . . 6
⊢ (𝜑 → (∃𝑢 ∈ {𝑥 ∈ 𝐶 ∣ (𝐹‘𝑥)𝑆(𝐹‘𝐷)} (𝐹‘𝑢) = 𝑣 ↔ (𝑣 ∈ (𝐹 “ 𝐶) ∧ 𝑣𝑆(𝐹‘𝐷)))) | 
| 36 | 35 | abbidv 2807 | . . . . 5
⊢ (𝜑 → {𝑣 ∣ ∃𝑢 ∈ {𝑥 ∈ 𝐶 ∣ (𝐹‘𝑥)𝑆(𝐹‘𝐷)} (𝐹‘𝑢) = 𝑣} = {𝑣 ∣ (𝑣 ∈ (𝐹 “ 𝐶) ∧ 𝑣𝑆(𝐹‘𝐷))}) | 
| 37 |  | df-rab 3436 | . . . . 5
⊢ {𝑣 ∈ (𝐹 “ 𝐶) ∣ 𝑣𝑆(𝐹‘𝐷)} = {𝑣 ∣ (𝑣 ∈ (𝐹 “ 𝐶) ∧ 𝑣𝑆(𝐹‘𝐷))} | 
| 38 | 36, 37 | eqtr4di 2794 | . . . 4
⊢ (𝜑 → {𝑣 ∣ ∃𝑢 ∈ {𝑥 ∈ 𝐶 ∣ (𝐹‘𝑥)𝑆(𝐹‘𝐷)} (𝐹‘𝑢) = 𝑣} = {𝑣 ∈ (𝐹 “ 𝐶) ∣ 𝑣𝑆(𝐹‘𝐷)}) | 
| 39 | 2, 38 | eqtr4id 2795 | . . 3
⊢ (𝜑 → Pred(𝑆, (𝐹 “ 𝐶), (𝐹‘𝐷)) = {𝑣 ∣ ∃𝑢 ∈ {𝑥 ∈ 𝐶 ∣ (𝐹‘𝑥)𝑆(𝐹‘𝐷)} (𝐹‘𝑢) = 𝑣}) | 
| 40 |  | fnfun 6667 | . . . . 5
⊢ (𝐹 Fn 𝐴 → Fun 𝐹) | 
| 41 | 6, 40 | syl 17 | . . . 4
⊢ (𝜑 → Fun 𝐹) | 
| 42 |  | ssrab2 4079 | . . . . . 6
⊢ {𝑥 ∈ 𝐶 ∣ (𝐹‘𝑥)𝑆(𝐹‘𝐷)} ⊆ 𝐶 | 
| 43 | 42, 7 | sstrid 3994 | . . . . 5
⊢ (𝜑 → {𝑥 ∈ 𝐶 ∣ (𝐹‘𝑥)𝑆(𝐹‘𝐷)} ⊆ 𝐴) | 
| 44 | 6 | fndmd 6672 | . . . . 5
⊢ (𝜑 → dom 𝐹 = 𝐴) | 
| 45 | 43, 44 | sseqtrrd 4020 | . . . 4
⊢ (𝜑 → {𝑥 ∈ 𝐶 ∣ (𝐹‘𝑥)𝑆(𝐹‘𝐷)} ⊆ dom 𝐹) | 
| 46 |  | dfimafn 6970 | . . . 4
⊢ ((Fun
𝐹 ∧ {𝑥 ∈ 𝐶 ∣ (𝐹‘𝑥)𝑆(𝐹‘𝐷)} ⊆ dom 𝐹) → (𝐹 “ {𝑥 ∈ 𝐶 ∣ (𝐹‘𝑥)𝑆(𝐹‘𝐷)}) = {𝑣 ∣ ∃𝑢 ∈ {𝑥 ∈ 𝐶 ∣ (𝐹‘𝑥)𝑆(𝐹‘𝐷)} (𝐹‘𝑢) = 𝑣}) | 
| 47 | 41, 45, 46 | syl2anc 584 | . . 3
⊢ (𝜑 → (𝐹 “ {𝑥 ∈ 𝐶 ∣ (𝐹‘𝑥)𝑆(𝐹‘𝐷)}) = {𝑣 ∣ ∃𝑢 ∈ {𝑥 ∈ 𝐶 ∣ (𝐹‘𝑥)𝑆(𝐹‘𝐷)} (𝐹‘𝑢) = 𝑣}) | 
| 48 | 39, 47 | eqtr4d 2779 | . 2
⊢ (𝜑 → Pred(𝑆, (𝐹 “ 𝐶), (𝐹‘𝐷)) = (𝐹 “ {𝑥 ∈ 𝐶 ∣ (𝐹‘𝑥)𝑆(𝐹‘𝐷)})) | 
| 49 |  | fnrelpredd.4 | . . . . 5
⊢ (𝜑 → 𝐷 ∈ 𝐴) | 
| 50 |  | dfpred3g 6332 | . . . . 5
⊢ (𝐷 ∈ 𝐴 → Pred(𝑅, 𝐶, 𝐷) = {𝑥 ∈ 𝐶 ∣ 𝑥𝑅𝐷}) | 
| 51 | 49, 50 | syl 17 | . . . 4
⊢ (𝜑 → Pred(𝑅, 𝐶, 𝐷) = {𝑥 ∈ 𝐶 ∣ 𝑥𝑅𝐷}) | 
| 52 | 7 | sselda 3982 | . . . . . 6
⊢ ((𝜑 ∧ 𝑥 ∈ 𝐶) → 𝑥 ∈ 𝐴) | 
| 53 |  | fnrelpredd.2 | . . . . . . . 8
⊢ (𝜑 → ∀𝑥 ∈ 𝐴 ∀𝑦 ∈ 𝐴 (𝑥𝑅𝑦 ↔ (𝐹‘𝑥)𝑆(𝐹‘𝑦))) | 
| 54 | 53 | r19.21bi 3250 | . . . . . . 7
⊢ ((𝜑 ∧ 𝑥 ∈ 𝐴) → ∀𝑦 ∈ 𝐴 (𝑥𝑅𝑦 ↔ (𝐹‘𝑥)𝑆(𝐹‘𝑦))) | 
| 55 |  | breq2 5146 | . . . . . . . . . . 11
⊢ (𝑦 = 𝐷 → (𝑥𝑅𝑦 ↔ 𝑥𝑅𝐷)) | 
| 56 |  | fveq2 6905 | . . . . . . . . . . . 12
⊢ (𝑦 = 𝐷 → (𝐹‘𝑦) = (𝐹‘𝐷)) | 
| 57 | 56 | breq2d 5154 | . . . . . . . . . . 11
⊢ (𝑦 = 𝐷 → ((𝐹‘𝑥)𝑆(𝐹‘𝑦) ↔ (𝐹‘𝑥)𝑆(𝐹‘𝐷))) | 
| 58 | 55, 57 | bibi12d 345 | . . . . . . . . . 10
⊢ (𝑦 = 𝐷 → ((𝑥𝑅𝑦 ↔ (𝐹‘𝑥)𝑆(𝐹‘𝑦)) ↔ (𝑥𝑅𝐷 ↔ (𝐹‘𝑥)𝑆(𝐹‘𝐷)))) | 
| 59 | 58 | rspcv 3617 | . . . . . . . . 9
⊢ (𝐷 ∈ 𝐴 → (∀𝑦 ∈ 𝐴 (𝑥𝑅𝑦 ↔ (𝐹‘𝑥)𝑆(𝐹‘𝑦)) → (𝑥𝑅𝐷 ↔ (𝐹‘𝑥)𝑆(𝐹‘𝐷)))) | 
| 60 | 49, 59 | syl 17 | . . . . . . . 8
⊢ (𝜑 → (∀𝑦 ∈ 𝐴 (𝑥𝑅𝑦 ↔ (𝐹‘𝑥)𝑆(𝐹‘𝑦)) → (𝑥𝑅𝐷 ↔ (𝐹‘𝑥)𝑆(𝐹‘𝐷)))) | 
| 61 | 60 | adantr 480 | . . . . . . 7
⊢ ((𝜑 ∧ 𝑥 ∈ 𝐴) → (∀𝑦 ∈ 𝐴 (𝑥𝑅𝑦 ↔ (𝐹‘𝑥)𝑆(𝐹‘𝑦)) → (𝑥𝑅𝐷 ↔ (𝐹‘𝑥)𝑆(𝐹‘𝐷)))) | 
| 62 | 54, 61 | mpd 15 | . . . . . 6
⊢ ((𝜑 ∧ 𝑥 ∈ 𝐴) → (𝑥𝑅𝐷 ↔ (𝐹‘𝑥)𝑆(𝐹‘𝐷))) | 
| 63 | 52, 62 | syldan 591 | . . . . 5
⊢ ((𝜑 ∧ 𝑥 ∈ 𝐶) → (𝑥𝑅𝐷 ↔ (𝐹‘𝑥)𝑆(𝐹‘𝐷))) | 
| 64 | 63 | rabbidva 3442 | . . . 4
⊢ (𝜑 → {𝑥 ∈ 𝐶 ∣ 𝑥𝑅𝐷} = {𝑥 ∈ 𝐶 ∣ (𝐹‘𝑥)𝑆(𝐹‘𝐷)}) | 
| 65 | 51, 64 | eqtrd 2776 | . . 3
⊢ (𝜑 → Pred(𝑅, 𝐶, 𝐷) = {𝑥 ∈ 𝐶 ∣ (𝐹‘𝑥)𝑆(𝐹‘𝐷)}) | 
| 66 | 65 | imaeq2d 6077 | . 2
⊢ (𝜑 → (𝐹 “ Pred(𝑅, 𝐶, 𝐷)) = (𝐹 “ {𝑥 ∈ 𝐶 ∣ (𝐹‘𝑥)𝑆(𝐹‘𝐷)})) | 
| 67 | 48, 66 | eqtr4d 2779 | 1
⊢ (𝜑 → Pred(𝑆, (𝐹 “ 𝐶), (𝐹‘𝐷)) = (𝐹 “ Pred(𝑅, 𝐶, 𝐷))) |